Пример #1
0
 /**
  * Previous Imports list
  */
 public function index()
 {
     $get = $this->input->get(array('s' => '', 'order_by' => 'registered_on', 'order' => 'DESC', 'pagenum' => 1, 'perPage' => 25));
     $get['pagenum'] = absint($get['pagenum']);
     extract($get);
     $this->data += $get;
     if (!in_array($order_by, array('registered_on', 'id', 'name'))) {
         $order_by = 'registered_on';
     }
     if (!in_array($order, array('DESC', 'ASC'))) {
         $order = 'DESC';
     }
     $list = new PMXI_Import_List();
     $post = new PMXI_Post_Record();
     $by = array('parent_import_id' => 0);
     if ('' != $s) {
         $like = '%' . preg_replace('%\\s+%', '%', preg_replace('/[%?]/', '\\\\$0', $s)) . '%';
         $by[] = array(array('name LIKE' => $like, 'type LIKE' => $like, 'path LIKE' => $like, 'friendly_name LIKE' => $like), 'OR');
     }
     $this->data['list'] = $list->join($post->getTable(), $list->getTable() . '.id = ' . $post->getTable() . '.import_id', 'LEFT')->setColumns($list->getTable() . '.*', 'COUNT(' . $post->getTable() . '.post_id' . ') AS post_count')->getBy($by, "{$order_by} {$order}", $pagenum, $perPage, $list->getTable() . '.id');
     $this->data['page_links'] = paginate_links(array('base' => add_query_arg('pagenum', '%#%', $this->baseUrl), 'add_args' => array('page' => 'pmxi-admin-manage'), 'format' => '', 'prev_text' => __('«', 'wp_all_import_plugin'), 'next_text' => __('»', 'wp_all_import_plugin'), 'total' => ceil($list->total() / $perPage), 'current' => $pagenum));
     //pmxi_session_unset();
     PMXI_Plugin::$session->clean_session();
     $this->render();
 }