Current File : /home/users/barii/public_html/finansenl.com.pl/wodki/admin/classes/Form.php
<?php

/*
 * Klasa do tworzenia formularzy
 */
 
class Form{
	
	var $setup = array();
	var $fields = array();
	var $form;
	var $multipart;
	
	function Form($form){
		$this->multipart = false;
		if($form['name'])
			$this->setup['name'] = $form['name'];
		else
			$this->setup['name'] = 'form_'.rand(100,200);
			
		if($form['id'])
			$this->setup['id'] = $form['id'];
		else
			$this->setup['id'] = $this->setup['name'];
			
		switch($form['method']){
			case 'get': $this->setup['method'] = 'Get'; break;
			case 'post': $this->setup['method'] = 'Post'; break;
			default: $this->setup['method'] = 'Post'; break;
		}
		if($form['IdUser'])
			$this->setup['IdUser'] = $form['IdUser'];
		else
			$this->setup['IdUser'] = '';
		
		if($form['action'])
			$this->setup['action'] = $form['action'];
		else
			$this->setup['action'] = '';
		
		if($form['class'])
			$this->setup['class'] = $form['class'];
		else
			$this->setup['class'] = 'cmxform';
		
		if($form['desc'])
			$this->setup['desc'] = $form['desc'];
		else
			$this->setup['desc'] = 'Formularz';
		
		if($form['submit'])
			$this->setup['submit'] = $form['submit'];
		else
			$this->setup['submit'] = 'Wyślij formularz';
			
		if($form['submit_position'])
			$this->setup['submit_position'] = $form['submit_position'];
		else
			$this->setup['submit_position'] = 'mrlf120';
		$this->fields = array();
		$this->form = '';
	}
	
	function AddField($name, $label = NULL, $type='text', $values = NULL, $field_options = NULL){
		$field['name']	= $name;
		$field['type']	= $type;
		if($label == NULL)
			$field['label']	= '';
		else
			$field['label']	= $label;
		$field['values']= $values;
		
		if($field['type'] == 'textarea'){
			if($field_options != NULL)
				$field['options'] = $field_options;
			else
				$field['options'] = array(70,6);
		} elseif($field['type'] == 'dropdown'){
			if($field_options != NULL)
				$field['options'] = $field_options;
			else
				$field['options'] = 0;
		} elseif($field['type'] == 'radio'){
			if($field_options != NULL)
				$field['options'] = $field_options;
			else
				$field['options'] = 1;
		} else {
			$field['options'] = $field_options;
		}
		
		array_push($this->fields,$field);
	}
	
	function AddHeader($value){
		$field['type'] = 'header';
		$field['label'] = $value;
		array_push($this->fields,$field);
	}
	
	function AddInfo($value,$id=NULL){
		$field['type'] = 'info';
		$field['label'] = $value;
		if($id!=NULL)
			$field['id'] = $id;
		array_push($this->fields,$field);
	}
	
	function AddDiv($value = NULL, $style = NULL){
		$field['type'] = 'div';
		if($value){
			$field['label'] = '<div id="'.$value.'"';
			if($style){
				$field['label'] .= ' style="'.$style.'"';
			}
			$field['label'] .= ' />';
		}
		else
			$field['label'] = '</div>';
		array_push($this->fields,$field);
	}
	function AddI($value = NULL, $style = NULL){
		$field['type'] = 'div';
		if($value){
			$field['label'] = $value;
		}
		array_push($this->fields,$field);
	}
	
	/**
	 * Dodaj pole pliku
	 * @param string $name nazwa pola
	 * @param string $label opis pola
	 * @param string $params parametry pola
	 */
	
	function AddFile($name, $label, $params){
		$this->multipart = true;
		$field['type'] = 'file';
		$field['name'] = $name;
		$field['label'] = $label;
		$field['params'] = $params;
		array_push($this->fields, $field);
	}
	
	/**
	 * Dodaj Obrazek
	 */
	
	function AddImage($name, $url){
		$field['type'] = 'image';
		$field['label'] = $name;
		$field['name'] = '';
		$field['url'] = $url;
		array_push($this->fields, $field);
	}
	
	function AddCheck($name,$label){
		$field['type'] = 'checkbox';
		$field['label'] = $label;
		$field['name'] = $name;
		array_push($this->fields,$field);
	}
	
	function Create(){

		$this->form .= '<p><b>'.$this->setup['desc'].'</b></p>'.chr(10);
		$this->form .= '<form class="'.$this->setup['class'].'" name="'.$this->setup['name'].'" id="'.$this->setup['id'].'"';
		$this->form .= ' enctype="multipart/form-data"';
		$this->form .= ' method="'.$this->setup['method'].'" action="'.$this->setup['action'].'">'.chr(10);
		
		foreach($this->fields as $field){
			
			if($field['type'] != 'header' && $field['type'] != 'div' && $field['type'] != 'hidden' && $field['type'] != 'info'){
				
				$this->form .= '<p>'.chr(10).chr(9).'<label for="'.$field['name'].'"><span class="form">'.$field['label'];
				$this->form .= '</span></label>'.chr(10).chr(9);
				
				switch($field['type']){
					
					case 'text':
					case 'password':
						$this->form .= '<input id="'.$field['name'].'" name="'.$field['name'].'" type="'.$field['type'].'"';
						if($field['options']['size'])
							$this->form .= ' size="'.$field['options']['size'].'"';
						else
							$this->form .= ' size="60"';
						if($field['options']['readonly'])
							$this->form .= ' readonly';
						$this->form .= ' value="'.$field['values'].'" class="imp" ';
                if($field['name'] == 'login') $this->form .= 'required';
						$this->form .= '/>'.$field['options']['post'];
						break;
						
					case 'textareacke': 
						$this->form .= '<textarea id="textareacke1"  class="simplewysiwyg form-control '.$field['name'].'" name="'.$field['name'].'">'.$field['values'].'</textarea>';
						break;
					case 'datetime':
					   $this->form .= '<input name="'.$field['name'].'" id="datetimepicker" value="'.$field['values'].'" type="text" style="width:100px">';
						break;
					case 'datetime2':
					   $this->form .= '<input name="'.$field['name'].'" id="datetimepicker2" value="'.$field['values'].'" type="text" style="width:100px">
        <script type="text/javascript">
        $(\'#datetimepicker\').datetimepicker({
        dayOfWeekStart : 1,
        lang:\'pl\',
        format:\'Y-m-d H:i\'
        });
        $(\'#datetimepicker2\').datetimepicker({
        dayOfWeekStart : 1,
        lang:\'pl\',
        format:\'Y-m-d H:i\'
        });
	</script>
             ';
						break;
					case 'textarea': 
						$this->form .= '<textarea id="textarea1" name="'.$field['name'].'" style="width: 90%;" cols="'.$field['options'][0].'" rows="'.$field['options'][1].'" class="textarea">'.$field['values'].'</textarea>';
						break;
					case 'openarea': 
						$this->form .= '<textarea id="'.$field['name'].'" name="'.$field['name'].'" cols="'.$field['options'][0].'" rows="'.$field['options'][1].'" style="height:180px;">'.$field['values'].'</textarea>';
						break;
						
					case 'dropdown': 
						$this->form .= '<select name="'.$field['name'].'">';
						if($field['values']=='kat'){
						$IdUser=$this->setup['IdUser'];
            $sql = "SELECT * FROM `startup_baza_kat`  WHERE userID='$IdUser' ";
            $res = mysql_query($sql);
            while($row = mysql_fetch_array($res)){
            $nazwa_kat=$row["nazwa_kat"];
            $id_kat=$row["id"];
            $this->form .= '<option value="'.$id_kat.'">'.$nazwa_kat.'</option>';
            }
            ?>
            </select>
            <?php
            }
						else{
						$IdUser=$this->setup['IdUser'];
                $sql = "SELECT * FROM `startup_baza_kat`  WHERE userID='$IdUser'";
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $nazwa=$row["nazwa_kat"];
                $id_kat=$row["id"];
                $this->form .= '<option value="'.$id_kat.'"';
                    if($field['values']==$id_kat){$this->form .=  ' selected ';}
                $this->form .= '>'.$nazwa.'</option>';
                }
						}
						$this->form .= chr(10).'</select>';
						break;
								
          case 'Klient': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz klienta...</option>';
                $sql = "SELECT * FROM `kontakty` ORDER BY firma";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['firma'].' '.$row['imie'].' '.$row['nazwisko']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Platnosc': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz ...</option>';
                $sql = "SELECT * FROM `platnosc` ORDER BY sort";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['nazwa']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Skad': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz ...</option>';
                $sql = "SELECT * FROM `skad` ORDER BY sort";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['nazwa']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'User': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz ...</option>';
                $sql = "SELECT * FROM `user` ORDER BY login";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['imie'].' '.$row['nazwisko']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Wysylka': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz ...</option>';
                $sql = "SELECT * FROM `dostawa` ORDER BY sort";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['nazwa']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Klient': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz klienta...</option>';
                $sql = "SELECT * FROM `kontakty` ORDER BY firma";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.trim($row['firma'].' '.$row['imie'].' '.$row['nazwisko']).'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Kategoria': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz kategorię...</option>';
                $sql = "SELECT * FROM `kategorie`";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.$row['nazwa'].'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'KategoriaProdukt': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz kategorię...</option>';
                $sql = "SELECT * FROM `kategorieprodukty`";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.$row['nazwa'].'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Sesja': 
						$this->form .= '<select name="'.$field['name'].'">';
                $this->form .= '<option value="00:01"';
                    if($field['values']=='00:01'){$this->form .=  ' selected ';}
                $this->form .= '>00:01</option>';
                $this->form .= '<option value="00:05"';
                    if($field['values']=='00:05'){$this->form .=  ' selected ';}
                $this->form .= '>00:05</option>';
                $this->form .= '<option value="00:10"';
                    if($field['values']=='00:10'){$this->form .=  ' selected ';}
                $this->form .= '>00:10</option>';
                $this->form .= '<option value="00:30"';
                    if($field['values']=='00:30'){$this->form .=  ' selected ';}
                $this->form .= '>00:30</option>';
                $this->form .= '<option value="01:00"';
                    if($field['values']=='01:00'){$this->form .=  ' selected ';}
                $this->form .= '>01:00</option>';
						$this->form .= chr(10).'</select>';
						break;
          case 'Konta': 
						$this->form .= '<select name="'.$field['name'].'[]" multiple>';
                $sql = "SELECT * FROM `opcje` WHERE sprawdz = '1'";
                $d = substr($field['values'],1,-1);
                $dt = explode('#',$d);
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    foreach($dt as $v) {if($v==$row['id']){$this->form .=  ' selected ';}}
                $this->form .= '>'.$row['nazwa'].'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Kategorie': 
						$this->form .= '<select name="'.$field['name'].'[]" multiple>';
                $sql = "SELECT * FROM `kategorie`";
                $d = substr($field['values'],1,-1);
                $dt = explode('#',$d);
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    foreach($dt as $v) {if($v==$row['id']){$this->form .=  ' selected ';}}
                $this->form .= '>'.$row['nazwa'].'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Wojewodztwo': 
						$this->form .= '<select name="'.$field['name'].'">';
                $sql = "SELECT * FROM `woj`";
                $res = mysql_query($sql);
                $this->form .= '<option value="0">wybierz...</option>';
                while($row = mysql_fetch_array($res)){
                  $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                  $this->form .= '>'.$row['woj'].'</option>';
                }
						$this->form .= chr(10).'</select>';
						break;
          case 'Szablon': 
						$this->form .= '<select name="'.$field['name'].'" class="'.$field['name'].'">';
                $this->form .= '<option value="0">wybierz...</option>';
                $sql = "SELECT * FROM `szablony`";
                
                $res = mysql_query($sql);
                while($row = mysql_fetch_array($res)){
                $this->form .= '<option value="'.$row['id'].'"';
                    if($field['values']==$row['id']){$this->form .=  ' selected ';}
                $this->form .= '>'.$row['nazwa'].'</option>';
                }
                ?>
                </select>
            <?php
						$this->form .= chr(10).'</select>';
						break;
					case 'radio': 
					  if(is_array($field['values'])){
							foreach($field['values'] as $a_key => $value){
								$this->form .= '<input type="radio" name="'.$field['name'].'" value="'.$a_key.'" ';
								if($field['options'] == $a_key) $this->form .= 'checked ';
								$this->form .= 'class="radio" />'.$value.'&nbsp;&nbsp;&nbsp;';
							}
						}
						break;
					case 'file':
						$this->form .= '<input type="file" name="'.$field['name'].'" id="'.$field['name'].'" '.$field['params'].' class="imp"/>';
						break;
					case 'image':
						$this->form .= '<img src="'.$field['url'].'" />';
						break;
					case 'checkbox':
					  if($field['values']==1)
            $this->form .= '<input type="checkbox" name="'.$field['name'].'" id="'.$field['name'].'" class="imp" checked/>';
            else
						$this->form .= '<input type="checkbox" name="'.$field['name'].'" id="'.$field['name'].'" class="imp"/>';
						break;
					default:
						break;
				}
				$this->form .= chr(10).chr(9).'</p>'.chr(10);
			} else {
				switch($field['type']){
					case 'header' : $this->form .= '<div class="header">'.$field['label'].'</div>'.chr(10); break;
					case 'div' : $this->form .= $field['label'].chr(10); break;
					case 'hidden': $this->form .= '<input type="hidden" name="'.$field['label'].'" id="'.$field['label'].'" value="'.$field['values'].'" class="hidden"/>'.chr(10); break;
					case 'info': $this->form .= '<p class="info" id="'.$field['id'].'">'.$field['label'].'</p>'; break;
				}
			}
		}
		$this->form .= '<p class="'.$this->setup['submit_position'].'"><input class="submit btn btn-primary" type="submit" name="submit" value="&nbsp;&nbsp;'.$this->setup['submit'].'&nbsp;&nbsp;" /></p>'.chr(10).'</form>'.chr(10);
		return $this->form;
	}
	
}

?>