gui_array[]=$t_array; /* hook function */ if($t_array['tag']=='form' && $t_array['name']=='adminform' ){ $this->add('form_hidden','task'); $this->form_url=$value; } if($t_array['tag']=='form_file' )$this->form_type="file"; if($t_array['tag']=='form_htmlarea' && !$showhtmlarea){ initEditor(); $showhtmlarea=true; } } function row($col1,$col2='',$class='',$style='') { if($col2=='')return "$col1\n"; else return "$col1$col2\n"; } function tab_header($name) { $ret_str= "\n"; $i=1; foreach($this->gui_array as $row) { if(isset($row['value']) && $row['value']==$name){$ret_str.= "\n";$i++;} } $ret_str.= "
".$row['name']."
\n"; return $ret_str; } function script($val) { return ' '; } function get_order_field($id,$row_id,$order) { $order_select=""; $order_select.="\n\n\n"; return $order_select; } function generatescript() { global $toolbar,$htmlareasave,$showhtmlarea; echo '"; } function generate() { global $lm_website,$lm_template,$htmlarea,$lm_show_count,$task,$filter_var,$filter_str,$filter_type; $com_header=""; $tab_div=false; /* end the table we started */ $this->generatescript(); for($i=0;$igui_array);$i++) { echo "\n"; $row=$this->gui_array[$i]; if(isset($row['name']))$name=$row['name']; else $name=''; if(isset($row['desc']))$desc=$row['desc']; else $desc=''; if(isset($row['style']))$style=$row['style']; else $style=''; if(isset($row['value']))$value=$row['value']; else $value=''; $req_star='  '; if(isset($row['php'])) { $required=false; eval($row['php']); if($required)$req_star="*"; } switch($row['tag']) { case "form_textfield": echo $this->row("$req_star $desc :","");break ; case "form_file": echo $this->row("$req_star $desc :","");break ; case "form_text": { echo $this->row("$req_star $desc","$value"); break ; } case "form_hidden": echo "\n";break ; case "form_password": echo $this->row("$req_star $desc :","");break ; case "form_textarea": { $area_str="\n"; echo $this->row("$req_star $desc :","$area_str"); break ; } case "form_textarea_big": { $area_str="\n"; echo $this->row("$req_star $desc :","$area_str"); break ; } case "form_htmlarea": { $area_str=editorArea($name,$value,$row='20',$cols='80',"class='tf'"); echo $this->row("$req_star $desc :","$area_str"); break ; } case "form_textcontent": { $area_str="\n"; echo $this->row("$req_star $desc :","$area_str"); break ; } case "form_boolean": { $y_s='';$n_s=''; if($value==1)$y_s="selected"; else $n_s="selected"; $bool_str=""; echo $this->row("$req_star $desc :","$bool_str"); break ; } case "form_radio": { $radio_arr=''; foreach($value as $row) { $sel=''; if(isset($row['selected']))$sel='checked'; $radio_arr.=''.$row['name'].'  '."\n"; } echo $this->row("$req_star $desc :",$radio_arr); break; } case "form_select": { $select_drop=''."\n"; echo $this->row("$req_star $desc :","$select_drop"); break; } case "form_listm": { $multiple="multiple"; } case "form_list": { if(!isset($multiple))$multiple=""; $select_drop=''."\n"; echo $this->row("$req_star $desc :","$select_drop"); break; } case "form_list_image": { $select_drop="'; $select_drop='
'.$select_drop.' Preview
'."\n"; echo $this->row("$req_star $desc :","$select_drop"); break; } case "form_buttons": { $buttons=''; foreach($value as $row) { $buttons.='  '; } echo $this->row($desc,$buttons); } break; case "form_date": { global $date_js; if(!isset($date_js)){ //include js files ?> '; $date_field.=''; $date_field.=''; $date_field.=''; echo $this->row("$req_star $desc :",$date_field); break; } case "form_browse": { $browse_field='
'; $browse_field.=''; $browse_field.=''; $browse_field.='
'; echo $this->row("$req_star $desc :",$browse_field); break; } case "form": if($this->form_type=="simple" ) echo "
"; else if($this->form_type=="file" ) echo "\n "; echo ""; echo "
"; break; case "end_form": echo "
"; break; case "table": echo "";break; case "end_table":echo "
";break; case "bar":echo $this->row(' ','','');break; case "com_header":$com_header=$name; echo $this->row($name,'','header1'); break; /* tab based */ case "tab_link":echo $this->row($this->tab_header($name),'','');$$name=1;break; case "tab_selc":$cookie=true; case "tab_sel":echo $this->script("dhtml.cycleTab".(isset($cookie)?"C":"")."('tab$value')",'','');break; case "tab_head":echo "";break; case "tab_tail":echo "";break; case "tab":{ echo "
'; break; } case "data_table_sql" : { break; } /* misc tags */ case "html": echo "$value"; } } } function addxmlparams($file,$params,$default=true,$title=_MODULES_PARAMS) { global $conn; $sparams=parseparams($params); if(is_file($file)) { $xmlDoc = new MiniXMLDoc(); $xmlDoc->fromFile($file); $root =& $xmlDoc->getRoot(); $xml_params = $root->getElementByPath("mosinstall/params"); if ( $xml_params && $params = $xml_params->getAllChildren()) { $this->add("html","","","

"); $this->add("tab_simple","",$title); foreach($params as $param) { $options=false; switch($param->attribute("type")) { case "text": $this->add("form_textfield","param_".$param->attribute("name"),$param->attribute("label"),$sparams->get($param->attribute("name"),$param->attribute("default"))); break; case "textarea": $this->add("form_textarea","param_".$param->attribute("name"),$param->attribute("label"),$sparams->get($param->attribute("name"),$param->attribute("default"))); break; case "mos_menu": $rs=$conn->Execute("SELECT id,title,count FROM #__categories WHERE section = 'com_menu'"); $table_data=$rs->GetArray(); foreach($table_data as $row) { $toption["name"]=$row['title']; $toption["value"]=$row['title']; $options[]=$toption; } $options=select($options,$sparams->get($param->attribute("name"),$param->attribute("default"))); $this->add("form_select","param_".$param->attribute("name"),$param->attribute("label"),$options); break; case "bool": $this->add("form_boolean","param_".$param->attribute("name"),$param->attribute("label"),$sparams->get($param->attribute("name"),$param->attribute("default"))); break; case "radio": case "list": $cparams = $param->getAllChildren(); foreach($cparams as $cparam) { $toption["name"]=$cparam->getValue(); $toption["value"]=$cparam->attribute("value"); $options[]=$toption; } $options=select($options,$sparams->get($param->attribute("name"),$param->attribute("default"))); $this->add("form_select","param_".$param->attribute("name"),$param->attribute("label"),$options); break; case "spacer": $this->add("bar"); break; } } $this->add("tab_end"); } }else { if($default){ $this->add("html","","","

"); $this->add("tab_simple","",$title); $this->add("form_textfield","param_moduleclass_sfx","Module Class Suffix",$sparams->get("moduleclass_sfx","")); $this->add("tab_end"); } } } } ?>
$desc
"; $$value++; $tab_div=true; break;} case "tab_simple":{echo "
  
$desc 
"; break;} case "tab_end":echo "
  
"; if($tab_div){echo "";$tab_div=false;} break; case "xml_gen": { } case "data_table_arr" : { echo '
'; echo ''; echo ''; foreach($desc as $row) { $span=''; if($row['title']=="Ordering"){ $span="span='3'";} else echo ""; } echo "\n"; /* output the table col headers */ $order_select_defined=false; echo ""; $f_nav_select=''; foreach($desc as $row) { if(!isset($row['align']) )$align='left'; else $align =$row['align']; $span=''; if($row['title']==_CMN_ORDERING){ $span=" colspan='3' "; $order_select_defined=true; } echo ""; } echo "\n"; /*build the filter navigation*/ $f_nav=''; $f_nav_cond=""; $f_nav.=' '.$f_nav_cond.' '; $f_nav.='
'._IFC_FILTER_HIDE.''; $f_nav="
".$f_nav."
"._IFC_FILTER_SHOW." ".(($task=="filter")?""._IFC_FILTER_DISABLE."":"")."
\n \n ".$this->script("filter.cycleTabC('filtertab2')",'',''); $c_nav_filter=""; if($task=="filter" && $this->enable_filter) { $tvalues=false; foreach($value as $vrow ) { $eval_str=''; $eval_res=false; switch($filter_type) { case "LI" :$eval_str='if(stristr($vrow["$filter_var"],$filter_str))$eval_res=true;'; break; case "GT" :$eval_str='if($vrow["$filter_var"]>$filter_str)$eval_res=true;'; break; case "LT" :$eval_str='if($vrow["$filter_var"]<$filter_str)$eval_res=true;'; break; case "EQ" :$eval_str='if($vrow["$filter_var"]==$filter_str)$eval_res=true;'; break; } eval($eval_str); if($eval_res){$tvalues[]=$vrow;} } $value=$tvalues; $c_nav_filter="&task=filter&filter_type=$filter_type&filter_var=$filter_var&filter_str=$filter_str"; } /*page wise navigation*/ $c_nav=''; if(is_array($value)) { $row_total=count($value); global $table_page; $page_url=$this->form_url; if(!isset($table_page))$table_page=1; $num_pages=sprintf("%d",$row_total/$lm_show_count); $num_pages+=1; $value = array_slice($value,(($table_page-1)*$lm_show_count),$lm_show_count); $first=_NAV_FIRST.' |'; $previous=_NAV_PREV.' |'; $last='| '._NAV_LAST; $next='| '._NAV_NEXT; $row_num=1+($table_page-1)*$lm_show_count; if($table_page>1)$first=""._NAV_FIRST." | "; if($table_page>1)$previous=""._NAV_PREV." | "; if($table_page<$num_pages)$next=" | "._NAV_NEXT.""; if($table_page<$num_pages)$last=" | "._NAV_LAST.""; $page_links=''; for($pn=1 ; $pn<=$num_pages ; $pn ++) { if($pn == $table_page)$page_links.=" $pn "; else $page_links.=" $pn "; } $c_nav = "
$first $previous $page_links $next $last
"; /* finally output the values */ foreach($value as $vrow ) { $row_color='wbg'; if($row_num%2==0)$row_color='gbg'; echo "\n"; foreach($desc as $row) { if(!isset($row['align']) )$align='left'; else $align =$row['align']; echo ""; } echo "\n"; $row_num++; } } echo '
"; switch ($row['title']) { case "radio" : echo ' ';break; case "checkbox" : echo ''; break ; default : echo $row['title']; } if($row['title']!="radio" && $row['title']!="checkbox" && $row['title']!="#" && $row['title']!=_CMN_PUBLISHED && $row['title']!=_CMN_ORDERING)$f_nav_select.=''."\n"; echo "
"; switch ($row['title']) { case "radio" : echo ''; break; case "checkbox" : echo ''; break ; case _CMN_PUBLISHED : { if($vrow[$row['val']]=='1')$publish_string=''; else if($vrow[$row['val']]=='2')$publish_string=''; else $publish_string=''; echo $publish_string; break ; } case _CMN_ORDERING : { $up=' ';$down=' '; $orderup=($this->order==1)?"orderup":"orderdown"; $orderdown=($this->order==1)?"orderdown":"orderup"; if($row_num!=1)$up='Move up'; if($row_num!=$row_total)$down='Move down'; echo "$up$down".$this->get_order_field($vrow['id'],$row_num,$vrow[$row['val']]); break ; } case _CMN_ACCESS : { $access_arr= array(_USERS_GRP_0,_USERS_GRP_1); echo $access_arr[ $vrow[$row['val']] ]; break; } case _CMN_FRONTPAGE : { $fp_arr= array(_CMN_NO,_CMN_YES); echo $fp_arr[ $vrow[$row['val']] ]; break; } case "#" : echo $row_num; break; default : { $bval=''; if(isset($row['bval']))$bval = " (".$vrow[$row['bval']].")"; $links='';$linke=''; if(isset($row['ilink']) ) { $ilink=$row['ilink']; for($m=1;$m<10;$m++) { $i_var="ivar$m"; if(isset($row[$i_var]) )$ilink=str_replace("$i_var",$vrow[$row[$i_var]],$ilink); else break; } $links=''; $linke=''; } if(isset($row['hlink']) ) { $links=''; $linke=''; } if(isset($row['blink']) ) { $links=''; $linke=''; } if(isset($row['mlink']) ) { $links=''; $linke=''; } if(isset($row['info'])) echo $vrow[$row['val']]." ".$bval.$links."[".$row['info']."]".$linke; else { if(isset($row['date'])){ $date_format=array('D dS M Y h:i','d/m/Y h:i','m/d/Y h:i','d.m.Y h:i','m.d.Y h:i', 'd.m.Y H:i:s','m/d.Y H:i:s','d/m.Y H:i:s','M dS, Y h:i a','F d, Y, H:i','Y d.m D, H:i', 'Y d.m l, H:i','Y d.m l','D/d.m/H:i:s','D H:i:s d.m Y'); $fmt_date=date($date_format[$row['date']],$vrow[$row['val']]); echo $fmt_date; }else { echo $links.$vrow[$row['val']].$bval.$linke.' ';} } } } echo "
'.(($this->enable_filter)?$f_nav:"").''.$c_nav.'