ACC SHELL
<?
class CForms
{
var $pripojeni;
function CForms($pripojeni)
{
$this->pripojeni=$pripojeni;
$this->lang = $_REQUEST['lang']?$_REQUEST['lang']:"cze";
$this->sekce = $_REQUEST['sekce'];
$this->id_uzivatele = $_SESSION['suser_id'];
$this->opravneni_uzivatele = $_SESSION['reg_customer_id_subjektu'];
$this->db_prefix = $GLOBALS['conf_db_prefix'];
$this->translations = $GLOBALS['translations'];
$this->credit = $_SESSION['reg_customer_kredit_do']>=date("Y-m-d");
}
/* ******************************************************************************** vypisove metody */
function form_element($typ_elementu, $subtyp_elementu='', $nazev_elementu, $hodnota_elementu='', $popis='', $typ_formulare, $default_value='', $prefix_id="", $onchange_submit=false, $class='')
{
$css_classes['text'] = "";
$css_classes['password']= "";
$css_classes['checkbox']= "check-btn";
$css_classes['radio'] = "radio-btn";
$css_classes['submit'] = "submitter";
switch ($typ_formulare){
case "table":
echo"<tr><th>";
break;
case "ul":
echo"<li>";
break;
}
echo $popis;
switch ($typ_formulare){
case "table":
echo"</th><td>";
break;
}
switch ($typ_elementu){
case "input":
switch ($subtyp_elementu){
case "checkbox":
echo "<input type='".$subtyp_elementu."' name='".$nazev_elementu."' id='".$prefix_id.$nazev_elementu."' value='".$default_value."' ".($hodnota_elementu==$default_value?"checked='checked'":"")." ".($class || $css_classes[$subtyp_elementu]?"class='".$class." ".$css_classes[$subtyp_elementu]."'":"")." ".($onchange_submit?"onchange='return submit(this)'":"")."/>";
break;
case "radio":
echo "<input type='".$subtyp_elementu."' name='".$nazev_elementu."' id='".$prefix_id.$nazev_elementu."' value='".$default_value."' ".($hodnota_elementu==$default_value?"checked='checked'":"")." ".($class || $css_classes[$subtyp_elementu]?"class='".$class." ".$css_classes[$subtyp_elementu]."'":"")." ".($onchange_submit?"onchange='return submit(this)'":"")."/>";
break;
case "file":
echo "<input type='".$subtyp_elementu."' name='".$nazev_elementu."' id='".$prefix_id.$nazev_elementu."' ".($class || $css_classes[$subtyp_elementu]?"class='".$class." ".$css_classes[$subtyp_elementu]."'":"")." ".($onchange_submit?"onchange='return submit(this)'":"")."/>";
if (is_file($hodnota_elementu))
echo"<br/><a href='".$hodnota_elementu."' class='gal'>zobrazit</a>";
break;
case"hidden":
echo "<input type='".$subtyp_elementu."' name='".$nazev_elementu."' id='hidden_".$prefix_id.$nazev_elementu."' value='".$hodnota_elementu."' ".($class || $css_classes[$subtyp_elementu]?"class='".$class." ".$css_classes[$subtyp_elementu]."'":"")."/>";
break;
default:
echo "<input type='".$subtyp_elementu."' name='".$nazev_elementu."' id='".$prefix_id.$nazev_elementu."' value='".$hodnota_elementu."' ".($class || $css_classes[$subtyp_elementu]?"class='".$class." ".$css_classes[$subtyp_elementu]."'":"")."/>";
break;
}
break;
case"textarea":
echo"<textarea name='".$nazev_elementu."' id='".$prefix_id.$nazev_elementu."' ".($class?"class='class'":"").">".$hodnota_elementu."</textarea>";
break;
}
switch ($typ_formulare){
case "table":
echo"</td></tr>\n";
break;
case "ul":
echo"</li>\n";
break;
}
}
function select_element($typ, $nazev, $hodnota , $popis, $typ_formulare, $interval_od="", $interval_do="", $nulovani="", $onchange_submit=false){
switch ($typ_formulare){
case "table":
echo"<tr><th>";
break;
case "ul":
echo"<li>";
break;
}
echo $popis;
switch ($typ_formulare){
case "table":
echo"</th><td>";
break;
}
switch ($typ){
case "geo":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdataregiony = $this->pripojeni->dotaz("SELECT R.*, S.nazev AS nazev_statu FROM ".$this->db_prefix."regiony R, ".$this->db_prefix."staty S WHERE R.id_statu=S.id ORDER BY S.nazev, R.nazev");
while ($dbdataregiony && $dataregiony = $this->pripojeni->objekt_dotazu($dbdataregiony)){
echo"<optgroup label='".$dataregiony->nazev_statu." - ".$dataregiony->nazev."'>\n";
$dbdata = $this->pripojeni->dotaz("SELECT M.* FROM ".$this->db_prefix."mista M WHERE id_regionu='".$dataregiony->id."' ORDER BY M.nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</optgroup>\n";
}
echo"</select>\n";
break;
case "geo-regiony-refresh":
echo"<select name='".$nazev."' id='".$nazev."' onchange='return submit(this);'>";
echo"<option value='0'>-vyberte-</option>\n";
$dbdataregiony = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."staty ORDER BY nazev");
while ($dbdataregiony && $dataregiony = $this->pripojeni->objekt_dotazu($dbdataregiony)){
echo"<optgroup label='".$dataregiony->nazev."'>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."regiony WHERE id_statu='".$dataregiony->id."' ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</optgroup>\n";
}
echo"</select>\n";
break;
case "geo-mesta":
/*
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT M.* FROM ".$this->db_prefix."mista M WHERE ".($_REQUEST[$nazev.'_region'] || $interval_od?"id_regionu='".($_REQUEST[$nazev.'_region']?$_REQUEST[$nazev.'_region']:$interval_od)."'":"0")." ORDER BY M.nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
*/
/*
echo"<input type='text' value='' id='".$nazev."_text' name='".$nazev."_text' class='CityAjax ac_input'/>";
echo"<input type='text' value='' id='".$nazev."' name='".$nazev."' class='CityAjax ac_input'/>";
echo"<input type='button' onclick='lookupAjax();'' value='Get Value'/>";
*/
?>
<?
if($hodnota){
$dbdata = $this->pripojeni->dotaz("SELECT M.* FROM ".$this->db_prefix."mista M WHERE id='".$hodnota."' ORDER BY M.nazev");
if ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
$predvybrany_nazev = $data->nazev;
$predvybrane_lon = $data->lon;
$predvybrane_lat = $data->lat;
}
}
echo"\n";
echo" <input style='' type='text' id='".$nazev."_input' name='".$nazev."_input' class='auto_input' value='".$predvybrany_nazev."' onchange='return submit(this);'/>\n";
echo" <input type='text' id='$nazev' name='$nazev' value='".$hodnota."' class='auto_id_hidden' />\n";
?>
<script type="text/javascript">
var options<? echo "_".$nazev;?> = {
script:"auto_city.php?stat=<? echo "".($_REQUEST[$nazev.'_region']?$_REQUEST[$nazev.'_region']."":"0")."" ; ?>&",
varname:"input",
callback: function (obj<? echo "_".$nazev;?>) { document.getElementById('<? echo $nazev;?>').value = obj<? echo "_".$nazev;?>.id; }
};
var as_json<? echo "_".$nazev;?> = new AutoSuggest('<? echo "".$nazev;?>_input', options<? echo "_".$nazev;?>);
</script>
<?
if($predvybrane_lon){
echo "<a href='http://maps.google.com/maps?q=".$predvybrane_lat.",+".$predvybrane_lon."+(Rezervační systém: ".$predvybrany_nazev.")&iwloc=A&hl=cs' target='_blank'>mapa</a>";
}
break;
//pro vyhledavani
case "geo-stat":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."staty ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
break;
case "geo-region":
$nazev_promenne = substr($nazev, 0, -6)."stat";
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."regiony WHERE id_statu='".$_REQUEST[$nazev_promenne]."' ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
break;
case "geo-mesto":
/*
$nazev_promenne = ($nazev)."_region";
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."mista WHERE id_regionu='".($_REQUEST[$nazev_promenne])."' ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
*/
/* echo"<input type='text' value='' id='".$nazev."_text' name='".$nazev."_text' class='CityAjax ac_input'/>";
echo"<input type='text' value='' id='".$nazev."' name='".$nazev."' class='CityAjax ac_input'/>";
echo"<input type='button' onclick='lookupAjax();'' value='Get Value'/>";
*/
if($hodnota){
$dbdata = $this->pripojeni->dotaz("SELECT M.* FROM ".$this->db_prefix."mista M WHERE id='".$hodnota."' ORDER BY M.nazev");
if ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
$predvybrany_nazev = $data->nazev;
$predvybrane_lon = $data->lon;
$predvybrane_lat = $data->lat;
}
}
echo"\n";
echo" <input style='' type='text' id='".$nazev."_input' name='".$nazev."_input' class='auto_input' value='".$predvybrany_nazev."' />\n";
echo" <input type='text' id='$nazev' name='$nazev' value='".$hodnota."' class='auto_id_hidden'/>\n";
if($predvybrane_lon){
echo "<a href='http://maps.google.com/maps?q=".$predvybrane_lat.",+".$predvybrane_lon."+(Rezervační systém: ".$predvybrany_nazev.")&iwloc=A&hl=cs' target='_blank'>mapa</a>";
}
?>
<script type="text/javascript">
var options<? echo "_".$nazev;?> = {
script:"auto_city.php?stat=<? echo "".($_REQUEST[$nazev.'_region']?$_REQUEST[$nazev.'_region']."":"0")."" ; ?>&",
varname:"input",
callback: function (obj<? echo "_".$nazev;?>) { document.getElementById('<? echo $nazev;?>').value = obj<? echo "_".$nazev;?>.id; }
};
var as_json<? echo "_".$nazev;?> = new AutoSuggest('<? echo "".$nazev;?>_input', options<? echo "_".$nazev;?>);
</script>
<?
break;
case "bus":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."dobravni_prostredky WHERE id_subjektu='".($_REQUEST['id_subjektu']?$_REQUEST['id_subjektu']:$this->id_subjektu)."' ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev." ".$data->typ." ".$data->spz."</option>\n";
}
echo"</select>\n";
break;
case "typ-prepeavy":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."typ_prepravy WHERE id_subjektu='".$this->id_subjektu."' ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
break;
case "subjekty":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."subjekty ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev." ".$data->mesto."</option>\n";
}
echo"</select>\n";
break;
case "typ-spoje":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."typ_prepravy ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
break;
case "typ-prostredku":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
echo"<option value='0'>-vyberte-</option>\n";
$dbdata = $this->pripojeni->dotaz("SELECT * FROM ".$this->db_prefix."typ_prostredku ORDER BY nazev");
while ($dbdata && $data = $this->pripojeni->objekt_dotazu($dbdata)){
echo"<option value='".$data->id."' ".($hodnota==$data->id?"selected='selected'":"").">".$data->nazev."</option>\n";
}
echo"</select>\n";
break;
case "datum":
// $hodnota = $hodnota ? $hodnota : ($nulovani?"":date("Y-m-d"));
$hodnota = $hodnota ? $hodnota : ($nulovani?"":date("d.m.Y"));
echo"<input type='text' name='".$nazev."' id='".$nazev."' maxlength='25' size='25' value='".$hodnota."'/> <a href=\"javascript:NewCssCal('".$nazev."','ddmmyyyy')\"><img src='images/cal.gif' alt='Pick a date'/></a>";
/*
$komponenty = explode("-", $hodnota);
$mesice = array(1=>"Ledna", 2=>"Února", 3=>"Března", 4=>"Dubna", 5=>"Května", 6=>"Června", 7=>"Července", 8=>"Srpna", 9=>"Září", 10=>"Října", 11=>"Listopadu", 12=>"Prosince");
echo"<select name='".$nazev."_den'>";
echo $nulovani?"<option value=''>-</option>\n":"";
for ($i=1; $i<=31; $i++){
echo"<option value='".$i."' ".($komponenty[2]==$i?"selected='selected'":"").">".$i.".</option>\n";
}
echo"</select>\n";
echo"<select name='".$nazev."_mesic'>";
echo $nulovani?"<option value=''>-</option>\n":"";
for ($i=1; $i<=12; $i++){
echo"<option value='".$i."' ".($komponenty[1]==$i?"selected='selected'":"").">".$mesice[$i]."</option>\n";
}
echo"</select>\n";
echo"<select name='".$nazev."_rok'>";
echo $nulovani?"<option value=''>---</option>\n":"";
for ($i=2010; $i<=(date('Y')+5); $i++){
echo"<option value='".$i."' ".($komponenty[0]==$i?"selected='selected'":"").">".$i."</option>\n";
}
echo"</select>\n";
*/
break;
case "interval":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
for ($i=$interval_od; $i<=$interval_do; $i++){
echo"<option value='".$i."' ".($hodnota==$i?"selected='selected'":"").">".$i."</option>\n";
}
echo"</select>\n";
break;
case "interval-dec":
echo"<select name='".$nazev."' id='".$nazev."' ".($onchange_submit?"onchange='return submit(this)'":"").">";
for ($i=$interval_od; $i<=$interval_do; $i+=10){
echo"<option value='".$i."' ".($hodnota==$i?"selected='selected'":"").">".$i."</option>\n";
}
echo"</select>\n";
break;
}
switch ($typ_formulare){
case "table":
echo"</td></tr>\n";
break;
case "ul":
echo"</li>\n";
break;
}
}
function javascript_alert($alert)
{
echo"<script type='text/javascript'>\n";
echo "window.alert('".$alert."')\n";
echo"</script>\n";
}
function javascript_validate_form($seznam_povinnych, $prefix="")
{
$seznam_povinnych_elementu = explode(",", $seznam_povinnych);
echo"<script type='text/javascript'>\n";
echo "function validate(form){\n";
if (is_array($seznam_povinnych_elementu)){
foreach ( $seznam_povinnych_elementu as $key => $value ){
echo"if(!document.getElementById('".$prefix.trim($value)."').value) {\n";
echo"alert('Je nutné vyplnit všechny povinné údaje.');\n";
echo"document.getElementById('".$prefix.trim($value)."').focus();\n";
echo"return false;\n";
echo"}\n";
}
}
echo "return true;\n";
echo"}\n";
echo"</script>\n";
}
function javascript_refresh_form(){
echo"<script type='text/javascript'>\n";
echo"function refresh_form(element){\n";
// echo"element.form.submit();\n";
echo"}\n";
echo"</script>\n";
}
}
?>
ACC SHELL 2018