Přihlásit se

Joomla 5.2.2 Security & Bugfix Release

Joomla 5.2.2 je nyní k dispozici. Jedná se o bezpečnostní vydání pro Joomla 5.x.

Úprava souboru v PHP - kontrola zápisu

07. bře 2019 15:07 #139360
Ahoj, najde se někdo kdo by mi poradil s úpravou souboru v PHP? Snažím se zveřejnit komentáře, ale mám to asi špatně zapsané. Děkuji moc za radu.
Code:
defined('_JEXEC') or die; JHtml::stylesheet('modules/'.$module->module.'/assets/css/slider.css'); if( !defined('SMART_JQUERY') && $params->get('include_jquery', 0) == "1" ){ JHtml::script('modules/'.$module->module.'/assets/js/jquery-1.8.2.min.js'); JHtml::script('modules/'.$module->module.'/assets/js/jquery-noconflict.js'); define('SMART_JQUERY', 1); } JHtml::script('modules/'.$module->module.'/assets/js/slider.js'); JHtml::script('modules/'.$module->module.'/assets/js/jquery.cj-swipe.js'); ImageHelper::setDefault($params); $options = $params->toObject(); $tag_id ='sj_k2_slider_'.rand().time(); $auto_play = (int)$params->get('play',1); $delay = (int)$params->get('delay',2500); if($auto_play == 1 || ($auto_play == 1 && $delay <= 0) ){ $delay = ($delay > 0)?$delay:2500; }else if($auto_play == 0){ $delay = 0; } $effect = $params->get('effect'); if(!empty($list)){?> <?php if(!empty($options->pretext)) { ?> <div class="pre-text"><?php echo $options->pretext; ?></div> <?php } ?> <div id="<?php echo $tag_id; ?>" class="sj-k2-container-slider" style="<?php if( $options->anchor == "bottom" ){ echo "margin-bottom:40px;"; }?>"> <?php if(($options->title_slider_display == 1) && $options->slider_title_text !=''){?> <div class="page-title"><?php echo $options->slider_title_text;?></div> <?php }?> <?php if($options->anchor =="top"){?> <?php if($options->button_display == 1){?> <div class="page-button <?php echo $options->anchor;?> <?php echo $options->control;?>"> <ul class="control-button preload"> <li class="preview"><i class="fa fa-angle-left"></i></li> <li class="next"><i class="fa fa-angle-right"></i></li> </ul> </div> <?php }}?> <?php $count_items = count($list); if($options->deviceclass_sfx1 > $count_items){ $options->deviceclass_sfx1 = $count_items; } if($options->deviceclass_sfx2 > $count_items){ $options->deviceclass_sfx2 = $count_items; } if($options->deviceclass_sfx3 > $count_items){ $options->deviceclass_sfx3 = $count_items; } if($options->deviceclass_sfx4 > $count_items){ $options->deviceclass_sfx4 = $count_items; } if($options->deviceclass_sfx5 > $count_items){ $options->deviceclass_sfx5 = $count_items; } $deviceclass_sfx = 'preset01-'.$options->deviceclass_sfx1.' '.'preset02-'.$options->deviceclass_sfx2.' '.'preset03-'.$options->deviceclass_sfx3.' '.'preset04-'.$options->deviceclass_sfx4.' '.'preset05-'.$options->deviceclass_sfx5; ?> <div class="slider not-js cols-6 <?php echo $deviceclass_sfx; ?>"> <div class="vpo-wrap"> <div class="vp"> <div class="vpi-wrap"> <?php foreach($list as $item){?> <div class="item"> <div class="item-wrap"> <?php $img = SjK2SliderHelper::getK2Image($item, $params); $img = ImageHelper::init($img)->src(); //v/ar_dump($img);die; //$img = (strpos($img,'http://') !== false || strpos($img,'https://') !== false)?$img:(JURI::root().$img); if($img){ ?> <div class="item-img item-height"> <div class="item-img-info"> <a href="<?php echo $item->link;?>" <?php echo SjK2SliderHelper::parseTarget($options->item_link_target);?>> <img alt="<?php echo $item->displaytitle;?>" src="<?php echo $img;?>"/> </a> </div> </div> <?php } ?> <div class="item-info <?php if( $options->theme == "theme2" ){ echo "item-spotlight"; }?> "> <div class="item-inner"> <?php if($item->displaytitle != '') { ?> <div class="item-title"> <a href="<?php echo $item->link;?>" title="<?php echo $item->displaytitle; ?>" <?php echo SjK2SliderHelper::parseTarget($options->item_link_target);?>> <?php echo $item->displaytitle;?> </a> </div> <?php }?> <div class="item-content"> <?php if($item->tags !=''){?> <div class="tags"> <?php $i = -1; foreach ($item->tags as $tag): $i++; ?> <span class="tag-<?php echo $tag->id.' tag-list'.$i; ?>"> <a class="label label-info" href="<?php echo $tag->link; ?>" title="<?php echo $tag->name; ?>" target="_self"><?php echo $tag->name; ?></a> </span> <?php endforeach; ?> </div> <?php } ?> <div class="m-info"><?php if((int)$params->get('item_created_display',1)) { ?> <div class="item-created"> <i class="fa fa-clock-o"></i> <?php echo JHTML::_('date', $item->created,JText::_('F d, o')) ;?> </div> <?php } else { ?> <?php if($params->get('itemCommentsCounter',1) == 1) {?> <span class="item-comment"> <div class="fa fa-comments-o"></div> <?php require_once(JPATH_ADMINISTRATOR . '/components/com_komento/includes/komento.php'); $model = KT::getModel('comments'); $count = $model->getCount('com_k2', $item0->id); echo $count; ?> </span> </div> <?php }?>

07. bře 2019 15:33 #139363
Odpověď od Rudolf
Joomla Expert
Dobrý den,

to programujete v šabloně modulu?

MiniJoomla! - www.minijoomla.org - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

07. bře 2019 16:06 - 07. bře 2019 16:27 #139365
Odpověď od Joom
Začátečník
Pouze upravuji modul pro K2 a nezobrazují se mi správně počty komentářů (itemCommentsCounter). Respektive nezobrazují se vůbec. Můžete pomoci s kontrolou? Děkuji.

08. bře 2019 12:06 - 08. bře 2019 12:07 #139376
Odpověď od Joom
Začátečník
Ahoj, tak se mi podařilo přijít na svou chybu. Pokud někdo používá komentáře "Komento" v modulu pro K2, tak zápis by mohl být asi takto.

Code:
<div class="m-info"><?php if((int)$params->get('item_created_display',1)) { ?> <div class="item-created"> <i class="fa fa-clock-o"></i> <?php echo JHTML::_('date', $item->created,JText::_('F d, o')) ;?> </div> <?php if($params->get('itemCommentsCounter',1) == 1) {?> <span class="item-comment"> <div class="fa fa-comments-o"></div> <?php require_once(JPATH_ADMINISTRATOR . '/components/com_komento/includes/komento.php'); $model = KT::getModel('comments'); $count = $model->getCount('com_k2', $item->id); echo $count; ?> </span> <?php if($item->displayIntrotext != '' && SjK2SliderHelper::_trimEncode($item->displayIntrotext) != '') { ?> <?php } // readmore display ?> </div> <?php } else { ?> </div> <?php }?>

Powered by Fórum