ListRadio.php
1023 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php if ( ! defined( 'ABSPATH' ) ) exit;
/**
* Class NF_Fields_RadioList
*/
class NF_Fields_ListRadio extends NF_Abstracts_List
{
protected $_name = 'listradio';
protected $_type = 'listradio';
protected $_section = 'common';
protected $_icon = 'dot-circle-o';
protected $_templates = 'listradio';
protected $_old_classname = 'list-radio';
public function __construct()
{
parent::__construct();
$this->_nicename = esc_html__( 'Radio List', 'ninja-forms' );
add_filter( 'ninja_forms_merge_tag_calc_value_' . $this->_type, array( $this, 'get_calc_value' ), 10, 2 );
}
public function get_calc_value( $value, $field )
{
if( isset( $field[ 'options' ] ) ) {
foreach ($field['options'] as $option ) {
if( ! isset( $option[ 'value' ] ) || $value != $option[ 'value' ] || ! isset( $option[ 'calc' ] ) ) continue;
$value = $option[ 'calc' ];
}
}
return $value;
}
}