_menu = $html; } function DataEdit( $table , $key = '' , $val = '' , $adres = 'index.php' ) { $this -> _table = $table; $this -> _adres = $adres; $this -> _quantity = 0; $this -> _quantity_hidden = 0; if ( $key && $val ) { $this -> _key = $key; $this -> _val = $val; } } function addPositionHidden( $key , $val ) { $this -> _field_value_hidden[ $this -> _quantity_hidden ] = $val; $this -> _field_key_hidden[ $this -> _quantity_hidden ] = $key; $this -> _quantity_hidden ++; } function addCancelButton( $nazwa , $key = '' , $val = '' ) { $this -> _cancel_button['nazwa'] = $nazwa; $this -> _cancel_button['key'] = $key; $this -> _cancel_button['val'] = $val; } function setFormId( $id ) { $this -> _form_id = $id; } function addPosition( $id , $nazwa , $typ , $action = '' , $tab = '' , $empty = false, $title = '' ) { global $db; $this -> _field_id[$this -> _quantity] = $id; $this -> _field_name[$this -> _quantity] = $nazwa; $this -> _field_type[$this -> _quantity] = $typ; $this -> _field_action[$this -> _quantity] = $action; $this -> _field_title[$this -> _quantity] = $title; if ( is_array( $tab ) ) $this -> _field_tab[$this -> _quantity] = $tab; else { if ( $tab ) { $query = $db -> prepare($tab); $query -> execute(); if ( $empty ) $tabs[''] = ''; if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) $tabs[$res[0]] = $res[1]; $this -> _field_tab[$this -> _quantity] = $tabs; } } $this -> _quantity ++; } function addHiddenParam( $id ) { $this -> _param = $id; } function setSubmitButton( $button ) { $this -> _button_submit = $button; } function addPositionPassword( $nazwa = '' , $action1 = '' , $action2 = '' ) { $this -> _password = true; if ( isset( $nazwa ) ) { $nazwa1 = 'password'; $nazwa2 = 'password_repeat'; } else $nazwa2 = $nazwa . '_repeat'; $this -> _pass['nazwa1'] = $nazwa1; $this -> _pass['nazwa2'] = $nazwa2; $this -> _pass['action1'] = $action1; $this -> _pass['action2'] = $action2; } function setUploadFolder( $id , $folder ) { $this -> _upload_quantity ++; $this -> _field_upload[$this -> _upload_quantity]['id'] = $id; $this -> _field_upload[$this -> _upload_quantity]['folder'] = $folder; } function draw() { global $sys , $db , $lang; $hidden_tab = ''; $hidden_param_tab = ''; $out = ''; \S::set_session( 'db_edit_table' , $this -> _table ); \S::set_session( 'db_edit_key' , $this -> _key ); \S::set_session( 'db_edit_val' , $this -> _val ); \S::set_session( 'db_edit_pols' , $this -> _field_id ); \S::set_session( 'db_edit_pass' , $this -> _pass ); \S::set_session( 'db_edit_pols_hidden', $this -> _field_key_hidden ); \S::set_session( 'db_edit_pols_type' , $this -> _field_type ); if ( !$this -> _form_id ) $this -> _form_id = 'formularz'; $flaga = false; if ( is_array( $this -> _field_id ) ) foreach ( $this -> _field_id as $p ) { if ( !$this -> _select ) $this -> _select = $p; else $this -> _select .= ', ' . $p; } if ( $this -> _param ) $this -> _select .= ", " . $this -> _param; if ( $this -> _key ) $flaga = true; if ( $flaga ) { $query = $db -> prepare( 'SELECT ' . $this -> _select . ' FROM ' . $this -> _table . ' WHERE ' . $this -> _key . '="' . $this -> _val . '"' ); $query->execute(); } $tpl = new \Savant3; $tpl -> _form_adress = $this -> _adres; $tpl -> _form_id = $this -> _form_id; if ( is_array( $this -> _field_key_hidden ) ) { for ( $j = 0; $j < $this -> _quantity_hidden; $j++ ) { $hidden['name'] = $this -> _field_key_hidden[$j]; $hidden['value'] = $this -> _field_value_hidden[$j]; $hidden_tab[] = $hidden; } } $tpl -> _hidden_tab = $hidden_tab; $tpl -> _form_key = $this -> _key; $tpl -> _form_val = $this -> _val; if ( $flaga ) { if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) { if ( $this -> _param ) { $hidden_param['name'] = $this -> _param; $hidden_param['value'] = $res[$this -> _param]; $hidden_param_tab[] = $hidden_param; } } } $tpl -> _hidden_param_tab = $hidden_param_tab; for ( $i = 0; $i < $this -> _quantity; $i++ ) { $table_edit['tr_id'] = $this -> _field_id[$i]; $table_edit['name'] = $this -> _field_name[$i]; if ( $this -> _field_type[$i] == "label" ) { $table_edit['type'] = 'label'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = $this -> _field_id[$i]; $table_edit['input_action'] = $this -> _field_action[$i]; $table_edit['input_title'] = $this -> _field_title[$i]; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) $table_edit['input_value'] = $res[$i]; } else $table_edit['input_value'] = ''; if ( isset( $this -> _filed_tab[$i] ) && is_array( $this -> _field_tab[$i] ) ) foreach ( $this -> _field_tab[$i] as $key => $val ) { if ( $flaga ) { if ( $key == $res[$i] ) $table_edit['text'] = $val; } } else $table_edit['text'] = $res[$i]; } else if ( $this -> _field_type[$i] == 'text' ) { $table_edit['type'] = 'text'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = $this -> _field_id[$i]; $table_edit['input_action'] = $this -> _field_action[$i]; $table_edit['input_title'] = $this -> _field_title[$i]; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) $table_edit['input_value'] = $res[$i]; } else $table_edit['input_value'] = ''; } else if ( $this -> _field_type[$i] == 'radio' ) { $table_edit['type'] = 'radio'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = $this -> _field_id[$i]; $table_edit['input_action'] = $this -> _field_action[$i]; $table_edit['input_title'] = $this -> _field_title[$i]; $value = ''; if ( is_array( $this -> _field_tab[$i] ) ) foreach ( $this -> _field_tab[$i] as $key => $val ) { $value[$key] = $lang -> getTrans( $val ); $table_edit['input_value'] = $value; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) { if ( $key == $res[$i] ) $table_edit['var'] = $res[$i]; } } } else $table_edit['input_value'] = ''; } else if ( $this -> _field_type[$i] == 'textarea' ) { $table_edit['type'] = 'textarea'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = $this -> _field_id[$i]; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) $table_edit['input_value'] = $res[$i]; } else $table_edit['input_value'] = ''; } else if ( $this -> _field_type[$i] == 'file' ) { $table_edit['type'] = 'file'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = 'image'; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) $table_edit['input_value'] = $res[$i]; } else $table_edit['input_value'] = ''; } else if ( $this -> _field_type[$i] == 'combo' ) { $table_edit['type'] = 'combo'; $table_edit['input_id'] = $this -> _field_id[$i]; $table_edit['input_name'] = $this -> _field_id[$i]; $table_edit['input_action'] = $this -> _field_action[$i]; $table_edit['input_title'] = $this -> _field_title[$i]; $value = ''; if ( isset( $this -> _field_tab[$i] ) && is_array( $this -> _field_tab[$i] ) ) foreach ( $this -> _field_tab[$i] as $key => $val ) { $value[$key] = $val; $table_edit['input_value'] = $value; if ( $flaga ) { $query -> execute(); if ( $query -> rowCount() ) while ( $res = $query -> fetch() ) { if ( $key == $res[$i] ) $table_edit['var'] = $res[$i]; } } } else $table_edit['input_value'] = ''; } $table_edit_tab[] = $table_edit; } if ( $this -> _password ) { $tpl -> _password = $this -> _password; $tpl -> _pass_name1 = $this -> _pass['nazwa1']; $tpl -> _pass_action = $this -> _pass['action1']; $tpl -> _pass_name2 = $this -> _pass['nazwa2']; $tpl -> _pass_action2 = $this -> _pass['action2']; } if ( is_array( $this -> _field_upload ) ) { $tpl -> _file_upload = true; for ( $j=1; $j<=$this -> _upload_quantity; $j++ ) { $upload['name'] = $this -> _field_upload[$j]['id'] . '_folder'; $upload['value'] = $this -> _field_upload[$j]['folder']; $upload_tab[] = $upload; } $tpl -> _upload_tab = $upload_tab; } if ( $this -> _cancel_button ) { $tpl -> _cancel_button = true; $tpl -> _cancel_adress = $this -> _adres; $tpl -> _cancel_name = $this -> _cancel_button['nazwa']; $tpl -> _cancel_key = $this -> _cancel_button['key']; $tpl -> _cancel_val = $this -> _cancel_button['val']; } $tpl -> _table_edit_tab = $table_edit_tab; $tpl -> _menu = $this -> _menu; $out .= $tpl -> fetch( 'database/data-edit' ); return $out; } } ?>