Файловый менеджер - Редактировать - /var/www/html/administrator/components/com_jssupportticket/include/classes/customfields.php
Ðазад
<?php /** * @Copyright Copyright (C) 2015 ... Ahmad Bilal * @license GNU/GPL http://www.gnu.org/copyleft/gpl.html * Company: Buruj Solutions + Contact: www.burujsolutions.com , info@burujsolutions.com * Created on: May 22, 2015 ^ + Project: JS Tickets ^ */ defined('_JEXEC') or die('Not Allowed'); class customfields { function formCustomFields($field , $obj_id, $obj_params , $isadmin ) { // $obj_id, $obj_params if($field->isuserfield != 1){ return false; } $html = ''; $flag = false; if($isadmin){ $div1 = 'js-form-wrapper'; $div2 = 'js-title'; $div3 = 'js-value'; }else{ if($field->size == 100){ $div1 = 'js-form-wrapper fullwidth'; $div2 = 'js-form-title'; $div3 = 'js-form-value'; }elseif($field->size == 50){ $div1 = 'js-form-wrapper'; $div2 = 'js-form-title'; $div3 = 'js-form-value'; } } $required = $field->required; $showlabelforterm = false; if($field->userfieldtype == 'termsandconditions'){ if (isset($obj_id) && is_numeric($obj_id) || $isadmin) { return false; } $required = 1; $showlabelforterm = true; } $cssclass = ""; $class = ""; $margin_bottom = ""; $add_margin_bottom = ""; $html .= '<div class="' . $div1 . '"> <div class="' . $div2 . '">'; if ($required == 1) { if($showlabelforterm){ $html .= '<label for="' . $field->field . '" id="foruf_checkbox1">'; } $html .= JText::_($field->fieldtitle) . '<font color="red">*</font>'; if($showlabelforterm){ $html .= '</label>'; } if ($field->userfieldtype == 'email') $cssclass = "required validate-email"; else $cssclass = "required"; }else { $html .= JText::_($field->fieldtitle); if ($field->userfieldtype == 'email') $cssclass = "email"; else $cssclass = ""; } $html .= ' </div> <div class="' . $div3 . '">'; //$maxlength = $field->maxlength ? "'maxlength' => '" . $field->maxlength : ""; $fvalue = ""; $value = ""; $userdataid = ""; if (isset($obj_id)) { $userfielddataarray = json_decode($obj_params); $uffield = $field->field; if (isset($userfielddataarray->$uffield) || !empty($userfielddataarray->$uffield)) { $value = $userfielddataarray->$uffield; } else { $value = ''; } } if (isset($obj_params)) { $userfielddataarray = json_decode($obj_params); $uffield = $field->field; if (isset($userfielddataarray->$uffield) || !empty($userfielddataarray->$uffield)) { $value = $userfielddataarray->$uffield; } else { $value = ''; } } switch ($field->userfieldtype) { case 'text': case 'email': $html .= $this->text($field->field, $value, array('class' => "inputbox js-form-input-field one $cssclass", 'data-validation' => $cssclass, 'size' => $field->size, 'maxlength' => $field->maxlength)); break; case 'date': $dash = '-'; $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $firstdash = strpos($dateformat, $dash, 0); $firstvalue = substr($dateformat, 0, $firstdash); $firstdash = $firstdash + 1; $seconddash = strpos($dateformat, $dash, $firstdash); $secondvalue = substr($dateformat, $firstdash, $seconddash - $firstdash); $seconddash = $seconddash + 1; $thirdvalue = substr($dateformat, $seconddash, strlen($dateformat) - $seconddash); $js_dateformat = '%' . $firstvalue . $dash . '%' . $secondvalue . $dash . '%' . $thirdvalue; $html .= JHTML::_('calendar', $value, $field->field, $field->field,$js_dateformat, array('class' => 'inputbox js-ticket-calender $cssclass', 'size' => '10', 'maxlength' => '19')); break; case 'textarea': $html .= $this->textarea($field->field, $value, array('class' => "inputbox one js-ticket-textarea $cssclass", 'data-validation' => $cssclass, 'rows' => $field->rows, 'cols' => $field->cols)); break; case 'checkbox': if (!empty($field->userfieldparams)) { $comboOptions = array(); $obj_option = json_decode($field->userfieldparams); $total_option = count($obj_option); $i = 0; $valuearray = explode(', ',$value); $html .= '<div class="js-ticket-signature-radio-box-wrp">'; foreach ($obj_option AS $option) { $check = ''; if(is_array($valuearray) && in_array($option, $valuearray)){ $check = 'checked'; }else if($option == $valuearray){ $check = 'checked'; } if($field->size == 50){ if($total_option > 2) { $add_margin_bottom = 'js-ticket-margin-bottom'; } } $html .= '<div class="js-ticket-signature-radio-box js-ticket-white-background '.$add_margin_bottom.' ">'; $html .= '<input type="checkbox" ' . $check . ' class="radiobutton js-ticket-append-radio-btn" value="' . $option . '" id="' . $field->field . '_' . $i . '" name="' . $field->field . '[]">'; $html .= '<label for="' . $field->field . '_' . $i . '" id="foruf_checkbox1">' . $option . '</label>'; $html .= '</div>'; $i++; } $html .= '</div>'; } else { $comboOptions = array('1' => $field->fieldtitle); $html .= $this->checkbox($field->field, $comboOptions, $value, array('class' => 'radiobutton js-ticket-append-radio-btn')); } break; case 'radio': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); $i = 0; $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',2,'". JSession::getFormToken() ."');"; } $valuearray = explode(', ',$value); $html .= '<div class="js-ticket-signature-radio-box-wrp">'; foreach ($obj_option AS $option) { $check = ''; if(in_array($option, $valuearray)){ $check = 'checked'; } $html .= '<div class="js-ticket-radio-box js-ticket-white-background">'; $html .= '<input type="radio" ' . $check . ' class="radiobutton js-ticket-radio-btn $cssclass" value="' . $option . '" id="' . $field->field . '_' . $i . '" name="' . $field->field . '" data-validation ="'.$cssclass.'" onclick = "'.$jsFunction.'"> '; $html .= '<label for="' . $field->field . '_' . $i . '" id="foruf_checkbox1">' . $option . '</label>'; $html .= '</div>'; $i++; } $html .= '</div>'; } break; case 'combo': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } //code for handling dependent field $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',1,'". JSession::getFormToken() ."');"; } //end $class = 'js-ticket-halfwidth-select'; if($field->size == 100){ $class = 'js-ticket-fullwidth-select'; } $html .= $this->select($field->field, $comboOptions, $value, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'onchange' => $jsFunction, 'class' => "inputbox js-form-select-field one $cssclass $class")); break; case 'depandant_field': $comboOptions = array(); if ($value != null) { if (!empty($field->userfieldparams)) { $obj_option = $this->getDataForDepandantFieldByParentField($field->field, $userfielddataarray); foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } } //code for handling dependent field $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',1,'". JSession::getFormToken() ."');"; } //end $class = 'js-ticket-halfwidth-select'; if($field->size == 100){ $class = 'js-ticket-fullwidth-select'; } $html .= $this->select($field->field, $comboOptions, $value, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'onchange' => $jsFunction, 'class' => "inputbox js-form-select-field one $cssclass $class")); break; case 'multiple': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } $array = $field->field; $array .= '[]'; $valuearray = explode(', ', $value); $class = 'js-ticket-halfwidth-select'; if($field->size == 100){ $class = 'js-ticket-fullwidth-select'; } $html .= $this->select($array, $comboOptions, $valuearray, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'multiple' => 'multiple', 'class' => "inputbox js-form-select-field js-form-multi-select-field one $cssclass $class")); break; case 'file': $html .= '<span class="js-attachment-file-box js-attachment-custom-file-box">'; $html .= '<input type="file" name="'.$field->field.'" class="'.$cssclass.'" id="'.$field->field.'"/>'; $fileext = JSSupportTicketModel::getJSModel('config')->getConfigurationByName('fileextension'); $html .= '</span>'; $html .= '<span id="js_cust_file_ext">'.JText::_('Files').' ('.$fileext.')</span>'; if($value != null){ $html .= $this->hidden($field->field.'_1', 0); $html .= $this->hidden($field->field.'_2',$value); $jsFunction = "deleteCutomUploadedFile('".$field->field."_1')"; if(JFactory::getApplication()->isClient('administrator')){ $html .='<span class='.$field->field.'_1>'.$value.'( '; $html .= "<a href='#' onClick=".$jsFunction." >". JText::_('Delete')."</a>"; $html .= ' )</span>'; } } break; case 'termsandconditions': if (isset($obj_id) && !is_numeric($obj_id)) { break; } if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams,true); $url = $obj_option['termsandconditions_link']; if( isset($obj_option['termsandconditions_linktype']) && $obj_option['termsandconditions_linktype'] == 2){ // $url = get_permalink($obj_option['termsandconditions_page']); $url = JRoute::_('index.php?option=com_content&view=article&id='.$obj_option['termsandconditions_page'].'&Itemid='); } $link_start = '<a href="' . $url . '" class="termsandconditions_link_anchor" target="_blank" >'; $link_end = '</a>'; if(strstr($obj_option['termsandconditions_text'], '[link]') && strstr($obj_option['termsandconditions_text'], '[/link]')){ $label_string = str_replace('[link]', $link_start, $obj_option['termsandconditions_text']); $label_string = str_replace('[/link]', $link_end, $label_string); }else{ $label_string = $obj_option['termsandconditions_text'].' '.$link_start.$field->fieldtitle.$link_end; } $c_field_required = ''; if($field->required == 1){ $c_field_required = 'required'; } // ticket terms and conditonions are required. if($field->fieldfor == 1){ $c_field_required = 'required'; } $html .= '<div class="js-ticket-custom-terms-and-condition-box jsst-formfield-radio-button-wrap">'; $html .= '<input type="checkbox" class="radiobutton js-ticket-append-radio-btn" value="1" id="' . $field->field . '" name="' . $field->field . '" required="'.$c_field_required.'" data-validation="'.$c_field_required.'">'; $html .= '<label for="' . $field->field . '" id="foruf_checkbox1">' . $label_string . '</label>'; $html .= '</div>'; } break; } $html .= ' </div></div>'; echo $html; } function formCustomFieldsForSearch($field, &$col, $filter_params, $isadmin = 0) { // $filter_params if ($field->isuserfield != 1 || $field->userfieldtype == 'termsandconditions') return false; $cssclass = ""; $class = ""; $margin_bottom = ""; $add_margin_bottom = ""; $html = ''; $i = $col; $i++; $col++; $required = $field->required; if($col != 2){ $html .= '</div>'; } $html .= '<div class="js-col-md-3 js-filter-field-wrp">'; if($isadmin == 1){ $html = ''; // only field send } $readonly = ''; //$field->readonly ? "'readonly => 'readonly'" : ""; $maxlength = ''; //$field->maxlength ? "'maxlength' => '".$field->maxlength : ""; $fvalue = ""; $value = null; $userdataid = ""; $userfielddataarray = array(); if (isset($filter_params)) { $userfielddataarray = $filter_params; $uffield = $field->field; //had to user || oprator bcz of radio buttons if (isset($userfielddataarray[$uffield]) || !empty($userfielddataarray[$uffield])) { $value = $userfielddataarray[$uffield]; } else { $value = ''; } } switch ($field->userfieldtype) { case 'text': case 'email': case 'file': $html .= $this->text($field->field, $value, array('class' => "inputbox one js-ticket-input-field $cssclass", 'data-validation' => $cssclass,'placeholder' =>$field->fieldtitle, 'size' => $field->size, 'maxlength' => $maxlength)); break; case 'date': $dash = '-'; $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $firstdash = strpos($dateformat, $dash, 0); $firstvalue = substr($dateformat, 0, $firstdash); $firstdash = $firstdash + 1; $seconddash = strpos($dateformat, $dash, $firstdash); $secondvalue = substr($dateformat, $firstdash, $seconddash - $firstdash); $seconddash = $seconddash + 1; $thirdvalue = substr($dateformat, $seconddash, strlen($dateformat) - $seconddash); $js_dateformat = '%' . $firstvalue . $dash . '%' . $secondvalue . $dash . '%' . $thirdvalue; $html .= JHTML::_('calendar', $value, $field->field, $field->field, $js_dateformat, array('class' => 'inputbox js-ticket-calender', 'size' => '10', 'maxlength' => '19','placeholder' =>$field->fieldtitle)); break; case 'editor': $html .= wp_editor(isset($value) ? $value : '', $field->field, array('media_buttons' => false, 'data-validation' => $cssclass)); break; case 'textarea': $html .= $this->textarea($field->field, $value, array('class' => "inputbox one js-ticket-textarea $cssclass", 'data-validation' => $cssclass, 'rows' => $field->rows, 'cols' => $field->cols, $readonly)); break; case 'checkbox': if (!empty($field->userfieldparams)) { $comboOptions = array(); $obj_option = json_decode($field->userfieldparams); $total_option = count($obj_option); if(empty($value)) $value = array(); $html .= '<div class="js-ticket-signature-radio-box-wrp">'; foreach ($obj_option AS $option) { if( $option == $value){ $check = 'checked="true"'; }else{ $check = ''; } if($total_option > 3) { $margin_bottom = 'js-ticket-margin-bottom'; } $html .= '<div class="js-ticket-radio-box '.$margin_bottom.' js-ticket-white-background">'; $html .= '<input type="checkbox" ' . $check . ' class="radiobutton js-ticket-radio-btn" value="' . $option . '" id="' . $field->field . '_' . $i . '" name="' . $field->field . '">'; $html .= '<label for="' . $field->field . '_' . $i . '" id="foruf_checkbox1">' . $option . '</label>'; $html .= '</div>'; $i++; } $html .= '</div>'; } else { $comboOptions = array('1' => $field->fieldtitle); $html .= $this->checkbox($field->field, $comboOptions, $value, array('class' => 'radiobutton')); } break; case 'radio': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); $i = 0; $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',2,'". JSession::getFormToken() ."');"; } if(empty($value)) $value = array(); $html .= '<div class="js-ticket-signature-radio-box-wrp">'; foreach ($obj_option AS $option) { $check = ''; if($option == $value){ $check = 'checked'; } $html .= '<div class="js-ticket-radio-box js-ticket-white-background">'; $html .= '<input type="radio" ' . $check . ' class="radiobutton js-ticket-radio-btn $cssclass" value="' . $option . '" id="' . $field->field . '_' . $i . '" name="' . $field->field . '" data-validation ="'.$cssclass.'" onclick = "'.$jsFunction.'"> '; $html .= '<label for="' . $field->field . '_' . $i . '" id="foruf_checkbox1">' . $option . '</label>'; $html .= '</div>'; $i++; } $html .= '</div>'; } break; case 'combo': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } //code for handling dependent field $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',1,'". JSession::getFormToken() ."');"; } //end $html .= $this->select($field->field, $comboOptions, $value, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'onchange' => $jsFunction, 'class' => "inputbox one js-form-select-field $cssclass")); break; case 'depandant_field': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = $this->getDataForDepandantFieldByParentField($field->field, $userfielddataarray); if (!empty($obj_option)) { foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } } //code for handling dependent field $jsFunction = ''; if ($field->depandant_field != null) { $jsFunction = "getDataForDepandantField('" . $field->field . "','" . $field->depandant_field . "',0,'". JSession::getFormToken() ."');"; } //end $html .= $this->select($field->field, $comboOptions, $value, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'onchange' => $jsFunction, 'class' => "inputbox one js-form-select-field $cssclass")); break; case 'multiple': $comboOptions = array(); if (!empty($field->userfieldparams)) { $obj_option = json_decode($field->userfieldparams); foreach ($obj_option as $opt) { $comboOptions[] = (object) array('id' => $opt, 'text' => $opt); } } $array = $field->field; $array .= '[]'; $html .= $this->select($array, $comboOptions, $value, JText::_('Select') . ' ' . $field->fieldtitle, array('data-validation' => $cssclass, 'multiple' => 'multiple', 'class' =>"js-form-select-field js-form-multi-select-field" )); break; } if($isadmin == 1){ echo $html; return; } echo $html; } function showCustomFields($field, $fieldfor, $params , $ticketid) { // ticketid $html = ''; $fvalue = ''; if(!empty($params)){ $data = json_decode($params,true); if(array_key_exists($field->field, $data)){ $fvalue = $data[$field->field]; } } if($fieldfor == 1){ //FrontEnd mytickets $html = '<div class="js-col-md-12 js-wrapper js-ticket-body-data-elipses cusomfield-mg-bottom">'; if($field->userfieldtype=='file'){ $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . ': </span>'; if($fvalue !=null){ $path = "index.php?option=com_jssupportticket&c=ticket&task=downloadbyname&id=".$ticketid."&name=".$fvalue."&" . JSession::getFormToken() . "=1"; $html .= ' <div class="js-ticket-custom-attachment"> <div class="js-tk-value js_ticketattachment"> ' . JText::_($field->fieldtitle) . ' ( ' . $fvalue . ' ) ' . ' </div> <a class="button js-ticket-downloadbtn" target="_blank" href="' . $path . '"><img class ="js-ticket-downloadicon" src="components/com_jssupportticket/include/images/download-all.png"> ' . JText::_('Download') . '</a> </div> '; } }elseif($field->userfieldtype=='date' && !empty($fvalue)){ $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $fvalue = JHTML::_('date',strtotime($fvalue),$dateformat); $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . ': </span>'; $html .= '<span class="js-tk-value">' . $fvalue . '</span>'; } else{ $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . ': </span>'; $html .= '<span class="js-tk-value">' . $fvalue . '</span>'; } $html .= '</div>'; }elseif($fieldfor == 2){ // ticket detail front end $html = '<div class="js-col-md-12 js-second-row-data">'; if($field->userfieldtype=='file'){ $html .= '<span class="js-second-row-title">' . $field->fieldtitle . ': </span>'; if($fvalue != null){ $path = "index.php?option=com_jssupportticket&c=ticket&task=downloadbyname&id=".$ticketid."&name=".$fvalue."&" . JSession::getFormToken() . "=1"; $html .= ' <div class="js_ticketattachment"> ' . $field->fieldtitle . ' ( ' . $fvalue . ' ) ' . ' <a class="button" target="_blank" href="' . $path . '">' . JText::_('Download') . '</a> </div>'; } }elseif($field->userfieldtype=='date' && !empty($fvalue)){ $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $fvalue = JHTML::_('date',strtotime($fvalue),$dateformat); $html .= '<span class="js-second-row-title">' . $field->fieldtitle . ': </span> <span class="js-ticket-value">' . $fvalue . '</span>'; } else{ $html .= '<span class="js-second-row-title">' . $field->fieldtitle . ': </span> <span class="js-ticket-value">' . $fvalue . '</span>'; } $html .= '</div>'; }elseif($fieldfor == 3){ // Admin ticket detail if($field->userfieldtype=='date' && !empty($fvalue)){ $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $fvalue = JHTML::_('date',strtotime($fvalue),$dateformat); } $html = '<div class="js-tkt-det-info-data"> <span class="js-title"> ' . $field->fieldtitle . ' : </span> '; $html .= ' <span class="js-value">' . $fvalue . '</span> </div>'; if($field->userfieldtype=='file'){ $html = '<div class="js-tkt-det-info-data"> <div class="requester-data-inner-border"> <span class="js-title"> ' . $field->fieldtitle. ' : </span> '; if($fvalue !=null){ $path = "index.php?option=com_jssupportticket&c=ticket&task=downloadbyname&id=".$ticketid."&name=".$fvalue."&" . JSession::getFormToken() . "=1"; $html .= '<div class="requester-data-inner-value js-col-xs-12">' . $field->fieldtitle . ' ( ' . $fvalue . ' ) ' . '<a class="button" target="_blank" href="' . $path . '">' . JText::_('Download') . '</a></div>'; } $html .= '</div></div>'; } }elseif($fieldfor == 4){ // admin ticket listing $html = '<div class="js-col-md-12 js-col-xs-12 js-wrapper">'; if($field->userfieldtype=='file'){ $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . '<font>:</font> </span>'; if($fvalue !=null){ $path = "index.php?option=com_jssupportticket&c=ticket&task=downloadbyname&id=".$ticketid."&name=".$fvalue."&" . JSession::getFormToken() . "=1"; $html .= ' <div class="js-tk-value js_ticketattachment"> ' . $field->fieldtitle . ' ( ' . $fvalue . ' ) ' . ' <a class="button" target="_blank" href="' . $path . '">' . JText::_('Download') . '</a> </div>'; } }elseif($field->userfieldtype=='date' && !empty($fvalue)){ $dateformat = JSSupportTicketModel::getJSModel('config')->getConfigurationByName("date_format"); $fvalue = JHTML::_('date',strtotime($fvalue),$dateformat); $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . ': </span>'; $html .= '<span class="js-tk-value">' . $fvalue . '</span>'; } else{ $html .= '<span class="js-tk-title">' . JText::_($field->fieldtitle) . ': </span>'; $html .= '<span class="js-tk-value">' . $fvalue . '</span>'; } $html .= '</div>'; }elseif($fieldfor == 5){ // export $returnarray = array(); $returnarray['title'] = $field->fieldtitle; $returnarray['value'] = $fvalue; return $returnarray; } return $html; } function userFieldsData($fieldfor, $listing = null) { $db = JFactory::getDbo(); $user = JSSupportticketCurrentUser::getInstance(); if ($user->getIsGuest()) { $published = ' isvisitorpublished = 1 '; } else { $published = ' published = 1 '; } $inquery = ''; if ($listing == 1) { $inquery = ' AND showonlisting = 1 '; } $query = "SELECT field,fieldtitle,isuserfield,userfieldtype,userfieldparams FROM `#__js_ticket_fieldsordering` WHERE isuserfield = 1 AND " . $published . " AND fieldfor =" . $fieldfor . $inquery." ORDER BY ordering"; $db->setQuery($query); $data = $db->loadObjectList(); return $data; } function userFieldsForSearch($fieldfor) { $db = JFactory::getDbo(); $user = JSSupportticketCurrentUser::getInstance(); if ($user->getIsGuest()) { $inquery = ' isvisitorpublished = 1 AND search_visitor =1'; } else { $inquery = ' published = 1 AND search_user =1'; } $query = "SELECT required,cols,size ,`rows`,field,fieldtitle,isuserfield,userfieldtype,userfieldparams,depandant_field FROM `#__js_ticket_fieldsordering` WHERE isuserfield = 1 AND " . $inquery . " AND fieldfor =" . $fieldfor ." ORDER BY ordering "; $db->setQuery($query); $data = $db->loadObjectList(); return $data; } function getDataForDepandantFieldByParentField($fieldfor, $data) { $user = JSSupportticketCurrentUser::getInstance(); if ($user->getIsGuest()) { $published = ' isvisitorpublished = 1 '; } else { $published = ' published = 1 '; } $db = JFactory::getDbo(); $value = ''; $returnarray = array(); $query = "SELECT field from `#__js_ticket_fieldsordering` WHERE isuserfield = 1 AND " . $published . " AND depandant_field ='" . $fieldfor . "'"; $db->setQuery($query); $field = $db->loadResult(); if ($data != null) { foreach ($data as $key => $val) { if ($key == $field) { $value = $val; } } } $query = "SELECT userfieldparams from `#__js_ticket_fieldsordering` WHERE isuserfield = 1 AND " . $published . " AND field ='" . $fieldfor . "'"; $db->setQuery($query); $field = $db->loadResult(); $fieldarray = json_decode($field); foreach ($fieldarray as $key => $val) { if ($value == $key) $returnarray = $val; } return $returnarray; } // new private function text($name, $value, $extraattr = array()) { $textfield = '<input type="text" name="' . $name . '" id="' . $name . '" value="' . $value . '" '; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) $textfield .= ' ' . $key . '="' . $val . '"'; $textfield .= ' />'; return $textfield; } private function textarea($name, $value, $extraattr = array()) { $textarea = '<textarea name="' . $name . '" id="' . $name . '" '; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) $textarea .= ' ' . $key . '="' . $val . '"'; $textarea .= ' >' . $value . '</textarea>'; return $textarea; } private function hidden($name, $value, $extraattr = array()) { $textfield = '<input type="hidden" name="' . $name . '" id="' . $name . '" value="' . $value . '" '; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) $textfield .= ' ' . $key . '="' . $val . '"'; $textfield .= ' />'; return $textfield; } private function select($name, $list, $defaultvalue, $title = '', $extraattr = array()) { $nameid = str_replace('[]','',$name); $selectfield = '<select name="' . $name . '" id="' . $nameid . '" '; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) { $selectfield .= ' ' . $key . '="' . $val . '"'; } $selectfield .= ' >'; if ($title != '') { $selectfield .= '<option value="">' . $title . '</option>'; } if (!empty($list)) foreach ($list AS $record) { if ((is_array($defaultvalue) && in_array($record->id, $defaultvalue)) || $defaultvalue == $record->id) $selectfield .= '<option selected="selected" value="' . $record->id . '">' . JText::_($record->text,'js-support-ticket') . '</option>'; else $selectfield .= '<option value="' . $record->id . '">' . JText::_($record->text,'js-support-ticket') . '</option>'; } $selectfield .= '</select>'; return $selectfield; } private function radiobutton($name, $list, $defaultvalue, $extraattr = array()) { $radiobutton = ''; $count = 1; foreach ($list AS $value => $label) { $radiobutton .= '<input type="radio" name="' . $name . '" id="' . $name . $count . '" value="' . $value . '"'; if ($defaultvalue == $value) $radiobutton .= ' checked="checked"'; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) { $radiobutton .= ' ' . $key . '="' . $val . '"'; } $radiobutton .= '/><label id="for' . $name . '" for="' . $name . $count . '">' . $label . '</label>'; $count++; } return $radiobutton; } private function checkbox($name, $list, $defaultvalue, $extraattr = array()) { $checkbox = ''; $count = 1; foreach ($list AS $value => $label) { $checkbox .= '<input type="checkbox" name="' . $name . '" id="' . $name . $count . '" value="' . $value . '"'; if ($defaultvalue == $value) $checkbox .= ' checked="checked"'; if (!empty($extraattr)) foreach ($extraattr AS $key => $val) { $checkbox .= ' ' . $key . '="' . $val . '"'; } $checkbox .= '/><label id="for' . $name . '" for="' . $name . $count . '">' . $label . '</label>'; $count++; } return $checkbox; } } ?>
| ver. 1.1 | |
.
| PHP 8.4.18 | Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ Ñтраницы: 0 |
proxy
|
phpinfo
|
ÐаÑтройка