Dotclear

Changeset 2187


Ignore:
Timestamp:
04/14/10 04:31:08 (13 years ago)
Author:
JcDenis
Message:

postExpired 0.2:

  • Added actions choice (status,category,selected)
  • Added template block and value
  • Added behaviors to open choices
  • Enhanced db resquest on public side
Location:
plugins/postExpired
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • plugins/postExpired/_admin.php

    r2174 r2187  
    2727class postExpiredAdmin 
    2828{ 
    29      public static function header() 
    30      { 
    31           return 
    32           dcPage::jsDatePicker(). 
     29     public static function categoriesCombo() 
     30     { 
     31          # Getting categories 
     32          $categories_combo = array( 
     33               __('not changed') => '', 
     34               __('uncategorized') => '.' 
     35          ); 
     36          try { 
     37               $categories = $GLOBALS['core']->blog->getCategories(array('post_type'=>'post')); 
     38               while ($categories->fetch()) { 
     39                    $categories_combo[] = new formSelectOption( 
     40                         str_repeat('  ',$categories->level-1).'• '.html::escapeHTML($categories->cat_title), 
     41                         '.'.$categories->cat_id 
     42                    ); 
     43               } 
     44          } catch (Exception $e) { } 
     45          return $categories_combo; 
     46     } 
     47 
     48     public static function statusCombo() 
     49     { 
     50          return array( 
     51               __('not changed') => '', 
     52               __('pending') => '.-2', 
     53               __('unpublished') => '.0' 
     54          ); 
     55     } 
     56 
     57     public static function selectedCombo() 
     58     { 
     59          return array( 
     60               __('not changed') => '', 
     61               __('selected') => '.1', 
     62               __('not selected') => '.0' 
     63          ); 
     64     } 
     65 
     66     public static function header($posts_actions=true) 
     67     { 
     68          return ($posts_actions ? dcPage::jsDatePicker() : ''). 
    3369          dcPage::jsLoad('index.php?pf=postExpired/js/postexpired.js'); 
    3470     } 
     
    3672     public static function form($post) 
    3773     { 
    38           $post_expired = ''; 
    39           if ($post) { 
    40                $meta = new dcMeta($GLOBALS['core']); 
    41                $rs = $meta->getMeta('postexpired',1,null,$post->post_id); 
    42                $post_expired = $rs->isEmpty() ? '' : date('Y-m-d H:i',strtotime($rs->meta_id)); 
     74          global $core; 
     75          $expired_date = $expired_status = $expired_cat = $expired_selected = ''; 
     76 
     77          if ($post) 
     78          { 
     79               $meta = new dcMeta($core); 
     80               $rs_date = $meta->getMeta('postexpired',1,null,$post->post_id); 
     81               if (!$rs_date->isEmpty()) 
     82               { 
     83                    $expired_date = date('Y-m-d H:i',strtotime($rs_date->meta_id)); 
     84                     
     85                    $rs_status = $meta->getMeta('postexpiredstatus',1,null,$post->post_id); 
     86                    $expired_status = $rs_status->isEmpty() ? '' : (string) $rs_status->meta_id; 
     87                     
     88                    $rs_cat = $meta->getMeta('postexpiredcat',1,null,$post->post_id); 
     89                    $expired_cat = $rs_cat->isEmpty() ? '' : (string) $rs_cat->meta_id; 
     90                     
     91                    $rs_selected = $meta->getMeta('postexpiredselected',1,null,$post->post_id); 
     92                    $expired_selected = $rs_selected->isEmpty() ? '' : (string) $rs_selected->meta_id; 
     93               } 
    4394          } 
    4495 
    4596          echo  
    46           '<h3 class="clear">'.__('Expired date').'</h3>'. 
    47           '<p><label>'. 
    48           form::field('post_expired',16,16,$post_expired,'',3). 
     97          '<h3 id="postexpired-form-title">'.__('Expired date').'</h3>'. 
     98          '<div id="postexpired-form-content">'. 
     99          '<p><label>'.__('Date:'). 
     100          form::field('post_expired_date',16,16,$expired_date,'',3). 
    49101          '</label></p>'. 
    50           '<p class="form-note">'.__('Leave it empty for no expired date.').'</p>'; 
     102          '<p><label>'.__('Change status on expire:'). 
     103          form::combo('post_expired_status',self::statusCombo(),$expired_status,'',3). 
     104          '</label></p>'. 
     105          '<p><label>'.__('Change category on expire:'). 
     106          form::combo('post_expired_cat',self::categoriesCombo(),$expired_cat,'',3). 
     107          '</label></p>'. 
     108          '<p><label>'.__('Change selection on expire:'). 
     109          form::combo('post_expired_selected',self::selectedCombo(),$expired_selected,'',3). 
     110          '</label></p>'; 
     111           
     112          # --BEHAVIOR-- adminPostExpiredFormSidebar 
     113          $core->callbehavior('adminPostExpiredFormSidebar',$post); 
     114           
     115          echo '</div>'; 
    51116     } 
    52117 
    53118     public static function set(&$cur,&$post_id) 
    54119     { 
    55           if (!isset($_POST['post_expired'])) return; 
     120          global $core; 
     121          if (!isset($_POST['post_expired_date'])) return; 
    56122 
    57123          $post_id = (integer) $post_id; 
    58           $meta = new dcMeta($GLOBALS['core']); 
     124          $meta = new dcMeta($core); 
     125 
     126          # --BEHAVIOR-- adminBeforePostExpiredSave 
     127          $core->callBehavior('adminBeforePostExpiredSave',$cur,$post_id); 
     128 
     129          self::del($post_id); 
     130 
     131          if (!empty($_POST['post_expired_date'])  
     132           && (!empty($_POST['post_expired_status'])  
     133            || !empty($_POST['post_expired_cat'])  
     134            || !empty($_POST['post_expired_selected']))) 
     135          { 
     136               $post_expired_date = date('Y-m-d H:i:00',strtotime($_POST['post_expired_date'])); 
     137               $meta->setPostMeta($post_id,'postexpired',$post_expired_date); 
     138 
     139               if (!empty($_POST['post_expired_status'])) { 
     140                    $meta->setPostMeta($post_id,'postexpiredstatus',(string) $_POST['post_expired_status']); 
     141               } 
     142               if (!empty($_POST['post_expired_selected'])) { 
     143                    $meta->setPostMeta($post_id,'postexpiredcat',(string) $_POST['post_expired_cat']); 
     144               } 
     145               if (!empty($_POST['post_expired_selected'])) { 
     146                    $meta->setPostMeta($post_id,'postexpiredselected',(string) $_POST['post_expired_selected']); 
     147               } 
     148          } 
     149 
     150          # --BEHAVIOR-- adminAfterPostExpiredSave 
     151          $core->callBehavior('adminAfterPostExpiredSave',$cur,$post_id); 
     152     } 
     153 
     154     public static function del($post_id) 
     155     { 
     156          global $core; 
     157 
     158          $post_id = (integer) $post_id; 
     159          $meta = new dcMeta($core); 
     160 
     161          # --BEHAVIOR-- adminBeforePostExpiredDelete 
     162          $core->callBehavior('adminBeforePostExpiredDelete',$post_id); 
     163 
    59164          $meta->delPostMeta($post_id,'postexpired'); 
    60  
    61           if (!empty($_POST['post_expired'])) { 
    62                $post_expired = date('Y-m-d H:i:00',strtotime($_POST['post_expired'])); 
    63                $meta->setPostMeta($post_id,'postexpired',$post_expired); 
    64           } 
    65      } 
    66  
    67      public static function del($post_id) 
    68      { 
    69           $post_id = (integer) $post_id; 
    70           $meta = new dcMeta($GLOBALS['core']); 
    71           $meta->delPostMeta($post_id,'postexpired'); 
     165          $meta->delPostMeta($post_id,'postexpiredstatus'); 
     166          $meta->delPostMeta($post_id,'postexpiredcat'); 
     167          $meta->delPostMeta($post_id,'postexpiredselected'); 
    72168     } 
    73169 
     
    84180     public static function action(&$core,$posts,$action,$redir) 
    85181     { 
    86           if ($action == 'postexpired_add' && !empty($_POST['new_post_expired'])  
    87            && $core->auth->check('usage,contentadmin',$core->blog->id)) 
    88           { 
     182          if ($action == 'action_postexpired_add') 
     183          { 
     184               # --BEHAVIOR-- adminPostExpiredActions 
     185               $core->callBehavior('adminPostExpiredActions',$core,$posts,$action,$redir); 
     186 
     187               if (!$core->auth->check('usage,contentadmin',$core->blog->id)  
     188                || empty($_POST['new_post_expired_date'])  
     189                || (empty($_POST['new_post_expired_status'])  
     190                 && empty($_POST['new_post_expired_cat'])  
     191                 && empty($_POST['new_post_expired_selected']))) 
     192               { 
     193                    http::redirect($redir); 
     194               } 
     195 
    89196               try { 
    90197                    $meta = new dcMeta($core); 
    91                     $new_post_expired = date('Y-m-d H:i:00',strtotime($_POST['new_post_expired'])); 
     198                    $new_post_expired_date = date('Y-m-d H:i:00',strtotime($_POST['new_post_expired_date'])); 
    92199 
    93200                    while ($posts->fetch()) 
    94201                    { 
    95202                         $rs = $meta->getMeta('postexpired',1,null,$posts->post_id); 
    96                          if ($rs->isEmpty()) { 
    97                               $meta->setPostMeta($posts->post_id,'postexpired',$new_post_expired); 
     203                         if ($rs->isEmpty()) 
     204                         { 
     205                              $meta->setPostMeta($posts->post_id,'postexpired',$new_post_expired_date); 
     206 
     207                              if (!empty($_POST['new_post_expired_status'])) { 
     208                                   $meta->setPostMeta($posts->post_id,'postexpiredstatus',$_POST['new_post_expired_status']); 
     209                              } 
     210                              if (!empty($_POST['new_post_expired_cat'])) { 
     211                                   $meta->setPostMeta($posts->post_id,'postexpiredcat',$_POST['new_post_expired_cat']); 
     212                              } 
     213                              if (!empty($_POST['new_post_expired_selected'])) { 
     214                                   $meta->setPostMeta($posts->post_id,'postexpiredselected',$_POST['new_post_expired_selected']); 
     215                              } 
    98216                         } 
    99217                    } 
     
    104222               } 
    105223          } 
    106           elseif ($action == 'postexpired_remove' && !empty($_POST['meta_id'])  
    107            && $core->auth->check('delete,contentadmin',$core->blog->id)) 
    108           { 
     224          elseif ($action == 'action_postexpired_remove') 
     225          { 
     226               if (empty($_POST['rmv_post_expired'])  
     227                || !$core->auth->check('delete,contentadmin',$core->blog->id)) 
     228               { 
     229                    http::redirect($redir); 
     230               } 
     231 
    109232               try { 
    110233                    $meta = new dcMeta($core); 
    111                     while ($posts->fetch()) 
     234 
     235                    $posts_ids = array(); 
     236                    while($posts->fetch()) 
    112237                    { 
    113                          foreach ($_POST['meta_id'] as $v) 
    114                          { 
    115                               $meta->delPostMeta($posts->post_id,'postexpired',$v); 
    116                          } 
    117                     } 
     238                         $posts_ids[] = $posts->id; 
     239                    } 
     240 
     241                    $rs_params['no_content'] = true; 
     242                    $rs_params['post_id'] = $posts_ids; 
     243                    $rs_params['meta_id'] = 'postexpired'; 
     244                    $rs = $meta->getPostsByMeta($rs_params); 
     245 
     246                    while ($rs->fetch()) 
     247                    { 
     248                         self::del($rs->post_id); 
     249                    } 
     250 
    118251                    http::redirect($redir); 
    119252               } 
     
    128261          if ($action == 'postexpired_add') 
    129262          { 
    130                echo 
     263               echo self::header(). 
    131264               '<h2>'.__('Add expired date to entries').'</h2>'. 
     265               '<p>'.__('It will be added only if there is no expired date on entry.').'<p>'. 
    132266               '<form action="posts_actions.php" method="post">'. 
    133                '<p><label>'.__('Expired date:'). 
    134                form::field('new_post_expired',16,16,''). 
     267               '<p><label>'.__('Date:'). 
     268               form::field('new_post_expired_date',16,16,'','',2). 
    135269               '</label></p>'. 
    136                '<p class="form-note">'.__('It will be added only if there is no expired date on entry.').'<p>'. 
     270               '<p><label>'.__('Change status on expire:'). 
     271               form::combo('new_post_expired_status',self::statusCombo(),'','',2). 
     272               '</label></p>'. 
     273               '<p><label>'.__('Change category on expire:'). 
     274               form::combo('new_post_expired_cat',self::categoriesCombo(),'','',2). 
     275               '</label></p>'. 
     276               '<p><label>'.__('Change selection on expire:'). 
     277               form::combo('new_post_expired_selected',self::selectedCombo(),'','',2). 
     278               '</label></p><p>'; 
     279 
     280               # --BEHAVIOR-- adminPostExpiredActionsContent 
     281               $core->callBehavior('adminPostExpiredActionsContent',$core,$action,$hidden_fields); 
     282 
     283               echo  
    137284               $hidden_fields. 
    138285               $core->formNonce(). 
    139                form::hidden(array('action'),'postexpired_add'). 
     286               form::hidden(array('action'),'action_postexpired_add'). 
    140287               '<input type="submit" value="'.__('save').'" /></p>'. 
    141288               '</form>'; 
     
    146293               $dts = array(); 
    147294 
    148                foreach ($_POST['entries'] as $id) { 
     295               foreach ($_POST['entries'] as $id) 
     296               { 
    149297                    $rs = $meta->getMeta('postexpired',1,null,$id); 
    150298                    if ($rs->isEmpty()) continue; 
     
    170318               '<fieldset><legend>'.__('Following expired date have been found in selected entries:').'</legend>'; 
    171319 
    172                foreach ($dts as $k => $n) { 
     320               foreach ($dts as $k => $n) 
     321               { 
    173322                    $label = '<label class="classic">%s %s</label>'; 
    174323                    if ($posts_count == $n) { 
     
    176325                    } 
    177326                    echo '<p>'.sprintf($label, 
    178                               form::checkbox(array('meta_id[]'),html::escapeHTML($k)), 
     327                              form::checkbox(array('rmv_post_expired[]'),html::escapeHTML($k)), 
    179328                              date('Y-m-d H:i',strtotime($k)) 
    180329                         ).'</p>'; 
     
    185334               $hidden_fields. 
    186335               $core->formNonce(). 
    187                form::hidden(array('action'),'postexpired_remove'). 
     336               form::hidden(array('action'),'action_postexpired_remove'). 
    188337               '</fieldset></form>'; 
    189338          } 
  • plugins/postExpired/_define.php

    r2174 r2187  
    1515$this->registerModule( 
    1616     /* Name */               "Expired entries", 
    17      /* Description*/         "Set entries offline at a given date", 
     17     /* Description*/         "Change entries options at a given date", 
    1818     /* Author */             "JC Denis", 
    19      /* Version */            '0.1', 
     19     /* Version */            '0.2', 
    2020     /* Permissions */        'contentadmin' 
    2121); 
    22      /* date */          #20100410 
     22     /* date */          #20100413 
    2323?> 
  • plugins/postExpired/_prepend.php

    r2174 r2187  
    1414if (!$GLOBALS['core']->plugins->moduleExists('metadata')){return;} 
    1515 
    16  
    1716?> 
  • plugins/postExpired/_public.php

    r2174 r2187  
    1212 
    1313if (!defined('DC_RC_PATH')){return;} 
    14 if (!$core->plugins->moduleExists('metadata') || !in_array($core->url->type,array('default','feed'))) {return;} 
    15  
    16 $core->addBehavior('publicBeforeDocument',array('publicBehaviorPostExpired','unpublishExpiredEntries')); 
     14if (!$core->plugins->moduleExists('metadata')){return;} 
     15 
     16__('Expired on'); 
     17__('This entry has no expirion date'); 
     18 
     19if (in_array($core->url->type,array('default','feed'))) { 
     20     $core->addBehavior('publicBeforeDocument',array('publicBehaviorPostExpired','unpublishExpiredEntries')); 
     21} 
     22$core->addBehavior('coreBlogGetPosts',array('publicBehaviorPostExpired','coreBlogGetPosts')); 
     23 
     24$core->tpl->addBlock('EntryExpiredIf',array('tplPostExpired','EntryExpiredIf')); 
     25$core->tpl->addValue('EntryExpiredDate',array('tplPostExpired','EntryExpiredDate')); 
     26$core->tpl->addValue('EntryExpiredTime',array('tplPostExpired','EntryExpiredTime')); 
    1727 
    1828class publicBehaviorPostExpired 
     
    2030     public static function unpublishExpiredEntries($core) 
    2131     { 
    22           # Get expired dates 
    23           $params['columns'][] = 'meta_id'; 
    24           $params['no_content'] = true; 
    25           $params['post_status'] = 1; 
    26           $params['from'] = ', '.$core->prefix.'meta META '; 
    27           $params['sql'] = 'AND META.post_id = P.post_id '; 
    28           $params['sql'] .= "AND META.meta_type = 'postexpired' "; 
    29           $posts =  $core->auth->sudo(array($core->blog,'getPosts'),$params); 
     32          $meta = new dcMeta($core); 
     33 
     34          # Get expired dates and post_id 
     35          $posts = $core->con->select( 
     36               'SELECT P.post_id, P.post_tz, META.meta_id '. 
     37               'FROM '.$core->prefix.'post P '. 
     38               'INNER JOIN '.$core->prefix.'meta META '. 
     39               'ON META.post_id = P.post_id '. 
     40               "WHERE blog_id = '".$core->con->escape($core->blog->id)."' ". 
     41               "AND P.post_type = 'post' ". 
     42               "AND META.meta_type = 'postexpired' " 
     43          ); 
    3044          # No expired date 
    3145          if ($posts->isEmpty()) { 
     
    4458               if ($now_tz > $meta_tz) 
    4559               { 
    46                     # Update post 
    47                     $post_cur->clean(); 
    48                     $post_cur->post_upddt = date('Y-m-d H:i:s',$now_tz); 
    49                     $post_cur->post_status = 0; 
    50                     $post_cur->update( 
     60                    # Delete meta for expired date 
     61                    $core->auth->sudo(array($meta,'delPostMeta'),$posts->post_id,'postexpired'); 
     62                    # Retrieve action on 'post_status' 
     63                    $rs_status = $core->con->select( 
     64                         'SELECT meta_id '. 
     65                         'FROM '.$core->prefix.'meta '. 
    5166                         'WHERE post_id = '.$posts->post_id.' '. 
    52                          "AND blog_id = '".$core->con->escape($core->blog->id)."' " 
     67                         "AND meta_type = 'postexpiredstatus' ". 
     68                         $core->con->limit(1) 
    5369                    ); 
    54                     # Remove expired date 
    55                     $meta = new dcMeta($core); 
    56                     $core->auth->sudo(array($meta,'delPostMeta'),$posts->post_id,'postexpired'); 
    57                     # Say blog is updated 
    58                     $core->blog->triggerBlog(); 
     70                    # Retrieve action on 'cat_id' 
     71                    $rs_cat = $core->con->select( 
     72                         'SELECT meta_id '. 
     73                         'FROM '.$core->prefix.'meta '. 
     74                         'WHERE post_id = '.$posts->post_id.' '. 
     75                         "AND meta_type = 'postexpiredcat' ". 
     76                         $core->con->limit(1) 
     77                    ); 
     78                    # Retrieve action on 'post_selected' 
     79                    $rs_selected = $core->con->select( 
     80                         'SELECT meta_id '. 
     81                         'FROM '.$core->prefix.'meta '. 
     82                         'WHERE post_id = '.$posts->post_id.' '. 
     83                         "AND meta_type = 'postexpiredselected' ". 
     84                         $core->con->limit(1) 
     85                    ); 
     86 
     87                    # --BEHAVIOR-- publicBeforePostExpiredUpdate 
     88                    $core->callbehavior('publicBeforePostExpiredUpdate',$posts->post_id,$posts->meta_id,$posts->post_tz); 
     89 
     90                    # If there are actions to do 
     91                    if (!$rs_status->isEmpty()  
     92                     || !$rs_cat->isEmpty()  
     93                     || !$rs_selected->isEmpty()) 
     94                    { 
     95                         # Prepare post cursor 
     96                         $post_cur->clean(); 
     97                         $post_cur->post_upddt = date('Y-m-d H:i:s',$now_tz); 
     98                         # Action on 'post_status' 
     99                         if (!$rs_status->isEmpty()) 
     100                         { 
     101                              # Set status 
     102                              $post_status = (integer) substr($rs_status->meta_id,1); 
     103                              $post_cur->post_status = $post_status; 
     104 
     105                              # Delete meta record for status 
     106                              $core->auth->sudo(array($meta,'delPostMeta'),$posts->post_id,'postexpiredstatus'); 
     107                         } 
     108                         # Action on 'cat_id' 
     109                         if (!$rs_cat->isEmpty()) 
     110                         { 
     111                              # Set category 
     112                              $post_cat = (integer) substr($rs_cat->meta_id,1); 
     113                              $post_cur->cat_id = $post_cat ? $post_cat : null; 
     114 
     115                              # Delete meta record for category 
     116                              $core->auth->sudo(array($meta,'delPostMeta'),$posts->post_id,'postexpiredcat'); 
     117                         } 
     118                         # Action on 'post_selected' 
     119                         if (!$rs_selected->isEmpty()) 
     120                         { 
     121                              # Set selected 
     122                              $post_selected = (integer) substr($rs_selected->meta_id,1); 
     123                              $post_cur->post_selected = $post_selected ? 1 : 0; 
     124 
     125                              # Delete meta record for selected 
     126                              $core->auth->sudo(array($meta,'delPostMeta'),$posts->post_id,'postexpiredselected'); 
     127                         } 
     128                         # Update post 
     129                         $post_cur->update( 
     130                              'WHERE post_id = '.$posts->post_id.' '. 
     131                              "AND blog_id = '".$core->con->escape($core->blog->id)."' " 
     132                         ); 
     133                         # Say blog is updated 
     134                         $core->blog->triggerBlog(); 
     135                    } 
     136 
     137                    # --BEHAVIOR-- publicAfterPostExpiredUpdate 
     138                    $core->callbehavior('publicAfterPostExpiredUpdate',$posts->post_id,$posts->meta_id,$posts->post_tz); 
    59139               } 
    60140          } 
    61141     } 
     142 
     143     public static function coreBlogGetPosts(&$rs) 
     144     { 
     145          $rs->extend('rsExtPostExpiredPublic'); 
     146     } 
     147} 
     148 
     149class rsExtPostExpiredPublic extends rsExtPost 
     150{ 
     151     public static function postExpiredDate(&$rs,$absolute_urls=false) 
     152     { 
     153          if (!$rs->postexpired[$rs->post_id]) { 
     154               $meta = new dcMeta($rs->core); 
     155               $rs_date = $meta->getMeta('postexpired',1,null,$rs->post_id); 
     156               return $rs_date->isEmpty() ? null : (string) $rs_date->meta_id; 
     157          } 
     158          return $rs->postexpired[$rs->post_id]; 
     159     } 
     160} 
     161 
     162class tplPostExpired 
     163{ 
     164     public static function EntryExpiredIf($attr,$content) 
     165     { 
     166          $if = array(); 
     167          $operator = isset($attr['operator']) ? self::getOperator($attr['operator']) : '&&'; 
     168 
     169          if (isset($attr['has_date'])) 
     170          { 
     171               $sign = (boolean) $attr['has_date'] ? '!' : '='; 
     172               $if[] = '(null '.$sign.'== $_ctx->posts->postExpiredDate())'; 
     173          } 
     174          else { 
     175               $if[] = '(null !== $_ctx->posts->postExpiredDate())'; 
     176          } 
     177 
     178          return  
     179          "<?php if(".implode(' '.$operator.' ',$if).") : ?>\n". 
     180          $content. 
     181          "<?php endif; ?>\n"; 
     182     } 
     183 
     184     public static function EntryExpiredDate($attr) 
     185     { 
     186          $format = !empty($attr['format']) ? addslashes($attr['format']) : ''; 
     187          $f = $GLOBALS['core']->tpl->getFilters($attr); 
     188 
     189          if (!empty($attr['rfc822'])) 
     190               $res = sprintf($f,"dt::rfc822(strtotime(\$_ctx->posts->postExpiredDate()),\$_ctx->posts->post_tz)"); 
     191          elseif (!empty($attr['iso8601'])) 
     192               $res = sprintf($f,"dt::iso8601(strtotime(\$_ctx->posts->postExpiredDate(),\$_ctx->posts->post_tz)"); 
     193          elseif ($format) 
     194               $res = sprintf($f,"dt::dt2str('".$format."',\$_ctx->posts->postExpiredDate())"); 
     195          else  
     196               $res = sprintf($f,"dt::dt2str((!version_compare(DC_VERSION,'2.1.6','<=') ? \$core->blog->settings->system->date_format : \$core->blog->settings->date_format),\$_ctx->posts->postExpiredDate())"); 
     197 
     198          return '<?php if (null !== $_ctx->posts->postExpiredDate()) { echo '.$res.'; } ?>'; 
     199     } 
     200 
     201     public static function EntryExpiredTime($attr) 
     202     { 
     203          return '<?php if (null !== $_ctx->posts->postExpiredDate()) { echo '.sprintf($GLOBALS['core']->tpl->getFilters($attr),"dt::dt2str(".(!empty($attr['format']) ? "'".addslashes($attr['format'])."'" : "(!version_compare(DC_VERSION,'2.1.6','<=') ? \$core->blog->settings->system->time_format : \$core->blog->settings->time_format)").",\$_ctx->posts->postExpiredDate())").'; } ?>'; 
     204     } 
     205 
     206     protected static function getOperator($op) 
     207     { 
     208          switch (strtolower($op)) 
     209          { 
     210               case 'or': 
     211               case '||': 
     212                    return '||'; 
     213               case 'and': 
     214               case '&&': 
     215               default: 
     216                    return '&&'; 
     217          } 
     218     } 
    62219} 
    63220?> 
  • plugins/postExpired/js/postexpired.js

    r2174 r2187  
    1111 
    1212$(function(){ 
    13      var pe_field=document.getElementById('post_expired'); 
    14      if(pe_field!=undefined){ 
    15           var pe_dtPick=new datePicker(pe_field); 
    16           pe_dtPick.img_top='0.5em'; 
    17           pe_dtPick.draw(); 
     13     var post_pe_field=document.getElementById('post_expired_date'); 
     14     if(post_pe_field!=undefined){ 
     15          var post_pe_dtPick=new datePicker(post_pe_field); 
     16          post_pe_dtPick.img_top='1.5em'; 
     17          post_pe_dtPick.draw(); 
    1818     } 
     19     var act_pe_field=document.getElementById('new_post_expired_date'); 
     20     if(act_pe_field!=undefined){ 
     21          var act_pe_dtPick=new datePicker(act_pe_field); 
     22          act_pe_dtPick.img_top='1.5em'; 
     23          act_pe_dtPick.draw(); 
     24     } 
     25     $('#postexpired-form-title').toggleWithLegend($('#postexpired-form-content'),{cookie:'dcx_postexpired_admin_form_sidebar'}); 
    1926}); 
  • plugins/postExpired/locales/fr/main.lang.php

    r2174 r2187  
    11<?php 
    22// Language: français  
    3 // Module: postExpired - 0.1 
    4 // Date: 2010-04-10 17:12:27  
     3// Module: postExpired - 0.2 
     4// Date: 2010-04-14 02:18:31  
    55// Translated with dcTranslater - 1.3  
    66 
    7 #_admin.php:46 
     7#_admin.php:33 
     8#_admin.php:51 
     9#_admin.php:60 
     10$GLOBALS['__l10n']['not changed'] = 'inchangé'; 
     11 
     12#_admin.php:34 
     13$GLOBALS['__l10n']['uncategorized'] = 'non catégorisé'; 
     14 
     15#_admin.php:97 
    816$GLOBALS['__l10n']['Expired date'] = 'Date de péremption'; 
    917 
    10 #_admin.php:50 
    11 $GLOBALS['__l10n']['Leave it empty for no expired date.'] = 'Laisser vide pour sans expiration.'; 
     18#_admin.php:102 
     19#_admin.php:270 
     20$GLOBALS['__l10n']['Change status on expire:'] = 'Changer de status à cette date :'; 
    1221 
    13 #_admin.php:77 
    14 #_admin.php:80 
     22#_admin.php:105 
     23#_admin.php:273 
     24$GLOBALS['__l10n']['Change category on expire:'] = 'Changer da catégorie à cette date :'; 
     25 
     26#_admin.php:108 
     27#_admin.php:276 
     28$GLOBALS['__l10n']['Change selection on expire:'] = 'Changer la selecion à cette date :'; 
     29 
     30#_admin.php:173 
     31#_admin.php:176 
    1532$GLOBALS['__l10n']['Expired entries'] = 'Billets périmés'; 
    1633 
    17 #_admin.php:77 
     34#_admin.php:173 
    1835$GLOBALS['__l10n']['add expired date'] = 'ajouter des dates de péremption'; 
    1936 
    20 #_admin.php:80 
     37#_admin.php:176 
    2138$GLOBALS['__l10n']['remove expired date'] = 'retirer des dates de péremption'; 
    2239 
    23 #_admin.php:131 
     40#_admin.php:264 
    2441$GLOBALS['__l10n']['Add expired date to entries'] = 'Ajouter une date de péremption aux billets'; 
    2542 
    26 #_admin.php:133 
    27 $GLOBALS['__l10n']['Expired date:'] = 'Date de péremption :'; 
    28  
    29 #_admin.php:136 
     43#_admin.php:265 
    3044$GLOBALS['__l10n']['It will be added only if there is no expired date on entry.'] = 'Ajouter uniquement si il n\'y a pas de date de péremption sur le billet.'; 
    3145 
    32 #_admin.php:159 
     46#_admin.php:307 
    3347$GLOBALS['__l10n']['Remove selected expired date from entries'] = 'Retirer les dates de péremption sélectionnées des billets'; 
    3448 
    35 #_admin.php:162 
     49#_admin.php:310 
    3650$GLOBALS['__l10n']['No expired date for selected entries'] = 'Pas de date de peremption sur les billets sélectionnés'; 
    3751 
    38 #_admin.php:170 
     52#_admin.php:318 
    3953$GLOBALS['__l10n']['Following expired date have been found in selected entries:'] = 'Les dates de péremption suivante ont été trouvé sur les billets sélectionnés :'; 
    4054 
     55#_public.php:16 
     56$GLOBALS['__l10n']['Expired on'] = 'Expire le'; 
     57 
     58#_public.php:17 
     59$GLOBALS['__l10n']['This entry has no expirion date'] = 'Ce billet n\'a pas de date d\'expiration'; 
     60 
    4161?> 
  • plugins/postExpired/locales/fr/main.po

    r2174 r2187  
    11# Language: français 
    2 # Module: postExpired - 0.1 
    3 # Date: 2010-04-10 17:12:27 
     2# Module: postExpired - 0.2 
     3# Date: 2010-04-14 02:18:31 
    44# Translated with translater 1.3 
    55 
     
    77msgstr "" 
    88"Content-Type: text/plain; charset=UTF-8\n" 
    9 "Project-Id-Version: postExpired 0.1\n" 
     9"Project-Id-Version: postExpired 0.2\n" 
    1010"POT-Creation-Date: \n" 
    11 "PO-Revision-Date: 2010-04-10T17:12:27+00:00\n" 
     11"PO-Revision-Date: 2010-04-14T02:18:31+00:00\n" 
    1212"Last-Translator: JC Denis\n" 
    1313"Language-Team: \n" 
     
    1515"Content-Transfer-Encoding: 8bit\n" 
    1616 
    17 #: _admin.php:46 
     17#: _admin.php:33 
     18#: _admin.php:51 
     19#: _admin.php:60 
     20msgid "not changed" 
     21msgstr "inchangé" 
     22 
     23#: _admin.php:34 
     24msgid "uncategorized" 
     25msgstr "non catégorisé" 
     26 
     27#: _admin.php:97 
    1828msgid "Expired date" 
    1929msgstr "Date de péremption" 
    2030 
    21 #: _admin.php:50 
    22 msgid "Leave it empty for no expired date." 
    23 msgstr "Laisser vide pour sans expiration." 
     31#: _admin.php:102 
     32#: _admin.php:270 
     33msgid "Change status on expire:" 
     34msgstr "Changer de status à cette date :" 
    2435 
    25 #: _admin.php:77 
    26 #: _admin.php:80 
     36#: _admin.php:105 
     37#: _admin.php:273 
     38msgid "Change category on expire:" 
     39msgstr "Changer da catégorie à cette date :" 
     40 
     41#: _admin.php:108 
     42#: _admin.php:276 
     43msgid "Change selection on expire:" 
     44msgstr "Changer la selecion à cette date :" 
     45 
     46#: _admin.php:173 
     47#: _admin.php:176 
    2748msgid "Expired entries" 
    2849msgstr "Billets périmés" 
    2950 
    30 #: _admin.php:77 
     51#: _admin.php:173 
    3152msgid "add expired date" 
    3253msgstr "ajouter des dates de péremption" 
    3354 
    34 #: _admin.php:80 
     55#: _admin.php:176 
    3556msgid "remove expired date" 
    3657msgstr "retirer des dates de péremption" 
    3758 
    38 #: _admin.php:131 
     59#: _admin.php:264 
    3960msgid "Add expired date to entries" 
    4061msgstr "Ajouter une date de péremption aux billets" 
    4162 
    42 #: _admin.php:133 
    43 msgid "Expired date:" 
    44 msgstr "Date de péremption :" 
    45  
    46 #: _admin.php:136 
     63#: _admin.php:265 
    4764msgid "It will be added only if there is no expired date on entry." 
    4865msgstr "Ajouter uniquement si il n'y a pas de date de péremption sur le billet." 
    4966 
    50 #: _admin.php:159 
     67#: _admin.php:307 
    5168msgid "Remove selected expired date from entries" 
    5269msgstr "Retirer les dates de péremption sélectionnées des billets" 
    5370 
    54 #: _admin.php:162 
     71#: _admin.php:310 
    5572msgid "No expired date for selected entries" 
    5673msgstr "Pas de date de peremption sur les billets sélectionnés" 
    5774 
    58 #: _admin.php:170 
     75#: _admin.php:318 
    5976msgid "Following expired date have been found in selected entries:" 
    6077msgstr "Les dates de péremption suivante ont été trouvé sur les billets sélectionnés :" 
    6178 
     79#: _public.php:16 
     80msgid "Expired on" 
     81msgstr "Expire le" 
     82 
     83#: _public.php:17 
     84msgid "This entry has no expirion date" 
     85msgstr "Ce billet n'a pas de date d'expiration" 
     86 
  • plugins/postExpired/release.txt

    r2174 r2187  
     10.2 20100414 
     2 * Added actions choice (status,category,selected) 
     3 * Added template block and value 
     4 * Added behaviors to open choices 
     5 * Enhanced db resquest on public side 
     6 
    170.1 20100410 
    28 * First lab release 
Note: See TracChangeset for help on using the changeset viewer.

Sites map