From ff56488103f5f2914ad6c89519873efc89fcda80 Mon Sep 17 00:00:00 2001 From: Niraj Chaudhary Date: Fri, 30 Aug 2024 14:56:19 +0545 Subject: [PATCH 1/4] Tweak - Field which are made hidden are editable --- includes/evf-core-functions.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/includes/evf-core-functions.php b/includes/evf-core-functions.php index c1ca54f6f..41680933a 100644 --- a/includes/evf-core-functions.php +++ b/includes/evf-core-functions.php @@ -994,6 +994,7 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att } } + $is_edit_entry = isset( $_GET['edit-entry'] ) && ! empty( sanitize_text_field( wp_unslash( $_GET['edit-entry'] ) ) ) ? true : false; if ( ! empty( $atts ) ) { foreach ( $atts as $att => $val ) { if ( '0' === $val || ! empty( $val ) ) { @@ -1003,7 +1004,11 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att } else { $escaped_att = sanitize_html_class( $att ); } - $parts[] = $escaped_att . '="' . esc_attr( $val ) . '"'; + if ( 'style' == $escaped_att && $is_edit_entry ) { + $parts[] = 'style = "display: block"'; + } else { + $parts[] = $escaped_att . '="' . esc_attr( $val ) . '"'; + } } } } From 81abb12d2e411f391c9729cce85f0ccaa9fba947 Mon Sep 17 00:00:00 2001 From: Niraj Chaudhary Date: Fri, 30 Aug 2024 17:17:29 +0545 Subject: [PATCH 2/4] Tweak - Hidden field also editable --- includes/evf-core-functions.php | 8 +++++++- includes/fields/class-evf-field-hidden.php | 7 ++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/includes/evf-core-functions.php b/includes/evf-core-functions.php index 41680933a..a8e43ac2c 100644 --- a/includes/evf-core-functions.php +++ b/includes/evf-core-functions.php @@ -974,6 +974,8 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att $id = trim( $id ); $parts = array(); + $is_edit_entry = isset( $_GET['edit-entry'] ) && ! empty( sanitize_text_field( wp_unslash( $_GET['edit-entry'] ) ) ) ? true : false; + if ( ! empty( $id ) ) { $id = sanitize_html_class( $id ); if ( ! empty( $id ) ) { @@ -984,6 +986,10 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att if ( ! empty( $class ) ) { $class = evf_sanitize_classes( $class, true ); if ( ! empty( $class ) ) { + // While editing hidden field should be visible. + if( $is_edit_entry ){ + $class = str_replace( "evf-field-hidden", "", $class ); + } $parts[] = 'class="' . $class . '"'; } } @@ -994,7 +1000,6 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att } } - $is_edit_entry = isset( $_GET['edit-entry'] ) && ! empty( sanitize_text_field( wp_unslash( $_GET['edit-entry'] ) ) ) ? true : false; if ( ! empty( $atts ) ) { foreach ( $atts as $att => $val ) { if ( '0' === $val || ! empty( $val ) ) { @@ -1004,6 +1009,7 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att } else { $escaped_att = sanitize_html_class( $att ); } + // While editing, fields must be visible even if they are hidden. if ( 'style' == $escaped_att && $is_edit_entry ) { $parts[] = 'style = "display: block"'; } else { diff --git a/includes/fields/class-evf-field-hidden.php b/includes/fields/class-evf-field-hidden.php index 98dfc2db8..7788b6be5 100644 --- a/includes/fields/class-evf-field-hidden.php +++ b/includes/fields/class-evf-field-hidden.php @@ -82,9 +82,14 @@ public function field_display( $field, $field_atts, $form_data ) { // Define data. $primary = $field['properties']['inputs']['primary']; + // For edit purpose. + $is_edit_entry = isset( $_GET['edit-entry'] ) && sanitize_text_field( wp_unslash( $_GET['edit-entry'] ) ) ? true : false; + $field_type = $is_edit_entry ? 'text' : 'hidden'; + // Primary field. printf( - '', + '', + $field_type, evf_html_attributes( $primary['id'], $primary['class'], $primary['data'], $primary['attr'] ) ); } From 41f64a75efc60c61a9b7c8ccbe2ef2e0247a8e45 Mon Sep 17 00:00:00 2001 From: Niraj Chaudhary Date: Mon, 2 Sep 2024 10:25:05 +0545 Subject: [PATCH 3/4] Fix phpcs --- includes/evf-core-functions.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/includes/evf-core-functions.php b/includes/evf-core-functions.php index a8e43ac2c..fce1c6733 100644 --- a/includes/evf-core-functions.php +++ b/includes/evf-core-functions.php @@ -974,7 +974,7 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att $id = trim( $id ); $parts = array(); - $is_edit_entry = isset( $_GET['edit-entry'] ) && ! empty( sanitize_text_field( wp_unslash( $_GET['edit-entry'] ) ) ) ? true : false; + $is_edit_entry = isset( $_GET['edit-entry'] ) && ! sanitize_text_field( wp_unslash( empty( $_GET['edit-entry'] ) ) ) ? true : false; if ( ! empty( $id ) ) { $id = sanitize_html_class( $id ); @@ -987,8 +987,8 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att $class = evf_sanitize_classes( $class, true ); if ( ! empty( $class ) ) { // While editing hidden field should be visible. - if( $is_edit_entry ){ - $class = str_replace( "evf-field-hidden", "", $class ); + if( $is_edit_entry ) { + $class = str_replace( 'evf-field-hidden', '', $class ); } $parts[] = 'class="' . $class . '"'; } From 95021ca4ff3ad60aa107b091959e0e8ee432500e Mon Sep 17 00:00:00 2001 From: Niraj Chaudhary Date: Thu, 5 Sep 2024 09:58:57 +0545 Subject: [PATCH 4/4] Fix - PHPCS --- includes/evf-core-functions.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/includes/evf-core-functions.php b/includes/evf-core-functions.php index fce1c6733..9853d393b 100644 --- a/includes/evf-core-functions.php +++ b/includes/evf-core-functions.php @@ -974,7 +974,7 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att $id = trim( $id ); $parts = array(); - $is_edit_entry = isset( $_GET['edit-entry'] ) && ! sanitize_text_field( wp_unslash( empty( $_GET['edit-entry'] ) ) ) ? true : false; + $is_edit_entry = isset( $_GET['edit-entry'] ) && ! sanitize_text_field( wp_unslash( empty( $_GET['edit-entry'] ) ) ) ? true : false; if ( ! empty( $id ) ) { $id = sanitize_html_class( $id ); @@ -987,7 +987,7 @@ function evf_html_attributes( $id = '', $class = array(), $datas = array(), $att $class = evf_sanitize_classes( $class, true ); if ( ! empty( $class ) ) { // While editing hidden field should be visible. - if( $is_edit_entry ) { + if ( $is_edit_entry ) { $class = str_replace( 'evf-field-hidden', '', $class ); } $parts[] = 'class="' . $class . '"';