Dotclear


Ignore:
Timestamp:
10/01/08 10:41:22 (15 years ago)
Author:
olivier
Message:

Fixed a bug in moreTpl.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • plugins/moreTpl/_public.php

    r243 r244  
    328328          */ 
    329329 
    330           public function PrevOrNextEntries($attr,$content) 
     330          public static function PrevOrNextEntries($attr,$content) 
     331          { 
     332               function getPrevOrNextPosts($post,$cat,$lng,$dir,$qty) 
    331333               { 
    332                     function getPrevOrNextPosts($post,$cat,$lng,$dir,$qty) 
    333                     { 
    334                     global $core; 
    335                     if($cat==1) { $params['sql'] = $post->cat_id ? ' AND P.cat_id = '.$post->cat_id : ' AND P.cat_id IS NULL'; } 
    336                     if($lng==1) { $params['sql'] .= $post->post_lang ? ' AND P.post_lang = \''.$core->con->escape($post->post_lang).'\'' : ' AND P.post_lang IS NULL'; } 
    337                     if($dir==1) { $sign='>'; $order='ASC'; } else { $sign='<'; $order='DESC'; } 
    338                     $dt = $post->post_dt; $post_id = $post->post_id; 
    339                     $params['post_type'] = $post->post_type; $params['limit'] = $qty;  $params['order'] = 'post_dt '.$order.', P.post_id '.$order; 
    340                     $params['sql'] .= ' AND ((post_dt = \''.$core->con->escape($dt).'\' AND P.post_id '.$sign.' '.$post_id.') OR post_dt '.$sign.' \''.$core->con->escape($dt).'\') '; 
    341                     $rs = $core->blog->getPosts($params); 
    342                     if ($rs->isEmpty()) { 
    343                     return null; 
    344                     } 
    345  
    346                     return $rs; 
    347                     } 
    348  
    349                          $cat = !empty($attr['cat']) ? $attr['cat'] : '0'; 
    350                          $lng = !empty($attr['lng']) ? $attr['lng'] : '0'; 
    351                          $dir = !empty($attr['dir']) ? $attr['dir'] : '0'; 
    352                          $qty = !empty($attr['qty']) ? $attr['qty'] : '2'; 
    353                          return '<?php $prev_post = getPrevOrNextPosts($_ctx->posts,'.$cat.','.$lng.','.$dir.','.$qty.'); ?>'."\n". 
    354                          '<?php if ($prev_post !== null) : ?>'. 
    355  
    356                               '<?php $_ctx->posts = $prev_post; unset($prev_post);'."\n". 
    357                               'while ($_ctx->posts->fetch()) : ?>'. 
    358                               $content. 
    359                               '<?php endwhile; $_ctx->posts = null; ?>'. 
    360                          "<?php endif; ?>\n"; 
     334               global $core; 
     335               if($cat==1) { $params['sql'] = $post->cat_id ? ' AND P.cat_id = '.$post->cat_id : ' AND P.cat_id IS NULL'; } 
     336               if($lng==1) { $params['sql'] .= $post->post_lang ? ' AND P.post_lang = \''.$core->con->escape($post->post_lang).'\'' : ' AND P.post_lang IS NULL'; } 
     337               if($dir==1) { $sign='>'; $order='ASC'; } else { $sign='<'; $order='DESC'; } 
     338               $dt = $post->post_dt; $post_id = $post->post_id; 
     339               $params['post_type'] = $post->post_type; $params['limit'] = $qty;  $params['order'] = 'post_dt '.$order.', P.post_id '.$order; 
     340               $params['sql'] .= ' AND ((post_dt = \''.$core->con->escape($dt).'\' AND P.post_id '.$sign.' '.$post_id.') OR post_dt '.$sign.' \''.$core->con->escape($dt).'\') '; 
     341               $rs = $core->blog->getPosts($params); 
     342               if ($rs->isEmpty()) { 
     343               return null; 
    361344               } 
    362345 
     346               return $rs; 
     347               } 
     348 
     349                    $cat = !empty($attr['cat']) ? $attr['cat'] : '0'; 
     350                    $lng = !empty($attr['lng']) ? $attr['lng'] : '0'; 
     351                    $dir = !empty($attr['dir']) ? $attr['dir'] : '0'; 
     352                    $qty = !empty($attr['qty']) ? $attr['qty'] : '2'; 
     353                    return '<?php $prev_post = getPrevOrNextPosts($_ctx->posts,'.$cat.','.$lng.','.$dir.','.$qty.'); ?>'."\n". 
     354                    '<?php if ($prev_post !== null) : ?>'. 
     355 
     356                         '<?php $_ctx->posts = $prev_post; unset($prev_post);'."\n". 
     357                         'while ($_ctx->posts->fetch()) : ?>'. 
     358                         $content. 
     359                         '<?php endwhile; $_ctx->posts = null; ?>'. 
     360                    "<?php endif; ?>\n"; 
     361          } 
    363362} 
    364363?> 
Note: See TracChangeset for help on using the changeset viewer.

Sites map