Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/ninja-fo.../includes/Admin/Processe...
File: ImportForm.php
[500] Fix | Delete
if ( is_numeric( $extractedValue ) ) {
[501] Fix | Delete
array_push( $insert_columns_types, '%d' );
[502] Fix | Delete
} else {
[503] Fix | Delete
array_push( $insert_columns_types, '%s' );
[504] Fix | Delete
}
[505] Fix | Delete
}
[506] Fix | Delete
[507] Fix | Delete
// Add our field to the database.
[508] Fix | Delete
$this->_db->insert( "{$this->_db->prefix}nf3_fields", $insert_columns, $insert_columns_types );
[509] Fix | Delete
[510] Fix | Delete
/**
[511] Fix | Delete
* Get our new field ID.
[512] Fix | Delete
*/
[513] Fix | Delete
$field_id = $this->_db->insert_id;
[514] Fix | Delete
[515] Fix | Delete
$insert_values = '';
[516] Fix | Delete
[517] Fix | Delete
// Check for repeater field, so we can adjust internal field Ids
[518] Fix | Delete
$isRepeater = isset($field_meta['type']) && 'repeater'===$field_meta['type'] ? true : false;
[519] Fix | Delete
[520] Fix | Delete
/**
[521] Fix | Delete
* Anything left in the $field_meta array should be inserted as meta.
[522] Fix | Delete
*
[523] Fix | Delete
* Loop over each of our settings and add it to our insert sql string.
[524] Fix | Delete
*/
[525] Fix | Delete
[526] Fix | Delete
foreach ( $field_meta as $meta_key => $meta_value ) {
[527] Fix | Delete
[528] Fix | Delete
// If repeater, replace fieldset ids on incoming metavalue array
[529] Fix | Delete
if($isRepeater && 'fields'===$meta_key){
[530] Fix | Delete
$meta_value = $this->modifyFieldsetIds($field_id,$meta_value);
[531] Fix | Delete
}
[532] Fix | Delete
[533] Fix | Delete
$meta_value = maybe_serialize( $meta_value );
[534] Fix | Delete
if(is_string($meta_value)){
[535] Fix | Delete
$meta_value = WPN_Helper::sanitize_string_setting_value($meta_key, $meta_value);
[536] Fix | Delete
}
[537] Fix | Delete
[538] Fix | Delete
$this->_db->escape_by_ref( $meta_value );
[539] Fix | Delete
$insert_values .= "( {$field_id}, '{$meta_key}', '{$meta_value}'";
[540] Fix | Delete
if ( $this->form[ 'db_stage_one_complete'] ) {
[541] Fix | Delete
$insert_values .= ", '{$meta_key}', '{$meta_value}'";
[542] Fix | Delete
}
[543] Fix | Delete
$insert_values .= "),";
[544] Fix | Delete
}
[545] Fix | Delete
[546] Fix | Delete
// Remove the trailing comma.
[547] Fix | Delete
$insert_values = rtrim( $insert_values, ',' );
[548] Fix | Delete
$insert_columns = '`parent_id`, `key`, `value`';
[549] Fix | Delete
if ( $this->form[ 'db_stage_one_complete'] ) {
[550] Fix | Delete
$insert_columns .= ', `meta_key`, `meta_value`';
[551] Fix | Delete
}
[552] Fix | Delete
// Create SQL string.
[553] Fix | Delete
$sql = "INSERT INTO {$this->_db->prefix}nf3_field_meta ( {$insert_columns} ) VALUES {$insert_values}";
[554] Fix | Delete
[555] Fix | Delete
// Run our SQL query.
[556] Fix | Delete
$this->_db->query( $sql );
[557] Fix | Delete
[558] Fix | Delete
// Remove this field from our fields array.
[559] Fix | Delete
unset( $this->form[ 'fields' ][ $i ] );
[560] Fix | Delete
}
[561] Fix | Delete
}
[562] Fix | Delete
[563] Fix | Delete
protected function modifyFieldsetIds($newFieldId,$fieldsData)
[564] Fix | Delete
{
[565] Fix | Delete
$delimiter='.';
[566] Fix | Delete
// Data is expectd as array, if not, return incoming and stop
[567] Fix | Delete
if(!is_array($fieldsData)){
[568] Fix | Delete
[569] Fix | Delete
return $fieldsData;
[570] Fix | Delete
}
[571] Fix | Delete
[572] Fix | Delete
$outgoingFieldsData =[];
[573] Fix | Delete
[574] Fix | Delete
foreach($fieldsData as $index=>$fieldsetField){
[575] Fix | Delete
// ensure 'id' key is set
[576] Fix | Delete
if(isset($fieldsetField['id'])){
[577] Fix | Delete
$explodedField = explode($delimiter,$fieldsetField['id']);
[578] Fix | Delete
[579] Fix | Delete
// ensure fielsetField id is set (parsed by delimiter )
[580] Fix | Delete
if(isset($explodedField[1])){
[581] Fix | Delete
// Recombine fieldsetField Id using new field Id
[582] Fix | Delete
$fieldsetField['id']= implode($delimiter,[$newFieldId,$explodedField[1]]);
[583] Fix | Delete
}
[584] Fix | Delete
}
[585] Fix | Delete
[586] Fix | Delete
// Add fieldsetField into updated fields data
[587] Fix | Delete
$outgoingFieldsData[$index]=$fieldsetField;
[588] Fix | Delete
}
[589] Fix | Delete
[590] Fix | Delete
// reserialize
[591] Fix | Delete
$return = serialize($outgoingFieldsData);
[592] Fix | Delete
[593] Fix | Delete
return $return;
[594] Fix | Delete
}
[595] Fix | Delete
/*
[596] Fix | Delete
|--------------------------------------------------------------------------
[597] Fix | Delete
| Backwards Compatibility
[598] Fix | Delete
|--------------------------------------------------------------------------
[599] Fix | Delete
*/
[600] Fix | Delete
[601] Fix | Delete
public function import_form_backwards_compatibility( $import )
[602] Fix | Delete
{
[603] Fix | Delete
// Rename `data` to `settings`
[604] Fix | Delete
if( isset( $import[ 'data' ] ) ){
[605] Fix | Delete
$import[ 'settings' ] = $import[ 'data' ];
[606] Fix | Delete
unset( $import[ 'data' ] );
[607] Fix | Delete
}
[608] Fix | Delete
[609] Fix | Delete
// Rename `notifications` to `actions`
[610] Fix | Delete
if( isset( $import[ 'notifications' ] ) ){
[611] Fix | Delete
$import[ 'actions' ] = $import[ 'notifications' ];
[612] Fix | Delete
unset( $import[ 'notifications' ] );
[613] Fix | Delete
}
[614] Fix | Delete
[615] Fix | Delete
// Rename `form_title` to `title`
[616] Fix | Delete
if( isset( $import[ 'settings' ][ 'form_title' ] ) ){
[617] Fix | Delete
$import[ 'settings' ][ 'title' ] = $import[ 'settings' ][ 'form_title' ];
[618] Fix | Delete
unset( $import[ 'settings' ][ 'form_title' ] );
[619] Fix | Delete
}
[620] Fix | Delete
[621] Fix | Delete
// Convert `last_sub` to `_seq_num`
[622] Fix | Delete
if( isset( $import[ 'settings' ][ 'last_sub' ] ) ) {
[623] Fix | Delete
$import[ 'settings' ][ '_seq_num' ] = $import[ 'settings' ][ 'last_sub' ] + 1;
[624] Fix | Delete
}
[625] Fix | Delete
[626] Fix | Delete
// Make sure
[627] Fix | Delete
if( ! isset( $import[ 'fields' ] ) ){
[628] Fix | Delete
$import[ 'fields' ] = array();
[629] Fix | Delete
}
[630] Fix | Delete
[631] Fix | Delete
// `Field` to `Fields`
[632] Fix | Delete
if( isset( $import[ 'field' ] ) ){
[633] Fix | Delete
$import[ 'fields' ] = $import[ 'field' ];
[634] Fix | Delete
unset( $import[ 'field' ] );
[635] Fix | Delete
}
[636] Fix | Delete
[637] Fix | Delete
$import = apply_filters( 'ninja_forms_upgrade_settings', $import );
[638] Fix | Delete
[639] Fix | Delete
// Combine Field and Field Data
[640] Fix | Delete
foreach( $import[ 'fields' ] as $key => $field ){
[641] Fix | Delete
[642] Fix | Delete
if( '_honeypot' == $field[ 'type' ] ) {
[643] Fix | Delete
unset( $import[ 'fields' ][ $key ] );
[644] Fix | Delete
continue;
[645] Fix | Delete
}
[646] Fix | Delete
[647] Fix | Delete
if( ! $field[ 'type' ] ) {
[648] Fix | Delete
unset( $import[ 'fields'][ $key ] );
[649] Fix | Delete
continue;
[650] Fix | Delete
}
[651] Fix | Delete
[652] Fix | Delete
// TODO: Split Credit Card field into multiple fields.
[653] Fix | Delete
$field = $this->import_field_backwards_compatibility( $field );
[654] Fix | Delete
[655] Fix | Delete
if( isset( $field[ 'new_fields' ] ) ){
[656] Fix | Delete
foreach( $field[ 'new_fields' ] as $new_field ){
[657] Fix | Delete
$import[ 'fields' ][] = $new_field;
[658] Fix | Delete
}
[659] Fix | Delete
unset( $field[ 'new_fields' ] );
[660] Fix | Delete
}
[661] Fix | Delete
[662] Fix | Delete
$import[ 'fields' ][ $key ] = $field;
[663] Fix | Delete
}
[664] Fix | Delete
[665] Fix | Delete
$has_save_action = FALSE;
[666] Fix | Delete
foreach( $import[ 'actions' ] as $key => $action ){
[667] Fix | Delete
$action = $this->import_action_backwards_compatibility( $action );
[668] Fix | Delete
$import[ 'actions' ][ $key ] = $action;
[669] Fix | Delete
[670] Fix | Delete
if( 'save' == $action[ 'type' ] ) $has_save_action = TRUE;
[671] Fix | Delete
}
[672] Fix | Delete
[673] Fix | Delete
if( ! $has_save_action ) {
[674] Fix | Delete
$import[ 'actions' ][] = array(
[675] Fix | Delete
'type' => 'save',
[676] Fix | Delete
'label' => esc_html__( 'Save Form', 'ninja-forms' ),
[677] Fix | Delete
'active' => TRUE
[678] Fix | Delete
);
[679] Fix | Delete
}
[680] Fix | Delete
[681] Fix | Delete
$import = $this->import_merge_tags_backwards_compatibility( $import );
[682] Fix | Delete
[683] Fix | Delete
return apply_filters( 'ninja_forms_after_upgrade_settings', $import );
[684] Fix | Delete
}
[685] Fix | Delete
[686] Fix | Delete
public function import_merge_tags_backwards_compatibility( $import )
[687] Fix | Delete
{
[688] Fix | Delete
$field_lookup = array();
[689] Fix | Delete
[690] Fix | Delete
foreach( $import[ 'fields' ] as $key => $field ){
[691] Fix | Delete
[692] Fix | Delete
if( ! isset( $field[ 'id' ] ) ) continue;
[693] Fix | Delete
[694] Fix | Delete
$field_id = $field[ 'id' ];
[695] Fix | Delete
$field_key = $field[ 'type' ] . '_' . $field_id;
[696] Fix | Delete
$field_lookup[ $field_id ] = $import[ 'fields' ][ $key ][ 'key' ] = $field_key;
[697] Fix | Delete
}
[698] Fix | Delete
[699] Fix | Delete
foreach( $import[ 'actions' ] as $key => $action_settings ){
[700] Fix | Delete
foreach( $action_settings as $setting => $value ){
[701] Fix | Delete
foreach( $field_lookup as $field_id => $field_key ){
[702] Fix | Delete
[703] Fix | Delete
// Convert Tokenizer
[704] Fix | Delete
$token = 'field_' . $field_id;
[705] Fix | Delete
if( ! is_array( $value ) ) {
[706] Fix | Delete
if (FALSE !== strpos($value, $token)) {
[707] Fix | Delete
$value = str_replace($token, '{field:' . $field_key . '}', $value);
[708] Fix | Delete
}
[709] Fix | Delete
}
[710] Fix | Delete
[711] Fix | Delete
// Convert Shortcodes
[712] Fix | Delete
$shortcode = "[ninja_forms_field id=$field_id]";
[713] Fix | Delete
if( ! is_array( $value ) ) {
[714] Fix | Delete
if ( FALSE !== strpos( $value, $shortcode ) ) {
[715] Fix | Delete
$value = str_replace( $shortcode, '{field:' . $field_key . '}', $value );
[716] Fix | Delete
}
[717] Fix | Delete
}
[718] Fix | Delete
}
[719] Fix | Delete
[720] Fix | Delete
//Checks for the nf_sub_seq_num short code and replaces it with the submission sequence merge tag
[721] Fix | Delete
$sub_seq = '[nf_sub_seq_num]';
[722] Fix | Delete
if( ! is_array( $value ) ) {
[723] Fix | Delete
if( FALSE !== strpos( $value, $sub_seq ) ){
[724] Fix | Delete
$value = str_replace( $sub_seq, '{submission:sequence}', $value );
[725] Fix | Delete
}
[726] Fix | Delete
}
[727] Fix | Delete
[728] Fix | Delete
if( ! is_array( $value ) ) {
[729] Fix | Delete
if (FALSE !== strpos($value, '[ninja_forms_all_fields]')) {
[730] Fix | Delete
$value = str_replace('[ninja_forms_all_fields]', '{field:all_fields}', $value);
[731] Fix | Delete
}
[732] Fix | Delete
}
[733] Fix | Delete
$action_settings[ $setting ] = $value;
[734] Fix | Delete
$import[ 'actions' ][ $key ] = $action_settings;
[735] Fix | Delete
}
[736] Fix | Delete
}
[737] Fix | Delete
[738] Fix | Delete
return $import;
[739] Fix | Delete
}
[740] Fix | Delete
[741] Fix | Delete
public function import_action_backwards_compatibility( $action )
[742] Fix | Delete
{
[743] Fix | Delete
// Remove `_` from type
[744] Fix | Delete
if( isset( $action[ 'type' ] ) ) {
[745] Fix | Delete
$action['type'] = str_replace('_', '', $action['type']);
[746] Fix | Delete
}
[747] Fix | Delete
[748] Fix | Delete
if( 'email' == $action[ 'type' ] ){
[749] Fix | Delete
$action[ 'to' ] = str_replace( '`', ',', $action[ 'to' ] );
[750] Fix | Delete
$action[ 'email_subject' ] = str_replace( '`', ',', $action[ 'email_subject' ] );
[751] Fix | Delete
$action[ 'cc' ] = str_replace( '`', ',', $action[ 'cc' ] );
[752] Fix | Delete
$action[ 'bcc' ] = str_replace( '`', ',', $action[ 'bcc' ] );
[753] Fix | Delete
// If our email is in plain text...
[754] Fix | Delete
if ( $action[ 'email_format' ] == 'plain' ) {
[755] Fix | Delete
// Record it as such.
[756] Fix | Delete
$action[ 'email_message_plain' ] = $action[ 'email_message' ];
[757] Fix | Delete
} // Otherwise... (It's not plain text.)
[758] Fix | Delete
else {
[759] Fix | Delete
// Record it as HTML.
[760] Fix | Delete
$action[ 'email_message' ] = nl2br( $action[ 'email_message' ] );
[761] Fix | Delete
}
[762] Fix | Delete
}
[763] Fix | Delete
[764] Fix | Delete
// Convert `name` to `label`
[765] Fix | Delete
if( isset( $action[ 'name' ] )
[766] Fix | Delete
/**
[767] Fix | Delete
* Convertkit actually contains a valid 'name' attribute.
[768] Fix | Delete
* So, we need to exclude it from this replace to avoid overwriting valid data.
[769] Fix | Delete
*/
[770] Fix | Delete
&& 'convertkit' !== $action[ 'type' ] ) {
[771] Fix | Delete
$action['label'] = $action['name'];
[772] Fix | Delete
unset($action['name']);
[773] Fix | Delete
}
[774] Fix | Delete
[775] Fix | Delete
return apply_filters( 'ninja_forms_upgrade_action_' . $action[ 'type' ], $action );
[776] Fix | Delete
}
[777] Fix | Delete
[778] Fix | Delete
public function import_field_backwards_compatibility( $field )
[779] Fix | Delete
{
[780] Fix | Delete
// Flatten field settings array
[781] Fix | Delete
if( isset( $field[ 'data' ] ) && is_array( $field[ 'data' ] ) ){
[782] Fix | Delete
$field = array_merge( $field, $field[ 'data' ] );
[783] Fix | Delete
}
[784] Fix | Delete
unset( $field[ 'data' ] );
[785] Fix | Delete
[786] Fix | Delete
// Drop form_id in favor of parent_id, which is set by the form.
[787] Fix | Delete
if( isset( $field[ 'form_id' ] ) ){
[788] Fix | Delete
unset( $field[ 'form_id' ] );
[789] Fix | Delete
}
[790] Fix | Delete
[791] Fix | Delete
// Remove `_` prefix from type setting
[792] Fix | Delete
$field[ 'type' ] = ltrim( $field[ 'type' ], '_' );
[793] Fix | Delete
[794] Fix | Delete
// Type: `text` -> `textbox`
[795] Fix | Delete
if( 'text' == $field[ 'type' ] ){
[796] Fix | Delete
$field[ 'type' ] = 'textbox';
[797] Fix | Delete
}
[798] Fix | Delete
[799] Fix | Delete
if( 'submit' == $field[ 'type' ] ){
[800] Fix | Delete
$field[ 'processing_label' ] = esc_html__( 'Processing', 'ninja-forms' );
[801] Fix | Delete
}
[802] Fix | Delete
[803] Fix | Delete
if( isset( $field[ 'email' ] ) ){
[804] Fix | Delete
[805] Fix | Delete
if( 'textbox' == $field[ 'type' ] && $field[ 'email' ] ) {
[806] Fix | Delete
$field['type'] = 'email';
[807] Fix | Delete
}
[808] Fix | Delete
unset( $field[ 'email' ] );
[809] Fix | Delete
}
[810] Fix | Delete
[811] Fix | Delete
if( isset( $field[ 'class' ] ) ){
[812] Fix | Delete
$field[ 'element_class' ] = $field[ 'class' ];
[813] Fix | Delete
unset( $field[ 'class' ] );
[814] Fix | Delete
}
[815] Fix | Delete
[816] Fix | Delete
if( isset( $field[ 'req' ] ) ){
[817] Fix | Delete
$field[ 'required' ] = $field[ 'req' ];
[818] Fix | Delete
unset( $field[ 'req' ] );
[819] Fix | Delete
}
[820] Fix | Delete
[821] Fix | Delete
if( isset( $field[ 'default_value_type' ] ) ){
[822] Fix | Delete
[823] Fix | Delete
/* User Data */
[824] Fix | Delete
if( '_user_id' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:user_id}';
[825] Fix | Delete
if( '_user_email' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:user_email}';
[826] Fix | Delete
if( '_user_lastname' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:user_last_name}';
[827] Fix | Delete
if( '_user_firstname' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:user_first_name}';
[828] Fix | Delete
if( '_user_display_name' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:user_display_name}';
[829] Fix | Delete
[830] Fix | Delete
/* Post Data */
[831] Fix | Delete
if( 'post_id' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:post_id}';
[832] Fix | Delete
if( 'post_url' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:post_url}';
[833] Fix | Delete
if( 'post_title' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{wp:post_title}';
[834] Fix | Delete
[835] Fix | Delete
/* System Data */
[836] Fix | Delete
if( 'today' == $field[ 'default_value_type' ] ) $field[ 'default' ] = '{other:date}';
[837] Fix | Delete
[838] Fix | Delete
/* Miscellaneous */
[839] Fix | Delete
if( '_custom' == $field[ 'default_value_type' ] && isset( $field[ 'default_value' ] ) ){
[840] Fix | Delete
$field[ 'default' ] = $field[ 'default_value' ];
[841] Fix | Delete
}
[842] Fix | Delete
if( 'querystring' == $field[ 'default_value_type' ] && isset( $field[ 'default_value' ] ) ){
[843] Fix | Delete
$field[ 'default' ] = '{querystring:' . $field[ 'default_value' ] . '}';
[844] Fix | Delete
}
[845] Fix | Delete
[846] Fix | Delete
unset( $field[ 'default_value' ] );
[847] Fix | Delete
unset( $field[ 'default_value_type' ] );
[848] Fix | Delete
} else if ( isset ( $field[ 'default_value' ] ) ) {
[849] Fix | Delete
$field[ 'default' ] = $field[ 'default_value' ];
[850] Fix | Delete
}
[851] Fix | Delete
[852] Fix | Delete
if( 'list' == $field[ 'type' ] ) {
[853] Fix | Delete
[854] Fix | Delete
if ( isset( $field[ 'list_type' ] ) ) {
[855] Fix | Delete
[856] Fix | Delete
if ('dropdown' == $field['list_type']) {
[857] Fix | Delete
$field['type'] = 'listselect';
[858] Fix | Delete
}
[859] Fix | Delete
if ('radio' == $field['list_type']) {
[860] Fix | Delete
$field['type'] = 'listradio';
[861] Fix | Delete
}
[862] Fix | Delete
if ('checkbox' == $field['list_type']) {
[863] Fix | Delete
$field['type'] = 'listcheckbox';
[864] Fix | Delete
}
[865] Fix | Delete
if ('multi' == $field['list_type']) {
[866] Fix | Delete
$field['type'] = 'listmultiselect';
[867] Fix | Delete
}
[868] Fix | Delete
}
[869] Fix | Delete
[870] Fix | Delete
if( isset( $field[ 'list' ][ 'options' ] ) ) {
[871] Fix | Delete
$field[ 'options' ] = array_values( $field[ 'list' ][ 'options' ] );
[872] Fix | Delete
unset( $field[ 'list' ][ 'options' ] );
[873] Fix | Delete
}
[874] Fix | Delete
[875] Fix | Delete
foreach( $field[ 'options' ] as &$option ){
[876] Fix | Delete
if( isset( $option[ 'value' ] ) && $option[ 'value' ] ) continue;
[877] Fix | Delete
$option[ 'value' ] = $option[ 'label' ];
[878] Fix | Delete
}
[879] Fix | Delete
}
[880] Fix | Delete
[881] Fix | Delete
if( 'country' == $field[ 'type' ] ){
[882] Fix | Delete
$field[ 'type' ] = 'listcountry';
[883] Fix | Delete
$field[ 'options' ] = array();
[884] Fix | Delete
}
[885] Fix | Delete
[886] Fix | Delete
// Convert `textbox` to other field types
[887] Fix | Delete
foreach( array( 'fist_name', 'last_name', 'user_zip', 'user_city', 'user_phone', 'user_email', 'user_address_1', 'user_address_2', 'datepicker' ) as $item ) {
[888] Fix | Delete
if ( isset( $field[ $item ] ) && $field[ $item ] ) {
[889] Fix | Delete
$field[ 'type' ] = str_replace( array( '_', 'user', '1', '2', 'picker' ), '', $item );
[890] Fix | Delete
[891] Fix | Delete
unset( $field[ $item ] );
[892] Fix | Delete
}
[893] Fix | Delete
}
[894] Fix | Delete
[895] Fix | Delete
if( 'timed_submit' == $field[ 'type' ] ) {
[896] Fix | Delete
$field[ 'type' ] = 'submit';
[897] Fix | Delete
}
[898] Fix | Delete
[899] Fix | Delete
if( 'checkbox' == $field[ 'type' ] ){
[900] Fix | Delete
[901] Fix | Delete
if( isset( $field[ 'calc_value' ] ) ){
[902] Fix | Delete
[903] Fix | Delete
if( isset( $field[ 'calc_value' ][ 'checked' ] ) ){
[904] Fix | Delete
$field[ 'checked_calc_value' ] = $field[ 'calc_value' ][ 'checked' ];
[905] Fix | Delete
unset( $field[ 'calc_value' ][ 'checked' ] );
[906] Fix | Delete
}
[907] Fix | Delete
if( isset( $field[ 'calc_value' ][ 'unchecked' ] ) ){
[908] Fix | Delete
$field[ 'unchecked_calc_value' ] = $field[ 'calc_value' ][ 'unchecked' ];
[909] Fix | Delete
unset( $field[ 'calc_value' ][ 'unchecked' ] );
[910] Fix | Delete
}
[911] Fix | Delete
}
[912] Fix | Delete
}
[913] Fix | Delete
[914] Fix | Delete
if( 'rating' == $field[ 'type' ] ){
[915] Fix | Delete
$field[ 'type' ] = 'starrating';
[916] Fix | Delete
[917] Fix | Delete
if( isset( $field[ 'rating_stars' ] ) ){
[918] Fix | Delete
$field[ 'default' ] = $field[ 'rating_stars' ];
[919] Fix | Delete
unset( $field[ 'rating_stars' ] );
[920] Fix | Delete
}
[921] Fix | Delete
}
[922] Fix | Delete
[923] Fix | Delete
if( 'number' == $field[ 'type' ] ){
[924] Fix | Delete
[925] Fix | Delete
if( ! isset( $field[ 'num_min'] ) ) {
[926] Fix | Delete
if( ! isset( $field[ 'number_min' ] ) || ! $field[ 'number_min' ] ){
[927] Fix | Delete
$field[ 'num_min' ] = '';
[928] Fix | Delete
} else {
[929] Fix | Delete
$field[ 'num_min' ] = $field[ 'number_min' ];
[930] Fix | Delete
}
[931] Fix | Delete
}
[932] Fix | Delete
[933] Fix | Delete
if( ! isset( $field[ 'num_max'] ) ) {
[934] Fix | Delete
if( ! isset( $field[ 'number_max' ] ) || ! $field[ 'number_max' ] ){
[935] Fix | Delete
$field[ 'num_max' ] = '';
[936] Fix | Delete
} else {
[937] Fix | Delete
$field[ 'num_max' ] = $field[ 'number_max' ];
[938] Fix | Delete
}
[939] Fix | Delete
}
[940] Fix | Delete
[941] Fix | Delete
if( ! isset( $field[ 'num_step'] ) ) {
[942] Fix | Delete
if( ! isset( $field[ 'number_step' ] ) || ! $field[ 'number_step' ] ){
[943] Fix | Delete
$field[ 'num_step' ] = 1;
[944] Fix | Delete
} else {
[945] Fix | Delete
$field[ 'num_step' ] = $field[ 'number_step' ];
[946] Fix | Delete
}
[947] Fix | Delete
}
[948] Fix | Delete
}
[949] Fix | Delete
[950] Fix | Delete
if( 'profile_pass' == $field[ 'type' ] ){
[951] Fix | Delete
$field[ 'type' ] = 'password';
[952] Fix | Delete
[953] Fix | Delete
$passwordconfirm = array_merge( $field, array(
[954] Fix | Delete
'id' => '',
[955] Fix | Delete
'type' => 'passwordconfirm',
[956] Fix | Delete
'label' => $field[ 'label' ] . ' ' . esc_html__( 'Confirm', 'ninja-forms' ),
[957] Fix | Delete
'confirm_field' => 'password_' . $field[ 'id' ]
[958] Fix | Delete
));
[959] Fix | Delete
$field[ 'new_fields' ][] = $passwordconfirm;
[960] Fix | Delete
}
[961] Fix | Delete
[962] Fix | Delete
if( 'desc' == $field[ 'type' ] ){
[963] Fix | Delete
$field[ 'type' ] = 'html';
[964] Fix | Delete
}
[965] Fix | Delete
[966] Fix | Delete
if( 'credit_card' == $field[ 'type' ] ){
[967] Fix | Delete
[968] Fix | Delete
$field[ 'type' ] = 'creditcardnumber';
[969] Fix | Delete
$field[ 'label' ] = $field[ 'cc_number_label' ];
[970] Fix | Delete
$field[ 'label_pos' ] = 'above';
[971] Fix | Delete
[972] Fix | Delete
if( $field[ 'help_text' ] ){
[973] Fix | Delete
$field[ 'help_text' ] = '<p>' . $field[ 'help_text' ] . '</p>';
[974] Fix | Delete
}
[975] Fix | Delete
[976] Fix | Delete
$credit_card_fields = array(
[977] Fix | Delete
'creditcardcvc' => $field[ 'cc_cvc_label' ],
[978] Fix | Delete
'creditcardfullname' => $field[ 'cc_name_label' ],
[979] Fix | Delete
'creditcardexpiration' => $field[ 'cc_exp_month_label' ] . ' ' . $field[ 'cc_exp_year_label' ],
[980] Fix | Delete
'creditcardzip' => esc_html__( 'Credit Card Zip', 'ninja-forms' ),
[981] Fix | Delete
);
[982] Fix | Delete
[983] Fix | Delete
[984] Fix | Delete
foreach( $credit_card_fields as $new_type => $new_label ){
[985] Fix | Delete
$field[ 'new_fields' ][] = array_merge( $field, array(
[986] Fix | Delete
'id' => '',
[987] Fix | Delete
'type' => $new_type,
[988] Fix | Delete
'label' => $new_label,
[989] Fix | Delete
'help_text' => '',
[990] Fix | Delete
'desc_text' => ''
[991] Fix | Delete
));
[992] Fix | Delete
}
[993] Fix | Delete
}
[994] Fix | Delete
[995] Fix | Delete
/*
[996] Fix | Delete
* Convert inside label position over to placeholder
[997] Fix | Delete
*/
[998] Fix | Delete
if ( isset ( $field[ 'label_pos' ] ) && 'inside' == $field[ 'label_pos' ] ) {
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function