100 lines
2.3 KiB
PHP
100 lines
2.3 KiB
PHP
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
/**
|
|
* Description of Pages_model
|
|
*
|
|
* @author Theo Weijmer
|
|
* @date april 26, 2013 7:14 PM
|
|
*
|
|
*
|
|
*
|
|
*/
|
|
|
|
|
|
class Pages_model extends MY_Model{
|
|
|
|
|
|
protected $tablename = 'tb_pages';
|
|
protected $level;
|
|
|
|
|
|
function __construct(){
|
|
parent::__construct();
|
|
$models = array();
|
|
$this->load->model($models);
|
|
}
|
|
function get_usermenu_ls($level, $partnodig){
|
|
$this->sql = "SELECT id , page_name as naam, page_url as url,
|
|
page_initmodel as komodel, always
|
|
FROM tb_pages
|
|
WHERE (SELECT page_level & {$level} ) != 0
|
|
AND page_id = id
|
|
AND page_partnodig <= {$partnodig}
|
|
ORDER BY page_order";
|
|
$pages= $this->get_query_result();
|
|
if ($pages){
|
|
foreach($pages as $page){
|
|
$this->sql = "SELECT id , page_name as naam, page_url as url,
|
|
page_initmodel as komodel, always
|
|
FROM tb_pages
|
|
WHERE (SELECT page_level & {$level} ) != 0
|
|
AND page_id != id
|
|
AND page_id = {$page->id}
|
|
AND page_partnodig <= {$partnodig}
|
|
ORDER BY page_order";
|
|
$page->submenu = $this->get_query_result();
|
|
}
|
|
}
|
|
return $pages;
|
|
}
|
|
|
|
function get_details($where=FALSE ){
|
|
$this->db->order_by('page_order');
|
|
$records = $this->get_records_where($where);
|
|
if($records){
|
|
|
|
foreach($records as $record){
|
|
$details[] = $this->get_page_details($record);
|
|
}
|
|
}
|
|
|
|
return $details;
|
|
}
|
|
|
|
function get_usermenu($level,$partnodig){
|
|
$this->level = $level;
|
|
$this->db->where("(SELECT page_level & {$this->level} ) != 0 ");
|
|
$this->db->where('page_id = id');
|
|
$this->db->where("page_partnodig <= {$partnodig}");
|
|
|
|
$pages = $this->get_details();
|
|
|
|
return $pages;
|
|
}
|
|
|
|
function get_page_details($record){
|
|
$details = new stdClass;
|
|
|
|
$details->id = $record->id;
|
|
$details->naam = $record->page_name;
|
|
$details->url = $record->page_url;
|
|
$details->komodel = $record->page_initmodel;
|
|
$details->always = $record->always;
|
|
if($record->id==$record->page_id){
|
|
$data = array( 'page_id' => $record->page_id ,
|
|
'id !=' => $record->page_id ,
|
|
"(SELECT page_level & {$this->level} ) !=" => 0 );
|
|
$details->submenu = $this->get_details($data);
|
|
}
|
|
|
|
return $details;
|
|
}
|
|
|
|
function table_def(){
|
|
$this->sql = "
|
|
|
|
";
|
|
|
|
}
|
|
|
|
} |