name=$jname;
$this->db=new Db('helpers',array('jname'=>$jname,'helper'=>$helper));
}
function generate()
{
if($this->db->error) return;
$query="select * from forms order by group_id asc, order_id asc";
$fields=$this->db->select($query);
//echo '
';print_r($fields);
$defaults=array();
$last_type='';
$this->html=' ';
return array('html'=>$this->html,'defaults'=>$defaults);
}
function getElement($el,$arr=array())
{
$tpl='';
switch(trim($el))
{
case 'inputbox':
$tpl='[default] ${desc}
';
break;
case 'password':
$tpl='[default] ${desc}
';
break;
case 'delimer':
$tpl='${desc} ';
break;
case 'checkbox':
$tpl='${desc} ';
break;
case 'select':
$tpl=$this->getSelect($el,$arr);
break;
case 'radio':
$tpl=$this->getRadio($el,$arr);
break;
}
return $tpl;
}
function getSelect($el,$arr)
{
$tpl='';
if(isset($arr['link']))
{
$query="select * from {$arr['link']} order by order_id asc";
$opts=$this->db->select($query);
array_unshift($opts,array('id'=>0,'text'=>'','order_id'=>-1));
if(!empty($opts))foreach($opts as $key=>$opt)
{
$selected=($opt['id']==$arr['cur'])?' selected':'';
$tpl.=''.$opt['text'].' ';
}
}
$tpl.=' [default] ${desc}
';
return $tpl;
}
function getRadio($el,$arr)
{
$tpl='
${desc} ';
if(isset($arr['link']))
{
$query="select * from {$arr['link']} order by order_id asc";
$opts=$this->db->select($query);
if(!empty($opts))foreach($opts as $key=>$opt)
{
$checked=($opt['id']==$arr['cur'])?' checked':'';
$tpl.=''.$opt['text'].': ';
}
}
$tpl.=' ';
return $tpl;
}
function setButtons($arr=array())
{
$this->html.='
';
}
}
/*
$form=new Forms('php');
?>
generate();
//$form->setButtons(array('save','cancel'));
*/