PATH:
home
/
centosnipponia
/
public_html
/
nipponiacar
/
wp-content
/
plugins
/
ninja-forms
/
includes
/
Fields
<?php if ( ! defined( 'ABSPATH' ) ) exit; /** * Class NF_Fields_Checkbox */ class NF_Fields_Checkbox extends NF_Abstracts_Input { protected $_name = 'checkbox'; protected $_nicename = 'Checkbox'; protected $_section = 'common'; protected $_icon = 'check-square-o'; protected $_type = 'checkbox'; protected $_templates = 'checkbox'; protected $_test_value = 0; protected $_settings = array( 'checkbox_default_value', 'checkbox_values', 'checked_value', 'unchecked_value', 'checked_calc_value', 'unchecked_calc_value' ); protected $_settings_exclude = array( 'default', 'placeholder', 'input_limit_set' ); /** * NF_Fields_Checkbox constructor. * @since 3.0 */ public function __construct() { parent::__construct(); $this->_nicename = esc_html__( 'Single Checkbox', 'ninja-forms' ); $this->_settings[ 'label_pos' ][ 'value' ] = 'right'; add_filter( 'ninja_forms_custom_columns', array( $this, 'custom_columns' ), 10, 2 ); add_filter( 'ninja_forms_merge_tag_value_' . $this->_name, array( $this, 'filter_merge_tag_value' ), 10, 2 ); add_filter( 'ninja_forms_merge_tag_calc_value_' . $this->_name, array( $this, 'filter_merge_tag_value_calc' ), 10, 2 ); add_filter( 'ninja_forms_subs_export_field_value_' . $this->_type, array( $this, 'export_value' ), 10, 2 ); add_filter( 'ninja_forms_localize_field_' . $this->_name, array( $this, 'localize_field' ) ); add_filter( 'ninja_forms_localize_field_' . $this->_name . '_preview', array( $this, 'localize_field' ) ); } /** * Admin Form Element * Display the checkbox on the edit submissions area. * @since 3.0 * * @param $id Field ID. * @param $value Field value. * @return string HTML used for display of checkbox. */ public function admin_form_element( $id, $value ) { // If the checkboxes value is 1 or on... if( 'on' == $value || 1 == $value ) { // ...this variable to checked. $checked = 'checked'; } else { // ...else leave the variable empty. $checked = ''; } // Return HTML to be output to the submission edit page. return "<input type='hidden' name='fields[$id]' value='0' > <input type='checkbox' name='fields[$id]' id='' $checked>"; } /** * Custom Columns * Creates what is displayed in the columns on the submissions page. * @since 3.0 *nf_subs_export_pre_value * @param $value checkbox value * @param $field field model. * @return $value string|void */ public function custom_columns( $value, $field ) { // If the field type is equal to checkbox... if( 'checkbox' == $field->get_setting( 'type' ) ) { // Backwards compatibility check for the new checked value setting. if( null == $field->get_setting( 'checked_value' ) && 1 == $value || 'on' == $value ) { return esc_html__( 'Checked', 'ninja-forms' ); } elseif( null == $field->get_setting( 'unchecked_value' ) && 0 == $value ) { return esc_html__( 'Unchecked', 'ninja-forms'); } // If the field value is set to 1.... if( 1 == $value || 'on' == $value ) { // Set the value to the checked value setting. $value = $field->get_setting( 'checked_value' ); } // Unless we've somehow gotten the display value in here... elseif ( $field->get_setting( 'checked_value' ) != $value ) { // Set the value to the unchecked value setting. $value = $field->get_setting( 'unchecked_value' ); } } return $value; } /** * Filter Merge Tag Value * This is what provides the merge tag with the fields value. * @since 3.0 * * @param $value Field value * @param $field field model * @return string|void */ public function filter_merge_tag_value( $value, $field ) { $default_checked = esc_html__( 'Checked', 'ninja-forms' ); $default_unchecked = esc_html__( 'Unchecked', 'ninja-forms' ); // Check for display values first, fall back to calc values if( $value ) { // Checkbox is checked if ( isset( $field[ 'settings' ][ 'checked_value' ] ) && ! empty( $field[ 'settings' ][ 'checked_value' ] ) && $field[ 'settings' ][ 'checked_value' ] !== $default_checked ) { return $field[ 'settings' ][ 'checked_value' ]; } elseif ( isset( $field[ 'settings' ][ 'checked_calc_value' ] ) && $field[ 'settings' ][ 'checked_calc_value' ] !== '' ) { return $field[ 'settings' ][ 'checked_calc_value' ]; } return $default_checked; } else { // Checkbox is unchecked if ( isset( $field[ 'settings' ][ 'unchecked_value' ] ) && ! empty( $field[ 'settings' ][ 'unchecked_value' ] ) && $field[ 'settings' ][ 'unchecked_value' ] !== $default_unchecked ) { return $field[ 'settings' ][ 'unchecked_value' ]; } elseif ( isset( $field[ 'settings' ][ 'unchecked_calc_value' ] ) && $field[ 'settings' ][ 'unchecked_calc_value' ] !== '' ) { return $field[ 'settings' ][ 'unchecked_calc_value' ]; } return $default_unchecked; } } /** * Filter Merge Tag Value Calc * Provides the calculation value when the merge tag is used. * @since 3.0 * * @param $value checkbox value * @param $field field model * @return $field */ public function filter_merge_tag_value_calc( $value, $field ) { // If checkbox is checked (using same logic as filter_merge_tag_value)... if ( ! empty( $value ) ) { // ...return the checked calc value of the field model. return $field[ 'checked_calc_value' ]; } else { // ...else return the unchecked calc value of the field model. return $field[ 'unchecked_calc_value' ]; } } /** * Export Value * Determines the value to send to submission export. * @since 3.0 * * @param $value checkbox field value * @param $field checkbox field model * @return string|void */ public function export_value( $value, $field ) { // @TODO: Why were these values translated in the first place? // If value is equal to checked or unchecked return the value if ( __( 'checked', 'ninja-forms' ) == $value || __( 'unchecked', 'ninja-forms' ) == $value ) return $value; // Creating settings variables for our check. if( is_array( $field ) ) { // The email action sends teh field variable as an array $checked_setting = $field[ 'setting' ][ 'checked_value' ]; $unchecked_setting = $field[ 'setting' ][ 'unchecked_value' ]; } else { $checked_setting = $field->get_setting( 'checked_value' ); $unchecked_setting = $field->get_setting( 'unchecked_value' ); } // If the the value and check to see if we have checked and unchecked settings... if ( ( 1 == $value || 'on' == $value ) && ! empty( $checked_setting ) ) { // ...if we do return checked setting return $checked_setting; } elseif ( 0 == $value && ! empty( $unchecked_setting ) ) { // ...else return unchecked setting. return $unchecked_setting; /* * These checks are for checkbox fields that were created before version 3.2.7. */ } elseif ( 1 == $value || 'on' == $value ) { return esc_html__( 'checked', 'ninja-forms' ); } elseif ( 0 == $value ) { return esc_html__( 'unchecked', 'ninja-forms' ); } } /** * Localize Field * Pass checkbox display values to JavaScript for front-end merge tag replacement. * Exposes resolved checked/unchecked values at the top level so * fieldModel.get('checked_value') works in JavaScript. * * @since 3.14.2 * * @param array $field * @return array */ public function localize_field( $field ) { $default_checked = esc_html__( 'Checked', 'ninja-forms' ); $default_unchecked = esc_html__( 'Unchecked', 'ninja-forms' ); // Check for display values first, fall back to calc values if not set if ( isset( $field['settings']['checked_value'] ) && ! empty( $field['settings']['checked_value'] ) && $field['settings']['checked_value'] !== $default_checked ) { $field['checked_value'] = $field['settings']['checked_value']; } elseif ( isset( $field['settings']['checked_calc_value'] ) && $field['settings']['checked_calc_value'] !== '' ) { $field['checked_value'] = $field['settings']['checked_calc_value']; } else { $field['checked_value'] = $default_checked; } if ( isset( $field['settings']['unchecked_value'] ) && ! empty( $field['settings']['unchecked_value'] ) && $field['settings']['unchecked_value'] !== $default_unchecked ) { $field['unchecked_value'] = $field['settings']['unchecked_value']; } elseif ( isset( $field['settings']['unchecked_calc_value'] ) && $field['settings']['unchecked_calc_value'] !== '' ) { $field['unchecked_value'] = $field['settings']['unchecked_calc_value']; } else { $field['unchecked_value'] = $default_unchecked; } return $field; } }
[+]
..
[-] Address2.php
[edit]
[-] Address.php
[edit]
[-] Button.php
[edit]
[-] Checkbox.php
[edit]
[-] City.php
[edit]
[-] Color.php
[edit]
[-] Confirm.php
[edit]
[-] CreditCardCVC.php
[edit]
[-] CreditCardExpiration.php
[edit]
[-] CreditCardFullName.php
[edit]
[-] CreditCardNumber.php
[edit]
[-] CreditCard.php
[edit]
[-] CreditCardZip.php
[edit]
[-] Date.php
[edit]
[-] Email.php
[edit]
[-] FirstName.php
[edit]
[-] Hcaptcha.php
[edit]
[-] Hidden.php
[edit]
[-] hr.php
[edit]
[-] HTML.php
[edit]
[-] LastName.php
[edit]
[-] ListCheckbox.php
[edit]
[-] ListCountry.php
[edit]
[-] ListImage.php
[edit]
[-] ListModifier.php
[edit]
[-] ListMultiSelect.php
[edit]
[-] ListRadio.php
[edit]
[-] ListSelect.php
[edit]
[-] ListState.php
[edit]
[-] Note.php
[edit]
[-] Number.php
[edit]
[-] PasswordConfirm.php
[edit]
[-] Password.php
[edit]
[-] Phone.php
[edit]
[-] Product.php
[edit]
[-] Quantity.php
[edit]
[-] Recaptcha.php
[edit]
[-] RecaptchaV3.php
[edit]
[-] Repeater.php
[edit]
[-] Shipping.php
[edit]
[-] Signature.php
[edit]
[-] Spam.php
[edit]
[-] StarRating.php
[edit]
[-] Submit.php
[edit]
[-] Terms.php
[edit]
[-] Textarea.php
[edit]
[-] Textbox.php
[edit]
[-] TimedSubmit.php
[edit]
[-] Total.php
[edit]
[-] Turnstile.php
[edit]
[-] Unknown.php
[edit]
[-] Zip.php
[edit]
[-] .htaccess.disabled
[edit]