Dotclear

Changeset 2048:a23152342139 for admin


Ignore:
Timestamp:
09/23/13 23:40:40 (12 years ago)
Author:
Dsls
Branch:
default
Message:

exit is a bit rough and not really ob_start compliand, made it smoother for plugins; Tuned pages plugin so that it works ... now

File:
1 edited

Legend:

Unmodified
Added
Removed
  • admin/posts.php

    r1999 r2048  
    106106$posts_actions_page = new dcPostsActionsPage($core,'posts.php'); 
    107107 
    108 $posts_actions_page->process(); 
    109  
    110 /* Get posts 
    111 -------------------------------------------------------- */ 
    112 $user_id = !empty($_GET['user_id']) ?   $_GET['user_id'] : ''; 
    113 $cat_id = !empty($_GET['cat_id']) ?     $_GET['cat_id'] : ''; 
    114 $status = isset($_GET['status']) ? $_GET['status'] : ''; 
    115 $selected = isset($_GET['selected']) ?  $_GET['selected'] : ''; 
    116 $month = !empty($_GET['month']) ?       $_GET['month'] : ''; 
    117 $lang = !empty($_GET['lang']) ?         $_GET['lang'] : ''; 
    118 $sortby = !empty($_GET['sortby']) ?     $_GET['sortby'] : 'post_dt'; 
    119 $order = !empty($_GET['order']) ?       $_GET['order'] : 'desc'; 
    120  
    121 $show_filters = false; 
    122  
    123 $page = !empty($_GET['page']) ? max(1,(integer) $_GET['page']) : 1; 
    124 $nb_per_page =  30; 
    125  
    126 if (!empty($_GET['nb']) && (integer) $_GET['nb'] > 0) { 
    127      if ($nb_per_page != $_GET['nb']) { 
    128           $show_filters = true; 
    129      } 
    130      $nb_per_page = (integer) $_GET['nb']; 
    131 } 
    132  
    133 $params['limit'] = array((($page-1)*$nb_per_page),$nb_per_page); 
    134 $params['no_content'] = true; 
    135  
    136 # - User filter 
    137 if ($user_id !== '' && in_array($user_id,$users_combo)) { 
    138      $params['user_id'] = $user_id; 
    139      $show_filters = true; 
    140 } else { 
    141      $user_id=''; 
    142 } 
    143  
    144 # - Categories filter 
    145 if ($cat_id !== '' && isset($categories_values[$cat_id])) { 
    146      $params['cat_id'] = $cat_id; 
    147      $show_filters = true; 
    148 } else { 
    149      $cat_id=''; 
    150 } 
    151  
    152 # - Status filter 
    153 if ($status !== '' && in_array($status,$status_combo)) { 
    154      $params['post_status'] = $status; 
    155      $show_filters = true; 
    156 } else { 
    157      $status=''; 
    158 } 
    159  
    160 # - Selected filter 
    161 if ($selected !== '' && in_array($selected,$selected_combo)) { 
    162      $params['post_selected'] = $selected; 
    163      $show_filters = true; 
    164 } else { 
    165      $selected=''; 
    166 } 
    167  
    168 # - Month filter 
    169 if ($month !== '' && in_array($month,$dt_m_combo)) { 
    170      $params['post_month'] = substr($month,4,2); 
    171      $params['post_year'] = substr($month,0,4); 
    172      $show_filters = true; 
    173 } else { 
    174      $month=''; 
    175 } 
    176  
    177 # - Lang filter 
    178 if ($lang !== '' && in_array($lang,$lang_combo)) { 
    179      $params['post_lang'] = $lang; 
    180      $show_filters = true; 
    181 } else { 
    182      $lang=''; 
    183 } 
    184  
    185 # - Sortby and order filter 
    186 if ($sortby !== '' && in_array($sortby,$sortby_combo)) { 
    187      if ($order !== '' && in_array($order,$order_combo)) { 
    188           $params['order'] = $sortby.' '.$order; 
    189      } else { 
     108if (!$posts_actions_page->process()) { 
     109 
     110     /* Get posts 
     111     -------------------------------------------------------- */ 
     112     $user_id = !empty($_GET['user_id']) ?   $_GET['user_id'] : ''; 
     113     $cat_id = !empty($_GET['cat_id']) ?     $_GET['cat_id'] : ''; 
     114     $status = isset($_GET['status']) ? $_GET['status'] : ''; 
     115     $selected = isset($_GET['selected']) ?  $_GET['selected'] : ''; 
     116     $month = !empty($_GET['month']) ?       $_GET['month'] : ''; 
     117     $lang = !empty($_GET['lang']) ?         $_GET['lang'] : ''; 
     118     $sortby = !empty($_GET['sortby']) ?     $_GET['sortby'] : 'post_dt'; 
     119     $order = !empty($_GET['order']) ?       $_GET['order'] : 'desc'; 
     120 
     121     $show_filters = false; 
     122 
     123     $page = !empty($_GET['page']) ? max(1,(integer) $_GET['page']) : 1; 
     124     $nb_per_page =  30; 
     125 
     126     if (!empty($_GET['nb']) && (integer) $_GET['nb'] > 0) { 
     127          if ($nb_per_page != $_GET['nb']) { 
     128               $show_filters = true; 
     129          } 
     130          $nb_per_page = (integer) $_GET['nb']; 
     131     } 
     132 
     133     $params['limit'] = array((($page-1)*$nb_per_page),$nb_per_page); 
     134     $params['no_content'] = true; 
     135 
     136     # - User filter 
     137     if ($user_id !== '' && in_array($user_id,$users_combo)) { 
     138          $params['user_id'] = $user_id; 
     139          $show_filters = true; 
     140     } else { 
     141          $user_id=''; 
     142     } 
     143 
     144     # - Categories filter 
     145     if ($cat_id !== '' && isset($categories_values[$cat_id])) { 
     146          $params['cat_id'] = $cat_id; 
     147          $show_filters = true; 
     148     } else { 
     149          $cat_id=''; 
     150     } 
     151 
     152     # - Status filter 
     153     if ($status !== '' && in_array($status,$status_combo)) { 
     154          $params['post_status'] = $status; 
     155          $show_filters = true; 
     156     } else { 
     157          $status=''; 
     158     } 
     159 
     160     # - Selected filter 
     161     if ($selected !== '' && in_array($selected,$selected_combo)) { 
     162          $params['post_selected'] = $selected; 
     163          $show_filters = true; 
     164     } else { 
     165          $selected=''; 
     166     } 
     167 
     168     # - Month filter 
     169     if ($month !== '' && in_array($month,$dt_m_combo)) { 
     170          $params['post_month'] = substr($month,4,2); 
     171          $params['post_year'] = substr($month,0,4); 
     172          $show_filters = true; 
     173     } else { 
     174          $month=''; 
     175     } 
     176 
     177     # - Lang filter 
     178     if ($lang !== '' && in_array($lang,$lang_combo)) { 
     179          $params['post_lang'] = $lang; 
     180          $show_filters = true; 
     181     } else { 
     182          $lang=''; 
     183     } 
     184 
     185     # - Sortby and order filter 
     186     if ($sortby !== '' && in_array($sortby,$sortby_combo)) { 
     187          if ($order !== '' && in_array($order,$order_combo)) { 
     188               $params['order'] = $sortby.' '.$order; 
     189          } else { 
     190               $order='desc'; 
     191          } 
     192           
     193          if ($sortby != 'post_dt' || $order != 'desc') { 
     194               $show_filters = true; 
     195          } 
     196     } else { 
     197          $sortby='post_dt'; 
    190198          $order='desc'; 
    191199     } 
    192       
    193      if ($sortby != 'post_dt' || $order != 'desc') { 
    194           $show_filters = true; 
    195      } 
    196 } else { 
    197      $sortby='post_dt'; 
    198      $order='desc'; 
    199 } 
    200  
    201 # Get posts 
    202 try { 
    203      $posts = $core->blog->getPosts($params); 
    204      $counter = $core->blog->getPosts($params,true); 
    205      $post_list = new adminPostList($core,$posts,$counter->f(0)); 
    206 } catch (Exception $e) { 
    207      $core->error->add($e->getMessage()); 
    208 } 
    209  
    210 /* DISPLAY 
    211 -------------------------------------------------------- */ 
    212 $starting_script = dcPage::jsLoad('js/_posts_list.js'); 
    213 if (!$show_filters) { 
    214      $starting_script .= dcPage::jsLoad('js/filter-controls.js'); 
    215 } 
    216  
    217 dcPage::open(__('Entries'),$starting_script, 
    218      dcPage::breadcrumb( 
    219           array( 
    220                html::escapeHTML($core->blog->name) => '', 
    221                '<span class="page-title">'.__('Entries').'</span>' => '' 
    222           )) 
    223 ); 
    224 if (!empty($_GET['upd'])) { 
    225      dcPage::success(__('Selected entries have been successfully updated.')); 
    226 } elseif (!empty($_GET['del'])) { 
    227      dcPage::success(__('Selected entries have been successfully deleted.')); 
    228 } 
    229 if (!$core->error->flag()) 
    230 { 
    231      echo 
    232      '<p class="top-add"><a class="button add" href="post.php">'.__('New entry').'</a></p>'; 
    233       
     200 
     201     # Get posts 
     202     try { 
     203          $posts = $core->blog->getPosts($params); 
     204          $counter = $core->blog->getPosts($params,true); 
     205          $post_list = new adminPostList($core,$posts,$counter->f(0)); 
     206     } catch (Exception $e) { 
     207          $core->error->add($e->getMessage()); 
     208     } 
     209 
     210     /* DISPLAY 
     211     -------------------------------------------------------- */ 
     212     $starting_script = dcPage::jsLoad('js/_posts_list.js'); 
    234213     if (!$show_filters) { 
    235           echo '<p><a id="filter-control" class="form-control" href="#">'. 
    236           __('Filter posts list').'</a></p>'; 
    237      } 
    238       
    239      echo 
    240      '<form action="posts.php" method="get" id="filters-form">'. 
    241      '<h3 class="hidden">'.__('Filter posts list').'</h3>'. 
    242  
    243      '<div class="table">'. 
    244      '<div class="cell">'. 
    245      '<h4>'.__('Filters').'</h4>'. 
    246      '<p><label for="user_id" class="ib">'.__('Author:').'</label> '. 
    247      form::combo('user_id',$users_combo,$user_id).'</p>'. 
    248      '<p><label for="cat_id" class="ib">'.__('Category:').'</label> '. 
    249      form::combo('cat_id',$categories_combo,$cat_id).'</p>'. 
    250      '<p><label for="status" class="ib">'.__('Status:').'</label> ' . 
    251      form::combo('status',$status_combo,$status).'</p> '. 
    252      '</div>'. 
    253       
    254      '<div class="cell filters-sibling-cell">'. 
    255      '<p><label for="selected" class="ib">'.__('Selected:').'</label> '. 
    256      form::combo('selected',$selected_combo,$selected).'</p>'. 
    257      '<p><label for="month" class="ib">'.__('Month:').'</label> '. 
    258      form::combo('month',$dt_m_combo,$month).'</p>'. 
    259      '<p><label for="lang" class="ib">'.__('Lang:').'</label> '. 
    260      form::combo('lang',$lang_combo,$lang).'</p> '. 
    261      '</div>'. 
    262       
    263      '<div class="cell filters-options">'. 
    264      '<h4>'.__('Display options').'</h4>'. 
    265      '<p><label for="sortby" class="ib">'.__('Order by:').'</label> '. 
    266      form::combo('sortby',$sortby_combo,$sortby).'</p>'. 
    267      '<p><label for="order" class="ib">'.__('Sort:').'</label> '. 
    268      form::combo('order',$order_combo,$order).'</p>'. 
    269      '<p><span class="label ib">'.__('Show').'</span> <label for="nb" class="classic">'. 
    270      form::field('nb',3,3,$nb_per_page).' '. 
    271      __('entries per page').'</label></p>'. 
    272      '</div>'. 
    273      '</div>'. 
    274  
    275      '<p><input type="submit" value="'.__('Apply filters and display options').'" />'. 
    276      '<br class="clear" /></p>'. //Opera sucks 
    277      '</form>'; 
    278       
    279      # Show posts 
    280      $post_list->display($page,$nb_per_page, 
    281      '<form action="posts.php" method="post" id="form-entries">'. 
    282       
    283      '%s'. 
    284       
    285      '<div class="two-cols">'. 
    286      '<p class="col checkboxes-helpers"></p>'. 
    287       
    288      '<p class="col right"><label for="action" class="classic">'.__('Selected entries action:').'</label> '. 
    289      form::combo('action',$posts_actions_page->getCombo()). 
    290      '<input type="submit" value="'.__('ok').'" /></p>'. 
    291      form::hidden(array('user_id'),$user_id). 
    292      form::hidden(array('cat_id'),$cat_id). 
    293      form::hidden(array('status'),$status). 
    294      form::hidden(array('selected'),$selected). 
    295      form::hidden(array('month'),$month). 
    296      form::hidden(array('lang'),$lang). 
    297      form::hidden(array('sortby'),$sortby). 
    298      form::hidden(array('order'),$order). 
    299      form::hidden(array('page'),$page). 
    300      form::hidden(array('nb'),$nb_per_page). 
    301      $core->formNonce(). 
    302      '</div>'. 
    303      '</form>' 
    304      ); 
    305 } 
    306  
    307 dcPage::helpBlock('core_posts'); 
    308 dcPage::close(); 
     214          $starting_script .= dcPage::jsLoad('js/filter-controls.js'); 
     215     } 
     216 
     217     dcPage::open(__('Entries'),$starting_script, 
     218          dcPage::breadcrumb( 
     219               array( 
     220                    html::escapeHTML($core->blog->name) => '', 
     221                    '<span class="page-title">'.__('Entries').'</span>' => '' 
     222               )) 
     223     ); 
     224     if (!empty($_GET['upd'])) { 
     225          dcPage::success(__('Selected entries have been successfully updated.')); 
     226     } elseif (!empty($_GET['del'])) { 
     227          dcPage::success(__('Selected entries have been successfully deleted.')); 
     228     } 
     229     if (!$core->error->flag()) 
     230     { 
     231          echo 
     232          '<p class="top-add"><a class="button add" href="post.php">'.__('New entry').'</a></p>'; 
     233           
     234          if (!$show_filters) { 
     235               echo '<p><a id="filter-control" class="form-control" href="#">'. 
     236               __('Filter posts list').'</a></p>'; 
     237          } 
     238           
     239          echo 
     240          '<form action="posts.php" method="get" id="filters-form">'. 
     241          '<h3 class="hidden">'.__('Filter posts list').'</h3>'. 
     242 
     243          '<div class="table">'. 
     244          '<div class="cell">'. 
     245          '<h4>'.__('Filters').'</h4>'. 
     246          '<p><label for="user_id" class="ib">'.__('Author:').'</label> '. 
     247          form::combo('user_id',$users_combo,$user_id).'</p>'. 
     248          '<p><label for="cat_id" class="ib">'.__('Category:').'</label> '. 
     249          form::combo('cat_id',$categories_combo,$cat_id).'</p>'. 
     250          '<p><label for="status" class="ib">'.__('Status:').'</label> ' . 
     251          form::combo('status',$status_combo,$status).'</p> '. 
     252          '</div>'. 
     253           
     254          '<div class="cell filters-sibling-cell">'. 
     255          '<p><label for="selected" class="ib">'.__('Selected:').'</label> '. 
     256          form::combo('selected',$selected_combo,$selected).'</p>'. 
     257          '<p><label for="month" class="ib">'.__('Month:').'</label> '. 
     258          form::combo('month',$dt_m_combo,$month).'</p>'. 
     259          '<p><label for="lang" class="ib">'.__('Lang:').'</label> '. 
     260          form::combo('lang',$lang_combo,$lang).'</p> '. 
     261          '</div>'. 
     262           
     263          '<div class="cell filters-options">'. 
     264          '<h4>'.__('Display options').'</h4>'. 
     265          '<p><label for="sortby" class="ib">'.__('Order by:').'</label> '. 
     266          form::combo('sortby',$sortby_combo,$sortby).'</p>'. 
     267          '<p><label for="order" class="ib">'.__('Sort:').'</label> '. 
     268          form::combo('order',$order_combo,$order).'</p>'. 
     269          '<p><span class="label ib">'.__('Show').'</span> <label for="nb" class="classic">'. 
     270          form::field('nb',3,3,$nb_per_page).' '. 
     271          __('entries per page').'</label></p>'. 
     272          '</div>'. 
     273          '</div>'. 
     274 
     275          '<p><input type="submit" value="'.__('Apply filters and display options').'" />'. 
     276          '<br class="clear" /></p>'. //Opera sucks 
     277          '</form>'; 
     278           
     279          # Show posts 
     280          $post_list->display($page,$nb_per_page, 
     281          '<form action="posts.php" method="post" id="form-entries">'. 
     282           
     283          '%s'. 
     284           
     285          '<div class="two-cols">'. 
     286          '<p class="col checkboxes-helpers"></p>'. 
     287           
     288          '<p class="col right"><label for="action" class="classic">'.__('Selected entries action:').'</label> '. 
     289          form::combo('action',$posts_actions_page->getCombo()). 
     290          '<input type="submit" value="'.__('ok').'" /></p>'. 
     291          form::hidden(array('user_id'),$user_id). 
     292          form::hidden(array('cat_id'),$cat_id). 
     293          form::hidden(array('status'),$status). 
     294          form::hidden(array('selected'),$selected). 
     295          form::hidden(array('month'),$month). 
     296          form::hidden(array('lang'),$lang). 
     297          form::hidden(array('sortby'),$sortby). 
     298          form::hidden(array('order'),$order). 
     299          form::hidden(array('page'),$page). 
     300          form::hidden(array('nb'),$nb_per_page). 
     301          $core->formNonce(). 
     302          '</div>'. 
     303          '</form>' 
     304          ); 
     305     } 
     306 
     307     dcPage::helpBlock('core_posts'); 
     308     dcPage::close(); 
     309} 
    309310?> 
Note: See TracChangeset for help on using the changeset viewer.

Sites map