%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/devcapijob/public_html/modules/menu/
Upload File :
Create Path :
Current File : /home/devcapijob/public_html/modules/menu/index.php

<?php
/**
* @version		1
* @package		yassir
* @copyright	Copyright (C) 2011 Open Source Matters. All rights reserved.
* @license		sharware
*
*
* @MENU MODULE
*/


class menuModule extends Module{
	
	var $data=array();
		
	function display(){
		$this->js='';         
		$this->css='';

		$cachefile = $_SERVER['DOCUMENT_ROOT'].'/caching-master/cache/menu.html';
	    $cachetime = 6000;
	    if (file_exists($cachefile) && filesize($cachefile)>0) {
		////*****************************////
		// Executing From Cache
		////*****************************////
		 return file_get_contents($cachefile);
	   }else
	    
	   {
		$this->data=$this->get_mainmenu($this->param,0);
		$content = $this->html();

	    $fp = fopen($cachefile, 'w');
		//https://www.php.net/manual/en/function.flock.php
		if(flock($fp,LOCK_EX))  //LOCK_EX to acquire an exclusive lock (writer)
		 {
			fwrite($fp,$content);
			flock($fp,LOCK_UN);//LOCK_UN to release a lock (shared or exclusive).
            fclose($fp);
		 }

		 return $content;

     }

	}
	


	function get_mainmenu($type,$parent=NULL,$parent_alias=null){
		$list=$this->liste_menu(NULL,NULL,$type,$parent);
		//var_dump($list);
		$tmp=array();
		foreach($list as $menu){
			extract($menu);
			
			$li['id_menu']=$id_menu;
			if($composantid==1){
				$a=$this->getAccueil();
				$li['link']=Link::gen_url('menu',$a[1]);
				}
			elseif($composantid==6){
				$a=$this->liste_pages(null,$itemid);
				$li['link']=Link::gen_url('page',$a[0]['alias']);
				$id_page=$a[0]['id_page'];
				}
			elseif($composantid==13){
				$li['link']=Link::gen_url('regions',$alias,null,0,$parent_alias);
				}
			elseif($composantid==0){
				$li['link']=$alias;
			}
			else{
				$li['link']=Link::gen_url('menu',$alias);
				}
			$li['titre']=$menu_titre;
			
			$li['children']=$this->get_mainmenu($this->param,$id_menu,$alias);
			$li['current']=(Request::get('id_item')==$id_menu or ($id_page==Request::get('id') and $composantid==6) or(Request::type()=='accueil' and $composantid==1))? 'active' : '';
			
		array_push($tmp,$li);	
		
			
		}
		return ($tmp)	;
	}
	function html(){
	
	
		
		
	
		$n=1;
		$li_holder='';
	// var_dump($this->data);
		foreach($this->data as $menu){
			if($menu['link']!=''){
				$li_holder	.=	'<li class="'.$menu['current'].'" id="item_'.$menu['id_menu'].'"><a target="_blank" title="'.ucfirst(stripslashes($menu['titre'])).'" href="'.$menu['link'].'" ><span>';
				$li_holder	.=	ucfirst(stripslashes($menu['titre']));
				$li_holder	.=	'</span></a>';
				
					$li_holder2='';
					
					if(!empty($menu['children'])){
						//-----------------------------
						foreach($menu['children'] as $menu2){
							$li_holder2	.=	'<li class="'.$menu2['current'].'" id="item_'.$menu2['id_menu'].'"><a target="_blank" title="'.ucfirst(stripslashes($menu2['titre'])).'" href="'.$menu2['link'].'" ><span>';
							$li_holder2	.=	ucfirst(stripslashes(utf8_decode($menu2['titre'])));
							$li_holder2	.=	'</span></a>';
							$li_holder2	.=	'</li>';
							}
							$li_holder	.=	'<ul class="sub_menu">'.$li_holder2.'</ul>';
						
						//-----------------------------
					}	
				$li_holder	.=	'</li>';
				$n+=1;
				}
			}
			$li_holder	=	'<ul id="menu">'.$li_holder.'</ul>';
			

			return $li_holder;
			
		}
}
?>

Zerion Mini Shell 1.0