%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
| Server IP : 14.207.165.8 / Your IP : 216.73.216.14 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/old/modules/mod_news_pro_gk4/ |
Upload File : |
<?php
/**
* Helper file
* @package News Show Pro GK4
* @Copyright (C) 2009-2011 Gavick.com
* @ All rights reserved
* @ Joomla! is Free Software
* @ Released under GNU/GPL License : http://www.gnu.org/copyleft/gpl.html
* @version $Revision: GK4 1.3 $
**/
// access restriction
defined('_JEXEC') or die('Restricted access');
// import com_content route helper
require_once (JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php');
// import JString class for UTF-8 problems
jimport('joomla.utilities.string');
jimport('joomla.application.component.helper');
// Main class
class NSP_GK4_Helper {
var $config = array(); // configuration array
var $content = array(); // array with generated content
var $module_id = 0; // module id used in JavaScript
var $k2store_params = 0; // params of K2Store component
// module initialization
function init($module, $params) {
// getting module ID - automatically (from Joomla! database) or manually
$this->module_id = ($params->get('automatic_module_id',0) == 1) ? 'nsp_'.$module->id : $params->get('module_unique_id',0);
$this->config['module_id'] = $this->module_id;
// module dimensions
$this->config["module_width"] = $params->get("module_width", 100);
$this->config["links_margin"] = $params->get("links_margin", "0");
$this->config["links_position"] = $params->get("links_position", "bottom");
$this->config["links_width"] = $params->get("links_width", 0);
// source settings
$this->config["data_source"] = $params->get("data_source", "com_categories");
$this->config["com_categories"] = $params->get("com_categories",'');
$this->config["com_articles"] = $params->get("com_articles",'');
$this->config["k2_categories"] = $params->get("k2_categories",'');
$this->config["k2_tags"] = $params->get("k2_tags",'');
$this->config["k2_articles"] = $params->get("k2_articles",'');
$this->config['news_sort_value'] = $params->get('news_sort_value','created'); // Parameter for SQL Query - value of sort
$this->config['news_sort_order'] = $params->get('news_sort_order','DESC'); // Parameter for SQL Query - sort direct
$this->config['news_frontpage'] = $params->get('news_frontpage',1);
$this->config['unauthorized'] = $params->get('unauthorized', 0);
$this->config['only_frontpage'] = $params->get('only_frontpage', 0);
$this->config['startposition'] = $params->get('startposition', 0);
// Settings of source amount
$this->config['news_full_pages'] = $params->get('news_full_pages', 3); // max. amount of full articles to load
$this->config['news_short_pages'] = $params->get('news_short_pages', 3); // max. amount of links to articles to load
$this->config['news_column'] = $params->get('news_column', 1); // amount of news columns
$this->config['news_rows'] = $params->get('news_rows', 1); // amount of news rows
$this->config['art_padding'] = $params->get('art_padding', '0 20px 20px 0'); // article block padding
$this->config['links_amount'] = $params->get('links_amount', 3); // amount of links
// Interface settings
$this->config['top_interface_style'] = $params->get('top_interface_style','arrows');
$this->config['bottom_interface_style'] = $params->get('bottom_interface_style','arrows');
// Content settings
$this->config['news_header_link'] = $params->get('news_header_link', 1); // add link to header ? (boolean)
$this->config['news_image_link'] = $params->get('news_image_link', 1); // add link to image ? (boolean)
$this->config['news_text_link'] = $params->get('news_text_link', 0); // add link to text ? (boolean)
$this->config['info_format'] = $params->get('info_format', '%COMMENTS %DATE %HITS %CATEGORY %AUTHOR'); // date format
$this->config['info2_format'] = $params->get('info2_format', ''); // date format
$this->config['category_link'] = $params->get('category_link', 1); // showing category name
$this->config['date_format'] = $params->get('date_format', '%d %b %Y'); // date format
$this->config['date_publish'] = (bool) $params->get('date_publish', 0); // date publish or create ?
$this->config['username'] = $params->get('username', 0);
$this->config['user_avatar'] = $params->get('user_avatar', 1);
$this->config['avatar_size'] = $params->get('avatar_size', 16);
// Content positions
$this->config['news_content_header_pos'] = $params->get('news_content_header_pos', 'left'); // text-align for news header
$this->config['news_content_image_pos'] = $params->get('news_content_image_pos', 'left'); // text-align for news image
$this->config['news_content_text_pos'] = $params->get('news_content_text_pos', 'left'); // text-align for news text
$this->config['news_content_info_pos'] = $params->get('news_content_info_pos', 'left'); // text-align for news info
$this->config['news_content_readmore_pos'] = $params->get('news_content_readmore_pos', 'right'); // text-align for news readmore button
$this->config['news_content_info2_pos'] = $params->get('news_content_info2_pos', 'left'); // text-align for news info
$this->config['news_content_header_float'] = $params->get('news_content_header_float', 'left'); // float for news header
$this->config['news_content_image_float'] = $params->get('news_content_image_float', 'left'); // float for news image
$this->config['news_content_text_float'] = $params->get('news_content_text_float', 'left'); // float for news text
$this->config['news_content_info_float'] = $params->get('news_content_info_float', 'none'); // float for news info
$this->config['news_content_info2_float'] = $params->get('news_content_info2_float', 'left'); // float for news info
$this->config['news_header_order'] = $params->get('news_header_order', 1); // order of news header
$this->config['news_image_order'] = $params->get('news_image_order', 3); // order of news image
$this->config['news_text_order'] = $params->get('news_text_order', 4); // order of news text
$this->config['news_info_order'] = $params->get('news_info_order', 2);
$this->config['news_info2_order'] = $params->get('news_info2_order', 5);
$this->config['news_header_enabled'] = $params->get('news_header_enabled', 1);
$this->config['news_image_enabled'] = $params->get('news_image_enabled', 1);
$this->config['news_text_enabled'] = $params->get('news_text_enabled', 1);
$this->config['news_info_enabled'] = $params->get('news_info_enabled', 1);
$this->config['news_info2_enabled'] = $params->get('news_info2_enabled', 1);
$this->config['news_readmore_enabled'] = $params->get('news_readmore_enabled', 1);
// Limits
$this->config['news_limit_type'] = $params->get('news_limit_type', 'words'); // type of limit fo news text
$this->config['news_limit'] = $params->get('news_limit', 30); // amount of limit "units"
$this->config['title_limit_type'] = $params->get('title_limit_type', 'chars');
$this->config['title_limit'] = $params->get('title_limit', 40); // amount of limit "units"
$this->config['list_title_limit_type'] = $params->get('list_title_limit_type', 'words');
$this->config['list_title_limit'] = $params->get('list_title_limit', 20); // amount of chars in list element title
$this->config['list_text_limit_type'] = $params->get('list_text_limit_type', 'words');
$this->config['list_text_limit'] = $params->get('list_text_limit', 30); // amount of chars in list element text
// Other content settings
$this->config['clean_xhtml'] = $params->get('clean_xhtml', 1); // cleaning XHTML in news
$this->config['more_text_value'] = $params->get('more_text_value','...'); // text overflow value
$this->config['parse_plugins'] = (bool) $params->get('parse_plugins', 0);
$this->config['clean_plugins'] = (bool) $params->get('clean_plugins', 0);
$this->config['k2store_support'] = (bool) 0;
// Thumbnails settings
$this->config['create_thumbs'] = $params->get('create_thumbs', 0); // use generated thumbs
$this->config['k2_thumbs'] = $params->get('k2_thumbs', 'first'); // use generated k2 thumbs
$this->config['img_height'] = $params->get('img_height', 0); // image height
$this->config['img_width'] = $params->get('img_width', 0); // image width
$this->config['img_margin'] = $params->get('img_margin', '6px 14px 0 0'); // image margin
$this->config['img_bg'] = $params->get('img_bg', '#000'); // image background
$this->config['img_stretch'] = $params->get('img_stretch', 0); // image stretch
$this->config['img_quality'] = $params->get('img_quality', 95); // image quality
$this->config['cache_time'] = $params->get('cache_time', 30); // cache time
// Animation settings
$this->config['autoanim'] = (bool) $params->get('autoanim', 0); // autoanimation enabled ?
$this->config['hover_anim'] = (bool) $params->get('hover_anim', 0); // hover animation enabled ?
$this->config['animation_speed'] = $params->get('animation_speed', 400);
$this->config['animation_interval'] = $params->get('animation_interval', 5000);
$this->config['animation_function'] = $params->get('animation_function', 'Fx.Transitions.Expo.easeIn');
// external file settings
$this->config['useCSS'] = $params->get('useCSS', 1);
$this->config['useScript'] = $params->get('useScript', 2); // add script for this module to page
$this->config['counter_text'] = '<strong>'.JText::_('MOD_NEWS_PRO_GK4_NSP_PAGE').'</strong>';
// new GK4 v.2.0 options
$this->config['use_title_alias'] = $params->get('use_title_alias', 0); // use title alias as a title
$this->config['show_list_description'] = $params->get('show_list_description', 1); // enable/disable list description
$this->config['no_comments_text'] = $params->get('no_comments_text', 1); // showing of other text when article has no comments
$this->config['module_font_size'] = $params->get('module_font_size', 100); // specify font-size inside the module
$this->config['img_keep_aspect_ratio'] = $params->get('img_keep_aspect_ratio', 0); // keeping aspect ratio of images
$this->config['news_since'] = $params->get('news_since', ''); // since date for source articles
$this->config['time_offset'] = $params->get('time_offset', 0); // time offset for timezones problem
$this->config['links_columns_amount'] = $params->get('links_columns_amount', 1); // amount of links columns
$this->config['module_mode'] = $params->get('module_mode', 'normal'); // select mode of the module i.e. one of the portal modes
$this->config['simple_crop_top'] = $params->get('simple_crop_top', 10); // top crop in %
$this->config['simple_crop_bottom'] = $params->get('simple_crop_bottom', 10); // bottom crop in %
$this->config['simple_crop_left'] = $params->get('simple_crop_left', 10); // left crop in %
$this->config['simple_crop_right'] = $params->get('simple_crop_right', 10); // right crop in %
$this->config['crop_rules'] = $params->get('crop_rules', ''); // crop rules in format: [NAME|width:height]=top:right:bottom:left;
$this->config['news_portal_mode_amount'] = $params->get('news_portal_mode_amount', 10); // amount of news in Portal Mode
$this->config['news_portal_mode_3_open_first'] = $params->get('news_portal_mode_3_open_first', 1); // open first block automatically
// new GK4 v.2.1 options
$this->config['img_auto_scale'] = $params->get('img_auto_scale', 1); // image auto-scale
// RedSHOP Component options (new GK4 v.2.4 options)
$this->config['news_content_rs_pos'] = $params->get('news_content_rs_pos', 'left');
$this->config['news_content_rs_float'] = $params->get('news_content_rs_float', 'none');
$this->config['news_rs_store_order'] = $params->get('news_rs_store_order',6);
$this->config['news_rs_store_enabled'] = $params->get('news_rs_store_enabled', 1);
$this->config['redshop_categories'] = $params->get('redshop_categories', '');
$this->config['redshop_products'] = $params->get('redshop_products', '');
$this->config['all_redshop_products'] = $params->get('all_redshop_products', '');
$this->config['rs_out_of_stock'] = $params->get('rs_out_of_stock', '');
$this->config['rs_add_to_cart'] = $params->get('rs_add_to_cart', '');
$this->config['rs_price'] = $params->get('rs_price', '');
$this->config['rs_price_text'] = $params->get('rs_price_text', '');
$this->config['rs_currency_place'] = $params->get('rs_currency_place', '');
$this->config['rs_price_with_vat'] = $params->get('rs_price_with_vat', '1');
$this->config['rs_show_default_cart_button'] = $params->get('rs_show_default_cart_button', 0);
// new GK4 v.2.5 options
$this->config['memory_limit'] = $params->get('memory_limit', '128M');
// GK4 v 3.0 options
$this->config['vm_categories'] = $params->get('vm_categories', '');
$this->config['vm_products'] = $params->get('vm_products', '');
$this->config['vm_shopper_group'] = $params->get('vm_shopper_group', -1);
$this->config['vm_out_of_stock'] = $params->get('vm_out_of_stock', 1);
$this->config['vm_add_to_cart'] = $params->get('vm_add_to_cart', 0);
$this->config['vm_show_tax'] = $params->get('vm_show_tax', 0);
$this->config['vm_show_price_type'] = $params->get('vm_show_price_type', 'base');
$this->config['vm_show_discount_amount'] = $params->get('vm_show_discount_amount', 0);
$this->config['vm_show_price_with_tax'] = $params->get('vm_show_price_with_tax', 0);
$this->config['vm_itemid'] = $params->get('vm_itemid', 9999);
$this->config['vm_display_type'] = $params->get('vm_display_type', 'text_price');
// image thumbnails options (in Joomla version > 2.5)
$this->config['thumb_image_type'] = $params->get('thumb_image_type', 'full');
// GK4 v3.1 options
$this->config['k2store_support'] = $params->get('k2store_support', 0); // enable K2Store support
$this->config['k2store_show_cart'] = $params->get('k2store_show_cart', 1); // enable showing K2Store "show cart" button
$this->config['k2store_add_to_cart'] = $params->get('k2store_add_to_cart', 1); // enable showing K2Store "add to cart" button
$this->config['k2store_price'] = $params->get('k2store_price', 1); // enable showing K2Store item price
$this->config['k2store_price_text'] = $params->get('k2store_price_text', 1); // enable showing text "Item price" with the item price
$this->config['k2store_currency_place'] = $params->get('k2store_currency_place', 'before'); // specify a currency place
// GK4 v.3.2 options
$this->config['responsive_images'] = $params->get('responsive_images', 0); // enable responsive images support
// GK4 v.3.4 options
$this->config['useRTL'] = $params->get('useRTL', 0);
$this->config['wrapContent'] = $params->get('wrap_content', 0);
// GK4 v.3.3.5 options
$this->config['news_portal_mode_7_width'] = $params->get('news_portal_mode_7_width', 265);
$this->config['news_portal_mode_3_open_first'] = $params->get('news_portal_mode_3_open_first', 1); // open first block automatically
// small validation
if($this->config['list_title_limit'] == 0 && $this->config['list_text_limit'] == 0){
$this->config['news_short_pages'] = 0;
}
if($this->config['news_header_enabled'] == 0) $this->config['news_content_header_pos'] = 'disabled';
if($this->config['news_image_enabled'] == 0) $this->config['news_content_image_pos'] = 'disabled';
if($this->config['news_text_enabled'] == 0) $this->config['news_content_text_pos'] = 'disabled';
if($this->config['news_info_enabled'] == 0) $this->config['news_content_info_pos'] = 'disabled';
if($this->config['news_info2_enabled'] == 0) $this->config['news_content_info2_pos'] = 'disabled';
if($this->config['news_readmore_enabled'] == 0) $this->config['news_content_readmore_pos'] = 'disabled';
if($this->config['news_rs_store_enabled'] == 0) $this->config['news_rs_store_enabled'] = 'disabled';
// read K2Store params
if($this->config['k2store_support'] && file_exists(JPATH_ROOT.DS.'components'.DS.'com_k2store')) {
$this->k2store_params = JComponentHelper::getParams('com_k2store');
}
// parse the crop rules
$temp_crop_rules = explode(';', $this->config['crop_rules']);
$final_crop_rules = array();
// parse every rule
foreach($temp_crop_rules as $rule) {
// divide the rule for the name and data
$temp_rule = explode('=',$rule);
// validation of format
if(count($temp_rule) == 2) {
// create the structure for rule
$final_rule = array(
'type' => $temp_rule[0],
'top' => 0,
'right' => 0,
'bottom' => 0,
'left' => 0
);
// check the type of the rule - class-based or size-based
if(strpos($temp_rule[0], ':') !== FALSE) {
// if the rule is size-based - divide the size
$temp_size = explode(':', $temp_rule[0]);
// validation of format
if(count($temp_size) == 2) {
// and put to the array the base size of image
$final_rule['type'] = array(
'width' => $temp_size[0],
'height' => $temp_size[1]
);
}
}
// get the data about cropping
$temp_crop_size = explode(':', $temp_rule[1]);
// validation of format
if(count($temp_crop_size) == 4) {
// put the data to the structure
$final_rule['top'] = $temp_crop_size[0];
$final_rule['right'] = $temp_crop_size[1];
$final_rule['bottom'] = $temp_crop_size[2];
$final_rule['left'] = $temp_crop_size[3];
}
// override the old rule string with the array structure
array_push($final_crop_rules, $final_rule);
}
}
// override old string-based rules with the more readable array structures
$this->config['crop_rules'] = $final_crop_rules;
}
// GETTING DATA
function getDatas(){
if($this->config['module_mode'] != 'normal') {
if(!class_exists('NSP_GK4_'.$this->config['module_mode'])) {
require_once (dirname(__FILE__).DS.'gk_classes'.DS.'portal_modes'.DS.'gk.'.strtolower($this->config['module_mode']).'.php');
}
//
$method_name = $this->config['module_mode'].'_getData';
$this->content = $method_name($this);
} else {
$db = JFactory::getDBO();
if( $this->config["data_source"] == "com_categories" ||
$this->config["data_source"] == "com_articles" ||
$this->config["data_source"] == "com_all_articles"){
// getting instance of Joomla! com_content source class
$newsClass = new NSP_GK4_Joomla_Source();
// Getting list of categories
$categories = ($this->config["data_source"] != "com_all_articles") ? $newsClass->getSources($this->config) : false;
// getting content
$amountOfArts = ($this->config['news_column'] * $this->config['news_rows'] * $this->config['news_full_pages']) + ($this->config['links_amount'] * $this->config['news_short_pages'] * $this->config['links_columns_amount']);
$this->content = $newsClass->getArticles($categories, $this->config, $amountOfArts);
} else if($this->config["data_source"] == "k2_categories" ||
$this->config["data_source"] == "k2_tags" ||
$this->config["data_source"] == "k2_articles" ||
$this->config["data_source"] == "all_k2_articles" ) {
// getting insance of K2 source class
$newsClass = new NSP_GK4_K2_Source();
// Getting list of categories
$categories = ($this->config["data_source"] != "all_k2_articles") ? $newsClass->getSources($this->config) : false;
// getting content
$amountOfArts = ($this->config['news_column'] * $this->config['news_rows'] * $this->config['news_full_pages']) + ($this->config['links_amount'] * $this->config['news_short_pages'] * $this->config['links_columns_amount']);
$this->content = $newsClass->getArticles($categories, $this->config, $amountOfArts);
$this->content['comments'] = $newsClass->getComments($this->content, $this->config);
} else if($this->config["data_source"] == "redshop_categories" ||
$this->config["data_source"] == "redshop_products" ||
$this->config["data_source"] == "all_redshop_products") {
if (file_exists(JPATH_ROOT.DS.'components'.DS.'com_redshop')) {
$newsClass = new NSP_GK4_Redshop_Source();
// get product helper
if (file_exists(JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'product.php')) {require_once( JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'product.php' ); }
if (file_exists(JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'helper.php')) {require_once( JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'helper.php' ); }
if (file_exists(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'category.php')) {require_once(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'category.php'); }
if($this->config['rs_add_to_cart'] == 1){
if (file_exists(JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'redshop.js.php')) {require_once( JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'redshop.js.php' ); }
}
// include scripts
if (file_exists('components/com_redshop/assets/js/') && $this->config['rs_add_to_cart'] == 1) {
JHTML::Script('attribute.js', 'components/com_redshop/assets/js/',false);
JHTML::Script('common.js', 'components/com_redshop/assets/js/',false);
//JHTML::Script('jquery.tools.min.js', 'components/com_redshop/assets/js/',false);
}
require_once(JPATH_ROOT.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'redshop.js.php');
$doc = & JFactory::getDocument ();
$tmpl = JRequest::getCmd('tmpl');
$view = JRequest::getCmd('view');
$layout = JRequest::getCmd('layout');
$for = JRequest::getWord("for",false);
if($tmpl == 'component' && !$for)
$doc->addStyleDeclaration('html { overflow:scroll; }');
// Getting the configuration
require_once(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'redshop.cfg.php');
require_once(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_redshop'.DS.'helpers'.DS.'configuration.php');
$Redconfiguration = new Redconfiguration();
$Redconfiguration->defineDynamicVars();
require_once(JPATH_SITE. DS .'components'.DS.'com_redshop'.DS.'helpers'.DS.'currency.php');
$session = JFactory::getSession('product_currency');
$post = JRequest::get('POST');
$Itemid= JRequest::getVar('Itemid');
if(isset($post['product_currency']))
$session->set('product_currency',$post['product_currency']);
$currency_symbol = REDCURRENCY_SYMBOL;
$currency_convert = 1;
if($session->get('product_currency')){
$currency_symbol = $session->get('product_currency');
$convertPrice = new convertPrice();
$currency_convert = $convertPrice->convert(1);
}
$script = "window.site_url ='".JURI::root()."';
window.AJAX_CART_BOX ='".AJAX_CART_BOX."';
window.REDSHOP_VIEW ='".$view."';
window.REDSHOP_LAYOUT ='".$layout."';
window.AJAX_CART_URL ='".JRoute::_('index.php?option=com_redshop&view=cart&Itemid='.$Itemid,false)."';
window.REDCURRENCY_SYMBOL ='".REDCURRENCY_SYMBOL."';
window.CURRENCY_SYMBOL_CONVERT ='".$currency_symbol."';
window.CURRENCY_CONVERT ='".$currency_convert."';
window.PRICE_SEPERATOR ='".PRICE_SEPERATOR."';
window.PRODUCT_OUTOFSTOCK_MESSAGE ='".JText::_('PRODUCT_OUTOFSTOCK_MESSAGE')."';
window.PREORDER_PRODUCT_OUTOFSTOCK_MESSAGE ='".JText::_('PREORDER_PRODUCT_OUTOFSTOCK_MESSAGE')."';
window.CURRENCY_SYMBOL_POSITION ='".CURRENCY_SYMBOL_POSITION."';
window.PRICE_DECIMAL ='".PRICE_DECIMAL."';
window.PASSWORD_MIN_CHARACTER_LIMIT ='".JText::_('PASSWORD_MIN_CHARACTER_LIMIT')."';
window.THOUSAND_SEPERATOR ='".THOUSAND_SEPERATOR."';
window.VIEW_CART ='".JText::_('VIEW_CART')."';
window.CONTINUE_SHOPPING ='".JText::_('CONTINUE_SHOPPING')."';
window.CART_SAVE ='".JText::_('CART_SAVE')."';
window.IS_REQUIRED ='".JText::_('IS_REQUIRED')."';
window.ENTER_NUMBER ='".JText::_('ENTER_NUMBER')."';
window.USE_STOCKROOM ='".USE_STOCKROOM."';
window.USE_AS_CATALOG ='".USE_AS_CATALOG."';
window.AJAX_CART_DISPLAY_TIME ='".AJAX_CART_DISPLAY_TIME."';
window.SHOW_PRICE ='".SHOW_PRICE."';
window.DEFAULT_QUOTATION_MODE ='".DEFAULT_QUOTATION_MODE."';
window.PRICE_REPLACE ='".PRICE_REPLACE."';
window.PRICE_REPLACE_URL ='".PRICE_REPLACE_URL."';
window.ZERO_PRICE_REPLACE ='".ZERO_PRICE_REPLACE."';
window.ZERO_PRICE_REPLACE_URL ='".ZERO_PRICE_REPLACE_URL."';
window.OPTIONAL_SHIPPING_ADDRESS ='".OPTIONAL_SHIPPING_ADDRESS."';
window.SHIPPING_METHOD_ENABLE ='".SHIPPING_METHOD_ENABLE."';
window.PRODUCT_ADDIMG_IS_LIGHTBOX ='".PRODUCT_ADDIMG_IS_LIGHTBOX."';
window.ALLOW_PRE_ORDER ='".ALLOW_PRE_ORDER."';
window.ATTRIBUTE_SCROLLER_THUMB_WIDTH ='".ATTRIBUTE_SCROLLER_THUMB_WIDTH."';
window.ATTRIBUTE_SCROLLER_THUMB_HEIGHT ='".ATTRIBUTE_SCROLLER_THUMB_HEIGHT."';
window.PRODUCT_DETAIL_IS_LIGHTBOX ='".PRODUCT_DETAIL_IS_LIGHTBOX."';
window.PLEASE_ENTER_COMPANY_NAME ='".JText::_ ( 'PLEASE_ENTER_COMPANY_NAME', true )."';
window.YOUR_MUST_PROVIDE_A_FIRSTNAME ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_FIRSTNAME', true )."';
window.YOUR_MUST_PROVIDE_A_LASTNAME ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_LASTNAME', true )."';
window.YOUR_MUST_PROVIDE_A_ADDRESS ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_ADDRESS', true )."';
window.YOUR_MUST_PROVIDE_A_ZIP ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_ZIP', true )."';
window.YOUR_MUST_PROVIDE_A_CITY ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_CITY', true )."';
window.YOUR_MUST_PROVIDE_A_PHONE ='".JText::_ ( 'YOUR_MUST_PROVIDE_A_PHONE', true )."';
window.THIS_FIELD_REQUIRED ='".JText::_ ( 'THIS_FIELD_REQUIRED', true )."';
window.THIS_FIELD_REMOTE ='".JText::_ ( 'THIS_FIELD_REMOTE', true )."';
window.THIS_FIELD_URL='".JText::_ ( 'THIS_FIELD_URL', true )."';
window.THIS_FIELD_DATE='".JText::_ ( 'THIS_FIELD_DATE', true )."';
window.THIS_FIELD_DATEISO='".JText::_ ( 'THIS_FIELD_DATEISO', true )."';
window.THIS_FIELD_NUMBER='".JText::_ ( 'THIS_FIELD_NUMBER', true )."';
window.THIS_FIELD_DIGITS='".JText::_ ( 'THIS_FIELD_DIGITS', true )."';
window.THIS_FIELD_CREDITCARD='".JText::_ ( 'THIS_FIELD_CREDITCARD', true )."';
window.THIS_FIELD_EQUALTO='".JText::_ ( 'THIS_FIELD_EQUALTO', true )."';
window.THIS_FIELD_ACCEPT='".JText::_ ( 'THIS_FIELD_ACCEPT', true )."';
window.THIS_FIELD_MAXLENGTH='".JText::_ ( 'THIS_FIELD_MAXLENGTH', true )."';
window.THIS_FIELD_MINLENGTH='".JText::_ ( 'THIS_FIELD_MINLENGTH', true )."';
window.THIS_FIELD_RANGELENGTH='".JText::_ ( 'THIS_FIELD_RANGELENGTH', true )."';
window.THIS_FIELD_RANGE='".JText::_ ( 'THIS_FIELD_RANGE', true )."';
window.THIS_FIELD_MAX='".JText::_ ( 'THIS_FIELD_MAX', true )."';
window.THIS_FIELD_MIN='".JText::_ ( 'THIS_FIELD_MIN', true )."';
window.YOU_MUST_PROVIDE_LOGIN_NAME ='".JText::_ ( 'YOU_MUST_PROVIDE_LOGIN_NAME', true )."';
window.PROVIDE_EMAIL_ADDRESS ='".JText::_ ( 'PROVIDE_EMAIL_ADDRESS', true )."';
window.EMAIL_NOT_MATCH ='".JText::_ ( 'EMAIL_NOT_MATCH', true )."';
window.PASSWORD_NOT_MATCH ='".JText::_ ( 'PASSWORD_NOT_MATCH', true )."';
window.NOOF_SUBATTRIB_THUMB_FOR_SCROLLER ='".NOOF_SUBATTRIB_THUMB_FOR_SCROLLER."';
window.NOT_AVAILABLE ='".JText::_ ( 'NOT_AVAILABLE', true )."';
window.PLEASE_INSERT_HEIGHT ='".JText::_ ( 'PLEASE_INSERT_HEIGHT', true )."';
window.PLEASE_INSERT_WIDTH ='".JText::_ ( 'PLEASE_INSERT_WIDTH', true )."';
window.PLEASE_INSERT_DEPTH ='".JText::_ ( 'PLEASE_INSERT_DEPTH', true )."';
window.PLEASE_INSERT_RADIUS ='".JText::_ ( 'PLEASE_INSERT_RADIUS', true )."';
window.PLEASE_INSERT_UNIT ='".JText::_ ( 'PLEASE_INSERT_UNIT', true )."';
window.THIS_FIELD_IS_REQUIRED ='".JText::_ ( 'THIS_FIELD_IS_REQUIRED', true )."';
window.CREATE_ACCOUNT_CHECKBOX ='".CREATE_ACCOUNT_CHECKBOX."';
window.SHOW_QUOTATION_PRICE ='".SHOW_QUOTATION_PRICE."';";
$document = JFactory::getDocument();
$document->addScriptDeclaration($script);
// Getting list of categories
$categories = $newsClass->getSources($this->config);
// getting content
$amountOfProducts = ($this->config['news_column'] * $this->config['news_rows'] * $this->config['news_full_pages']) + ($this->config['links_amount'] * $this->config['news_short_pages'] * $this->config['links_columns_amount']);
$this->content = $newsClass->getArticles($categories, $this->config, $amountOfProducts);
}
} else {
// VM block
$newsClass = new NSP_GK4_VM_Source();
// Getting list of categories
$categories = $newsClass->getSources($this->config);
// getting content
$amountOfProducts = ($this->config['news_column'] * $this->config['news_rows'] * $this->config['news_full_pages']) + ($this->config['links_amount'] * $this->config['news_short_pages'] * $this->config['links_columns_amount']);
$this->content = $newsClass->getProducts($categories, $this->config, $amountOfProducts);
$this->content['comments'] = $newsClass->getComments($this->content, $this->config);
}
}
}
// RENDERING LAYOUT
function renderLayout() {
if($this->config['module_mode'] !== 'normal') {
$this->render_portal_mode($this->config['module_mode']);
} else {
$renderer = new NSP_GK4_Layout_Parts();
// detecting mode - com_content or K2
$k2_mode = false;
$rs_mode = false;
$vm_mode = false;
$producthelper = '';
$redhelper = '';
//check the source
if($this->config["data_source"] == 'k2_categories' ||
$this->config["data_source"] == 'k2_articles' ||
$this->config["data_source"] == 'all_k2_articles' ||
$this->config["data_source"] == 'k2_tags') {
if($this->config['k2_categories'] != -1){
$k2_mode = true;
}else{ // exception when K2 is not installed
$this->content = array(
"ID" => array(),
"alias" => array(),
"CID" => array(),
"title" => array(),
"text" => array(),
"date" => array(),
"date_publish" => array(),
"author" => array(),
"cat_name" => array(),
"cat_alias" => array(),
"hits" => array(),
"news_amount" => 0,
"rating_sum" => 0,
"rating_count" => 0,
"plugins" => ''
);
}
}
else if($this->config["data_source"] == 'redshop_categories' ||
$this->config["data_source"] == 'redshop_products' ||
$this->config["data_source"] == 'all_redshop_products') {
if($this->config['redshop_categories'] != -1 && file_exists(JPATH_ROOT.DS.'components'.DS.'com_redshop')) {
$rs_mode = true;
$producthelper = new producthelper ();
$redhelper = new redhelper();
}else{ // exception when RedSHOP is not installed
$this->content = array(
"ID" => array(),
"CID" => array(),
"title" => array(),
"text" => array(),
"date" => array(),
"date_publish" => array(),
"price" => array(),
"discount_price" => array(),
"discount_start" => array(),
"discount_end" => array(),
"tax" => array(),
"cat_name" => array(),
"manufacturer" => array(),
"manufacturer_id" => array(),
"product_image" => array(),
"news_amount" => array()
);
}
} elseif($this->config["data_source"] == 'vm_categories' ||
$this->config["data_source"] == 'vm_products') {
if($this->config['vm_categories'] != -1){
$vm_mode = true;
}else{ // exception when VirtueMart is not installed
$this->content = array(
"ID" => array(),
"CID" => array(),
"title" => array(),
"text" => array(),
"date" => array(),
"date_publish" => array(),
"price" => array(),
"price_currency" => array(),
"discount_amount" => array(),
"discount_is_percent" => array(),
"discount_start" => array(),
"discount_end" => array(),
"tax" => array(),
"cat_name" => array(),
"manufacturer" => array(),
"manufacturer_id" => array(),
"product_image" => array(),
"news_amount" => 0
);
}
}
// tables which will be used in generated content
$news_list_tab = array();
$news_html_tab = array();
// Generating content
$uri =& JURI::getInstance();
$li_counter = 0;
$news_k2_store = '';
$news_header = '';
$news_image = '';
$news_readmore = '';
$news_textt = '';
$news_infoo = '';
$news_infoo2 = '';
//
for($i = 0; $i < count($this->content["ID"]); $i++) {
if($i < ($this->config['news_column'] * $this->config['news_rows'] * $this->config['news_full_pages'])) {
// GENERATING NEWS CONTENT
if($k2_mode == FALSE && $rs_mode == FALSE && $vm_mode == FALSE) {
// GENERATING HEADER
if($this->config['news_header_enabled'] == 1) {
$news_header = $renderer->header($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['title'][$i]);
}
// GENERATING IMAGE
if($this->config['news_image_enabled'] == 1) {
$news_image = $renderer->image($this->config, $uri, $this->content['ID'][$i], $this->content['IID'][$i], $this->content['CID'][$i], $this->content['text'][$i], $this->content['title'][$i], $this->content['images'][$i]);
}
// GENERATING READMORE
if($this->config['news_readmore_enabled'] == 1) {
$news_readmore = $renderer->readMore($this->config, $this->content['ID'][$i], $this->content['CID'][$i]);
}
// GENERATING TEXT
if($this->config['news_text_enabled'] == 1) {
$news_textt = $renderer->text($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['text'][$i], $news_readmore);
}
// GENERATE NEWS INFO
if($this->config['news_info_enabled'] == 1) {
$news_infoo = $renderer->info($this->config, $this->content['catname'][$i], $this->content['CID'][$i], $this->content['author'][$i], $this->content['email'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['hits'][$i], $this->content['ID'][$i], $this->content['rating_count'][$i], $this->content['rating_sum'][$i]);
}
// GENERATE NEWS INFO2
if($this->config['news_info2_enabled'] == 1) {
$news_infoo2 = $renderer->info($this->config, $this->content['catname'][$i], $this->content['CID'][$i], $this->content['author'][$i], $this->content['email'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['hits'][$i], $this->content['ID'][$i], $this->content['rating_count'][$i], $this->content['rating_sum'][$i], 2);
}
} else if($rs_mode == FALSE && $vm_mode == FALSE && $k2_mode == TRUE) {
// GENERATING HEADER
if($this->config['news_header_enabled'] == 1) {
$news_header = $renderer->header_k2($this->config, $this->content['ID'][$i], $this->content['alias'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['title'][$i]);
}
// GENERATING IMAGE
if($this->config['news_image_enabled'] == 1) {
$news_image = $renderer->image_k2($this->config, $uri, $this->content['ID'][$i], $this->content['alias'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['text'][$i], $this->content['title'][$i]);
}
// GENERATING READMORE
if($this->config['news_readmore_enabled'] == 1) {
$news_readmore = $renderer->readMore_k2($this->config, $this->content['ID'][$i], $this->content['alias'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i]);
}
// GENERATING TEXT
if($this->config['news_text_enabled'] == 1) {
$news_textt = $renderer->text_k2($this->config, $this->content['ID'][$i], $this->content['alias'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['text'][$i], $news_readmore);
}
// GENERATE NEWS INFO
if($this->config['news_info_enabled'] == 1) {
$news_infoo = $renderer->info_k2($this->config, $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['author'][$i], $this->content['author_id'][$i], $this->content['email'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['hits'][$i], $this->content['ID'][$i], $this->content['alias'][$i], $this->content['comments'], $this->content['rating_count'][$i], $this->content['rating_sum'][$i]);
}
// GENERATE NEWS INFO2
if($this->config['news_info2_enabled'] == 1) {
$news_infoo2 = $renderer->info_k2($this->config, $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['author'][$i], $this->content['author_id'][$i], $this->content['email'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['hits'][$i], $this->content['ID'][$i], $this->content['alias'][$i], $this->content['comments'], $this->content['rating_count'][$i], $this->content['rating_sum'][$i], 2);
}
// GENERATE STORE BLOCK
$news_k2_store = $renderer->store_k2($this->config, $this->content['ID'][$i], $this->content['plugins'][$i], $this->k2store_params);
}
else if ($rs_mode == TRUE && $vm_mode== FALSE && $k2_mode == FALSE){
$ItemData = $producthelper->getMenuInformation(0,0,'','product&pid='.$this->content['ID'][$i]);
$id = $this->content['ID'][$i];
$cid = $producthelper->getCategoryProduct($this->content['ID'][$i]);
$Itemid = $redhelper->getItemid($this->content['ID'][$i]);
$product = $producthelper->getProductById($this->content['ID'][$i]);
// GENERATING HEADER
if($this->config['news_header_enabled'] == 1) {
$news_header = $renderer->header_rs($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['title'][$i], $Itemid);
}
// GENERATING IMAGE
if($this->config['news_image_enabled'] == 1) {
$news_image = $renderer->image_rs($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['product_image'][$i], $this->content['title'][$i], $Itemid);
}
// GENERATING READMORE
if($this->config['news_readmore_enabled'] == 1) {
$news_readmore = $renderer->readMore_rs($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $Itemid);
}
// GENERATING TEXT
if($this->config['news_text_enabled'] == 1) {
$news_textt = $renderer->text_rs($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['text'][$i], $news_readmore, $Itemid);
}
// GENERATE NEWS INFO
if($this->config['news_info_enabled'] == 1) {
$news_infoo = $renderer->info_rs($this->config, $this->content['ID'][$i], $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['manufacturer'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $Itemid, $this->content['manufacturer_id'][$i], 1);
}
// GENERATE NEWS INFO2
if($this->config['news_info2_enabled'] == 1) {
$news_infoo2 = $renderer->info_rs($this->config, $this->content['ID'][$i], $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['manufacturer'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $Itemid, $this->content['manufacturer_id'][$i], 2);
}
// COMPUTE PRICE DEPENDS OF USER ID
$user = &JFactory::getUser();
$price = $producthelper->getProductPrice($this->content['ID'][$i], $this->config['rs_price_with_vat'], $user->id);
$price = $producthelper->getProductFormattedPrice ($price, true);
if($this->config['rs_add_to_cart'] == 1) {
$addToCart = $producthelper->replaceCartTemplate($this->content['ID'][$i],0,0,0,"",false,array(),0,0,0);
$addToCart = str_replace('&', '&', $addToCart);
if($this->config['rs_show_default_cart_button'] == 0){
$btnCode = '<a class=\'nspAddToCart\' onclick="if(displayAddtocartForm(\'addtocart_prd_'.$this->content['ID'][$i];
$btnCode.= '\',\''.$id.'\',\'0\',\'0\', \'user_fields_form\'))';
$btnCode.= '{checkAddtocartValidation(\'addtocart_prd_'.$id.'\',\''.$id.'\',\'0\',\'0\', \'user_fields_form\',\'0\',\'0\',\'0\');}"><span style=\'cursor: pointer;\' id=\'pdaddtocartprd'.$id.'\' title=\'\' class=\'\'>'.JText::_('MOD_NEWS_PRO_GK4_ADD_TO_CART').'</span></a>';
$addToCart = preg_replace('/\<img.*?\>/i', $btnCode, $addToCart);
}
}
// GET THE CURRENCY
$bool = preg_match('/[^0-9]/u',$price, $currency);
$currency = $currency[0];
$bool = preg_match('/[0-9]+/u',$price, $price);
$price = $price[0];
// GENERATE RedSHOP STORE INFO
$news_rs_store = $renderer->store_rs($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $price , $this->content['discount_start'][$i], $this->content['discount_end'][$i], $this->content['tax'][$i], $this->content['discount_price'][$i], $currency, $Itemid, $addToCart);
} else if ($vm_mode == TRUE) {
// GENERATING HEADER
if($this->config['news_header_enabled'] == 1) {
$news_header = $renderer->header_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['title'][$i]);
}
// GENERATING IMAGE
if($this->config['news_image_enabled'] == 1) {
$news_image = $renderer->image_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['product_image'][$i], $this->content['title'][$i]);
}
// GENERATING READMORE
if($this->config['news_readmore_enabled'] == 1) {
$news_readmore = $renderer->readMore_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i]);
}
// GENERATING TEXT
if($this->config['news_text_enabled'] == 1) {
$news_textt = $renderer->text_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['text'][$i], $news_readmore);
}
// GENERATE NEWS INFO
if($this->config['news_info_enabled'] == 1) {
$news_infoo = $renderer->info_vm($this->config, $this->content['ID'][$i], $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['manufacturer'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['comments']);
}
// GENERATE NEWS INFO2
if($this->config['news_info2_enabled'] == 1) {
$news_infoo2 = $renderer->info_vm($this->config, $this->content['ID'][$i], $this->content['cat_name'][$i], $this->content['CID'][$i], $this->content['manufacturer'][$i], ($this->config['date_publish'] == TRUE) ? $this->content['date_publish'][$i] : $this->content['date'][$i], $this->content['comments'], 2);
}
$news_vm_store = $renderer->store_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['price'][$i], $this->content['price_currency'][$i], $this->content['discount_amount'][$i], true, $this->content['discount_start'][$i], $this->content['discount_end'][$i], $this->content['tax'][$i], $this->content['manufacturer_id'][$i]);
}
// PARSING PLUGINS
if($this->config['parse_plugins'] == TRUE) {
$news_textt = JHtml::_('content.prepare', $news_textt);
}
// CLEANING PLUGINS
if($this->config['clean_plugins'] == TRUE) {
$news_textt = preg_replace("/(\{.+?\}.+?\{.+?})|(\{.+?\})/", "", $news_textt);
}
// GENERATE CONTENT FOR TAB
$news_generated_content = ''; // initialize variable
//
for($j = 1;$j < 7;$j++) {
if(
$this->config['wrapContent'] == 1 &&
$this->config['news_image_order'] == 1
) {
if($j == 2) {
$news_generated_content .= '<div class="gkArtContentWrap">';
}
}
if($this->config['news_header_order'] == $j) $news_generated_content .= $news_header;
if($this->config['news_image_order'] == $j) $news_generated_content .= $news_image;
if($this->config['news_text_order'] == $j) $news_generated_content .= $news_textt;
if($this->config['news_info_order'] == $j) $news_generated_content .= $news_infoo;
if($this->config['news_info2_order'] == $j) $news_generated_content .= $news_infoo2;
if($this->config['news_rs_store_enabled'] != 'disabled') {
if($rs_mode != FALSE && $this->config['news_rs_store_order'] == $j) $news_generated_content .= $news_rs_store;
if($vm_mode != FALSE && $this->config['news_rs_store_order'] == $j) $news_generated_content .= $news_vm_store;
if($k2_mode != FALSE && $this->config['news_rs_store_order'] == $j) $news_generated_content .= $news_k2_store;
}
}
//
if($this->config['news_content_readmore_pos'] != 'after') {
$news_generated_content .= $news_readmore;
}
if(
$this->config['wrapContent'] == 1 &&
$this->config['news_image_order'] == 1
) {
$news_generated_content .= '</div>';
}
// creating table with news content
array_push($news_html_tab, $news_generated_content);
} else {
if($k2_mode == FALSE && $vm_mode == FALSE) {
array_push($news_list_tab, $renderer->lists($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['title'][$i], $this->content['text'][$i], $li_counter % 2, $li_counter));
} elseif($k2_mode == TRUE) {
array_push($news_list_tab, $renderer->lists_k2($this->config, $this->content['ID'][$i], $this->content['alias'][$i], $this->content['CID'][$i], $this->content['cat_alias'][$i], $this->content['title'][$i], $this->content['text'][$i], $li_counter % 2, $li_counter));
}
else {
array_push($news_list_tab, $renderer->lists_vm($this->config, $this->content['ID'][$i], $this->content['CID'][$i], $this->content['title'][$i], $this->content['text'][$i], $li_counter % 2, $li_counter));
}
//
$li_counter++;
}
}
/** GENERATING FINAL XHTML CODE START **/
// create instances of basic Joomla! classes
$document = JFactory::getDocument();
$uri = JURI::getInstance();
// add stylesheets to document header
if($this->config["useCSS"] == 1) {
$document->addStyleSheet( $uri->root().'modules/mod_news_pro_gk4/interface/css/style.css', 'text/css' );
}
// add script to the document header
if($this->config['useScript'] == 1) {
$document->addScript($uri->root().'modules/mod_news_pro_gk4/interface/scripts/engine.js');
}
// init $headData variable
$headData = false;
// add scripts with automatic mode to document header
if($this->config['useScript'] == 2) {
// getting module head section datas
unset($headData);
$headData = $document->getHeadData();
// generate keys of script section
$headData_keys = array_keys($headData["scripts"]);
// set variable for false
$engine_founded = false;
// searching phrase mootools in scripts paths
if(array_search($uri->root().'modules/mod_news_pro_gk4/interface/scripts/engine.js', $headData_keys) > 0) {
$engine_founded = true;
}
// if engine doesn't exists in the head section
if(!$engine_founded){
// add new script tag connected with mootools from module
$document->addScript($uri->root().'modules/mod_news_pro_gk4/interface/scripts/engine.js');
}
}
//
require(JModuleHelper::getLayoutPath('mod_news_pro_gk4', 'content'));
require(JModuleHelper::getLayoutPath('mod_news_pro_gk4', 'default'));
}
}
// RENDER PORTAL MODE LAYOUT
function render_portal_mode($mode) {
if(!class_exists('NSP_GK4_'.$mode)) {
require_once (dirname(__FILE__).DS.'gk_classes'.DS.'portal_modes'.DS.'gk.'.strtolower($mode).'.php');
}
$class_name = 'NSP_GK4_'.$mode;
$renderer = new $class_name();
$renderer->init($this);
$renderer->output();
}
}
/* EOF */