static function print_field($field, $tax = false) { if ($tax !== false) { $type = $tax; $label = ''; $tip = ''; $id = ''; if (is_array($tax)) { $type = array_key_exists('type', $tax) ? $tax['type'] : ''; $label = array_key_exists('label', $tax) ? $tax['label'] : ''; $tip = array_key_exists('tip', $tax) ? $tax['tip'] : ''; $id = array_key_exists('slug', $tax) ? $tax['id'] : ''; } switch ($type) { case 'dropdown': ?> <div class="emrede-item emrede-item-dropdown <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if ($required) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label><div class="emrede-item-input-dropdown dropdown-<?php echo $id; ?> "><select id="<?php echo $id; ?> " class="<?php echo $input_class; ?> " name="<?php echo $id; ?> "> <option value="" selected="selected" ><?php echo esc_attr_x('Selecione', 'fluxo'); ?> </option> <?php $args = array('orderby' => 'name', 'hide_empty' => 0, 'hierarchical' => 0); $terms = get_terms($field, $args); foreach ($terms as $term) { ?> <option value="<?php echo $term->slug; ?> " ><?php echo $term->name; ?> </option> <?php } ?> </select> </div> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'estadocidade': EmRede::dropdownEstadoCidade($field, $tax); break; default: $taxonomy = $field; $field = $tax; $field_default = array('id' => 'taxonomy_' . $taxonomy, 'label' => '', 'tip' => '', 'required_message' => '', 'input_class' => '', 'type' => '', 'required' => false); if (!is_array($field)) { $field = array(); } $field = array_merge($field_default, $field); extract($field); ?> <div class="emrede-item emrede-item-checkbox <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label> <?php EmRede::taxonomy_checklist($taxonomy); ?> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; } } else { $id = $field['slug']; $label = $field['title']; $tip = $field['tip']; $required_message = ''; $input_class = ''; $type = array_key_exists('type', $field) ? $field['type'] : ''; switch ($type) { case 'wp_editor': ?> <div class="emrede-item <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; ?> <span class="emrede-item-required-asterisk">*</span> </div> <div class="emrede-item-tip-text"> <?php echo $tip; ?> </div> </label> <?php wp_editor(array_key_exists($id, $_POST) ? stripslashes($purifier->purify($_POST[$id])) : '', $id, array('tinymce' => array('content_css' => get_stylesheet_directory_uri() . '/inc/emrede/css/editor-styles.css'))); ?> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"> <?php echo $required_message; ?> </div> </div> <?php break; case 'dropdown-ano': ?> <div class="emrede-item emrede-item-dropdown <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label><div class="emrede-item-input-dropdown dropdown-<?php echo $id; ?> "><select id="<?php echo $id; ?> " class="<?php echo $input_class; ?> " name="<?php echo $id; ?> "> <option value="" <?php echo array_key_exists($id, $_REQUEST) ? '' : 'selected="selected"'; ?> ><?php echo esc_attr_x('Selecione', 'fluxo'); ?> </option> <?php for ($i = date('Y'); $i >= 1900; $i--) { ?> <option value="<?php echo $i; ?> " <?php echo array_key_exists($id, $_REQUEST) && wp_strip_all_tags($_REQUEST[$id]) == $i ? 'selected="selected"' : ''; ?> ><?php echo $i; ?> </option> <?php } ?> </select> </div> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'dropdown-meses-anos': ?> <div class="emrede-item emrede-item-dropdown <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label><div class="emrede-item-input-dropdown dropdown-<?php echo $id; ?> "><select id="<?php echo "{$id}-meses"; ?> " class="<?php echo $input_class; ?> " name="<?php echo "{$id}-meses"; ?> "> <option value="" <?php echo array_key_exists("{$id}-meses", $_REQUEST) ? '' : 'selected="selected"'; ?> ><?php echo esc_attr_x('Meses', 'fluxo'); ?> </option> <?php for ($i = 1; $i < 13; $i++) { ?> <option value="<?php echo $i; ?> " <?php echo array_key_exists("{$id}-meses", $_REQUEST) && wp_strip_all_tags($_REQUEST["{$id}-meses"]) == $i ? 'selected="selected"' : ''; ?> ><?php echo $i; ?> </option> <?php } ?> </select></div> <div class="emrede-item-input-dropdown dropdown-<?php echo $id; ?> "><select id="<?php echo "{$id}-anos"; ?> " class="<?php echo $input_class; ?> " name="<?php echo "{$id}-anos"; ?> "> <option value="" <?php echo array_key_exists("{$id}-anos", $_REQUEST) ? '' : 'selected="selected"'; ?> ><?php echo esc_attr_x('Anos', 'fluxo'); ?> </option> <?php for ($i = 1; $i < 101; $i++) { ?> <option value="<?php echo $i; ?> " <?php echo array_key_exists("{$id}-anos", $_REQUEST) && wp_strip_all_tags($_REQUEST["{$id}-anos"]) == $i ? 'selected="selected"' : ''; ?> ><?php echo $i; ?> </option> <?php } ?> </select> </div> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'dropdown-cem': ?> <div class="emrede-item emrede-item-dropdown <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label><div class="emrede-item-input-dropdown dropdown-<?php echo $id; ?> "><select id="<?php echo $id; ?> " class="<?php echo $input_class; ?> " name="<?php echo $id; ?> "> <option value="" selected="selected" ><?php echo esc_attr_x('Selecione', 'fluxo'); ?> </option> <?php for ($i = 1; $i < 100; $i++) { $label = $i == 99 ? '99+' : $i; ?> <option value="<?php echo $i; ?> " <?php echo array_key_exists($id, $_REQUEST) && wp_strip_all_tags($_REQUEST[$id]) == $i ? 'selected="selected"' : ''; ?> ><?php echo $label; ?> </option> <?php } ?> </select> </div> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'radio': ?> <div class="emrede-item emrede-item-radio <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label> <div class="emrede-item-input-radio-block"><?php $i = 0; foreach ($field['values'] as $value => $label_item) { echo '<input id="' . "{$id}-option-{$i}" . '" type="radio" name="' . $id . '" value="' . $value . '" ' . (array_key_exists($id, $_REQUEST) && wp_strip_all_tags($_REQUEST[$id]) == $value ? 'checked="checked"' : '') . ' ><label for="' . "{$id}-option-{$i}" . '" class="emrede-item-input-radio" >' . $label_item . '</label>'; $i++; } ?> </div><div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'checkbox': ?> <div class="emrede-item emrede-item-checkbox <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label> <div class="emrede-item-input-checkbox-block"><?php $i = 0; $dado = array(); if (array_key_exists($id, $_REQUEST)) { if (is_array($_REQUEST[$id])) { $dado = $_REQUEST[$id]; } elseif (is_string($_REQUEST[$id])) { $dado = explode(',', $_REQUEST[$id]); } } foreach ($field['values'] as $value => $label_item) { echo '<input id="' . "{$id}-option-{$i}" . '" type="checkbox" name="' . $id . '[]" value="' . $value . '" ' . (in_array($value, $dado) ? 'checked="checked"' : '') . ' ><label for="' . "{$id}-option-{$i}" . '" class="emrede-item-input-checkbox" >' . $label_item . '</label>'; $i++; } ?> </div><div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'textarea': ?> <div class="emrede-item emrede-item-textarea <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label> <textarea id="<?php echo $id; ?> " class="emrede-item-input-text <?php echo $input_class; ?> " name="<?php echo $id; ?> " rows="<?php echo array_key_exists('rows', $field) ? $field['rows'] : 4; ?> " <?php echo array_key_exists('cols', $field) ? 'cols="' . $field['cols'] . '"' : ''; ?> ><?php echo array_key_exists($id, $_REQUEST) ? wp_strip_all_tags($_REQUEST[$id]) : ''; ?> </textarea> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; case 'date': case 'number': default: ?> <div class="emrede-item <?php echo $type == 'text' || $type == '' ? 'emrede-item-text' : 'emrede-item-' . $type; ?> <?php echo $id; ?> "> <label for="<?php echo $id; ?> " class="emrede-item-label"> <div class="emrede-item-title"><?php echo $label; if (array_key_exists('required', $field) && $field['required']) { ?> <span class="emrede-item-required-asterisk">*</span><?php } ?> </div> <div class="emrede-item-tip-text"><?php echo $tip; ?> </div> </label> <input type="<?php echo $type == 'number' ? 'number' : 'text'; ?> " id="<?php echo $id; ?> " class="emrede-item-input-text <?php echo $type == 'date' ? 'hasdatepicker' : ''; ?> <?php echo $input_class; ?> " value="<?php echo array_key_exists($id, $_REQUEST) ? wp_strip_all_tags($_REQUEST[$id]) : ''; ?> " name="<?php echo $id; ?> "> <div class="emrede-item-error-message"></div> <div class="emrede-item-required-message"><?php echo $required_message; ?> </div> </div> <?php break; } } }