_MENU_TYPE_COMPONENT,"value"=>"component"), array("name"=>_MENU_TYPE_SECTION,"value"=>"cs"), array("name"=>_MENU_TYPE_CATEGORY,"value"=>"cc"), array("name"=>_MENU_TYPE_BLOG,"value"=>"cb"), array("name"=>_MENU_TYPE_ITEM,"value"=>"ci"), array("name"=>_MENU_TYPE_CLINK,"value"=>"cl"), array("name"=>_MENU_TYPE_SEPRATOR,"value"=>"separator"), array("name"=>_MENU_TYPE_LINK,"value"=>"url"), array("name"=>_MENU_TYPE_WRAPPER,"value"=>"wrapper") ); function menu_table() { global $conn; $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu"); $gui->add("bar"); $gui->add("com_header",_MENU_HEAD); $table_head = array ( array('title'=>'#' , 'val'=>'id' , 'len'=>'1%','align'=>'center') , array('title'=>'radio' , 'val'=>'id' , 'len'=>'1%','align'=>'center') , array('title'=>_CMN_NAME,'val'=>'title','len'=>'80%','ilink'=>'admin.php?com_option=menu&menutype=ivar1','ivar1'=>'title') , ); $rs=$conn->Execute("SELECT id,title,count FROM #__categories WHERE section = 'com_menu'"); $table_data=$rs->GetArray(); $gui->add("data_table_arr","maintable",$table_head,$table_data); $gui->add("end_form"); $gui->generate(); } function create_menu() { $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu"); $gui->add("com_header",_MENU_CREATE_HEAD); $gui->add("tab_head"); $gui->add("tab_simple","",_MENU_CREATE_HEAD,""); $gui->add("form_textfield","menu_title",_CMN_NAME,''); $gui->add("tab_end"); $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); } function menutype_table() { global $conn,$menutype,$item_types; $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu&menutype=$menutype"); $gui->add("com_header",_MENU_HEAD); $table_head = array ( array('title'=>'#' , 'val'=>'id' , 'len'=>'1%','align'=>'center') , array('title'=>'checkbox' , 'val'=>'id' , 'len'=>'1%','align'=>'center') , array('title'=>_CMN_NAME,'val'=>'name','len'=>'60%','ilink'=>'admin.php?com_option=menu&menutype='.$menutype.'&task=edit&cid[]=ivar1&item_type=ivar2','ivar1'=>'id','ivar2'=>'olink_type') , array('title'=>_CMN_PUBLISHED,'val'=>'published','len'=>'10%','align'=>'center'), array('title'=>_CMN_TYPE , 'val'=>'link_type' , 'len'=>'10%','align'=>'center') , array('title'=>_CMN_ACCESS,'val'=>'access','len'=>'10%','align'=>'center') , array('title'=>_CMN_ORDERING,'val'=>'ordering','len'=>'10%','align'=>'center') ); $rs=$conn->Execute("SELECT id,name,link_type,published,parent,sublevel,ordering,access FROM #__menu WHERE menutype = '$menutype' ORDER BY ordering ASC"); $table_data=$rs->GetArray(); $table_data=ref_array($table_data,"id"); if(is_array($table_data)){ foreach($table_data as $row) { if($row['parent']!=0){ $table_data[ $row['id'] ]['name'] = $table_data[ $row['parent'] ]['name'] ."/".$table_data[ $row['id'] ]['name'] ; } } } $table_data=nonref_array($table_data,"id"); $replace = array( "link_type"=>$item_types); $table_data=array_replace($table_data,$replace); $gui->add("data_table_arr","maintable",$table_head,$table_data); $gui->add("end_form"); $gui->generate(); } function new_menu($action='') { global $item_type,$menutype,$cid,$conn,$task,$item_types; if(!isset($item_type) && $task=="new") { $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu&menutype=$menutype"); $gui->add("com_header",_MENU_NEW_HEAD); $gui->add("tab_head"); $gui->add("tab_simple","",_MENU_NEW_HEAD,""); $gui->add("form_hidden","task","","new"); $item_type=select($item_types,"component"); $gui->add("form_list","item_type",_MENU_NEW_TYPE,$item_type,"10"); $button_arr = array(array('name'=>_NAV_NEXT , 'onclick'=>'javascript:document.adminform.submit()')); $gui->add("form_buttons","","",$button_arr); $gui->add("tab_end"); $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); return; }else { $action="new"; /*we have to edit now */ if( isset($cid) && $task == "edit") { $rsa=$conn->GetRow("SELECT link_type FROM #__menu WHERE id = ".$cid[0]); $item_type=$rsa['link_type']; $action="edit"; } switch($item_type) { case "component" : component_gui($action); break; case "cs" : case "ci" : case "cb" : case "cc" : gui($action); break; case "url" : case "wrapper" : case "cl": case "separator" : url_gui($action); break; default : break; } } } function component_gui($action='edit') { global $conn,$cid,$menutype,$item_type,$lm_absolute_path; if($action=='edit') { $rsar=$conn->GetRow("SELECT id,name,parent,componentid,access,params FROM #__menu WHERE id=".$cid[0]); }else { $rsar=array("id"=>"0","name"=>"","componentid"=>"","access"=>"0","parent"=>"0","params"=>""); } $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu&menutype=$menutype"); $gui->add("bar"); if($action=='edit') { $c_head=_MENU_COMPONENT_EDIT_HEAD; }else { $c_head=_MENU_COMPONENT_NEW_HEAD; } $gui->add("com_header",$c_head); $gui->add("tab_head"); $gui->add("tab_simple","",$c_head,""); $gui->add("form_hidden","link_menutype","",$menutype); $gui->add("form_hidden","link_type","",$item_type); $gui->add("form_hidden","link_id","",$rsar['id']); $gui->add("form_textfield","link_name",_CMN_NAME,$rsar['name'],"",'$required=true;'); if($action=='edit') { $rs = $conn->Execute("SELECT id,name FROM #__components WHERE id=".$rsar['componentid']); $rsa=$rs->GetArray(); $gui->add("form_text","",_MENU_TYPE_COMPONENT,$rsa[0]['name']); $gui->add("form_hidden","link_componentid","",$rsar['componentid']); }else { $rs = $conn->Execute("SELECT id,name,link FROM #__components WHERE parent=0 AND link<>'' "); $com_array[]=array("name"=>_CMN_SELECT,"value"=>""); $rsa=$rs->GetArray(); foreach($rsa as $row)$com_array[]=array("name"=>$row['name'],"value"=>$row['id']); $com_array=select($com_array,$rsar['componentid']); $gui->add("form_list","link_componentid",_MENU_TYPE_COMPONENT,$com_array,"6",'$required=true;'); } $parent[]=array("name"=>_MENU_TOP,"value"=>"0"); $rs=$conn->Execute("SELECT id,name,parent FROM #__menu WHERE published=1 AND parent=0 AND menutype='$menutype'"); if($rs && $rs->RecordCount()>0 && $rsa=$rs->GetArray() ) { foreach($rsa as $row)$parent[]=array("name"=>$row['name'],"value"=>$row['id']); } $parent=select($parent,$rsar['parent']); $gui->add("form_list","link_parent",_MENU_PARENT,$parent,"6"); $gui->add("form_hidden","olink_parent","",$rsar['parent'],"6"); $access_level=access_array($rsar['access']); $gui->add("form_list","link_access",_CMN_ACCESS,$access_level,"4"); $gui->add("tab_end"); // params xml part if($action=='edit') { $crow= $conn->GetRow("SELECT id,name,link FROM #__components WHERE id=".$rsar['componentid']); $c_xml= $lm_absolute_path."admin/components/".strtolower("com_" . str_replace(" ", "",$crow['name']))."/".strtolower(str_replace(" ", "",$crow['name'])).".xml"; $gui->addxmlparams($c_xml,$rsar['params'],false,_COMPONENTS_PARAMS); } $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); } function gui($action='edit') { global $item_type,$conn,$menutype; global $conn,$cid; if($action=='edit') { $rsar=$conn->GetRow("SELECT id,name,parent,componentid,access FROM #__menu WHERE id = ".$cid[0]); }else { $rsar=array("id"=>"","name"=>"","parent"=>"0","componentid"=>"","access"=>"0"); } if($item_type=='cc'){ $t_head = _MENU_TYPE_CATEGORY; }else if($item_type=='ci'){ $t_head = _MENU_TYPE_ITEM; } else { $t_head = _MENU_TYPE_SECTION; } $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu&menutype=$menutype"); $gui->add("bar"); $gui->add("com_header",_MENU_NEW_HEAD." :: $t_head"); $gui->add("tab_head"); $gui->add("tab_simple","",_MENU_NEW_HEAD,""); $gui->add("form_hidden","link_menutype","",$menutype); $gui->add("form_hidden","link_type","",$item_type); $gui->add("form_hidden","link_id","",$rsar['id']); $select_list=''; $extra=''; if($item_type=="ci")$extra = " WHERE id=1"; $rs=$conn->Execute("SELECT id,title FROM #__sections $extra"); if( $rs && $rsa=$rs->GetArray()) { foreach($rsa as $row) { if($item_type=="cc" || $item_type=="cb") { $rsi=$conn->Execute("SELECT id,title FROM #__categories WHERE section = '".$row['id']."'"); if ($rsi && $rsia=$rsi->GetArray()) { foreach($rsia as $rowi) { $select_list[]=array("name"=>$row['title'].'/'.$rowi['title'],"value"=>$rowi['id']); } } } else if($item_type=="ci") { $rsi=$conn->Execute("SELECT id,title FROM #__categories WHERE section = '".$row['id']."'"); $content_defined=false; if ($rsi && $rsia=$rsi->GetArray()) { foreach($rsia as $rowi) { $rsi1=$conn->Execute("SELECT id,title_alias FROM #__content WHERE catid = '".$rowi['id']."'"); if ($rsi1 && $rsi1a=$rsi1->GetArray()) { $content_defined=true; foreach($rsi1a as $rowi1)$select_list[]=array("name"=>$row['title'].'/'.$rowi['title'].'/'.$rowi1['title_alias'],"value"=>$rowi1['id']); } } } if(!$content_defined){ $gui->add("html","","",_MENU_CONTENT_ITEM_ERROR); $gui->add("tab_end"); $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); return; } }else if($item_type=="cs") { $select_list[]=array("name"=>$row['title'],"value"=>$row['id']); } } } $select_list=select($select_list,$rsar['componentid']); $gui->add("form_list","menu_id","$t_head",$select_list,"6",'$required=true;'); $rs=$conn->Execute("SELECT id,name,parent FROM #__menu WHERE parent=0 AND menutype='$menutype'"); $rsa=$rs->GetArray(); $parent[]=array("name"=>_MENU_TOP,"value"=>"0"); if(is_array($rsa))foreach($rsa as $row)$parent[]=array("name"=>$row['name'],"value"=>$row['id']); $parent=select($parent,$rsar['parent']); $gui->add("form_list","link_parent",_MENU_PARENT,$parent,"6"); $gui->add("form_hidden","olink_parent","",$rsar['parent'],"6"); $access_level=access_array($rsar['access']); $gui->add("form_list","link_access",_CMN_ACCESS,$access_level,"4"); $gui->add("tab_end"); $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); } function url_gui($action='') { global $item_type,$conn,$menutype; global $conn,$cid,$lm_absolute_path; $lm_name_mask=""; if($item_type=='url'){ $t_head = _MENU_TYPE_LINK; }else if($item_type=='separator'){ $t_head = _MENU_TYPE_SEPRATOR; $lm_name_mask="- - - - - -"; } else if($item_type=='cl'){ $t_head =_MENU_TYPE_CLINK; } else if($item_type=='wrapper'){ $t_head = _MENU_TYPE_WRAPPER; $lm_name_mask=""; } if($action=='edit') { $rsar=$conn->GetRow("SELECT * FROM #__menu WHERE id = ".$cid[0]); }else { $rsar=array("id"=>"","name"=>"$lm_name_mask","link"=>"","parent"=>"0","componentid"=>"","browsernav"=>"0","access"=>"0"); } $gui=new admin_interface(); $gui->add("form","adminform","","admin.php?com_option=menu&menutype=$menutype"); $gui->add("bar"); $gui->add("com_header",_MENU_NEW_HEAD." :: $t_head"); $gui->add("tab_head"); $gui->add("tab_simple","",_MENU_NEW_HEAD,""); $gui->add("form_hidden","link_menutype","",$menutype); $gui->add("form_hidden","link_type","",$item_type); $gui->add("form_hidden","link_id","",$rsar['id']); $select_list=''; if($item_type=="url"){ $gui->add("form_textfield","link_name",_CMN_NAME,$rsar['name']); $gui->add("form_textfield","link_url",_CMN_LINK,$rsar['link']); $nav_list=array(array("name"=>_MENU_LINK_OCUR,"value"=>"0"),array("name"=>_MENU_LINK_ONEW,"value"=>"1")); $nav_list=select($nav_list,$rsar['browsernav']); $gui->add("form_list","link_browsernav",$t_head,$nav_list,"3"); } else if($item_type=="wrapper"){ $gui->add("form_textfield","link_name",_CMN_NAME,$rsar['name']); $gui->add("form_textfield","link_url",_CMN_LINK,$rsar['link']); }else if($item_type=="cl"){ $gui->add("form_textfield","link_name",_CMN_NAME,$rsar['name']); $rs1=$conn->Execute("SELECT id,title,count FROM #__categories WHERE section = 'com_menu'"); $clone_of=false; if($rs1 && $rsa1=$rs1->GetArray() ) { foreach($rsa1 as $row1) { $rs2=$conn->Execute("SELECT id,menutype,name,link_type FROM #__menu WHERE menutype = '".$row1['title']."' AND link_type<>'cl'"); if($rs2 && $rsa2=$rs2->GetArray()) { foreach($rsa2 as $row2) $clone_of[]=array("name"=>$row1['title']." -> ".$row2['name'],"value"=>$row2['id']); } } } $clone_of=select($clone_of,$rsar['link']); $gui->add("form_list","link_url",_MENU_CLINK_SELECT,$clone_of,"6"); } else{ $gui->add("form_textfield","link_name",_MENU_SPACERTEXT,$rsar['name']); } $rs=$conn->Execute("SELECT id,name,parent FROM #__menu WHERE published=1 AND parent=0 AND menutype='$menutype'"); $rsa=$rs->GetArray(); $parent[]=array("name"=>_MENU_TOP,"value"=>"0"); foreach($rsa as $row)$parent[]=array("name"=>$row['name'],"value"=>$row['id']); $parent=select($parent,$rsar['parent']); $gui->add("form_list","link_parent",_MENU_PARENT,$parent,"6"); $gui->add("form_hidden","olink_parent","",$rsar['parent'],"6"); $access_level=access_array($rsar['access']); $gui->add("form_select","link_access",_CMN_ACCESS,$access_level); $gui->add("tab_end"); if($action=='edit' && $item_type=="wrapper") { $c_xml= $lm_absolute_path."admin/components/com_wrapper/wrapper.xml"; $gui->addxmlparams($c_xml,$rsar['params'],false,_COMPONENTS_PARAMS); } $gui->add("tab_tail"); $gui->add("end_form"); $gui->generate(); } ?>