Example #1
0
 /**
  * Show files (table view)
  *
  * @param   integer $id_area Area ID
  * @param   string  $category category
  * @param   string  $subcategory subcategory
  * @param   integer	$type type index
  * @param   integer	$pp pagination index
  * @return  void
  */
 public function index($id_area = 2, $category = '-', $subcategory = '-', $xtype = -1, $pp = 0, $str = '')
 {
     // load dictionary
     $this->dict->get_wordarray(array('files'));
     $amod = new Area_model();
     list($id_area, $areas) = $amod->get_my_areas($id_area);
     // get page
     $page = $this->get_page('files');
     $navbar = array($this->site->get_bredcrumb($page));
     $category = urldecode($category);
     $subcategory = urldecode($subcategory);
     // content
     $view = new X4View_core('container');
     $view->content = new X4View_core('files/file_list');
     $view->content->page = $page;
     $view->content->navbar = $navbar;
     $view->content->id_area = $id_area;
     $view->content->xtype = $xtype;
     $view->content->category = $category;
     $view->content->subcategory = $subcategory;
     $view->content->str = $str;
     $mod = new File_model();
     $view->content->items = X4Pagination_helper::paginate($mod->get_files($id_area, $category, $subcategory, $xtype, $str), $pp);
     $view->content->file_path = $mod->file_path;
     // area switcher
     $view->content->areas = $areas;
     // type switcher
     $view->content->types = $mod->get_types();
     // files category switcher
     $view->content->categories = $mod->get_cat($id_area);
     // files subcategory switcher
     $view->content->subcategories = $mod->get_subcat($id_area, $category);
     $view->render(TRUE);
 }
 /**
  * Show categories
  *
  * @param   integer $id_area Area ID
  * @param   string 	$lang Language code
  * @param   string 	$tag
  * @return  void
  */
 public function index($id_area, $lang, $tag = '')
 {
     // load dictionary
     $this->dict->get_wordarray(array('categories', 'articles'));
     $area = new Area_model();
     list($id_area, $areas) = $area->get_my_areas($id_area);
     $lang = empty($lang) ? X4Route_core::$lang : $lang;
     // get page
     $page = $this->get_page('categories');
     $navbar = array($this->site->get_bredcrumb($page), array('articles' => 'index/' . $id_area . '/' . $lang));
     $view = new X4View_core('container');
     // content
     $mod = new Category_model();
     $tags = $mod->get_tags($id_area, $lang);
     // if empty get the first available
     $tag = empty($tag) && !empty($tags) ? $tags[0]->tag : $tag;
     $view->content = new X4View_core('articles/category_list');
     $view->content->page = $page;
     $view->content->navbar = $navbar;
     $view->content->items = $mod->get_categories($id_area, $lang, $tag);
     // tag switcher
     $view->content->tag = $tag;
     $view->content->tags = $tags;
     // area switcher
     $view->content->id_area = $id_area;
     $view->content->areas = $areas;
     // language switcher
     $view->content->lang = $lang;
     $lang = new Language_model();
     $view->content->langs = $lang->get_languages();
     $view->render(TRUE);
 }
Example #3
0
 /**
  * Show contexts
  *
  * @param   integer $id_area Area ID
  * @param   string 	$lang Language code
  * @return  void
  */
 public function index($id_area, $lang)
 {
     // load dictionary
     $this->dict->get_wordarray(array('contexts', 'articles'));
     $area = new Area_model();
     list($id_area, $areas) = $area->get_my_areas($id_area);
     // get page
     $page = $this->get_page('contexts');
     $navbar = array($this->site->get_bredcrumb($page), array('articles' => 'index/' . $id_area . '/' . $lang));
     $view = new X4View_core('container');
     // content
     $mod = new Context_model();
     $view->content = new X4View_core('articles/context_list');
     $view->content->page = $page;
     $view->content->navbar = $navbar;
     $view->content->items = $mod->get_contexts($id_area, $lang);
     // area switcher
     $view->content->id_area = $id_area;
     $view->content->areas = $areas;
     // language switcher
     $view->content->lang = $lang;
     $lang = new Language_model();
     $view->content->langs = $lang->get_languages();
     $view->render(TRUE);
 }
Example #4
0
 /**
  * Show areas (table view)
  *
  * @return  void
  */
 public function index()
 {
     // load the dictionary
     $this->dict->get_wordarray(array('areas'));
     // get page
     $page = $this->get_page('areas');
     $navbar = array($this->site->get_bredcrumb($page));
     // content
     $view = new X4View_core('container');
     $view->content = new X4View_core('areas/areas');
     $view->content->page = $page;
     $view->content->navbar = $navbar;
     $mod = new Area_model();
     list($id_area, $areas) = $mod->get_my_areas();
     $view->content->areas = $areas;
     $view->render(TRUE);
 }
 /**
  * Show dictionary words by Language code, Area name and key
  *
  * @param   string 	$code Language code
  * @param   string 	$area Area name
  * @param   string 	$what Dictionary key
  * @return  void
  */
 public function keys($code = '', $area = 'public', $what = '', $str = '')
 {
     // load dictionary
     $this->dict->get_wordarray(array('dictionary'));
     $area_mod = new Area_model();
     list($id_area, $areas) = $area_mod->get_my_areas(2);
     if ($id_area != 2) {
         $area = $area_mod->get_var($id_area, 'areas', 'name');
     }
     if (empty($str)) {
         $code = empty($code) ? X4Route_core::$lang : $code;
         // get page
         $page = $this->get_page('dictionary/keys');
         // content
         $view = new X4View_core('container');
         $view->content = new X4View_core('languages/words');
         $view->content->page = $page;
         // keys
         $dict = new Dictionary_model();
         $keys = $dict->get_keys($code, $area);
         $view->content->keys = $keys;
         // check empty what
         if (empty($what) && !empty($keys)) {
             $what = $keys[0]->what;
         }
         $view->content->items = $dict->get_words($code, $area, $what);
         $view->content->what = $what;
         $view->content->str = '';
         // area switcher
         $view->content->area = $area;
         $view->content->areas = $areas;
         // language switcher
         $view->content->lang = $code;
         $lang = new Language_model();
         $view->content->langs = $lang->get_languages();
         header('Content-Type: text/html; charset=utf-8');
         $view->render(TRUE);
     } else {
         $this->search($code, $area, $what, $str);
     }
 }
Example #6
0
 /**
  * Show pages
  * As default display public area pages
  * Display all child pages of a given page
  * If the page is the home of the area, then you also view the home
  *
  * @param   integer $id_area Area ID
  * @param   string  $lang language code
  * @param   string  $xfrom page URL of origin
  * @return  void
  */
 public function index($id_area, $lang = '', $xfrom = 'home')
 {
     $area = new Area_model();
     list($id_area, $areas) = $area->get_my_areas($id_area);
     // initialize parameters
     $lang = empty($lang) ? X4Route_core::$lang : $lang;
     $xfrom = str_replace('ยง', '/', urldecode($xfrom));
     // load dictionary
     $this->dict->get_wordarray(array('pages'));
     $view = new X4View_core('container');
     // content
     $view->content = new X4View_core('pages/pages');
     //$view->page = $this->get_page('pages');
     // content
     $mod = new Page_model($id_area, $lang);
     $view->content->id_area = $id_area;
     $view->content->lang = $lang;
     $view->content->xfrom = $xfrom;
     $view->content->area = $mod->get_var($id_area, 'areas', 'name');
     $obj = $mod->get_page($xfrom);
     $view->content->page = $obj ? $obj : new Page_obj($id_area, $lang);
     $page = $this->get_page('pages');
     $navbar = array($this->site->get_bredcrumb($page), array('areas' => 'index'));
     $view->content->navbar = $navbar;
     // referer
     $view->content->referer = urlencode('pages/index/' . $id_area . '/' . $lang . '/' . $xfrom);
     // pages to show
     $view->content->pages = $mod->get_pages($xfrom, $view->content->page->deep);
     // available menus
     $mod = new Menu_model();
     $view->content->menus = $mod->get_menus($id_area, '', 'id');
     // language switcher
     $lang = new Language_model();
     $view->content->langs = $lang->get_languages();
     // area switcher
     $view->content->areas = $areas;
     $view->render(TRUE);
 }
Example #7
0
 /**
  * Show modules
  *
  * @param   integer $id_area Area ID
  * @param   string  $area Area name
  * @return  void
  */
 public function index($id_area = 2, $area = 'public')
 {
     // load dictionary
     $this->dict->get_wordarray(array('modules'));
     $area = new Area_model();
     list($id_area, $areas) = $area->get_my_areas($id_area);
     $view = new X4View_core('container');
     $view->content = new X4View_core('modules/module_list');
     // get page
     $page = $this->get_page('modules');
     $navbar = array($this->site->get_bredcrumb($page));
     $view->content->navbar = $navbar;
     $view->content->page = $page;
     $view->content->id_area = $id_area;
     $view->content->area = $area->get_by_id($id_area);
     // get installed and installable plugins
     $mod = new X4Plugin_model();
     $view->content->plugged = $mod->get_installed($id_area);
     $chk = AdmUtils_helper::get_ulevel(1, $_SESSION['xuid'], '_module_install');
     $view->content->pluggable = !$chk || $chk->level < 4 ? array() : $mod->get_installable($id_area);
     // area switcher
     $view->content->areas = $areas;
     $view->render(TRUE);
 }
Example #8
0
 /**
  * Show articles (table view)
  * Can show articles by context, by category, by author, by key, by page
  * Default view is reverse chronological order
  *
  * @param   integer $id_area Area ID
  * @param   string 	$lang Language code
  * @param   string	$case view switcher
  * @param   mixed   $id_what view parameter
  * @param   integer $pp index for pagination
  * @param   string	$str Search string
  * @return  void
  */
 public function index($id_area = 2, $lang = '', $case = 'latest_articles', $id_what = 0, $pp = 0, $str = '')
 {
     // load dictionary
     $this->dict->get_wordarray(array('articles'));
     $area = new Area_model();
     list($id_area, $areas) = $area->get_my_areas($id_area);
     $_SESSION['referer'] = 'index/' . $id_area . '/' . $lang . '/' . $case . '/' . $id_what . '/' . $pp . '/' . $str;
     // get page
     $page = $this->get_page('articles');
     $navbar = array($this->site->get_bredcrumb($page));
     // content
     $mod = new Article_model();
     $view = new X4View_core('container');
     $view->content = new X4View_core('articles/article_list');
     $view->content->navbar = $navbar;
     switch ($case) {
         case 'context_order':
             $cmod = new Context_model();
             $con = $cmod->get_contexts($id_area, $lang);
             if ($id_what == 0 && $con) {
                 $id_what = $con[0]->code;
             }
             $view->content->items = X4Pagination_helper::paginate($mod->get_by_context($id_area, $lang, $id_what, $str), $pp);
             $view->content->contexts = $con;
             break;
         case 'category_order':
             $cmod = new Category_model();
             $ctg = $cmod->get_categories($id_area, $lang);
             if ($id_what === 0 && $ctg) {
                 $id_what = $ctg[0]->name;
             }
             $view->content->items = X4Pagination_helper::paginate($mod->get_by_category($id_area, $lang, $id_what, $str), $pp);
             $view->content->categories = $ctg;
             break;
         case 'author_order':
             $aut = $mod->get_authors($id_area, $lang);
             if ($id_what == 0 && $aut) {
                 $id_what = $aut[0]->id_editor;
             }
             $view->content->items = X4Pagination_helper::paginate($mod->get_by_author($id_area, $lang, $id_what, $str), $pp);
             $view->content->authors = $aut;
             break;
         case 'key_order':
             $keys = $mod->get_keys($id_area, $lang);
             if ($id_what == 0 && $keys) {
                 $id_what = $keys[0]->xkeys;
             }
             $view->content->items = X4Pagination_helper::paginate($mod->get_by_key($id_area, $lang, $id_what, $str), $pp);
             $view->content->keys = $keys;
             break;
         case 'by_page':
             $pmod = new Page_model();
             $spage = $pmod->get_by_id($id_what);
             $view->content->items = X4Pagination_helper::paginate($mod->get_by_page($id_area, $lang, $id_what, $str), $pp);
             $view->content->page = $spage;
             break;
         default:
             $view->content->items = X4Pagination_helper::paginate($mod->get_articles($id_area, $lang, 'id', $str), $pp);
             break;
     }
     // for the construction of the tabs
     $view->content->xcase = $case;
     $view->content->cases = $this->cases;
     $view->content->id_what = $id_what;
     $view->content->pp = $pp;
     $view->content->str = $str;
     // area switcher
     $view->content->id_area = $id_area;
     $view->content->areas = $areas;
     // language switcher
     $view->content->lang = $lang;
     $lang = new Language_model();
     $view->content->langs = $lang->get_languages();
     $view->render(TRUE);
 }