function renderCrFormFields($form) { $CI =& get_instance(); $aFields = array(); $formErrors = array_keys(validation_array_errors()); foreach ($form['fields'] as $name => $field) { $hasError = null; if (in_array($name, $formErrors)) { $hasError = 'has-error'; } $properties = array('name' => $name, 'value' => element('value', $field), 'class' => 'form-control'); if (element('disabled', $field) == true) { $properties += array('disabled' => 'disabled'); } if (element('placeholder', $field) != '') { $properties += array('placeholder' => $field['placeholder']); } $sField = ' <fieldset class="form-group ' . $hasError . '"> ' . form_label(element('label', $field), null, array('class' => 'col-xs-12 col-sm-3 col-md-3 col-lg-3 control-label')) . ' <div class="col-xs-12 col-sm-9 col-md-9 col-lg-9"> %s </div> </fieldset>'; switch ($field['type']) { case 'hidden': $aFields[] = form_hidden($name, $field['value']); break; case 'text': case 'numeric': case 'typeahead': if ($field['type'] == 'typeahead') { unset($properties['value']); } $aFields[] = sprintf($sField, form_input($properties)); break; case 'date': case 'datetime': $aFields[] = sprintf($sField, '<div class="input-group" style="width:1px"> ' . form_input(array('name' => $name, 'value' => element('value', $field), 'class' => 'form-control', 'size' => $field['type'] == 'datetime' ? 18 : 9, 'placeholder' => lang('DATE_FORMAT') . ($field['type'] == 'datetime' ? ' hh:mm:ss' : ''))) . ' <span class="input-group-addon"><i class="glyphicon glyphicon-remove fa fa-times"></i></span> <span class="input-group-addon"><i class="glyphicon glyphicon-th icon-th fa fa-th"></i></span> </div>'); break; case 'password': $aFields[] = sprintf($sField, form_password(array('name' => $name, 'value' => element('value', $field), 'class' => 'form-control'))); break; case 'textarea': $aFields[] = sprintf($sField, form_textarea($name, element('value', $field), 'class="form-control"')); break; case 'dropdown': $source = element('source', $field, array()); $source = sourceToDropdown($source, element('appendNullOption', $field)); if (element('multiple', $field) == true) { $properties += array('multiple' => 'multiple'); } $aFields[] = sprintf($sField, form_dropdown($name, $source, element('value', $field, null), _attributes_to_string($properties))); break; case 'groupCheckBox': $showId = element('showId', $field, false); $sTmp = '<ul class="groupCheckBox" name="' . $name . '"> <li><input type="text" style="display:none" /> </li>'; foreach ($field['source'] as $item) { $sTmp .= '<li> <div class="checkbox"> <label>' . form_checkbox(null, $item['id'], in_array($item['id'], $field['value'])) . $item['text'] . ($showId == true ? ' - ' . $item['id'] : '') . ' </label> </div> </li>'; } $sTmp .= '</ul>'; $aFields[] = sprintf($sField, $sTmp); break; case 'checkbox': $className = ''; if (element('hideOffset', $field) == true) { $className = ' hide '; } $aFields[] = ' <fieldset class="form-group"> <div class="' . $className . ' hidden-xs col-sm-3 col-md-3 col-lg-3 "> </div> <div class="col-xs-12 col-sm-9 col-md-9 col-lg-9 "> <div class="checkbox" > <label> ' . form_checkbox($name, 'on', $field['checked']) . ' ' . element('label', $field) . ' </label> </div> </div> </fieldset>'; break; case 'gallery': $aFields[] = sprintf($sField, ' <div id="' . $name . '" data-toggle="modal-gallery" data-target="#modal-gallery" class="gallery well" > <button type="button" class="btn btn-success btn-sm btnEditPhotos fileinput-button"> <i class="fa fa-picture-o" ></i> ' . lang('Edit pictures') . ' </button> <div class="thumbnails" ></div> </div> '); break; case 'subform': $aFields[] = sprintf($sField, ' <div name="' . $name . '" class="subform "> <div class="alert alert-warning"> <i class="fa fa-spinner fa-spin fa-lg"></i> <small>' . lang('loading ...') . '</small> </div> </div> '); break; case 'tree': $aFields[] = '<fieldset class="form-group tree">' . renderCrFormTree($field['source'], $field['value']) . '</fieldset>'; break; case 'link': $sField = ' <fieldset class="form-group" > ' . form_label('', null, array('class' => 'hidden-xs col-sm-3 col-md-3 col-lg-3 control-label')) . ' <div class="col-xs-12 col-sm-9 col-md-9 col-lg-9"> %s </div> </fieldset>'; $aFields[] = sprintf($sField, anchor($field['value'], $field['label'])); break; case 'raty': $aFields[] = sprintf($sField, '<div class="raty" name="' . $name . '" />'); break; case 'upload': $aFields[] = sprintf($sField, ' <div name="' . $name . '"> </div> '); break; case 'html': $aFields[] = $field['value']; break; } } return $aFields; }
function loadViewAjax($code, $result = null) { $CI =& get_instance(); if ($result == null) { $result = array(); } if ($code != true && is_array($result)) { $result['formErrors'] = validation_array_errors(); } return $CI->load->view('json', array('code' => $code, 'result' => $result)); }