<?
class form
{
function form($url,$method)
{
if (empty($method))
$method='get';
$this->res=former('start',$url,$method);
}
function input($type,$text,$name,$value)
{
if (!eregi('hidden|submit',$type))
$this->res.=$text.':';
if ($type=='text')
$element=former('itext',$name,$value);
if ($type=='password')
$element=former('ipass',$name,'');
if ($type=='hidden')
$element=former('ihidden',$name,$value);
if ($type=='submit')
$element=former('isubmit',$name,$value);
if ($type=='checkbox')
$element=former('icheck',$name,'');
$this->res.=$element;
}
function other($type,$text,$name,$value)
{
if ($type=='textarea')
$element=$text.':'.former('textarea',$name,$value);
if ($type=='label')
$element=former('label',$value,$text);
############# другое ############
if ($type=='str')
$element=$text.'<br />';
if ($type=='img')
$element=former('image',$text,$name).'<br />';
if ($type=='href')
$element=former('link',$text,$name).'<br />';
if ($type=='banner')
$element=str_replace('</a>','',former('link',$text,'')).former('image',$name,$value).'</a><br />';
##################################
$this->res.=$element;
}
function select($text,$name,$values)
{
$element.=$text.':'.former('stselect',$name,'');
$ex1=explode(';',$values);
foreach($ex1 as $value)
{
$ex2=explode('=',$value);
$element.=former('option',$ex2[0],$ex2[1]);
}
$this->res.=$element.former('enselect','','');
}
function dater($text,$name,$age_start,$age_end)
{
$name_arr=explode(';',$name);
//global $age_start, $age_end;
$age_max=date('Y')-$age_start;
$age_min=date('Y')-$age_end;
$m=explode(',','Января,Февраля,Марта,Апреля,Мая,Июня,Июля,Августа,Сентября,Октября,Ноября,Декабря');
$element.=former('stselect',$name_arr[0],'');
for ($i=1;$i<=31;$i++)
$element.=former('option',$i,$i);
$element.=former('enselect','','');
$element.=former('stselect',$name_arr[1],'');
for ($i=0;$i<count($m);$i++)
$element.=former('option',$i+1,$m[$i]);
$element.=former('enselect','','');
$element.=former('stselect',$name_arr[2],'');
for ($i=$age_min;$i<=$age_max;$i++)
$element.=former('option',$i,$i);
$element.=former('enselect','','');
$this->res.=$text.':<br />'.str_replace('<br />','',$element).'<br />';
}
function get()
{
return $this->res.former('end','','');
}
}
function former($type,$var1,$var2)
{
global $locate;
$f=explode(';',file_get_contents('birzha/form.txt'));
foreach($f as $value)
{
$ex=explode(':', $value);
if ($ex[0]==$type)
$re=$ex[1];
}
$re=str_replace('var1',$var1,$re);
$re=str_replace('var2',$var2,$re);
if (!eregi('start|end|hidden|submit|option|check|select|label|image|link',$type))
$re='<br />'.$re.'<br />';
elseif (eregi('stselect|check',$type))
$re='<br />'.$re;
elseif (eregi('enselect|label',$type))
$re=$re.'<br />';
return trim($re);
}
?>