Completed
Pull Request — master (#902)
by Zack
15:05 queued 10:52
created
includes/widgets/search-widget/templates/search-field-hidden.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -7,4 +7,4 @@
 block discarded – undo
7 7
 
8 8
 $gravityview_view = GravityView_View::getInstance();
9 9
 $search_field = $gravityview_view->search_field;
10
-?><div><input type="hidden" name="<?php echo esc_attr( $search_field['name'] ); ?>" value="<?php echo esc_attr( $search_field['value'] ); ?>"></div>
11 10
\ No newline at end of file
11
+?><div><input type="hidden" name="<?php echo esc_attr( $search_field[ 'name' ] ); ?>" value="<?php echo esc_attr( $search_field[ 'value' ] ); ?>"></div>
12 12
\ No newline at end of file
Please login to merge, or discard this patch.
includes/widgets/search-widget/templates/widget-search.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -23,12 +23,12 @@  discard block
 block discarded – undo
23 23
 	 */
24 24
 	do_action( 'gravityview_search_widget_fields_before', $this );
25 25
 
26
-	foreach( $this->search_fields as $search_field ) {
26
+	foreach ( $this->search_fields as $search_field ) {
27 27
 		$gravityview_view->search_field = $search_field;
28
-		$this->render( 'search-field', $search_field['input'], false );
28
+		$this->render( 'search-field', $search_field[ 'input' ], false );
29 29
 
30 30
 		// show/hide the search button if there are input type fields
31
-		if( !$has_inputs &&  $search_field['input'] != 'link' ) {
31
+		if ( ! $has_inputs && $search_field[ 'input' ] != 'link' ) {
32 32
 			$has_inputs = true;
33 33
 		}
34 34
 	}
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 	 */
40 40
 	do_action( 'gravityview_search_widget_fields_after', $this );
41 41
 
42
-	if( $has_inputs ) { ?>
42
+	if ( $has_inputs ) { ?>
43 43
 		<div class="gv-search-box gv-search-box-submit">
44 44
 			<?php
45 45
 
Please login to merge, or discard this patch.
includes/widgets/search-widget/class-search-widget.php 3 patches
Braces   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -622,7 +622,7 @@
 block discarded – undo
622 622
 			'ymd_dot' => 'Y.m.d',
623 623
 		);
624 624
 
625
-		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ){
625
+		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ) {
626 626
 			$format = $datepicker[ $field->dateFormat ];
627 627
 		}
628 628
 
Please login to merge, or discard this patch.
Doc Comments   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -201,7 +201,7 @@  discard block
 block discarded – undo
201 201
 	/**
202 202
 	 * Add admin script to the no-conflict scripts whitelist
203 203
 	 * @param array $allowed Scripts allowed in no-conflict mode
204
-	 * @return array Scripts allowed in no-conflict mode, plus the search widget script
204
+	 * @return string[] Scripts allowed in no-conflict mode, plus the search widget script
205 205
 	 */
206 206
 	public function register_no_conflict( $allowed ) {
207 207
 		$allowed[] = 'gravityview_searchwidget_admin';
@@ -889,7 +889,7 @@  discard block
 block discarded – undo
889 889
 	/**
890 890
 	 * Get the label for a search form field
891 891
 	 * @param  array $field      Field setting as sent by the GV configuration - has `field`, `input` (input type), and `label` keys
892
-	 * @param  array $form_field Form field data, as fetched by `gravityview_get_field()`
892
+	 * @param  GF_Field|null $form_field Form field data, as fetched by `gravityview_get_field()`
893 893
 	 * @return string             Label for the search form
894 894
 	 */
895 895
 	private static function get_field_label( $field, $form_field = array() ) {
@@ -1058,7 +1058,7 @@  discard block
 block discarded – undo
1058 1058
 	/**
1059 1059
 	 * Require the datepicker script for the frontend GV script
1060 1060
 	 * @param array $js_dependencies Array of existing required scripts for the fe-views.js script
1061
-	 * @return array Array required scripts, with `jquery-ui-datepicker` added
1061
+	 * @return string[] Array required scripts, with `jquery-ui-datepicker` added
1062 1062
 	 */
1063 1063
 	public function add_datepicker_js_dependency( $js_dependencies ) {
1064 1064
 
@@ -1070,7 +1070,7 @@  discard block
 block discarded – undo
1070 1070
 	/**
1071 1071
 	 * Modify the array passed to wp_localize_script()
1072 1072
 	 *
1073
-	 * @param array $js_localization The data padded to the Javascript file
1073
+	 * @param array $localizations The data padded to the Javascript file
1074 1074
 	 * @param array $view_data View data array with View settings
1075 1075
 	 *
1076 1076
 	 * @return array
Please login to merge, or discard this patch.
Spacing   +107 added lines, -107 removed lines patch added patch discarded remove patch
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
 				'type' => 'radio',
64 64
 				'full_width' => true,
65 65
 				'label' => esc_html__( 'Search Mode', 'gravityview' ),
66
-				'desc' => __('Should search results match all search fields, or any?', 'gravityview'),
66
+				'desc' => __( 'Should search results match all search fields, or any?', 'gravityview' ),
67 67
 				'value' => 'any',
68 68
 				'class' => 'hide-if-js',
69 69
 				'options' => array(
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
 
86 86
 		// admin - add scripts - run at 1100 to make sure GravityView_Admin_Views::add_scripts_and_styles() runs first at 999
87 87
 		add_action( 'admin_enqueue_scripts', array( $this, 'add_scripts_and_styles' ), 1100 );
88
-		add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts') );
88
+		add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts' ) );
89 89
 		add_filter( 'gravityview_noconflict_scripts', array( $this, 'register_no_conflict' ) );
90 90
 
91 91
 		// ajax - get the searchable fields
@@ -221,7 +221,7 @@  discard block
 block discarded – undo
221 221
 		$script_min = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
222 222
 		$script_source = empty( $script_min ) ? '/source' : '';
223 223
 
224
-		wp_enqueue_script( 'gravityview_searchwidget_admin', plugins_url( 'assets/js'.$script_source.'/admin-search-widget'.$script_min.'.js', __FILE__ ), array( 'jquery', 'gravityview_views_scripts' ), GravityView_Plugin::version );
224
+		wp_enqueue_script( 'gravityview_searchwidget_admin', plugins_url( 'assets/js' . $script_source . '/admin-search-widget' . $script_min . '.js', __FILE__ ), array( 'jquery', 'gravityview_views_scripts' ), GravityView_Plugin::version );
225 225
 
226 226
 		wp_localize_script( 'gravityview_searchwidget_admin', 'gvSearchVar', array(
227 227
 			'nonce' => wp_create_nonce( 'gravityview_ajaxsearchwidget' ),
@@ -243,7 +243,7 @@  discard block
 block discarded – undo
243 243
 	 * @return array Scripts allowed in no-conflict mode, plus the search widget script
244 244
 	 */
245 245
 	public function register_no_conflict( $allowed ) {
246
-		$allowed[] = 'gravityview_searchwidget_admin';
246
+		$allowed[ ] = 'gravityview_searchwidget_admin';
247 247
 		return $allowed;
248 248
 	}
249 249
 
@@ -256,24 +256,24 @@  discard block
 block discarded – undo
256 256
 	 */
257 257
 	public static function get_searchable_fields() {
258 258
 
259
-		if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'gravityview_ajaxsearchwidget' ) ) {
259
+		if ( ! isset( $_POST[ 'nonce' ] ) || ! wp_verify_nonce( $_POST[ 'nonce' ], 'gravityview_ajaxsearchwidget' ) ) {
260 260
 			exit( '0' );
261 261
 		}
262 262
 
263 263
 		$form = '';
264 264
 
265 265
 		// Fetch the form for the current View
266
-		if ( ! empty( $_POST['view_id'] ) ) {
266
+		if ( ! empty( $_POST[ 'view_id' ] ) ) {
267 267
 
268
-			$form = gravityview_get_form_id( $_POST['view_id'] );
268
+			$form = gravityview_get_form_id( $_POST[ 'view_id' ] );
269 269
 
270
-		} elseif ( ! empty( $_POST['formid'] ) ) {
270
+		} elseif ( ! empty( $_POST[ 'formid' ] ) ) {
271 271
 
272
-			$form = (int) $_POST['formid'];
272
+			$form = (int)$_POST[ 'formid' ];
273 273
 
274
-		} elseif ( ! empty( $_POST['template_id'] ) && class_exists( 'GravityView_Ajax' ) ) {
274
+		} elseif ( ! empty( $_POST[ 'template_id' ] ) && class_exists( 'GravityView_Ajax' ) ) {
275 275
 
276
-			$form = GravityView_Ajax::pre_get_form_fields( $_POST['template_id'] );
276
+			$form = GravityView_Ajax::pre_get_form_fields( $_POST[ 'template_id' ] );
277 277
 
278 278
 		}
279 279
 
@@ -318,8 +318,8 @@  discard block
 block discarded – undo
318 318
 			)
319 319
 		);
320 320
 
321
-		foreach( $custom_fields as $custom_field_key => $custom_field ) {
322
-			$output .= sprintf( '<option value="%s" %s data-inputtypes="%s" data-placeholder="%s">%s</option>', $custom_field_key, selected( $custom_field_key, $current, false ), $custom_field['type'], self::get_field_label( array('field' => $custom_field_key ) ), $custom_field['text'] );
321
+		foreach ( $custom_fields as $custom_field_key => $custom_field ) {
322
+			$output .= sprintf( '<option value="%s" %s data-inputtypes="%s" data-placeholder="%s">%s</option>', $custom_field_key, selected( $custom_field_key, $current, false ), $custom_field[ 'type' ], self::get_field_label( array( 'field' => $custom_field_key ) ), $custom_field[ 'text' ] );
323 323
 		}
324 324
 
325 325
 		// Get fields with sub-inputs and no parent
@@ -341,13 +341,13 @@  discard block
 block discarded – undo
341 341
 
342 342
 			foreach ( $fields as $id => $field ) {
343 343
 
344
-				if ( in_array( $field['type'], $blacklist_field_types ) ) {
344
+				if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) {
345 345
 					continue;
346 346
 				}
347 347
 
348
-				$types = self::get_search_input_types( $id, $field['type'] );
348
+				$types = self::get_search_input_types( $id, $field[ 'type' ] );
349 349
 
350
-				$output .= '<option value="'. $id .'" '. selected( $id, $current, false ).'data-inputtypes="'. esc_attr( $types ) .'">'. esc_html( $field['label'] ) .'</option>';
350
+				$output .= '<option value="' . $id . '" ' . selected( $id, $current, false ) . 'data-inputtypes="' . esc_attr( $types ) . '">' . esc_html( $field[ 'label' ] ) . '</option>';
351 351
 			}
352 352
 		}
353 353
 
@@ -370,7 +370,7 @@  discard block
 block discarded – undo
370 370
 	public static function get_search_input_types( $field_id = '', $field_type = null ) {
371 371
 
372 372
 		// @todo - This needs to be improved - many fields have . including products and addresses
373
-		if ( false !== strpos( (string) $field_id, '.' ) && in_array( $field_type, array( 'checkbox' ) ) || in_array( $field_id, array( 'is_fulfilled' ) ) ) {
373
+		if ( false !== strpos( (string)$field_id, '.' ) && in_array( $field_type, array( 'checkbox' ) ) || in_array( $field_id, array( 'is_fulfilled' ) ) ) {
374 374
 			$input_type = 'boolean'; // on/off checkbox
375 375
 		} elseif ( in_array( $field_type, array( 'checkbox', 'post_category', 'multiselect' ) ) ) {
376 376
 			$input_type = 'multi'; //multiselect
@@ -414,19 +414,19 @@  discard block
 block discarded – undo
414 414
 			$post_id = 0;
415 415
 
416 416
 			// We're in the WordPress Widget context, and an overriding post ID has been set.
417
-			if ( ! empty( $widget_args['post_id'] ) ) {
418
-				$post_id = absint( $widget_args['post_id'] );
417
+			if ( ! empty( $widget_args[ 'post_id' ] ) ) {
418
+				$post_id = absint( $widget_args[ 'post_id' ] );
419 419
 			}
420 420
 			// We're in the WordPress Widget context, and the base View ID should be used
421
-			else if ( ! empty( $widget_args['view_id'] ) ) {
422
-				$post_id = absint( $widget_args['view_id'] );
421
+			else if ( ! empty( $widget_args[ 'view_id' ] ) ) {
422
+				$post_id = absint( $widget_args[ 'view_id' ] );
423 423
 			}
424 424
 
425 425
 			$args = gravityview_get_permalink_query_args( $post_id );
426 426
 
427 427
 			// Add hidden fields to the search form
428 428
 			foreach ( $args as $key => $value ) {
429
-				$search_fields[] = array(
429
+				$search_fields[ ] = array(
430 430
 					'name'  => $key,
431 431
 					'input' => 'hidden',
432 432
 					'value' => $value,
@@ -447,7 +447,7 @@  discard block
 block discarded – undo
447 447
 	 */
448 448
 	public function filter_entries( $search_criteria ) {
449 449
 
450
-		if( 'post' === $this->search_method ) {
450
+		if ( 'post' === $this->search_method ) {
451 451
 			$get = $_POST;
452 452
 		} else {
453 453
 			$get = $_GET;
@@ -464,12 +464,12 @@  discard block
 block discarded – undo
464 464
 		$get = gv_map_deep( $get, 'rawurldecode' );
465 465
 
466 466
 		// Make sure array key is set up
467
-		$search_criteria['field_filters'] = rgar( $search_criteria, 'field_filters', array() );
467
+		$search_criteria[ 'field_filters' ] = rgar( $search_criteria, 'field_filters', array() );
468 468
 
469 469
 		// add free search
470
-		if ( ! empty( $get['gv_search'] ) ) {
470
+		if ( ! empty( $get[ 'gv_search' ] ) ) {
471 471
 
472
-			$search_all_value = trim( $get['gv_search'] );
472
+			$search_all_value = trim( $get[ 'gv_search' ] );
473 473
 
474 474
 			/**
475 475
 			 * @filter `gravityview/search-all-split-words` Search for each word separately or the whole phrase?
@@ -478,7 +478,7 @@  discard block
 block discarded – undo
478 478
 			 */
479 479
 			$split_words = apply_filters( 'gravityview/search-all-split-words', true );
480 480
 
481
-			if( $split_words ) {
481
+			if ( $split_words ) {
482 482
 
483 483
 				// Search for a piece
484 484
 				$words = explode( ' ', $search_all_value );
@@ -494,7 +494,7 @@  discard block
 block discarded – undo
494 494
 			}
495 495
 
496 496
 			foreach ( $words as $word ) {
497
-				$search_criteria['field_filters'][] = array(
497
+				$search_criteria[ 'field_filters' ][ ] = array(
498 498
 					'key' => null, // The field ID to search
499 499
 					'value' => $word, // The value to search
500 500
 					'operator' => 'contains', // What to search in. Options: `is` or `contains`
@@ -503,8 +503,8 @@  discard block
 block discarded – undo
503 503
 		}
504 504
 
505 505
 		//start date & end date
506
-		$curr_start = !empty( $get['gv_start'] ) ? $get['gv_start'] : '';
507
-		$curr_end = !empty( $get['gv_start'] ) ? $get['gv_end'] : '';
506
+		$curr_start = ! empty( $get[ 'gv_start' ] ) ? $get[ 'gv_start' ] : '';
507
+		$curr_end = ! empty( $get[ 'gv_start' ] ) ? $get[ 'gv_end' ] : '';
508 508
 
509 509
 		/**
510 510
 		 * @filter `gravityview_date_created_adjust_timezone` Whether to adjust the timezone for entries. \n
@@ -519,16 +519,16 @@  discard block
 block discarded – undo
519 519
 		/**
520 520
 		 * Don't set $search_criteria['start_date'] if start_date is empty as it may lead to bad query results (GFAPI::get_entries)
521 521
 		 */
522
-		if( !empty( $curr_start ) ) {
523
-			$search_criteria['start_date'] = $adjust_tz ? get_gmt_from_date( $curr_start ) : $curr_start;
522
+		if ( ! empty( $curr_start ) ) {
523
+			$search_criteria[ 'start_date' ] = $adjust_tz ? get_gmt_from_date( $curr_start ) : $curr_start;
524 524
 		}
525
-		if( !empty( $curr_end ) ) {
526
-			$search_criteria['end_date'] = $adjust_tz ? get_gmt_from_date( $curr_end ) : $curr_end;
525
+		if ( ! empty( $curr_end ) ) {
526
+			$search_criteria[ 'end_date' ] = $adjust_tz ? get_gmt_from_date( $curr_end ) : $curr_end;
527 527
 		}
528 528
 
529 529
 		// search for a specific entry ID
530 530
 		if ( ! empty( $get[ 'gv_id' ] ) ) {
531
-			$search_criteria['field_filters'][] = array(
531
+			$search_criteria[ 'field_filters' ][ ] = array(
532 532
 				'key' => 'id',
533 533
 				'value' => absint( $get[ 'gv_id' ] ),
534 534
 				'operator' => '=',
@@ -537,36 +537,36 @@  discard block
 block discarded – undo
537 537
 
538 538
 		// search for a specific Created_by ID
539 539
 		if ( ! empty( $get[ 'gv_by' ] ) ) {
540
-			$search_criteria['field_filters'][] = array(
540
+			$search_criteria[ 'field_filters' ][ ] = array(
541 541
 				'key' => 'created_by',
542
-				'value' => absint( $get['gv_by'] ),
542
+				'value' => absint( $get[ 'gv_by' ] ),
543 543
 				'operator' => '=',
544 544
 			);
545 545
 		}
546 546
 
547 547
 
548 548
 		// Get search mode passed in URL
549
-		$mode = isset( $get['mode'] ) && in_array( $get['mode'], array( 'any', 'all' ) ) ?  $get['mode'] : 'any';
549
+		$mode = isset( $get[ 'mode' ] ) && in_array( $get[ 'mode' ], array( 'any', 'all' ) ) ? $get[ 'mode' ] : 'any';
550 550
 
551 551
 		// get the other search filters
552 552
 		foreach ( $get as $key => $value ) {
553 553
 
554
-			if ( 0 !== strpos( $key, 'filter_' ) || gv_empty( $value, false ) || ( is_array( $value ) && count( $value ) === 1 && gv_empty( $value[0], false ) ) ) {
554
+			if ( 0 !== strpos( $key, 'filter_' ) || gv_empty( $value, false ) || ( is_array( $value ) && count( $value ) === 1 && gv_empty( $value[ 0 ], false ) ) ) {
555 555
 				continue;
556 556
 			}
557 557
 
558 558
 			// could return simple filter or multiple filters
559 559
 			$filter = $this->prepare_field_filter( $key, $value );
560 560
 
561
-			if ( isset( $filter[0]['value'] ) ) {
562
-				$search_criteria['field_filters'] = array_merge( $search_criteria['field_filters'], $filter );
561
+			if ( isset( $filter[ 0 ][ 'value' ] ) ) {
562
+				$search_criteria[ 'field_filters' ] = array_merge( $search_criteria[ 'field_filters' ], $filter );
563 563
 
564 564
 				// if date range type, set search mode to ALL
565
-				if ( ! empty( $filter[0]['operator'] ) && in_array( $filter[0]['operator'], array( '>=', '<=', '>', '<' ) ) ) {
565
+				if ( ! empty( $filter[ 0 ][ 'operator' ] ) && in_array( $filter[ 0 ][ 'operator' ], array( '>=', '<=', '>', '<' ) ) ) {
566 566
 					$mode = 'all';
567 567
 				}
568
-			} elseif( !empty( $filter ) ) {
569
-				$search_criteria['field_filters'][] = $filter;
568
+			} elseif ( ! empty( $filter ) ) {
569
+				$search_criteria[ 'field_filters' ][ ] = $filter;
570 570
 			}
571 571
 		}
572 572
 
@@ -575,7 +575,7 @@  discard block
 block discarded – undo
575 575
 		 * @since 1.5.1
576 576
 		 * @param[out,in] string $mode Search mode (`any` vs `all`)
577 577
 		 */
578
-		$search_criteria['field_filters']['mode'] = apply_filters( 'gravityview/search/mode', $mode );
578
+		$search_criteria[ 'field_filters' ][ 'mode' ] = apply_filters( 'gravityview/search/mode', $mode );
579 579
 
580 580
 		do_action( 'gravityview_log_debug', sprintf( '%s[filter_entries] Returned Search Criteria: ', get_class( $this ) ), $search_criteria );
581 581
 
@@ -601,7 +601,7 @@  discard block
 block discarded – undo
601 601
 		$field_id = str_replace( 'filter_', '', $key );
602 602
 
603 603
 		// calculates field_id, removing 'filter_' and for '_' for advanced fields ( like name or checkbox )
604
-		if ( preg_match('/^[0-9_]+$/ism', $field_id ) ) {
604
+		if ( preg_match( '/^[0-9_]+$/ism', $field_id ) ) {
605 605
 			$field_id = str_replace( '_', '.', $field_id );
606 606
 		}
607 607
 
@@ -615,11 +615,11 @@  discard block
 block discarded – undo
615 615
 			'value' => $value,
616 616
 		);
617 617
 
618
-		switch ( $form_field['type'] ) {
618
+		switch ( $form_field[ 'type' ] ) {
619 619
 
620 620
 			case 'select':
621 621
 			case 'radio':
622
-				$filter['operator'] = 'is';
622
+				$filter[ 'operator' ] = 'is';
623 623
 				break;
624 624
 
625 625
 			case 'post_category':
@@ -633,7 +633,7 @@  discard block
 block discarded – undo
633 633
 
634 634
 				foreach ( $value as $val ) {
635 635
 					$cat = get_term( $val, 'category' );
636
-					$filter[] = array(
636
+					$filter[ ] = array(
637 637
 						'key' => $field_id,
638 638
 						'value' => esc_attr( $cat->name ) . ':' . $val,
639 639
 						'operator' => 'is',
@@ -652,18 +652,18 @@  discard block
 block discarded – undo
652 652
 				$filter = array();
653 653
 
654 654
 				foreach ( $value as $val ) {
655
-					$filter[] = array( 'key' => $field_id, 'value' => $val );
655
+					$filter[ ] = array( 'key' => $field_id, 'value' => $val );
656 656
 				}
657 657
 
658 658
 				break;
659 659
 
660 660
 			case 'checkbox':
661 661
 				// convert checkbox on/off into the correct search filter
662
-				if ( false !== strpos( $field_id, '.' ) && ! empty( $form_field['inputs'] ) && ! empty( $form_field['choices'] ) ) {
663
-					foreach ( $form_field['inputs'] as $k => $input ) {
664
-						if ( $input['id'] == $field_id ) {
665
-							$filter['value'] = $form_field['choices'][ $k ]['value'];
666
-							$filter['operator'] = 'is';
662
+				if ( false !== strpos( $field_id, '.' ) && ! empty( $form_field[ 'inputs' ] ) && ! empty( $form_field[ 'choices' ] ) ) {
663
+					foreach ( $form_field[ 'inputs' ] as $k => $input ) {
664
+						if ( $input[ 'id' ] == $field_id ) {
665
+							$filter[ 'value' ] = $form_field[ 'choices' ][ $k ][ 'value' ];
666
+							$filter[ 'operator' ] = 'is';
667 667
 							break;
668 668
 						}
669 669
 					}
@@ -673,7 +673,7 @@  discard block
 block discarded – undo
673 673
 					$filter = array();
674 674
 
675 675
 					foreach ( $value as $val ) {
676
-						$filter[] = array(
676
+						$filter[ ] = array(
677 677
 							'key'   => $field_id,
678 678
 							'value' => $val,
679 679
 							'operator' => 'is',
@@ -694,9 +694,9 @@  discard block
 block discarded – undo
694 694
 					foreach ( $words as $word ) {
695 695
 						if ( ! empty( $word ) && strlen( $word ) > 1 ) {
696 696
 							// Keep the same key for each filter
697
-							$filter['value'] = $word;
697
+							$filter[ 'value' ] = $word;
698 698
 							// Add a search for the value
699
-							$filters[] = $filter;
699
+							$filters[ ] = $filter;
700 700
 						}
701 701
 					}
702 702
 
@@ -723,19 +723,19 @@  discard block
 block discarded – undo
723 723
 						 * @since 1.16.3
724 724
 						 * Safeguard until GF implements '<=' operator
725 725
 						 */
726
-						if( !GFFormsModel::is_valid_operator( $operator ) && $operator === '<=' ) {
726
+						if ( ! GFFormsModel::is_valid_operator( $operator ) && $operator === '<=' ) {
727 727
 							$operator = '<';
728 728
 							$date = date( 'Y-m-d', strtotime( $date . ' +1 day' ) );
729 729
 						}
730 730
 
731
-						$filter[] = array(
731
+						$filter[ ] = array(
732 732
 							'key' => $field_id,
733 733
 							'value' => self::get_formatted_date( $date, 'Y-m-d' ),
734 734
 							'operator' => $operator,
735 735
 						);
736 736
 					}
737 737
 				} else {
738
-					$filter['value'] = self::get_formatted_date( $value, 'Y-m-d' );
738
+					$filter[ 'value' ] = self::get_formatted_date( $value, 'Y-m-d' );
739 739
 				}
740 740
 
741 741
 				break;
@@ -766,7 +766,7 @@  discard block
 block discarded – undo
766 766
 			'ymd_dot' => 'Y.m.d',
767 767
 		);
768 768
 
769
-		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ){
769
+		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ) {
770 770
 			$format = $datepicker[ $field->dateFormat ];
771 771
 		}
772 772
 
@@ -797,7 +797,7 @@  discard block
 block discarded – undo
797 797
 	public function add_template_path( $file_paths ) {
798 798
 
799 799
 		// Index 100 is the default GravityView template path.
800
-		$file_paths[102] = self::$file . 'templates/';
800
+		$file_paths[ 102 ] = self::$file . 'templates/';
801 801
 
802 802
 		return $file_paths;
803 803
 	}
@@ -816,7 +816,7 @@  discard block
 block discarded – undo
816 816
 		$has_date = false;
817 817
 
818 818
 		foreach ( $search_fields as $k => $field ) {
819
-			if ( in_array( $field['input'], array( 'date', 'date_range', 'entry_date' ) ) ) {
819
+			if ( in_array( $field[ 'input' ], array( 'date', 'date_range', 'entry_date' ) ) ) {
820 820
 				$has_date = true;
821 821
 				break;
822 822
 			}
@@ -843,7 +843,7 @@  discard block
 block discarded – undo
843 843
 		}
844 844
 
845 845
 		// get configured search fields
846
-		$search_fields = ! empty( $widget_args['search_fields'] ) ? json_decode( $widget_args['search_fields'], true ) : '';
846
+		$search_fields = ! empty( $widget_args[ 'search_fields' ] ) ? json_decode( $widget_args[ 'search_fields' ], true ) : '';
847 847
 
848 848
 		if ( empty( $search_fields ) || ! is_array( $search_fields ) ) {
849 849
 			do_action( 'gravityview_log_debug', sprintf( '%s[render_frontend] No search fields configured for widget:', get_class( $this ) ), $widget_args );
@@ -858,34 +858,34 @@  discard block
 block discarded – undo
858 858
 
859 859
 			$updated_field = $this->get_search_filter_details( $updated_field );
860 860
 
861
-			switch ( $field['field'] ) {
861
+			switch ( $field[ 'field' ] ) {
862 862
 
863 863
 				case 'search_all':
864
-					$updated_field['key'] = 'search_all';
865
-					$updated_field['input'] = 'search_all';
866
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_search' );
864
+					$updated_field[ 'key' ] = 'search_all';
865
+					$updated_field[ 'input' ] = 'search_all';
866
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_search' );
867 867
 					break;
868 868
 
869 869
 				case 'entry_date':
870
-					$updated_field['key'] = 'entry_date';
871
-					$updated_field['input'] = 'entry_date';
872
-					$updated_field['value'] = array(
870
+					$updated_field[ 'key' ] = 'entry_date';
871
+					$updated_field[ 'input' ] = 'entry_date';
872
+					$updated_field[ 'value' ] = array(
873 873
 						'start' => $this->rgget_or_rgpost( 'gv_start' ),
874 874
 						'end' => $this->rgget_or_rgpost( 'gv_end' ),
875 875
 					);
876 876
 					break;
877 877
 
878 878
 				case 'entry_id':
879
-					$updated_field['key'] = 'entry_id';
880
-					$updated_field['input'] = 'entry_id';
881
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_id' );
879
+					$updated_field[ 'key' ] = 'entry_id';
880
+					$updated_field[ 'input' ] = 'entry_id';
881
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_id' );
882 882
 					break;
883 883
 
884 884
 				case 'created_by':
885
-					$updated_field['key'] = 'created_by';
886
-					$updated_field['name'] = 'gv_by';
887
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_by' );
888
-					$updated_field['choices'] = self::get_created_by_choices();
885
+					$updated_field[ 'key' ] = 'created_by';
886
+					$updated_field[ 'name' ] = 'gv_by';
887
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_by' );
888
+					$updated_field[ 'choices' ] = self::get_created_by_choices();
889 889
 					break;
890 890
 			}
891 891
 
@@ -903,16 +903,16 @@  discard block
 block discarded – undo
903 903
 		 */
904 904
 		$gravityview_view->search_fields = apply_filters( 'gravityview_widget_search_filters', $search_fields, $this, $widget_args );
905 905
 
906
-		$gravityview_view->search_layout = ! empty( $widget_args['search_layout'] ) ? $widget_args['search_layout'] : 'horizontal';
906
+		$gravityview_view->search_layout = ! empty( $widget_args[ 'search_layout' ] ) ? $widget_args[ 'search_layout' ] : 'horizontal';
907 907
 
908 908
 		/** @since 1.14 */
909
-		$gravityview_view->search_mode = ! empty( $widget_args['search_mode'] ) ? $widget_args['search_mode'] : 'any';
909
+		$gravityview_view->search_mode = ! empty( $widget_args[ 'search_mode' ] ) ? $widget_args[ 'search_mode' ] : 'any';
910 910
 
911
-		$custom_class = ! empty( $widget_args['custom_class'] ) ? $widget_args['custom_class'] : '';
911
+		$custom_class = ! empty( $widget_args[ 'custom_class' ] ) ? $widget_args[ 'custom_class' ] : '';
912 912
 
913 913
 		$gravityview_view->search_class = self::get_search_class( $custom_class );
914 914
 
915
-		$gravityview_view->search_clear = ! empty( $widget_args['search_clear'] ) ? $widget_args['search_clear'] : false;
915
+		$gravityview_view->search_clear = ! empty( $widget_args[ 'search_clear' ] ) ? $widget_args[ 'search_clear' ] : false;
916 916
 
917 917
 		if ( $this->has_date_field( $search_fields ) ) {
918 918
 			// enqueue datepicker stuff only if needed!
@@ -934,10 +934,10 @@  discard block
 block discarded – undo
934 934
 	public static function get_search_class( $custom_class = '' ) {
935 935
 		$gravityview_view = GravityView_View::getInstance();
936 936
 
937
-		$search_class = 'gv-search-'.$gravityview_view->search_layout;
937
+		$search_class = 'gv-search-' . $gravityview_view->search_layout;
938 938
 
939
-		if ( ! empty( $custom_class )  ) {
940
-			$search_class .= ' '.$custom_class;
939
+		if ( ! empty( $custom_class ) ) {
940
+			$search_class .= ' ' . $custom_class;
941 941
 		}
942 942
 
943 943
 		/**
@@ -979,11 +979,11 @@  discard block
 block discarded – undo
979 979
 
980 980
 		$label = rgget( 'label', $field );
981 981
 
982
-		if( '' === $label ) {
982
+		if ( '' === $label ) {
983 983
 
984
-			$label = isset( $form_field['label'] ) ? $form_field['label'] : '';
984
+			$label = isset( $form_field[ 'label' ] ) ? $form_field[ 'label' ] : '';
985 985
 
986
-			switch( $field['field'] ) {
986
+			switch ( $field[ 'field' ] ) {
987 987
 				case 'search_all':
988 988
 					$label = __( 'Search Entries:', 'gravityview' );
989 989
 					break;
@@ -995,10 +995,10 @@  discard block
 block discarded – undo
995 995
 					break;
996 996
 				default:
997 997
 					// If this is a field input, not a field
998
-					if ( strpos( $field['field'], '.' ) > 0 && ! empty( $form_field['inputs'] ) ) {
998
+					if ( strpos( $field[ 'field' ], '.' ) > 0 && ! empty( $form_field[ 'inputs' ] ) ) {
999 999
 
1000 1000
 						// Get the label for the field in question, which returns an array
1001
-						$items = wp_list_filter( $form_field['inputs'], array( 'id' => $field['field'] ) );
1001
+						$items = wp_list_filter( $form_field[ 'inputs' ], array( 'id' => $field[ 'field' ] ) );
1002 1002
 
1003 1003
 						// Get the item with the `label` key
1004 1004
 						$values = wp_list_pluck( $items, 'label' );
@@ -1037,32 +1037,32 @@  discard block
 block discarded – undo
1037 1037
 		$form = $gravityview_view->getForm();
1038 1038
 
1039 1039
 		// for advanced field ids (eg, first name / last name )
1040
-		$name = 'filter_' . str_replace( '.', '_', $field['field'] );
1040
+		$name = 'filter_' . str_replace( '.', '_', $field[ 'field' ] );
1041 1041
 
1042 1042
 		// get searched value from $_GET/$_POST (string or array)
1043 1043
 		$value = $this->rgget_or_rgpost( $name );
1044 1044
 
1045 1045
 		// get form field details
1046
-		$form_field = gravityview_get_field( $form, $field['field'] );
1046
+		$form_field = gravityview_get_field( $form, $field[ 'field' ] );
1047 1047
 
1048 1048
 		$filter = array(
1049
-			'key' => $field['field'],
1049
+			'key' => $field[ 'field' ],
1050 1050
 			'name' => $name,
1051 1051
 			'label' => self::get_field_label( $field, $form_field ),
1052
-			'input' => $field['input'],
1052
+			'input' => $field[ 'input' ],
1053 1053
 			'value' => $value,
1054
-			'type' => $form_field['type'],
1054
+			'type' => $form_field[ 'type' ],
1055 1055
 		);
1056 1056
 
1057 1057
 		// collect choices
1058
-		if ( 'post_category' === $form_field['type'] && ! empty( $form_field['displayAllCategories'] ) && empty( $form_field['choices'] ) ) {
1059
-			$filter['choices'] = gravityview_get_terms_choices();
1060
-		} elseif ( ! empty( $form_field['choices'] ) ) {
1061
-			$filter['choices'] = $form_field['choices'];
1058
+		if ( 'post_category' === $form_field[ 'type' ] && ! empty( $form_field[ 'displayAllCategories' ] ) && empty( $form_field[ 'choices' ] ) ) {
1059
+			$filter[ 'choices' ] = gravityview_get_terms_choices();
1060
+		} elseif ( ! empty( $form_field[ 'choices' ] ) ) {
1061
+			$filter[ 'choices' ] = $form_field[ 'choices' ];
1062 1062
 		}
1063 1063
 
1064
-		if ( 'date_range' === $field['input'] && empty( $value ) ) {
1065
-			$filter['value'] = array( 'start' => '', 'end' => '' );
1064
+		if ( 'date_range' === $field[ 'input' ] && empty( $value ) ) {
1065
+			$filter[ 'value' ] = array( 'start' => '', 'end' => '' );
1066 1066
 		}
1067 1067
 
1068 1068
 		return $filter;
@@ -1086,7 +1086,7 @@  discard block
 block discarded – undo
1086 1086
 
1087 1087
 		$choices = array();
1088 1088
 		foreach ( $users as $user ) {
1089
-			$choices[] = array(
1089
+			$choices[ ] = array(
1090 1090
 				'value' => $user->ID,
1091 1091
 				'text' => $user->display_name,
1092 1092
 			);
@@ -1141,7 +1141,7 @@  discard block
 block discarded – undo
1141 1141
 	 */
1142 1142
 	public function add_datepicker_js_dependency( $js_dependencies ) {
1143 1143
 
1144
-		$js_dependencies[] = 'jquery-ui-datepicker';
1144
+		$js_dependencies[ ] = 'jquery-ui-datepicker';
1145 1145
 
1146 1146
 		return $js_dependencies;
1147 1147
 	}
@@ -1185,7 +1185,7 @@  discard block
 block discarded – undo
1185 1185
 			'isRTL'             => is_rtl(),
1186 1186
 		), $view_data );
1187 1187
 
1188
-		$localizations['datepicker'] = $datepicker_settings;
1188
+		$localizations[ 'datepicker' ] = $datepicker_settings;
1189 1189
 
1190 1190
 		return $localizations;
1191 1191
 
@@ -1214,7 +1214,7 @@  discard block
 block discarded – undo
1214 1214
 	 * @return void
1215 1215
 	 */
1216 1216
 	private function maybe_enqueue_flexibility() {
1217
-		if ( isset( $_SERVER['HTTP_USER_AGENT'] ) && preg_match( '/MSIE [8-9]/', $_SERVER['HTTP_USER_AGENT'] ) ) {
1217
+		if ( isset( $_SERVER[ 'HTTP_USER_AGENT' ] ) && preg_match( '/MSIE [8-9]/', $_SERVER[ 'HTTP_USER_AGENT' ] ) ) {
1218 1218
 			wp_enqueue_script( 'gv-flexibility' );
1219 1219
 		}
1220 1220
 	}
@@ -1236,7 +1236,7 @@  discard block
 block discarded – undo
1236 1236
 		add_filter( 'gravityview_js_localization', array( $this, 'add_datepicker_localization' ), 10, 2 );
1237 1237
 
1238 1238
 		$scheme = is_ssl() ? 'https://' : 'http://';
1239
-		wp_enqueue_style( 'jquery-ui-datepicker', $scheme.'ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/themes/smoothness/jquery-ui.css' );
1239
+		wp_enqueue_style( 'jquery-ui-datepicker', $scheme . 'ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/themes/smoothness/jquery-ui.css' );
1240 1240
 
1241 1241
 		/**
1242 1242
 		 * @filter `gravityview_search_datepicker_class`
Please login to merge, or discard this patch.
includes/widgets/class-gravityview-widget-custom-content.php 1 patch
Spacing   +15 added lines, -15 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
 
18 18
 	function __construct() {
19 19
 
20
-		$this->widget_description = __('Insert custom text or HTML as a widget', 'gravityview' );
20
+		$this->widget_description = __( 'Insert custom text or HTML as a widget', 'gravityview' );
21 21
 
22 22
 		$default_values = array(
23 23
 			'header' => 1,
@@ -42,39 +42,39 @@  discard block
 block discarded – undo
42 42
 			),
43 43
 		);
44 44
 
45
-		parent::__construct( __( 'Custom Content', 'gravityview' ) , 'custom_content', $default_values, $settings );
45
+		parent::__construct( __( 'Custom Content', 'gravityview' ), 'custom_content', $default_values, $settings );
46 46
 	}
47 47
 
48
-	public function render_frontend( $widget_args, $content = '', $context = '') {
48
+	public function render_frontend( $widget_args, $content = '', $context = '' ) {
49 49
 
50
-		if( !$this->pre_render_frontend() ) {
50
+		if ( ! $this->pre_render_frontend() ) {
51 51
 			return;
52 52
 		}
53 53
 
54
-		if( !empty( $widget_args['title'] ) ) {
55
-			echo $widget_args['title'];
54
+		if ( ! empty( $widget_args[ 'title' ] ) ) {
55
+			echo $widget_args[ 'title' ];
56 56
 		}
57 57
 
58 58
 
59 59
 		// Make sure the class is loaded in DataTables
60
-		if( !class_exists( 'GFFormDisplay' ) ) {
60
+		if ( ! class_exists( 'GFFormDisplay' ) ) {
61 61
 			include_once( GFCommon::get_base_path() . '/form_display.php' );
62 62
 		}
63 63
 
64
-		$widget_args['content'] = trim( rtrim( $widget_args['content'] ) );
64
+		$widget_args[ 'content' ] = trim( rtrim( $widget_args[ 'content' ] ) );
65 65
 
66 66
 		// No custom content
67
-		if( empty( $widget_args['content'] ) ) {
68
-			do_action('gravityview_log_debug', sprintf( '%s[render_frontend]: No content.', get_class($this)) );
67
+		if ( empty( $widget_args[ 'content' ] ) ) {
68
+			do_action( 'gravityview_log_debug', sprintf( '%s[render_frontend]: No content.', get_class( $this ) ) );
69 69
 			return;
70 70
 		}
71 71
 
72 72
 		// Add paragraphs?
73
-		if( !empty( $widget_args['wpautop'] ) ) {
74
-			$widget_args['content'] = wpautop( $widget_args['content'] );
73
+		if ( ! empty( $widget_args[ 'wpautop' ] ) ) {
74
+			$widget_args[ 'content' ] = wpautop( $widget_args[ 'content' ] );
75 75
 		}
76 76
 
77
-		$content = $widget_args['content'];
77
+		$content = $widget_args[ 'content' ];
78 78
 
79 79
 		$content = GravityView_Merge_Tags::replace_variables( $content );
80 80
 
@@ -84,10 +84,10 @@  discard block
 block discarded – undo
84 84
 
85 85
 
86 86
 		// Add custom class
87
-		$class = !empty( $widget_args['custom_class'] ) ? $widget_args['custom_class'] : '';
87
+		$class = ! empty( $widget_args[ 'custom_class' ] ) ? $widget_args[ 'custom_class' ] : '';
88 88
 		$class = gravityview_sanitize_html_class( $class );
89 89
 
90
-		echo '<div class="gv-widget-custom-content '.$class.'">'. $content .'</div>';
90
+		echo '<div class="gv-widget-custom-content ' . $class . '">' . $content . '</div>';
91 91
 
92 92
 	}
93 93
 
Please login to merge, or discard this patch.
includes/widgets/class-gravityview-widget-pagination-info.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
 
17 17
 	function __construct() {
18 18
 
19
-		$this->widget_description = __('Summary of the number of visible entries out of the total results.', 'gravityview' );
19
+		$this->widget_description = __( 'Summary of the number of visible entries out of the total results.', 'gravityview' );
20 20
 
21 21
 		$default_values = array(
22 22
 			'header' => 1,
@@ -25,18 +25,18 @@  discard block
 block discarded – undo
25 25
 
26 26
 		$settings = array();
27 27
 
28
-		parent::__construct( __( 'Show Pagination Info', 'gravityview' ) , 'page_info', $default_values, $settings );
28
+		parent::__construct( __( 'Show Pagination Info', 'gravityview' ), 'page_info', $default_values, $settings );
29 29
 	}
30 30
 
31
-	public function render_frontend( $widget_args, $content = '', $context = '') {
31
+	public function render_frontend( $widget_args, $content = '', $context = '' ) {
32 32
 		$gravityview_view = GravityView_View::getInstance();
33 33
 
34
-		if( !$this->pre_render_frontend() ) {
34
+		if ( ! $this->pre_render_frontend() ) {
35 35
 			return;
36 36
 		}
37 37
 
38
-		if( !empty( $widget_args['title'] ) ) {
39
-			echo $widget_args['title'];
38
+		if ( ! empty( $widget_args[ 'title' ] ) ) {
39
+			echo $widget_args[ 'title' ];
40 40
 		}
41 41
 
42 42
 		$pagination_counts = $gravityview_view->getPaginationCounts();
@@ -45,16 +45,16 @@  discard block
 block discarded – undo
45 45
 
46 46
 		$output = '';
47 47
 
48
-		if( ! empty( $pagination_counts ) ) {
48
+		if ( ! empty( $pagination_counts ) ) {
49 49
 
50
-			$first = $pagination_counts['first'];
51
-			$last = $pagination_counts['last'];
52
-			$total = $pagination_counts['total'];
50
+			$first = $pagination_counts[ 'first' ];
51
+			$last = $pagination_counts[ 'last' ];
52
+			$total = $pagination_counts[ 'total' ];
53 53
 
54
-			$class = !empty( $widget_args['custom_class'] ) ? $widget_args['custom_class'] : '';
54
+			$class = ! empty( $widget_args[ 'custom_class' ] ) ? $widget_args[ 'custom_class' ] : '';
55 55
 			$class = gravityview_sanitize_html_class( $class );
56 56
 
57
-			$output = '<div class="gv-widget-pagination '.$class.'"><p>'. sprintf(__( 'Displaying %1$s - %2$s of %3$s', 'gravityview' ), number_format_i18n( $first ), number_format_i18n( $last ), number_format_i18n( $total ) ) . '</p></div>';
57
+			$output = '<div class="gv-widget-pagination ' . $class . '"><p>' . sprintf( __( 'Displaying %1$s - %2$s of %3$s', 'gravityview' ), number_format_i18n( $first ), number_format_i18n( $last ), number_format_i18n( $total ) ) . '</p></div>';
58 58
 		}
59 59
 
60 60
 		/**
Please login to merge, or discard this patch.
includes/class-gravityview-entry-list.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -170,25 +170,25 @@  discard block
 block discarded – undo
170 170
 	public function get_output() {
171 171
 
172 172
 		// No Entries
173
-		if( empty( $this->entries ) ) {
174
-			return '<div class="gv-no-results">'.$this->empty_message.'</div>';
173
+		if ( empty( $this->entries ) ) {
174
+			return '<div class="gv-no-results">' . $this->empty_message . '</div>';
175 175
 		}
176 176
 
177 177
 		$output = '';
178 178
 		$current_entry = GravityView_View::getInstance()->getCurrentEntry();
179 179
 
180
-		$output .= '<'. $this->wrapper_tag .'>';
180
+		$output .= '<' . $this->wrapper_tag . '>';
181 181
 
182
-		foreach( $this->entries as $entry ) {
182
+		foreach ( $this->entries as $entry ) {
183 183
 
184
-			if( $this->skip_entry( $entry, $current_entry ) ) {
184
+			if ( $this->skip_entry( $entry, $current_entry ) ) {
185 185
 				continue;
186 186
 			}
187 187
 
188 188
 			$output .= $this->get_item_output( $entry );
189 189
 		}
190 190
 
191
-		$output .= '</'. $this->wrapper_tag .'>';
191
+		$output .= '</' . $this->wrapper_tag . '>';
192 192
 
193 193
 		/**
194 194
 		 * @filter `gravityview/widget/recent-entries/output` Modify the HTML of the Recent Entries widget output
@@ -211,15 +211,15 @@  discard block
 block discarded – undo
211 211
 	private function skip_entry( $entry, $current_entry ) {
212 212
 
213 213
 		// If skip entry is off, or there's no current entry, return false
214
-		if( empty( $this->skip_current_entry ) || empty( $current_entry ) ) {
214
+		if ( empty( $this->skip_current_entry ) || empty( $current_entry ) ) {
215 215
 			return false;
216 216
 		}
217 217
 
218 218
 		// If in Single or Edit mode, $current_entry will be an array.
219
-		$current_entry_id = is_array( $current_entry ) ? $current_entry['id'] : $current_entry;
219
+		$current_entry_id = is_array( $current_entry ) ? $current_entry[ 'id' ] : $current_entry;
220 220
 
221 221
 		// If the entry ID matches the current entry, yes: skip
222
-		if( $entry['id'] === $current_entry_id ) {
222
+		if ( $entry[ 'id' ] === $current_entry_id ) {
223 223
 			return true;
224 224
 		}
225 225
 
@@ -246,7 +246,7 @@  discard block
 block discarded – undo
246 246
 
247 247
 		$item_output = gravityview_get_link( $link, $this->link_format );
248 248
 
249
-		if( !empty( $this->after_link ) ) {
249
+		if ( ! empty( $this->after_link ) ) {
250 250
 
251 251
 			/**
252 252
 			 * @filter `gravityview/entry-list/after-link` Modify the content displayed after the entry link in an entry list
@@ -255,14 +255,14 @@  discard block
 block discarded – undo
255 255
 			 * @param array $entry Gravity Forms entry array
256 256
 			 * @param GravityView_Entry_List $this The current class instance
257 257
 			 */
258
-			$after_link = apply_filters( 'gravityview/entry-list/after-link', '<div>'.$this->after_link.'</div>', $entry, $this );
258
+			$after_link = apply_filters( 'gravityview/entry-list/after-link', '<div>' . $this->after_link . '</div>', $entry, $this );
259 259
 
260 260
 			$item_output .= $after_link;
261 261
 		}
262 262
 
263 263
 		$item_output = GravityView_API::replace_variables( $item_output, $this->form, $entry );
264 264
 
265
-		$item_output = '<'. $this->item_tag .'>'. $item_output .'</'. $this->item_tag .'>';
265
+		$item_output = '<' . $this->item_tag . '>' . $item_output . '</' . $this->item_tag . '>';
266 266
 
267 267
 		/**
268 268
 		 * @filter `gravityview/entry-list/item` Modify each item's output in an entry list
Please login to merge, or discard this patch.
includes/class-gravityview-settings.php 3 patches
Doc Comments   +1 added lines patch added patch discarded remove patch
@@ -301,6 +301,7 @@
 block discarded – undo
301 301
 	 * Make protected public
302 302
 	 * @inheritDoc
303 303
 	 * @access public
304
+	 * @param string $setting_name
304 305
 	 */
305 306
 	public function get_app_setting( $setting_name ) {
306 307
 
Please login to merge, or discard this patch.
Indentation   +76 added lines, -76 removed lines patch added patch discarded remove patch
@@ -122,10 +122,10 @@  discard block
 block discarded – undo
122 122
 	}
123 123
 
124 124
 	/**
125
-     * Uninstall all traces of GravityView
126
-     *
127
-     * Note: method is public because parent method is public
128
-     *
125
+	 * Uninstall all traces of GravityView
126
+	 *
127
+	 * Note: method is public because parent method is public
128
+	 *
129 129
 	 * @return bool
130 130
 	 */
131 131
 	public function uninstall() {
@@ -137,53 +137,53 @@  discard block
 block discarded – undo
137 137
 		$uninstaller->fire_everything();
138 138
 
139 139
 		/**
140
-         * Set the path so that Gravity Forms can de-activate GravityView
141
-         * @see GFAddOn::uninstall_addon
142
-         * @uses deactivate_plugins()
143
-         */
140
+		 * Set the path so that Gravity Forms can de-activate GravityView
141
+		 * @see GFAddOn::uninstall_addon
142
+		 * @uses deactivate_plugins()
143
+		 */
144 144
 		$this->_path = GRAVITYVIEW_FILE;
145 145
 
146 146
 		return true;
147 147
 	}
148 148
 
149 149
 	/**
150
-     * Get an array of reasons why the plugin might be uninstalled
151
-     *
152
-     * @since 1.17.5
153
-     *
150
+	 * Get an array of reasons why the plugin might be uninstalled
151
+	 *
152
+	 * @since 1.17.5
153
+	 *
154 154
 	 * @return array Array of reasons with the label and followup questions for each uninstall reason
155 155
 	 */
156 156
 	private function get_uninstall_reasons() {
157 157
 
158 158
 		$reasons = array(
159 159
 			'will-continue' => array(
160
-                'label' => esc_html__( 'I am going to continue using GravityView', 'gravityview' ),
161
-            ),
160
+				'label' => esc_html__( 'I am going to continue using GravityView', 'gravityview' ),
161
+			),
162 162
 			'no-longer-need' => array(
163
-                'label' => esc_html__( 'I no longer need GravityView', 'gravityview' ),
164
-            ),
163
+				'label' => esc_html__( 'I no longer need GravityView', 'gravityview' ),
164
+			),
165 165
 			'doesnt-work' => array(
166
-                'label' => esc_html__( 'The plugin doesn\'t work', 'gravityview' ),
167
-            ),
166
+				'label' => esc_html__( 'The plugin doesn\'t work', 'gravityview' ),
167
+			),
168 168
 			'found-other' => array(
169
-                'label' => esc_html__( 'I found a better plugin', 'gravityview' ),
170
-                'followup' => esc_attr__('What plugin you are using, and why?', 'gravityview'),
171
-            ),
169
+				'label' => esc_html__( 'I found a better plugin', 'gravityview' ),
170
+				'followup' => esc_attr__('What plugin you are using, and why?', 'gravityview'),
171
+			),
172 172
 			'other' => array(
173
-                'label' => esc_html__( 'Other', 'gravityview' ),
174
-            ),
173
+				'label' => esc_html__( 'Other', 'gravityview' ),
174
+			),
175 175
 		);
176 176
 
177 177
 		shuffle( $reasons );
178 178
 
179 179
 		return $reasons;
180
-    }
180
+	}
181 181
 
182 182
 	/**
183
-     * Display a feedback form when the plugin is uninstalled
184
-     *
185
-     * @since 1.17.5
186
-     *
183
+	 * Display a feedback form when the plugin is uninstalled
184
+	 *
185
+	 * @since 1.17.5
186
+	 *
187 187
 	 * @return string HTML of the uninstallation form
188 188
 	 */
189 189
 	public function uninstall_form() {
@@ -263,7 +263,7 @@  discard block
 block discarded – undo
263 263
             <h2><?php esc_html_e( 'Why did you uninstall GravityView?', 'gravityview' ); ?></h2>
264 264
             <ul>
265 265
 				<?php
266
-                $reasons = $this->get_uninstall_reasons();
266
+				$reasons = $this->get_uninstall_reasons();
267 267
 				foreach ( $reasons as $reason ) {
268 268
 					printf( '<li><label><input name="reason" type="radio" value="other" data-followup="%s"> %s</label></li>', rgar( $reason, 'followup' ), rgar( $reason, 'label' ) );
269 269
 				}
@@ -431,7 +431,7 @@  discard block
 block discarded – undo
431 431
 		$license_key = self::getSetting('license_key');
432 432
 		if( '' === $license_key ) {
433 433
 			$license_status = 'inactive';
434
-        }
434
+		}
435 435
 		$license_id = empty( $license_key ) ? 'license' : $license_key;
436 436
 
437 437
 		$message = esc_html__('Your GravityView license %s. This means you&rsquo;re missing out on updates and support! %sActivate your license%s or %sget a license here%s.', 'gravityview');
@@ -491,12 +491,12 @@  discard block
 block discarded – undo
491 491
 	}
492 492
 
493 493
 	/**
494
-     * Add tooltip script to app settings page. Not enqueued by Gravity Forms for some reason.
495
-     *
496
-     * @since 1.21.5
497
-     *
498
-     * @see GFAddOn::scripts()
499
-     *
494
+	 * Add tooltip script to app settings page. Not enqueued by Gravity Forms for some reason.
495
+	 *
496
+	 * @since 1.21.5
497
+	 *
498
+	 * @see GFAddOn::scripts()
499
+	 *
500 500
 	 * @return array Array of scripts
501 501
 	 */
502 502
 	public function scripts() {
@@ -505,10 +505,10 @@  discard block
 block discarded – undo
505 505
 		$scripts[] = array(
506 506
 			'handle'  => 'gform_tooltip_init',
507 507
 			'enqueue' => array(
508
-                array(
509
-			        'admin_page' => array( 'app_settings' )
510
-                )
511
-            )
508
+				array(
509
+					'admin_page' => array( 'app_settings' )
510
+				)
511
+			)
512 512
 		);
513 513
 
514 514
 		return $scripts;
@@ -528,8 +528,8 @@  discard block
 block discarded – undo
528 528
 			'version' => GravityView_Plugin::version,
529 529
 			"deps" => array(
530 530
 				'gaddon_form_settings_css',
531
-                'gform_tooltip',
532
-                'gform_font_awesome',
531
+				'gform_tooltip',
532
+				'gform_font_awesome',
533 533
 			),
534 534
 			'enqueue' => array(
535 535
 				array( 'admin_page' => array(
@@ -595,12 +595,12 @@  discard block
 block discarded – undo
595 595
 	}
596 596
 
597 597
 	public function app_settings_tab() {
598
-	    parent::app_settings_tab();
598
+		parent::app_settings_tab();
599 599
 
600 600
 		if ( $this->maybe_uninstall() ) {
601
-            echo $this->uninstall_form();
601
+			echo $this->uninstall_form();
602 602
 		}
603
-    }
603
+	}
604 604
 
605 605
 	/**
606 606
 	 * Make protected public
@@ -723,8 +723,8 @@  discard block
 block discarded – undo
723 723
                     type="' . $field['type'] . '"
724 724
                     name="' . esc_attr( $name ) . '"
725 725
                     value="' . $value . '" ' .
726
-		        implode( ' ', $attributes ) .
727
-		        ' />';
726
+				implode( ' ', $attributes ) .
727
+				' />';
728 728
 
729 729
 		if ( $echo ) {
730 730
 			echo $html;
@@ -950,7 +950,7 @@  discard block
 block discarded – undo
950 950
 					array(
951 951
 						'label' => _x('Show me beta versions if they are available.', 'gravityview'),
952 952
 						'value' => '1',
953
-                        'name'  => 'beta',
953
+						'name'  => 'beta',
954 954
 					),
955 955
 				),
956 956
 				'description'   => __( 'You will have early access to the latest GravityView features and improvements. There may be bugs! If you encounter an issue, help make GravityView better by reporting it!', 'gravityview'),
@@ -975,36 +975,36 @@  discard block
 block discarded – undo
975 975
 		}
976 976
 
977 977
 
978
-        $sections = array(
979
-            array(
980
-                'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __('You are running GravityView version %s', 'gravityview'), GravityView_Plugin::version ) ),
981
-                'fields'      => $fields,
982
-            )
983
-        );
978
+		$sections = array(
979
+			array(
980
+				'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __('You are running GravityView version %s', 'gravityview'), GravityView_Plugin::version ) ),
981
+				'fields'      => $fields,
982
+			)
983
+		);
984 984
 
985
-        // custom 'update settings' button
986
-        $button = array(
987
-            'class' => 'button button-primary button-hero',
988
-            'type'     => 'save',
989
-        );
985
+		// custom 'update settings' button
986
+		$button = array(
987
+			'class' => 'button button-primary button-hero',
988
+			'type'     => 'save',
989
+		);
990 990
 
991 991
 		if( $disabled_attribute ) {
992 992
 			$button['disabled'] = $disabled_attribute;
993 993
 		}
994 994
 
995 995
 
996
-        /**
997
-         * @filter `gravityview/settings/extension/sections` Modify the GravityView settings page
998
-         * Extensions can tap in here to insert their own section and settings.
999
-         * <code>
1000
-         *   $sections[] = array(
1001
-         *      'title' => __( 'GravityView My Extension Settings', 'gravityview' ),
1002
-         *      'fields' => $settings,
1003
-         *   );
1004
-         * </code>
1005
-         * @param array $extension_settings Empty array, ready for extension settings!
1006
-         */
1007
-        $extension_sections = apply_filters( 'gravityview/settings/extension/sections', array() );
996
+		/**
997
+		 * @filter `gravityview/settings/extension/sections` Modify the GravityView settings page
998
+		 * Extensions can tap in here to insert their own section and settings.
999
+		 * <code>
1000
+		 *   $sections[] = array(
1001
+		 *      'title' => __( 'GravityView My Extension Settings', 'gravityview' ),
1002
+		 *      'fields' => $settings,
1003
+		 *   );
1004
+		 * </code>
1005
+		 * @param array $extension_settings Empty array, ready for extension settings!
1006
+		 */
1007
+		$extension_sections = apply_filters( 'gravityview/settings/extension/sections', array() );
1008 1008
 
1009 1009
 		// If there are extensions, add a section for them
1010 1010
 		if ( ! empty( $extension_sections ) ) {
@@ -1017,13 +1017,13 @@  discard block
 block discarded – undo
1017 1017
 				}
1018 1018
 			}
1019 1019
 
1020
-            $k = count( $extension_sections ) - 1 ;
1021
-            $extension_sections[ $k ]['fields'][] = $button;
1020
+			$k = count( $extension_sections ) - 1 ;
1021
+			$extension_sections[ $k ]['fields'][] = $button;
1022 1022
 			$sections = array_merge( $sections, $extension_sections );
1023 1023
 		} else {
1024
-            // add the 'update settings' button to the general section
1025
-            $sections[0]['fields'][] = $button;
1026
-        }
1024
+			// add the 'update settings' button to the general section
1025
+			$sections[0]['fields'][] = $button;
1026
+		}
1027 1027
 
1028 1028
 		return $sections;
1029 1029
 	}
Please login to merge, or discard this patch.
Spacing   +89 added lines, -89 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-if( ! class_exists('GFAddOn') ) {
3
+if ( ! class_exists( 'GFAddOn' ) ) {
4 4
 	return;
5 5
 }
6 6
 
@@ -75,7 +75,7 @@  discard block
 block discarded – undo
75 75
 	 */
76 76
 	public function __construct( $prevent_multiple_instances = '' ) {
77 77
 
78
-		if( $prevent_multiple_instances === 'get_instance' ) {
78
+		if ( $prevent_multiple_instances === 'get_instance' ) {
79 79
 			return parent::__construct();
80 80
 		}
81 81
 
@@ -87,7 +87,7 @@  discard block
 block discarded – undo
87 87
 	 */
88 88
 	public static function get_instance() {
89 89
 
90
-		if( empty( self::$instance ) ) {
90
+		if ( empty( self::$instance ) ) {
91 91
 			self::$instance = new self( 'get_instance' );
92 92
 		}
93 93
 
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 	 */
107 107
 	public function current_user_can_any( $caps ) {
108 108
 
109
-		if( empty( $caps ) ) {
109
+		if ( empty( $caps ) ) {
110 110
 			$caps = array( 'gravityview_full_access' );
111 111
 		}
112 112
 
@@ -167,7 +167,7 @@  discard block
 block discarded – undo
167 167
             ),
168 168
 			'found-other' => array(
169 169
                 'label' => esc_html__( 'I found a better plugin', 'gravityview' ),
170
-                'followup' => esc_attr__('What plugin you are using, and why?', 'gravityview'),
170
+                'followup' => esc_attr__( 'What plugin you are using, and why?', 'gravityview' ),
171 171
             ),
172 172
 			'other' => array(
173 173
                 'label' => esc_html__( 'Other', 'gravityview' ),
@@ -254,7 +254,7 @@  discard block
 block discarded – undo
254 254
                 });
255 255
 
256 256
                 function gv_feedback_append_error_message() {
257
-                    $('#gv-uninstall-thanks').append('<div class="notice error"><?php echo esc_js( __('There was an error sharing your feedback. Sorry! Please email us at [email protected]', 'gravityview' ) ) ?></div>');
257
+                    $('#gv-uninstall-thanks').append('<div class="notice error"><?php echo esc_js( __( 'There was an error sharing your feedback. Sorry! Please email us at [email protected]', 'gravityview' ) ) ?></div>');
258 258
                 }
259 259
             });
260 260
         </script>
@@ -271,15 +271,15 @@  discard block
 block discarded – undo
271 271
             </ul>
272 272
             <div class="gv-followup widefat">
273 273
                 <p><strong><label for="gv-reason-details"><?php esc_html_e( 'Comments', 'gravityview' ); ?></label></strong></p>
274
-                <textarea id="gv-reason-details" name="reason_details" data-default="<?php esc_attr_e('Please share your thoughts about GravityView', 'gravityview') ?>" placeholder="<?php esc_attr_e('Please share your thoughts about GravityView', 'gravityview'); ?>" class="large-text"></textarea>
274
+                <textarea id="gv-reason-details" name="reason_details" data-default="<?php esc_attr_e( 'Please share your thoughts about GravityView', 'gravityview' ) ?>" placeholder="<?php esc_attr_e( 'Please share your thoughts about GravityView', 'gravityview' ); ?>" class="large-text"></textarea>
275 275
             </div>
276 276
             <div class="scale-description">
277
-                <p><strong><?php esc_html_e('How likely are you to recommend GravityView?', 'gravityview' ); ?></strong></p>
277
+                <p><strong><?php esc_html_e( 'How likely are you to recommend GravityView?', 'gravityview' ); ?></strong></p>
278 278
                 <ul class="inline">
279 279
 					<?php
280 280
 					$i = 0;
281
-					while( $i < 11 ) {
282
-						echo '<li class="inline number-scale"><label><input name="likely_to_refer" id="likely_to_refer_'.$i.'" value="'.$i.'" type="radio"> '.$i.'</label></li>';
281
+					while ( $i < 11 ) {
282
+						echo '<li class="inline number-scale"><label><input name="likely_to_refer" id="likely_to_refer_' . $i . '" value="' . $i . '" type="radio"> ' . $i . '</label></li>';
283 283
 						$i++;
284 284
 					}
285 285
 					?>
@@ -288,7 +288,7 @@  discard block
 block discarded – undo
288 288
             </div>
289 289
 
290 290
             <div class="gv-form-field-wrapper">
291
-                <label><input type="checkbox" class="checkbox" name="follow_up_with_me" value="1" /> <?php esc_html_e('Please follow up with me about my feedback', 'gravityview'); ?></label>
291
+                <label><input type="checkbox" class="checkbox" name="follow_up_with_me" value="1" /> <?php esc_html_e( 'Please follow up with me about my feedback', 'gravityview' ); ?></label>
292 292
             </div>
293 293
 
294 294
             <div class="submit">
@@ -302,7 +302,7 @@  discard block
 block discarded – undo
302 302
         <div id="gv-uninstall-thanks" class="notice notice-large notice-updated below-h2" style="display:none;">
303 303
             <h3 class="notice-title"><?php esc_html_e( 'Thank you for using GravityView!', 'gravityview' ); ?></h3>
304 304
             <p><?php echo gravityview_get_floaty(); ?>
305
-				<?php echo make_clickable( esc_html__('Your feedback helps us improve GravityView. If you have any questions or comments, email us: [email protected]', 'gravityview' ) ); ?>
305
+				<?php echo make_clickable( esc_html__( 'Your feedback helps us improve GravityView. If you have any questions or comments, email us: [email protected]', 'gravityview' ) ); ?>
306 306
             </p>
307 307
             <div class="wp-clearfix"></div>
308 308
         </div>
@@ -376,7 +376,7 @@  discard block
 block discarded – undo
376 376
 		add_filter( 'gform_addon_app_settings_menu_gravityview', array( $this, 'modify_app_settings_menu_title' ) );
377 377
 
378 378
 		/** @since 1.7.6 */
379
-		add_action('network_admin_menu', array( $this, 'add_network_menu' ) );
379
+		add_action( 'network_admin_menu', array( $this, 'add_network_menu' ) );
380 380
 
381 381
 		parent::init_admin();
382 382
 	}
@@ -390,7 +390,7 @@  discard block
 block discarded – undo
390 390
 	 */
391 391
 	public function modify_app_settings_menu_title( $setting_tabs ) {
392 392
 
393
-		$setting_tabs[0]['label'] = __( 'GravityView Settings', 'gravityview');
393
+		$setting_tabs[ 0 ][ 'label' ] = __( 'GravityView Settings', 'gravityview' );
394 394
 
395 395
 		return $setting_tabs;
396 396
 	}
@@ -407,11 +407,11 @@  discard block
 block discarded – undo
407 407
 	 */
408 408
 	private function _load_license_handler() {
409 409
 
410
-		if( !empty( $this->License_Handler ) ) {
410
+		if ( ! empty( $this->License_Handler ) ) {
411 411
 			return;
412 412
 		}
413 413
 
414
-		require_once( GRAVITYVIEW_DIR . 'includes/class-gv-license-handler.php');
414
+		require_once( GRAVITYVIEW_DIR . 'includes/class-gv-license-handler.php' );
415 415
 
416 416
 		$this->License_Handler = GV_License_Handler::get_instance( $this );
417 417
 	}
@@ -423,42 +423,42 @@  discard block
 block discarded – undo
423 423
 	function license_key_notice() {
424 424
 
425 425
 		// Only show on GravityView pages
426
-		if( ! gravityview_is_admin_page() ) {
426
+		if ( ! gravityview_is_admin_page() ) {
427 427
 			return;
428 428
 		}
429 429
 
430
-		$license_status = self::getSetting('license_key_status');
431
-		$license_key = self::getSetting('license_key');
432
-		if( '' === $license_key ) {
430
+		$license_status = self::getSetting( 'license_key_status' );
431
+		$license_key = self::getSetting( 'license_key' );
432
+		if ( '' === $license_key ) {
433 433
 			$license_status = 'inactive';
434 434
         }
435 435
 		$license_id = empty( $license_key ) ? 'license' : $license_key;
436 436
 
437
-		$message = esc_html__('Your GravityView license %s. This means you&rsquo;re missing out on updates and support! %sActivate your license%s or %sget a license here%s.', 'gravityview');
437
+		$message = esc_html__( 'Your GravityView license %s. This means you&rsquo;re missing out on updates and support! %sActivate your license%s or %sget a license here%s.', 'gravityview' );
438 438
 
439 439
 		/**
440 440
 		 * I wanted to remove the period from after the buttons in the string,
441 441
 		 * but didn't want to mess up the translation strings for the translators.
442 442
 		 */
443 443
 		$message = mb_substr( $message, 0, mb_strlen( $message ) - 1 );
444
-		$title = __('Inactive License', 'gravityview');
444
+		$title = __( 'Inactive License', 'gravityview' );
445 445
 		$status = '';
446 446
 		$update_below = false;
447 447
 		$primary_button_link = admin_url( 'edit.php?post_type=gravityview&amp;page=gravityview_settings' );
448 448
 		switch ( $license_status ) {
449 449
 			/** @since 1.17 */
450 450
 			case 'expired':
451
-				$title = __('Expired License', 'gravityview');
451
+				$title = __( 'Expired License', 'gravityview' );
452 452
 				$status = 'expired';
453
-				$message = $this->get_license_handler()->strings( 'expired', self::getSetting('license_key_response') );
453
+				$message = $this->get_license_handler()->strings( 'expired', self::getSetting( 'license_key_response' ) );
454 454
 				break;
455 455
 			case 'invalid':
456
-				$title = __('Invalid License', 'gravityview');
457
-				$status = __('is invalid', 'gravityview');
456
+				$title = __( 'Invalid License', 'gravityview' );
457
+				$status = __( 'is invalid', 'gravityview' );
458 458
 				break;
459 459
 			case 'deactivated':
460
-				$status = __('is inactive', 'gravityview');
461
-				$update_below = __('Activate your license key below.', 'gravityview');
460
+				$status = __( 'is inactive', 'gravityview' );
461
+				$update_below = __( 'Activate your license key below.', 'gravityview' );
462 462
 				break;
463 463
 			/** @noinspection PhpMissingBreakStatementInspection */
464 464
 			case '':
@@ -466,27 +466,27 @@  discard block
 block discarded – undo
466 466
 				// break intentionally left blank
467 467
 			case 'inactive':
468 468
 			case 'site_inactive':
469
-				$status = __('has not been activated', 'gravityview');
470
-				$update_below = __('Activate your license key below.', 'gravityview');
469
+				$status = __( 'has not been activated', 'gravityview' );
470
+				$update_below = __( 'Activate your license key below.', 'gravityview' );
471 471
 				break;
472 472
 		}
473
-		$url = 'https://gravityview.co/pricing/?utm_source=admin_notice&utm_medium=admin&utm_content='.$license_status.'&utm_campaign=Admin%20Notice';
473
+		$url = 'https://gravityview.co/pricing/?utm_source=admin_notice&utm_medium=admin&utm_content=' . $license_status . '&utm_campaign=Admin%20Notice';
474 474
 
475 475
 		// Show a different notice on settings page for inactive licenses (hide the buttons)
476
-		if( $update_below && gravityview_is_admin_page( '', 'settings' ) ) {
476
+		if ( $update_below && gravityview_is_admin_page( '', 'settings' ) ) {
477 477
 			$message = sprintf( $message, $status, '<div class="hidden">', '', '', '</div><a href="#" onclick="jQuery(\'#license_key\').focus(); return false;">' . $update_below . '</a>' );
478 478
 		} else {
479 479
 			$message = sprintf( $message, $status, "\n\n" . '<a href="' . esc_url( $primary_button_link ) . '" class="button button-primary">', '</a>', '<a href="' . esc_url( $url ) . '" class="button button-secondary">', '</a>' );
480 480
 		}
481 481
 
482
-		if( !empty( $status ) ) {
482
+		if ( ! empty( $status ) ) {
483 483
 			GravityView_Admin_Notices::add_notice( array(
484 484
 				'message' => $message,
485 485
 				'class'	=> 'updated',
486 486
 				'title' => $title,
487 487
 				'cap' => 'gravityview_edit_settings',
488
-				'dismiss' => sha1( $license_status.'_'.$license_id ),
489
-			));
488
+				'dismiss' => sha1( $license_status . '_' . $license_id ),
489
+			) );
490 490
 		}
491 491
 	}
492 492
 
@@ -502,7 +502,7 @@  discard block
 block discarded – undo
502 502
 	public function scripts() {
503 503
 		$scripts = parent::scripts();
504 504
 
505
-		$scripts[] = array(
505
+		$scripts[ ] = array(
506 506
 			'handle'  => 'gform_tooltip_init',
507 507
 			'enqueue' => array(
508 508
                 array(
@@ -522,7 +522,7 @@  discard block
 block discarded – undo
522 522
 
523 523
 		$styles = parent::styles();
524 524
 
525
-		$styles[] = array(
525
+		$styles[ ] = array(
526 526
 			'handle'  => 'gravityview_settings',
527 527
 			'src'     => plugins_url( 'assets/css/admin-settings.css', GRAVITYVIEW_FILE ),
528 528
 			'version' => GravityView_Plugin::version,
@@ -547,7 +547,7 @@  discard block
 block discarded – undo
547 547
 	 * @return void
548 548
 	 */
549 549
 	public function add_network_menu() {
550
-		if( GravityView_Plugin::is_network_activated() ) {
550
+		if ( GravityView_Plugin::is_network_activated() ) {
551 551
 			add_menu_page( __( 'Settings', 'gravityview' ), __( 'GravityView', 'gravityview' ), $this->_capabilities_app_settings, "{$this->_slug}_settings", array( $this, 'app_tab_page' ), 'none' );
552 552
 		}
553 553
 	}
@@ -564,7 +564,7 @@  discard block
 block discarded – undo
564 564
 		 * If multisite and not network admin, we don't want the settings to show.
565 565
 		 * @since 1.7.6
566 566
 		 */
567
-		$show_submenu = !is_multisite() ||  is_main_site() || !GravityView_Plugin::is_network_activated() || ( is_network_admin() && GravityView_Plugin::is_network_activated() );
567
+		$show_submenu = ! is_multisite() || is_main_site() || ! GravityView_Plugin::is_network_activated() || ( is_network_admin() && GravityView_Plugin::is_network_activated() );
568 568
 
569 569
 		/**
570 570
 		 * Override whether to show the Settings menu on a per-blog basis.
@@ -573,7 +573,7 @@  discard block
 block discarded – undo
573 573
 		 */
574 574
 		$show_submenu = apply_filters( 'gravityview/show-settings-menu', $show_submenu );
575 575
 
576
-		if( $show_submenu ) {
576
+		if ( $show_submenu ) {
577 577
 			add_submenu_page( 'edit.php?post_type=gravityview', __( 'Settings', 'gravityview' ), __( 'Settings', 'gravityview' ), $this->_capabilities_app_settings, $this->_slug . '_settings', array( $this, 'app_tab_page' ) );
578 578
 		}
579 579
 	}
@@ -612,7 +612,7 @@  discard block
 block discarded – undo
612 612
 		/**
613 613
 		 * Backward compatibility with Redux
614 614
 		 */
615
-		if( $setting_name === 'license' ) {
615
+		if ( $setting_name === 'license' ) {
616 616
 			return array(
617 617
 				'license' => parent::get_app_setting( 'license_key' ),
618 618
 				'status' => parent::get_app_setting( 'license_key_status' ),
@@ -676,7 +676,7 @@  discard block
 block discarded – undo
676 676
 
677 677
 		$return = $text . $activation;
678 678
 
679
-		if( $echo ) {
679
+		if ( $echo ) {
680 680
 			echo $return;
681 681
 		}
682 682
 
@@ -703,15 +703,15 @@  discard block
 block discarded – undo
703 703
 	 */
704 704
 	public function settings_submit( $field, $echo = true ) {
705 705
 
706
-		$field['type']  = ( isset($field['type']) && in_array( $field['type'], array('submit','reset','button') ) ) ? $field['type'] : 'submit';
706
+		$field[ 'type' ] = ( isset( $field[ 'type' ] ) && in_array( $field[ 'type' ], array( 'submit', 'reset', 'button' ) ) ) ? $field[ 'type' ] : 'submit';
707 707
 
708 708
 		$attributes    = $this->get_field_attributes( $field );
709 709
 		$default_value = rgar( $field, 'value' ) ? rgar( $field, 'value' ) : rgar( $field, 'default_value' );
710
-		$value         = $this->get_setting( $field['name'], $default_value );
710
+		$value         = $this->get_setting( $field[ 'name' ], $default_value );
711 711
 
712 712
 
713
-		$attributes['class'] = isset( $attributes['class'] ) ? esc_attr( $attributes['class'] ) : 'button-primary gfbutton';
714
-		$name    = ( $field['name'] === 'gform-settings-save' ) ? $field['name'] : '_gaddon_setting_'.$field['name'];
713
+		$attributes[ 'class' ] = isset( $attributes[ 'class' ] ) ? esc_attr( $attributes[ 'class' ] ) : 'button-primary gfbutton';
714
+		$name = ( $field[ 'name' ] === 'gform-settings-save' ) ? $field[ 'name' ] : '_gaddon_setting_' . $field[ 'name' ];
715 715
 
716 716
 		if ( empty( $value ) ) {
717 717
 			$value = __( 'Update Settings', 'gravityview' );
@@ -720,7 +720,7 @@  discard block
 block discarded – undo
720 720
 		$attributes = $this->get_field_attributes( $field );
721 721
 
722 722
 		$html = '<input
723
-                    type="' . $field['type'] . '"
723
+                    type="' . $field[ 'type' ] . '"
724 724
                     name="' . esc_attr( $name ) . '"
725 725
                     value="' . $value . '" ' .
726 726
 		        implode( ' ', $attributes ) .
@@ -742,12 +742,12 @@  discard block
 block discarded – undo
742 742
 	 * @return string
743 743
 	 */
744 744
 	public function settings_save( $field, $echo = true ) {
745
-		$field['type']  = 'submit';
746
-		$field['name']  = 'gform-settings-save';
747
-		$field['class'] = isset( $field['class'] ) ? $field['class'] : 'button-primary gfbutton';
745
+		$field[ 'type' ]  = 'submit';
746
+		$field[ 'name' ]  = 'gform-settings-save';
747
+		$field[ 'class' ] = isset( $field[ 'class' ] ) ? $field[ 'class' ] : 'button-primary gfbutton';
748 748
 
749 749
 		if ( ! rgar( $field, 'value' ) ) {
750
-			$field['value'] = __( 'Update Settings', 'gravityview' );
750
+			$field[ 'value' ] = __( 'Update Settings', 'gravityview' );
751 751
 		}
752 752
 
753 753
 		$output = $this->settings_submit( $field, false );
@@ -756,7 +756,7 @@  discard block
 block discarded – undo
756 756
 		$this->app_settings_uninstall_tab();
757 757
 		$output .= ob_get_clean();
758 758
 
759
-		if( $echo ) {
759
+		if ( $echo ) {
760 760
 			echo $output;
761 761
 		}
762 762
 
@@ -774,8 +774,8 @@  discard block
 block discarded – undo
774 774
 		parent::single_setting_label( $field );
775 775
 
776 776
 		// Added by GravityView
777
-		if ( isset( $field['description'] ) ) {
778
-			echo '<span class="description">'. $field['description'] .'</span>';
777
+		if ( isset( $field[ 'description' ] ) ) {
778
+			echo '<span class="description">' . $field[ 'description' ] . '</span>';
779 779
 		}
780 780
 
781 781
 	}
@@ -838,11 +838,11 @@  discard block
 block discarded – undo
838 838
 
839 839
 		// If the posted key doesn't match the activated/deactivated key (set using the Activate License button, AJAX response),
840 840
 		// then we assume it's changed. If it's changed, unset the status and the previous response.
841
-		if( $local_key !== $response_key ) {
841
+		if ( $local_key !== $response_key ) {
842 842
 
843
-			unset( $posted_settings['license_key_response'] );
844
-			unset( $posted_settings['license_key_status'] );
845
-			GFCommon::add_error_message( __('The license key you entered has been saved, but not activated. Please activate the license.', 'gravityview' ) );
843
+			unset( $posted_settings[ 'license_key_response' ] );
844
+			unset( $posted_settings[ 'license_key_status' ] );
845
+			GFCommon::add_error_message( __( 'The license key you entered has been saved, but not activated. Please activate the license.', 'gravityview' ) );
846 846
 		}
847 847
 
848 848
 		return $posted_settings;
@@ -877,25 +877,25 @@  discard block
 block discarded – undo
877 877
 				'label'             => __( 'License Key', 'gravityview' ),
878 878
 				'description'          => __( 'Enter the license key that was sent to you on purchase. This enables plugin updates &amp; support.', 'gravityview' ) . $this->get_license_handler()->license_details( $this->get_app_setting( 'license_key_response' ) ),
879 879
 				'type'              => 'edd_license',
880
-				'data-pending-text' => __('Verifying license&hellip;', 'gravityview'),
881
-				'default_value'           => $default_settings['license_key'],
880
+				'data-pending-text' => __( 'Verifying license&hellip;', 'gravityview' ),
881
+				'default_value'           => $default_settings[ 'license_key' ],
882 882
 				'class'             => ( '' == $this->get_app_setting( 'license_key' ) ) ? 'activate code regular-text edd-license-key' : 'deactivate code regular-text edd-license-key',
883 883
 			),
884 884
 			array(
885 885
 				'name'       => 'license_key_response',
886
-				'default_value'  => $default_settings['license_key_response'],
886
+				'default_value'  => $default_settings[ 'license_key_response' ],
887 887
 				'type'     => 'hidden',
888 888
 			),
889 889
 			array(
890 890
 				'name'       => 'license_key_status',
891
-				'default_value'  => $default_settings['license_key_status'],
891
+				'default_value'  => $default_settings[ 'license_key_status' ],
892 892
 				'type'     => 'hidden',
893 893
 			),
894 894
 			array(
895 895
 				'name'       => 'support-email',
896 896
 				'type'     => 'text',
897 897
 				'validate' => 'email',
898
-				'default_value'  => $default_settings['support-email'],
898
+				'default_value'  => $default_settings[ 'support-email' ],
899 899
 				'label'    => __( 'Support Email', 'gravityview' ),
900 900
 				'description' => __( 'In order to provide responses to your support requests, please provide your email address.', 'gravityview' ),
901 901
 				'class'    => 'code regular-text',
@@ -907,53 +907,53 @@  discard block
 block discarded – undo
907 907
 				'name'         => 'support_port',
908 908
 				'type'       => 'radio',
909 909
 				'label'      => __( 'Show Support Port?', 'gravityview' ),
910
-				'default_value'    => $default_settings['support_port'],
910
+				'default_value'    => $default_settings[ 'support_port' ],
911 911
 				'horizontal' => 1,
912 912
 				'choices'    => array(
913 913
 					array(
914
-						'label' => _x('Show', 'Setting: Show or Hide', 'gravityview'),
914
+						'label' => _x( 'Show', 'Setting: Show or Hide', 'gravityview' ),
915 915
 						'value' => '1',
916 916
 					),
917 917
 					array(
918
-						'label' => _x('Hide', 'Setting: Show or Hide', 'gravityview'),
918
+						'label' => _x( 'Hide', 'Setting: Show or Hide', 'gravityview' ),
919 919
 						'value' => '0',
920 920
 					),
921 921
 				),
922
-				'tooltip' => '<p><img src="' . esc_url_raw( plugins_url('assets/images/beacon.png', GRAVITYVIEW_FILE ) ) . '" alt="' . esc_attr__( 'The Support Port looks like this.', 'gravityview' ) . '" class="alignright" style="max-width:40px; margin:.5em;" />' . esc_html__('The Support Port provides quick access to how-to articles and tutorials. For administrators, it also makes it easy to contact support.', 'gravityview') . '</p>',
922
+				'tooltip' => '<p><img src="' . esc_url_raw( plugins_url( 'assets/images/beacon.png', GRAVITYVIEW_FILE ) ) . '" alt="' . esc_attr__( 'The Support Port looks like this.', 'gravityview' ) . '" class="alignright" style="max-width:40px; margin:.5em;" />' . esc_html__( 'The Support Port provides quick access to how-to articles and tutorials. For administrators, it also makes it easy to contact support.', 'gravityview' ) . '</p>',
923 923
 				'description'   => __( 'Show the Support Port on GravityView pages?', 'gravityview' ),
924 924
 			),
925 925
 			array(
926 926
 				'name'         => 'no-conflict-mode',
927 927
 				'type'       => 'radio',
928 928
 				'label'      => __( 'No-Conflict Mode', 'gravityview' ),
929
-				'default_value'    => $default_settings['no-conflict-mode'],
929
+				'default_value'    => $default_settings[ 'no-conflict-mode' ],
930 930
 				'horizontal' => 1,
931 931
 				'choices'    => array(
932 932
 					array(
933
-						'label' => _x('On', 'Setting: On or off', 'gravityview'),
933
+						'label' => _x( 'On', 'Setting: On or off', 'gravityview' ),
934 934
 						'value' => '1',
935 935
 					),
936 936
 					array(
937
-						'label' => _x('Off', 'Setting: On or off', 'gravityview'),
937
+						'label' => _x( 'Off', 'Setting: On or off', 'gravityview' ),
938 938
 						'value' => '0',
939 939
 					),
940 940
 				),
941
-				'description'   => __( 'Set this to ON to prevent extraneous scripts and styles from being printed on GravityView admin pages, reducing conflicts with other plugins and themes.', 'gravityview' ) . ' ' . __('If your Edit View tabs are ugly, enable this setting.', 'gravityview'),
941
+				'description'   => __( 'Set this to ON to prevent extraneous scripts and styles from being printed on GravityView admin pages, reducing conflicts with other plugins and themes.', 'gravityview' ) . ' ' . __( 'If your Edit View tabs are ugly, enable this setting.', 'gravityview' ),
942 942
 			),
943 943
 			array(
944 944
 				'name'       => 'beta',
945 945
 				'type'       => 'checkbox',
946 946
 				'label'      => __( 'Become a Beta Tester', 'gravityview' ),
947
-				'default_value'    => $default_settings['beta'],
947
+				'default_value'    => $default_settings[ 'beta' ],
948 948
 				'horizontal' => 1,
949 949
 				'choices'    => array(
950 950
 					array(
951
-						'label' => _x('Show me beta versions if they are available.', 'gravityview'),
951
+						'label' => _x( 'Show me beta versions if they are available.', 'gravityview' ),
952 952
 						'value' => '1',
953 953
                         'name'  => 'beta',
954 954
 					),
955 955
 				),
956
-				'description'   => __( 'You will have early access to the latest GravityView features and improvements. There may be bugs! If you encounter an issue, help make GravityView better by reporting it!', 'gravityview'),
956
+				'description'   => __( 'You will have early access to the latest GravityView features and improvements. There may be bugs! If you encounter an issue, help make GravityView better by reporting it!', 'gravityview' ),
957 957
 			),
958 958
 		) );
959 959
 
@@ -964,20 +964,20 @@  discard block
 block discarded – undo
964 964
 		 * @since 1.7.4
965 965
 		 */
966 966
 		foreach ( $fields as &$field ) {
967
-			$field['name']          = isset( $field['name'] ) ? $field['name'] : rgget('id', $field );
968
-			$field['label']         = isset( $field['label'] ) ? $field['label'] : rgget('title', $field );
969
-			$field['default_value'] = isset( $field['default_value'] ) ? $field['default_value'] : rgget('default', $field );
970
-			$field['description']   = isset( $field['description'] ) ? $field['description'] : rgget('subtitle', $field );
967
+			$field[ 'name' ]          = isset( $field[ 'name' ] ) ? $field[ 'name' ] : rgget( 'id', $field );
968
+			$field[ 'label' ]         = isset( $field[ 'label' ] ) ? $field[ 'label' ] : rgget( 'title', $field );
969
+			$field[ 'default_value' ] = isset( $field[ 'default_value' ] ) ? $field[ 'default_value' ] : rgget( 'default', $field );
970
+			$field[ 'description' ]   = isset( $field[ 'description' ] ) ? $field[ 'description' ] : rgget( 'subtitle', $field );
971 971
 
972
-			if( $disabled_attribute ) {
973
-				$field['disabled']  = $disabled_attribute;
972
+			if ( $disabled_attribute ) {
973
+				$field[ 'disabled' ] = $disabled_attribute;
974 974
 			}
975 975
 		}
976 976
 
977 977
 
978 978
         $sections = array(
979 979
             array(
980
-                'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __('You are running GravityView version %s', 'gravityview'), GravityView_Plugin::version ) ),
980
+                'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __( 'You are running GravityView version %s', 'gravityview' ), GravityView_Plugin::version ) ),
981 981
                 'fields'      => $fields,
982 982
             )
983 983
         );
@@ -988,8 +988,8 @@  discard block
 block discarded – undo
988 988
             'type'     => 'save',
989 989
         );
990 990
 
991
-		if( $disabled_attribute ) {
992
-			$button['disabled'] = $disabled_attribute;
991
+		if ( $disabled_attribute ) {
992
+			$button[ 'disabled' ] = $disabled_attribute;
993 993
 		}
994 994
 
995 995
 
@@ -1009,20 +1009,20 @@  discard block
 block discarded – undo
1009 1009
 		// If there are extensions, add a section for them
1010 1010
 		if ( ! empty( $extension_sections ) ) {
1011 1011
 
1012
-			if( $disabled_attribute ) {
1012
+			if ( $disabled_attribute ) {
1013 1013
 				foreach ( $extension_sections as &$section ) {
1014
-					foreach ( $section['fields'] as &$field ) {
1015
-						$field['disabled'] = $disabled_attribute;
1014
+					foreach ( $section[ 'fields' ] as &$field ) {
1015
+						$field[ 'disabled' ] = $disabled_attribute;
1016 1016
 					}
1017 1017
 				}
1018 1018
 			}
1019 1019
 
1020
-            $k = count( $extension_sections ) - 1 ;
1021
-            $extension_sections[ $k ]['fields'][] = $button;
1020
+            $k = count( $extension_sections ) - 1;
1021
+            $extension_sections[ $k ][ 'fields' ][ ] = $button;
1022 1022
 			$sections = array_merge( $sections, $extension_sections );
1023 1023
 		} else {
1024 1024
             // add the 'update settings' button to the general section
1025
-            $sections[0]['fields'][] = $button;
1025
+            $sections[ 0 ][ 'fields' ][ ] = $button;
1026 1026
         }
1027 1027
 
1028 1028
 		return $sections;
Please login to merge, or discard this patch.
includes/extensions/edit-entry/class-edit-entry-render.php 3 patches
Braces   +2 added lines, -4 removed lines patch added patch discarded remove patch
@@ -613,7 +613,7 @@  discard block
 block discarded – undo
613 613
 
614 614
             $back_link = esc_url( remove_query_arg( array( 'page', 'view', 'edit' ) ) );
615 615
 
616
-            if( ! $this->is_valid ){
616
+            if( ! $this->is_valid ) {
617 617
 
618 618
                 // Keeping this compatible with Gravity Forms.
619 619
                 $validation_message = "<div class='validation_error'>" . __('There was a problem with your submission.', 'gravityview') . " " . __('Errors have been highlighted below.', 'gravityview') . "</div>";
@@ -1620,9 +1620,7 @@  discard block
 block discarded – undo
1620 1620
         // Verify
1621 1621
         else if( ! $this->is_edit_entry() ) {
1622 1622
             $valid = false;
1623
-        }
1624
-
1625
-        else {
1623
+        } else {
1626 1624
             $valid = wp_verify_nonce( $_GET['edit'], self::$nonce_key );
1627 1625
         }
1628 1626
 
Please login to merge, or discard this patch.
Indentation   +1594 added lines, -1594 removed lines patch added patch discarded remove patch
@@ -10,20 +10,20 @@  discard block
 block discarded – undo
10 10
  */
11 11
 
12 12
 if ( ! defined( 'WPINC' ) ) {
13
-    die;
13
+	die;
14 14
 }
15 15
 
16 16
 class GravityView_Edit_Entry_Render {
17 17
 
18
-    /**
19
-     * @var GravityView_Edit_Entry
20
-     */
21
-    protected $loader;
18
+	/**
19
+	 * @var GravityView_Edit_Entry
20
+	 */
21
+	protected $loader;
22 22
 
23 23
 	/**
24 24
 	 * @var string String used to generate unique nonce for the entry/form/view combination. Allows access to edit page.
25 25
 	 */
26
-    static $nonce_key;
26
+	static $nonce_key;
27 27
 
28 28
 	/**
29 29
 	 * @since 1.9
@@ -37,12 +37,12 @@  discard block
 block discarded – undo
37 37
 	 */
38 38
 	private static $supports_save_and_continue = false;
39 39
 
40
-    /**
41
-     * Gravity Forms entry array
42
-     *
43
-     * @var array
44
-     */
45
-    public $entry;
40
+	/**
41
+	 * Gravity Forms entry array
42
+	 *
43
+	 * @var array
44
+	 */
45
+	public $entry;
46 46
 
47 47
 	/**
48 48
 	 * Gravity Forms entry array (it won't get changed during this class lifecycle)
@@ -51,134 +51,134 @@  discard block
 block discarded – undo
51 51
 	 */
52 52
 	private static $original_entry = array();
53 53
 
54
-    /**
55
-     * Gravity Forms form array (GravityView modifies the content through this class lifecycle)
56
-     *
57
-     * @var array
58
-     */
54
+	/**
55
+	 * Gravity Forms form array (GravityView modifies the content through this class lifecycle)
56
+	 *
57
+	 * @var array
58
+	 */
59 59
 	public $form;
60 60
 
61
-    /**
62
-     * Gravity Forms form array (it won't get changed during this class lifecycle)
63
-     * @since 1.16.2.1
64
-     * @var array
65
-     */
66
-    private static $original_form;
67
-
68
-    /**
69
-     * Gravity Forms form array after the form validation process
70
-     * @since 1.13
71
-     * @var array
72
-     */
61
+	/**
62
+	 * Gravity Forms form array (it won't get changed during this class lifecycle)
63
+	 * @since 1.16.2.1
64
+	 * @var array
65
+	 */
66
+	private static $original_form;
67
+
68
+	/**
69
+	 * Gravity Forms form array after the form validation process
70
+	 * @since 1.13
71
+	 * @var array
72
+	 */
73 73
 	public $form_after_validation = null;
74 74
 
75
-    /**
76
-     * Hold an array of GF field objects that have calculation rules
77
-     * @var array
78
-     */
75
+	/**
76
+	 * Hold an array of GF field objects that have calculation rules
77
+	 * @var array
78
+	 */
79 79
 	public $fields_with_calculation = array();
80 80
 
81
-    /**
82
-     * Gravity Forms form id
83
-     *
84
-     * @var int
85
-     */
81
+	/**
82
+	 * Gravity Forms form id
83
+	 *
84
+	 * @var int
85
+	 */
86 86
 	public $form_id;
87 87
 
88
-    /**
89
-     * ID of the current view
90
-     *
91
-     * @var int
92
-     */
88
+	/**
89
+	 * ID of the current view
90
+	 *
91
+	 * @var int
92
+	 */
93 93
 	public $view_id;
94 94
 
95
-    /**
96
-     * Updated entry is valid (GF Validation object)
97
-     *
98
-     * @var array
99
-     */
95
+	/**
96
+	 * Updated entry is valid (GF Validation object)
97
+	 *
98
+	 * @var array
99
+	 */
100 100
 	public $is_valid = NULL;
101 101
 
102
-    function __construct( GravityView_Edit_Entry $loader ) {
103
-        $this->loader = $loader;
104
-    }
102
+	function __construct( GravityView_Edit_Entry $loader ) {
103
+		$this->loader = $loader;
104
+	}
105 105
 
106
-    function load() {
106
+	function load() {
107 107
 
108
-        /** @define "GRAVITYVIEW_DIR" "../../../" */
109
-        include_once( GRAVITYVIEW_DIR .'includes/class-admin-approve-entries.php' );
108
+		/** @define "GRAVITYVIEW_DIR" "../../../" */
109
+		include_once( GRAVITYVIEW_DIR .'includes/class-admin-approve-entries.php' );
110 110
 
111
-        // Don't display an embedded form when editing an entry
112
-        add_action( 'wp_head', array( $this, 'prevent_render_form' ) );
113
-        add_action( 'wp_footer', array( $this, 'prevent_render_form' ) );
111
+		// Don't display an embedded form when editing an entry
112
+		add_action( 'wp_head', array( $this, 'prevent_render_form' ) );
113
+		add_action( 'wp_footer', array( $this, 'prevent_render_form' ) );
114 114
 
115
-        // Stop Gravity Forms processing what is ours!
116
-        add_filter( 'wp', array( $this, 'prevent_maybe_process_form'), 8 );
115
+		// Stop Gravity Forms processing what is ours!
116
+		add_filter( 'wp', array( $this, 'prevent_maybe_process_form'), 8 );
117 117
 
118
-        add_filter( 'gravityview_is_edit_entry', array( $this, 'is_edit_entry') );
118
+		add_filter( 'gravityview_is_edit_entry', array( $this, 'is_edit_entry') );
119 119
 
120
-        add_action( 'gravityview_edit_entry', array( $this, 'init' ) );
120
+		add_action( 'gravityview_edit_entry', array( $this, 'init' ) );
121 121
 
122
-        // Disable conditional logic if needed (since 1.9)
123
-        add_filter( 'gform_has_conditional_logic', array( $this, 'manage_conditional_logic' ), 10, 2 );
122
+		// Disable conditional logic if needed (since 1.9)
123
+		add_filter( 'gform_has_conditional_logic', array( $this, 'manage_conditional_logic' ), 10, 2 );
124 124
 
125
-        // Make sure GF doesn't validate max files (since 1.9)
126
-        add_filter( 'gform_plupload_settings', array( $this, 'modify_fileupload_settings' ), 10, 3 );
125
+		// Make sure GF doesn't validate max files (since 1.9)
126
+		add_filter( 'gform_plupload_settings', array( $this, 'modify_fileupload_settings' ), 10, 3 );
127 127
 
128
-        // Add fields expected by GFFormDisplay::validate()
129
-        add_filter( 'gform_pre_validation', array( $this, 'gform_pre_validation') );
128
+		// Add fields expected by GFFormDisplay::validate()
129
+		add_filter( 'gform_pre_validation', array( $this, 'gform_pre_validation') );
130 130
 
131 131
 		// Fix multiselect value for GF 2.2
132 132
 		add_filter( 'gravityview/edit_entry/field_value_multiselect', array( $this, 'fix_multiselect_value_serialization' ), 10, 3 );
133
-    }
134
-
135
-    /**
136
-     * Don't show any forms embedded on a page when GravityView is in Edit Entry mode
137
-     *
138
-     * Adds a `__return_empty_string` filter on the Gravity Forms shortcode on the `wp_head` action
139
-     * And then removes it on the `wp_footer` action
140
-     *
141
-     * @since 1.16.1
142
-     *
143
-     * @return void
144
-     */
145
-    public function prevent_render_form() {
146
-        if( $this->is_edit_entry() ) {
147
-            if( 'wp_head' === current_filter() ) {
148
-                add_filter( 'gform_shortcode_form', '__return_empty_string' );
149
-            } else {
150
-                remove_filter( 'gform_shortcode_form', '__return_empty_string' );
151
-            }
152
-        }
153
-    }
154
-
155
-    /**
156
-     * Because we're mimicking being a front-end Gravity Forms form while using a Gravity Forms
157
-     * backend form, we need to prevent them from saving twice.
158
-     * @return void
159
-     */
160
-    public function prevent_maybe_process_form() {
161
-
162
-        if( ! empty( $_POST ) ) {
163
-	        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[prevent_maybe_process_form] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
164
-        }
165
-
166
-        if( $this->is_edit_entry_submission() ) {
167
-            remove_action( 'wp',  array( 'RGForms', 'maybe_process_form'), 9 );
168
-	        remove_action( 'wp',  array( 'GFForms', 'maybe_process_form'), 9 );
169
-        }
170
-    }
171
-
172
-    /**
173
-     * Is the current page an Edit Entry page?
174
-     * @return boolean
175
-     */
176
-    public function is_edit_entry() {
177
-
178
-        $is_edit_entry = GravityView_frontend::is_single_entry() && ! empty( $_GET['edit'] );
179
-
180
-        return ( $is_edit_entry || $this->is_edit_entry_submission() );
181
-    }
133
+	}
134
+
135
+	/**
136
+	 * Don't show any forms embedded on a page when GravityView is in Edit Entry mode
137
+	 *
138
+	 * Adds a `__return_empty_string` filter on the Gravity Forms shortcode on the `wp_head` action
139
+	 * And then removes it on the `wp_footer` action
140
+	 *
141
+	 * @since 1.16.1
142
+	 *
143
+	 * @return void
144
+	 */
145
+	public function prevent_render_form() {
146
+		if( $this->is_edit_entry() ) {
147
+			if( 'wp_head' === current_filter() ) {
148
+				add_filter( 'gform_shortcode_form', '__return_empty_string' );
149
+			} else {
150
+				remove_filter( 'gform_shortcode_form', '__return_empty_string' );
151
+			}
152
+		}
153
+	}
154
+
155
+	/**
156
+	 * Because we're mimicking being a front-end Gravity Forms form while using a Gravity Forms
157
+	 * backend form, we need to prevent them from saving twice.
158
+	 * @return void
159
+	 */
160
+	public function prevent_maybe_process_form() {
161
+
162
+		if( ! empty( $_POST ) ) {
163
+			do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[prevent_maybe_process_form] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
164
+		}
165
+
166
+		if( $this->is_edit_entry_submission() ) {
167
+			remove_action( 'wp',  array( 'RGForms', 'maybe_process_form'), 9 );
168
+			remove_action( 'wp',  array( 'GFForms', 'maybe_process_form'), 9 );
169
+		}
170
+	}
171
+
172
+	/**
173
+	 * Is the current page an Edit Entry page?
174
+	 * @return boolean
175
+	 */
176
+	public function is_edit_entry() {
177
+
178
+		$is_edit_entry = GravityView_frontend::is_single_entry() && ! empty( $_GET['edit'] );
179
+
180
+		return ( $is_edit_entry || $this->is_edit_entry_submission() );
181
+	}
182 182
 
183 183
 	/**
184 184
 	 * Is the current page an Edit Entry page?
@@ -189,229 +189,229 @@  discard block
 block discarded – undo
189 189
 		return !empty( $_POST[ self::$nonce_field ] );
190 190
 	}
191 191
 
192
-    /**
193
-     * When Edit entry view is requested setup the vars
194
-     */
195
-    private function setup_vars() {
196
-        $gravityview_view = GravityView_View::getInstance();
192
+	/**
193
+	 * When Edit entry view is requested setup the vars
194
+	 */
195
+	private function setup_vars() {
196
+		$gravityview_view = GravityView_View::getInstance();
197 197
 
198 198
 
199
-        $entries = $gravityview_view->getEntries();
200
-	    self::$original_entry = $entries[0];
201
-	    $this->entry = $entries[0];
199
+		$entries = $gravityview_view->getEntries();
200
+		self::$original_entry = $entries[0];
201
+		$this->entry = $entries[0];
202 202
 
203
-        self::$original_form = $gravityview_view->getForm();
204
-        $this->form = $gravityview_view->getForm();
205
-        $this->form_id = $gravityview_view->getFormId();
206
-        $this->view_id = $gravityview_view->getViewId();
203
+		self::$original_form = $gravityview_view->getForm();
204
+		$this->form = $gravityview_view->getForm();
205
+		$this->form_id = $gravityview_view->getFormId();
206
+		$this->view_id = $gravityview_view->getViewId();
207 207
 
208
-        self::$nonce_key = GravityView_Edit_Entry::get_nonce_key( $this->view_id, $this->form_id, $this->entry['id'] );
209
-    }
208
+		self::$nonce_key = GravityView_Edit_Entry::get_nonce_key( $this->view_id, $this->form_id, $this->entry['id'] );
209
+	}
210 210
 
211 211
 
212
-    /**
213
-     * Load required files and trigger edit flow
214
-     *
215
-     * Run when the is_edit_entry returns true.
216
-     *
217
-     * @param GravityView_View_Data $gv_data GravityView Data object
218
-     * @return void
219
-     */
220
-    public function init( $gv_data ) {
212
+	/**
213
+	 * Load required files and trigger edit flow
214
+	 *
215
+	 * Run when the is_edit_entry returns true.
216
+	 *
217
+	 * @param GravityView_View_Data $gv_data GravityView Data object
218
+	 * @return void
219
+	 */
220
+	public function init( $gv_data ) {
221 221
 
222
-        require_once( GFCommon::get_base_path() . '/form_display.php' );
223
-        require_once( GFCommon::get_base_path() . '/entry_detail.php' );
222
+		require_once( GFCommon::get_base_path() . '/form_display.php' );
223
+		require_once( GFCommon::get_base_path() . '/entry_detail.php' );
224 224
 
225
-        $this->setup_vars();
225
+		$this->setup_vars();
226 226
 
227
-        // Multiple Views embedded, don't proceed if nonce fails
227
+		// Multiple Views embedded, don't proceed if nonce fails
228 228
 		$multiple_views = defined( 'GRAVITYVIEW_FUTURE_CORE_LOADED' ) ? gravityview()->views->count() > 1 : $gv_data->has_multiple_views();
229
-        if( $multiple_views && ! wp_verify_nonce( $_GET['edit'], self::$nonce_key ) ) {
230
-            do_action('gravityview_log_error', __METHOD__ . ': Nonce validation failed for the Edit Entry request; returning' );
231
-            return;
232
-        }
229
+		if( $multiple_views && ! wp_verify_nonce( $_GET['edit'], self::$nonce_key ) ) {
230
+			do_action('gravityview_log_error', __METHOD__ . ': Nonce validation failed for the Edit Entry request; returning' );
231
+			return;
232
+		}
233 233
 
234
-        // Sorry, you're not allowed here.
235
-        if( false === $this->user_can_edit_entry( true ) ) {
236
-            do_action('gravityview_log_error', __METHOD__ . ': User is not allowed to edit this entry; returning', $this->entry );
237
-            return;
238
-        }
234
+		// Sorry, you're not allowed here.
235
+		if( false === $this->user_can_edit_entry( true ) ) {
236
+			do_action('gravityview_log_error', __METHOD__ . ': User is not allowed to edit this entry; returning', $this->entry );
237
+			return;
238
+		}
239 239
 
240
-        $this->print_scripts();
240
+		$this->print_scripts();
241 241
 
242
-        $this->process_save();
242
+		$this->process_save();
243 243
 
244
-        $this->edit_entry_form();
244
+		$this->edit_entry_form();
245 245
 
246
-    }
246
+	}
247 247
 
248 248
 
249
-    /**
250
-     * Force Gravity Forms to output scripts as if it were in the admin
251
-     * @return void
252
-     */
253
-    private function print_scripts() {
254
-        $gravityview_view = GravityView_View::getInstance();
249
+	/**
250
+	 * Force Gravity Forms to output scripts as if it were in the admin
251
+	 * @return void
252
+	 */
253
+	private function print_scripts() {
254
+		$gravityview_view = GravityView_View::getInstance();
255 255
 
256
-        wp_register_script( 'gform_gravityforms', GFCommon::get_base_url().'/js/gravityforms.js', array( 'jquery', 'gform_json', 'gform_placeholder', 'sack', 'plupload-all', 'gravityview-fe-view' ) );
256
+		wp_register_script( 'gform_gravityforms', GFCommon::get_base_url().'/js/gravityforms.js', array( 'jquery', 'gform_json', 'gform_placeholder', 'sack', 'plupload-all', 'gravityview-fe-view' ) );
257 257
 
258
-        GFFormDisplay::enqueue_form_scripts($gravityview_view->getForm(), false);
258
+		GFFormDisplay::enqueue_form_scripts($gravityview_view->getForm(), false);
259 259
 
260
-        // Sack is required for images
261
-        wp_print_scripts( array( 'sack', 'gform_gravityforms' ) );
262
-    }
260
+		// Sack is required for images
261
+		wp_print_scripts( array( 'sack', 'gform_gravityforms' ) );
262
+	}
263 263
 
264 264
 
265
-    /**
266
-     * Process edit entry form save
267
-     */
268
-    private function process_save() {
265
+	/**
266
+	 * Process edit entry form save
267
+	 */
268
+	private function process_save() {
269 269
 
270
-        if( empty( $_POST ) || ! isset( $_POST['lid'] ) ) {
271
-            return;
272
-        }
270
+		if( empty( $_POST ) || ! isset( $_POST['lid'] ) ) {
271
+			return;
272
+		}
273 273
 
274
-        // Make sure the entry, view, and form IDs are all correct
275
-        $valid = $this->verify_nonce();
274
+		// Make sure the entry, view, and form IDs are all correct
275
+		$valid = $this->verify_nonce();
276 276
 
277
-        if( !$valid ) {
278
-            do_action('gravityview_log_error', __METHOD__ . ' Nonce validation failed.' );
279
-            return;
280
-        }
277
+		if( !$valid ) {
278
+			do_action('gravityview_log_error', __METHOD__ . ' Nonce validation failed.' );
279
+			return;
280
+		}
281 281
 
282
-        if( $this->entry['id'] !== $_POST['lid'] ) {
283
-            do_action('gravityview_log_error', __METHOD__ . ' Entry ID did not match posted entry ID.' );
284
-            return;
285
-        }
282
+		if( $this->entry['id'] !== $_POST['lid'] ) {
283
+			do_action('gravityview_log_error', __METHOD__ . ' Entry ID did not match posted entry ID.' );
284
+			return;
285
+		}
286 286
 
287
-        do_action('gravityview_log_debug', __METHOD__ . ': $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
287
+		do_action('gravityview_log_debug', __METHOD__ . ': $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
288 288
 
289
-        $this->process_save_process_files( $this->form_id );
289
+		$this->process_save_process_files( $this->form_id );
290 290
 
291
-        $this->validate();
291
+		$this->validate();
292 292
 
293
-        if( $this->is_valid ) {
293
+		if( $this->is_valid ) {
294 294
 
295
-            do_action('gravityview_log_debug', __METHOD__ . ': Submission is valid.' );
295
+			do_action('gravityview_log_debug', __METHOD__ . ': Submission is valid.' );
296 296
 
297
-            /**
298
-             * @hack This step is needed to unset the adminOnly from form fields, to add the calculation fields
299
-             */
300
-            $form = $this->form_prepare_for_save();
297
+			/**
298
+			 * @hack This step is needed to unset the adminOnly from form fields, to add the calculation fields
299
+			 */
300
+			$form = $this->form_prepare_for_save();
301 301
 
302
-            /**
303
-             * @hack to avoid the capability validation of the method save_lead for GF 1.9+
304
-             */
305
-            unset( $_GET['page'] );
302
+			/**
303
+			 * @hack to avoid the capability validation of the method save_lead for GF 1.9+
304
+			 */
305
+			unset( $_GET['page'] );
306 306
 
307
-            $date_created = $this->entry['date_created'];
307
+			$date_created = $this->entry['date_created'];
308 308
 
309
-            /**
310
-             * @hack to force Gravity Forms to use $read_value_from_post in GFFormsModel::save_lead()
311
-             * @since 1.17.2
312
-             */
313
-            unset( $this->entry['date_created'] );
309
+			/**
310
+			 * @hack to force Gravity Forms to use $read_value_from_post in GFFormsModel::save_lead()
311
+			 * @since 1.17.2
312
+			 */
313
+			unset( $this->entry['date_created'] );
314 314
 
315
-            GFFormsModel::save_lead( $form, $this->entry );
315
+			GFFormsModel::save_lead( $form, $this->entry );
316 316
 
317
-	        // Delete the values for hidden inputs
318
-	        $this->unset_hidden_field_values();
317
+			// Delete the values for hidden inputs
318
+			$this->unset_hidden_field_values();
319 319
             
320
-            $this->entry['date_created'] = $date_created;
320
+			$this->entry['date_created'] = $date_created;
321 321
 
322
-            // Process calculation fields
323
-            $this->update_calculation_fields();
322
+			// Process calculation fields
323
+			$this->update_calculation_fields();
324 324
 
325
-            // Perform actions normally performed after updating a lead
326
-            $this->after_update();
325
+			// Perform actions normally performed after updating a lead
326
+			$this->after_update();
327 327
 
328
-	        /**
329
-             * Must be AFTER after_update()!
330
-             * @see https://github.com/gravityview/GravityView/issues/764
331
-             */
332
-            $this->maybe_update_post_fields( $form );
328
+			/**
329
+			 * Must be AFTER after_update()!
330
+			 * @see https://github.com/gravityview/GravityView/issues/764
331
+			 */
332
+			$this->maybe_update_post_fields( $form );
333 333
 
334
-            /**
335
-             * @action `gravityview/edit_entry/after_update` Perform an action after the entry has been updated using Edit Entry
336
-             * @param array $form Gravity Forms form array
337
-             * @param string $entry_id Numeric ID of the entry that was updated
338
-             * @param GravityView_Edit_Entry_Render $this This object
339
-             */
340
-            do_action( 'gravityview/edit_entry/after_update', $this->form, $this->entry['id'], $this );
334
+			/**
335
+			 * @action `gravityview/edit_entry/after_update` Perform an action after the entry has been updated using Edit Entry
336
+			 * @param array $form Gravity Forms form array
337
+			 * @param string $entry_id Numeric ID of the entry that was updated
338
+			 * @param GravityView_Edit_Entry_Render $this This object
339
+			 */
340
+			do_action( 'gravityview/edit_entry/after_update', $this->form, $this->entry['id'], $this );
341 341
 
342
-        } else {
343
-            do_action('gravityview_log_error', __METHOD__ . ': Submission is NOT valid.', $this->entry );
344
-        }
342
+		} else {
343
+			do_action('gravityview_log_error', __METHOD__ . ': Submission is NOT valid.', $this->entry );
344
+		}
345 345
 
346
-    } // process_save
346
+	} // process_save
347 347
 
348 348
 	/**
349 349
 	 * Delete the value of fields hidden by conditional logic when the entry is edited
350
-     *
351
-     * @uses GFFormsModel::update_lead_field_value()
352
-     *
353
-     * @since 1.17.4
354
-     *
355
-     * @return void
350
+	 *
351
+	 * @uses GFFormsModel::update_lead_field_value()
352
+	 *
353
+	 * @since 1.17.4
354
+	 *
355
+	 * @return void
356 356
 	 */
357
-    private function unset_hidden_field_values() {
358
-	    global $wpdb;
357
+	private function unset_hidden_field_values() {
358
+		global $wpdb;
359 359
 
360
-	    $lead_detail_table      = GFFormsModel::get_lead_details_table_name();
361
-	    $current_fields   = $wpdb->get_results( $wpdb->prepare( "SELECT id, field_number FROM $lead_detail_table WHERE lead_id=%d", $this->entry['id'] ) );
360
+		$lead_detail_table      = GFFormsModel::get_lead_details_table_name();
361
+		$current_fields   = $wpdb->get_results( $wpdb->prepare( "SELECT id, field_number FROM $lead_detail_table WHERE lead_id=%d", $this->entry['id'] ) );
362 362
 
363
-	    foreach ( $this->entry as $input_id => $field_value ) {
363
+		foreach ( $this->entry as $input_id => $field_value ) {
364 364
 
365
-		    $field = RGFormsModel::get_field( $this->form, $input_id );
365
+			$field = RGFormsModel::get_field( $this->form, $input_id );
366 366
 
367
-		    // Reset fields that are hidden
368
-		    // Don't pass $entry as fourth parameter; force using $_POST values to calculate conditional logic
369
-		    if ( GFFormsModel::is_field_hidden( $this->form, $field, array(), NULL ) ) {
367
+			// Reset fields that are hidden
368
+			// Don't pass $entry as fourth parameter; force using $_POST values to calculate conditional logic
369
+			if ( GFFormsModel::is_field_hidden( $this->form, $field, array(), NULL ) ) {
370 370
 
371
-		        // List fields are stored as empty arrays when empty
372
-			    $empty_value = $this->is_field_json_encoded( $field ) ? '[]' : '';
371
+				// List fields are stored as empty arrays when empty
372
+				$empty_value = $this->is_field_json_encoded( $field ) ? '[]' : '';
373 373
 
374
-			    $lead_detail_id = GFFormsModel::get_lead_detail_id( $current_fields, $input_id );
374
+				$lead_detail_id = GFFormsModel::get_lead_detail_id( $current_fields, $input_id );
375 375
 
376
-			    GFFormsModel::update_lead_field_value( $this->form, $this->entry, $field, $lead_detail_id, $input_id, $empty_value );
376
+				GFFormsModel::update_lead_field_value( $this->form, $this->entry, $field, $lead_detail_id, $input_id, $empty_value );
377 377
 
378
-			    // Prevent the $_POST values of hidden fields from being used as default values when rendering the form
379
-                // after submission
380
-			    $post_input_id = 'input_' . str_replace( '.', '_', $input_id );
381
-			    $_POST[ $post_input_id ] = '';
382
-		    }
383
-	    }
384
-    }
378
+				// Prevent the $_POST values of hidden fields from being used as default values when rendering the form
379
+				// after submission
380
+				$post_input_id = 'input_' . str_replace( '.', '_', $input_id );
381
+				$_POST[ $post_input_id ] = '';
382
+			}
383
+		}
384
+	}
385 385
 
386
-    /**
387
-     * Have GF handle file uploads
388
-     *
389
-     * Copy of code from GFFormDisplay::process_form()
390
-     *
391
-     * @param int $form_id
392
-     */
393
-    private function process_save_process_files( $form_id ) {
386
+	/**
387
+	 * Have GF handle file uploads
388
+	 *
389
+	 * Copy of code from GFFormDisplay::process_form()
390
+	 *
391
+	 * @param int $form_id
392
+	 */
393
+	private function process_save_process_files( $form_id ) {
394 394
 
395
-        //Loading files that have been uploaded to temp folder
396
-        $files = GFCommon::json_decode( stripslashes( RGForms::post( 'gform_uploaded_files' ) ) );
397
-        if ( ! is_array( $files ) ) {
398
-            $files = array();
399
-        }
395
+		//Loading files that have been uploaded to temp folder
396
+		$files = GFCommon::json_decode( stripslashes( RGForms::post( 'gform_uploaded_files' ) ) );
397
+		if ( ! is_array( $files ) ) {
398
+			$files = array();
399
+		}
400 400
 
401 401
 		/**
402 402
 		 * Make sure the fileuploads are not overwritten if no such request was done.
403
-         * @since 1.20.1
403
+		 * @since 1.20.1
404 404
 		 */
405 405
 		add_filter( "gform_save_field_value_$form_id", array( $this, 'save_field_value' ), 99, 5 );
406 406
 
407
-        RGFormsModel::$uploaded_files[ $form_id ] = $files;
408
-    }
407
+		RGFormsModel::$uploaded_files[ $form_id ] = $files;
408
+	}
409 409
 
410 410
 	/**
411 411
 	 * Make sure the fileuploads are not overwritten if no such request was done.
412 412
 	 *
413
-     * TO ONLY BE USED INTERNALLY; DO NOT DEVELOP ON; MAY BE REMOVED AT ANY TIME.
414
-     *
413
+	 * TO ONLY BE USED INTERNALLY; DO NOT DEVELOP ON; MAY BE REMOVED AT ANY TIME.
414
+	 *
415 415
 	 * @since 1.20.1
416 416
 	 *
417 417
 	 * @param string $value Field value
@@ -446,156 +446,156 @@  discard block
 block discarded – undo
446 446
 		return $value;
447 447
 	}
448 448
 
449
-    /**
450
-     * Remove max_files validation (done on gravityforms.js) to avoid conflicts with GravityView
451
-     * Late validation done on self::custom_validation
452
-     *
453
-     * @param $plupload_init array Plupload settings
454
-     * @param $form_id
455
-     * @param $instance
456
-     * @return mixed
457
-     */
458
-    public function modify_fileupload_settings( $plupload_init, $form_id, $instance ) {
459
-        if( ! $this->is_edit_entry() ) {
460
-            return $plupload_init;
461
-        }
462
-
463
-        $plupload_init['gf_vars']['max_files'] = 0;
464
-
465
-        return $plupload_init;
466
-    }
467
-
468
-
469
-    /**
470
-     * Unset adminOnly and convert field input key to string
471
-     * @return array $form
472
-     */
473
-    private function form_prepare_for_save() {
474
-
475
-        $form = $this->form;
476
-
477
-	    /** @var GF_Field $field */
478
-        foreach( $form['fields'] as $k => &$field ) {
479
-
480
-            /**
481
-             * Remove the fields with calculation formulas before save to avoid conflicts with GF logic
482
-             * @since 1.16.3
483
-             * @var GF_Field $field
484
-             */
485
-            if( $field->has_calculation() ) {
486
-                unset( $form['fields'][ $k ] );
487
-            }
488
-
489
-            $field->adminOnly = false;
490
-
491
-            if( isset( $field->inputs ) && is_array( $field->inputs ) ) {
492
-                foreach( $field->inputs as $key => $input ) {
493
-                    $field->inputs[ $key ][ 'id' ] = (string)$input['id'];
494
-                }
495
-            }
496
-        }
497
-
498
-        return $form;
499
-    }
500
-
501
-    private function update_calculation_fields() {
502
-
503
-        $form = self::$original_form;
504
-        $update = false;
505
-
506
-        // get the most up to date entry values
507
-        $entry = GFAPI::get_entry( $this->entry['id'] );
508
-
509
-        if( !empty( $this->fields_with_calculation ) ) {
510
-            $update = true;
511
-            foreach ( $this->fields_with_calculation as $calc_field ) {
512
-                $inputs = $calc_field->get_entry_inputs();
513
-                if ( is_array( $inputs ) ) {
514
-                    foreach ( $inputs as $input ) {
515
-                        $input_name = 'input_' . str_replace( '.', '_', $input['id'] );
516
-                        $entry[ strval( $input['id'] ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
517
-                    }
518
-                } else {
519
-                    $input_name = 'input_' . str_replace( '.', '_', $calc_field->id);
520
-                    $entry[ strval( $calc_field->id ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
521
-                }
522
-            }
523
-
524
-        }
525
-
526
-        if( $update ) {
527
-
528
-            $return_entry = GFAPI::update_entry( $entry );
529
-
530
-            if( is_wp_error( $return_entry ) ) {
531
-                do_action( 'gravityview_log_error', 'Updating the entry calculation fields failed', $return_entry );
532
-            } else {
533
-                do_action( 'gravityview_log_debug', 'Updating the entry calculation fields succeeded' );
534
-            }
535
-        }
536
-    }
537
-
538
-    /**
539
-     * Handle updating the Post Image field
540
-     *
541
-     * Sets a new Featured Image if configured in Gravity Forms; otherwise uploads/updates media
542
-     *
543
-     * @since 1.17
544
-     *
545
-     * @uses GFFormsModel::media_handle_upload
546
-     * @uses set_post_thumbnail
547
-     * 
548
-     * @param array $form GF Form array
549
-     * @param GF_Field $field GF Field
550
-     * @param string $field_id Numeric ID of the field
551
-     * @param string $value
552
-     * @param array $entry GF Entry currently being edited
553
-     * @param int $post_id ID of the Post being edited
554
-     *
555
-     * @return mixed|string
556
-     */
557
-    private function update_post_image( $form, $field, $field_id, $value, $entry, $post_id ) {
558
-
559
-        $input_name = 'input_' . $field_id;
560
-
561
-        if ( !empty( $_FILES[ $input_name ]['name'] ) ) {
562
-
563
-            // We have a new image
564
-
565
-            $value = RGFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'] );
566
-
567
-            $ary = ! empty( $value ) ? explode( '|:|', $value ) : array();
568
-            $img_url = rgar( $ary, 0 );
569
-
570
-            $img_title       = count( $ary ) > 1 ? $ary[1] : '';
571
-            $img_caption     = count( $ary ) > 2 ? $ary[2] : '';
572
-            $img_description = count( $ary ) > 3 ? $ary[3] : '';
573
-
574
-            $image_meta = array(
575
-                'post_excerpt' => $img_caption,
576
-                'post_content' => $img_description,
577
-            );
578
-
579
-            //adding title only if it is not empty. It will default to the file name if it is not in the array
580
-            if ( ! empty( $img_title ) ) {
581
-                $image_meta['post_title'] = $img_title;
582
-            }
583
-
584
-            /**
585
-             * todo: As soon as \GFFormsModel::media_handle_upload becomes a public method, move this call to \GFFormsModel::media_handle_upload and remove the hack from this class.
586
-             * Note: the method became public in GF 1.9.17.7, but we don't require that version yet.
587
-             */
588
-            require_once GRAVITYVIEW_DIR . 'includes/class-gravityview-gfformsmodel.php';
589
-            $media_id = GravityView_GFFormsModel::media_handle_upload( $img_url, $post_id, $image_meta );
590
-
591
-            // is this field set as featured image?
592
-            if ( $media_id && $field->postFeaturedImage ) {
593
-                set_post_thumbnail( $post_id, $media_id );
594
-            }
595
-
596
-        } elseif ( !empty( $_POST[ $input_name ] ) && is_array( $value ) ) {
597
-
598
-            $img_url = $_POST[ $input_name ];
449
+	/**
450
+	 * Remove max_files validation (done on gravityforms.js) to avoid conflicts with GravityView
451
+	 * Late validation done on self::custom_validation
452
+	 *
453
+	 * @param $plupload_init array Plupload settings
454
+	 * @param $form_id
455
+	 * @param $instance
456
+	 * @return mixed
457
+	 */
458
+	public function modify_fileupload_settings( $plupload_init, $form_id, $instance ) {
459
+		if( ! $this->is_edit_entry() ) {
460
+			return $plupload_init;
461
+		}
462
+
463
+		$plupload_init['gf_vars']['max_files'] = 0;
464
+
465
+		return $plupload_init;
466
+	}
467
+
468
+
469
+	/**
470
+	 * Unset adminOnly and convert field input key to string
471
+	 * @return array $form
472
+	 */
473
+	private function form_prepare_for_save() {
474
+
475
+		$form = $this->form;
476
+
477
+		/** @var GF_Field $field */
478
+		foreach( $form['fields'] as $k => &$field ) {
479
+
480
+			/**
481
+			 * Remove the fields with calculation formulas before save to avoid conflicts with GF logic
482
+			 * @since 1.16.3
483
+			 * @var GF_Field $field
484
+			 */
485
+			if( $field->has_calculation() ) {
486
+				unset( $form['fields'][ $k ] );
487
+			}
488
+
489
+			$field->adminOnly = false;
490
+
491
+			if( isset( $field->inputs ) && is_array( $field->inputs ) ) {
492
+				foreach( $field->inputs as $key => $input ) {
493
+					$field->inputs[ $key ][ 'id' ] = (string)$input['id'];
494
+				}
495
+			}
496
+		}
497
+
498
+		return $form;
499
+	}
500
+
501
+	private function update_calculation_fields() {
502
+
503
+		$form = self::$original_form;
504
+		$update = false;
505
+
506
+		// get the most up to date entry values
507
+		$entry = GFAPI::get_entry( $this->entry['id'] );
508
+
509
+		if( !empty( $this->fields_with_calculation ) ) {
510
+			$update = true;
511
+			foreach ( $this->fields_with_calculation as $calc_field ) {
512
+				$inputs = $calc_field->get_entry_inputs();
513
+				if ( is_array( $inputs ) ) {
514
+					foreach ( $inputs as $input ) {
515
+						$input_name = 'input_' . str_replace( '.', '_', $input['id'] );
516
+						$entry[ strval( $input['id'] ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
517
+					}
518
+				} else {
519
+					$input_name = 'input_' . str_replace( '.', '_', $calc_field->id);
520
+					$entry[ strval( $calc_field->id ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
521
+				}
522
+			}
523
+
524
+		}
525
+
526
+		if( $update ) {
527
+
528
+			$return_entry = GFAPI::update_entry( $entry );
529
+
530
+			if( is_wp_error( $return_entry ) ) {
531
+				do_action( 'gravityview_log_error', 'Updating the entry calculation fields failed', $return_entry );
532
+			} else {
533
+				do_action( 'gravityview_log_debug', 'Updating the entry calculation fields succeeded' );
534
+			}
535
+		}
536
+	}
537
+
538
+	/**
539
+	 * Handle updating the Post Image field
540
+	 *
541
+	 * Sets a new Featured Image if configured in Gravity Forms; otherwise uploads/updates media
542
+	 *
543
+	 * @since 1.17
544
+	 *
545
+	 * @uses GFFormsModel::media_handle_upload
546
+	 * @uses set_post_thumbnail
547
+	 * 
548
+	 * @param array $form GF Form array
549
+	 * @param GF_Field $field GF Field
550
+	 * @param string $field_id Numeric ID of the field
551
+	 * @param string $value
552
+	 * @param array $entry GF Entry currently being edited
553
+	 * @param int $post_id ID of the Post being edited
554
+	 *
555
+	 * @return mixed|string
556
+	 */
557
+	private function update_post_image( $form, $field, $field_id, $value, $entry, $post_id ) {
558
+
559
+		$input_name = 'input_' . $field_id;
560
+
561
+		if ( !empty( $_FILES[ $input_name ]['name'] ) ) {
562
+
563
+			// We have a new image
564
+
565
+			$value = RGFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'] );
566
+
567
+			$ary = ! empty( $value ) ? explode( '|:|', $value ) : array();
568
+			$img_url = rgar( $ary, 0 );
569
+
570
+			$img_title       = count( $ary ) > 1 ? $ary[1] : '';
571
+			$img_caption     = count( $ary ) > 2 ? $ary[2] : '';
572
+			$img_description = count( $ary ) > 3 ? $ary[3] : '';
573
+
574
+			$image_meta = array(
575
+				'post_excerpt' => $img_caption,
576
+				'post_content' => $img_description,
577
+			);
578
+
579
+			//adding title only if it is not empty. It will default to the file name if it is not in the array
580
+			if ( ! empty( $img_title ) ) {
581
+				$image_meta['post_title'] = $img_title;
582
+			}
583
+
584
+			/**
585
+			 * todo: As soon as \GFFormsModel::media_handle_upload becomes a public method, move this call to \GFFormsModel::media_handle_upload and remove the hack from this class.
586
+			 * Note: the method became public in GF 1.9.17.7, but we don't require that version yet.
587
+			 */
588
+			require_once GRAVITYVIEW_DIR . 'includes/class-gravityview-gfformsmodel.php';
589
+			$media_id = GravityView_GFFormsModel::media_handle_upload( $img_url, $post_id, $image_meta );
590
+
591
+			// is this field set as featured image?
592
+			if ( $media_id && $field->postFeaturedImage ) {
593
+				set_post_thumbnail( $post_id, $media_id );
594
+			}
595
+
596
+		} elseif ( !empty( $_POST[ $input_name ] ) && is_array( $value ) ) {
597
+
598
+			$img_url = $_POST[ $input_name ];
599 599
 
600 600
 			$img_title       = rgar( $_POST, $input_name.'_1' );
601 601
 			$img_caption     = rgar( $_POST, $input_name .'_4' );
@@ -615,259 +615,259 @@  discard block
 block discarded – undo
615 615
 				// update image title, caption or description
616 616
 				wp_update_post( $image_meta );
617 617
 			}
618
-        } else {
619
-
620
-            // if we get here, image was removed or not set.
621
-            $value = '';
622
-
623
-            if ( $field->postFeaturedImage ) {
624
-                delete_post_thumbnail( $post_id );
625
-            }
626
-        }
627
-
628
-        return $value;
629
-    }
630
-
631
-    /**
632
-     * Loop through the fields being edited and if they include Post fields, update the Entry's post object
633
-     *
634
-     * @param array $form Gravity Forms form
635
-     *
636
-     * @return void
637
-     */
638
-    private function maybe_update_post_fields( $form ) {
639
-
640
-        if( empty( $this->entry['post_id'] ) ) {
641
-	        do_action( 'gravityview_log_debug', __METHOD__ . ': This entry has no post fields. Continuing...' );
642
-            return;
643
-        }
644
-
645
-        $post_id = $this->entry['post_id'];
646
-
647
-        // Security check
648
-        if( false === GVCommon::has_cap( 'edit_post', $post_id ) ) {
649
-            do_action( 'gravityview_log_error', 'The current user does not have the ability to edit Post #'.$post_id );
650
-            return;
651
-        }
652
-
653
-        $update_entry = false;
654
-
655
-        $updated_post = $original_post = get_post( $post_id );
656
-
657
-        foreach ( $this->entry as $field_id => $value ) {
618
+		} else {
658 619
 
659
-            $field = RGFormsModel::get_field( $form, $field_id );
620
+			// if we get here, image was removed or not set.
621
+			$value = '';
660 622
 
661
-            if( ! $field ) {
662
-                continue;
663
-            }
623
+			if ( $field->postFeaturedImage ) {
624
+				delete_post_thumbnail( $post_id );
625
+			}
626
+		}
664 627
 
665
-            if( GFCommon::is_post_field( $field ) && 'post_category' !== $field->type ) {
628
+		return $value;
629
+	}
666 630
 
667
-                // Get the value of the field, including $_POSTed value
668
-                $value = RGFormsModel::get_field_value( $field );
631
+	/**
632
+	 * Loop through the fields being edited and if they include Post fields, update the Entry's post object
633
+	 *
634
+	 * @param array $form Gravity Forms form
635
+	 *
636
+	 * @return void
637
+	 */
638
+	private function maybe_update_post_fields( $form ) {
669 639
 
670
-                // Use temporary entry variable, to make values available to fill_post_template() and update_post_image()
671
-                $entry_tmp = $this->entry;
672
-                $entry_tmp["{$field_id}"] = $value;
640
+		if( empty( $this->entry['post_id'] ) ) {
641
+			do_action( 'gravityview_log_debug', __METHOD__ . ': This entry has no post fields. Continuing...' );
642
+			return;
643
+		}
673 644
 
674
-                switch( $field->type ) {
645
+		$post_id = $this->entry['post_id'];
675 646
 
676
-                    case 'post_title':
677
-                        $post_title = $value;
678
-                        if( rgar( $form, 'postTitleTemplateEnabled' ) ) {
679
-                            $post_title = $this->fill_post_template( $form['postTitleTemplate'], $form, $entry_tmp );
680
-                        }
681
-                        $updated_post->post_title = $post_title;
682
-                        $updated_post->post_name  = $post_title;
683
-                        unset( $post_title );
684
-                        break;
647
+		// Security check
648
+		if( false === GVCommon::has_cap( 'edit_post', $post_id ) ) {
649
+			do_action( 'gravityview_log_error', 'The current user does not have the ability to edit Post #'.$post_id );
650
+			return;
651
+		}
685 652
 
686
-                    case 'post_content':
687
-                        $post_content = $value;
688
-                        if( rgar( $form, 'postContentTemplateEnabled' ) ) {
689
-                            $post_content = $this->fill_post_template( $form['postContentTemplate'], $form, $entry_tmp, true );
690
-                        }
691
-                        $updated_post->post_content = $post_content;
692
-                        unset( $post_content );
693
-                        break;
694
-                    case 'post_excerpt':
695
-                        $updated_post->post_excerpt = $value;
696
-                        break;
697
-                    case 'post_tags':
698
-                        wp_set_post_tags( $post_id, $value, false );
699
-                        break;
700
-                    case 'post_category':
701
-                        break;
702
-                    case 'post_custom_field':
703
-                        if( ! empty( $field->customFieldTemplateEnabled ) ) {
704
-                            $value = $this->fill_post_template( $field->customFieldTemplate, $form, $entry_tmp, true );
705
-                        }
653
+		$update_entry = false;
706 654
 
707
-	                    if ( $this->is_field_json_encoded( $field ) && ! is_string( $value ) ) {
708
-		                    $value = function_exists('wp_json_encode') ? wp_json_encode( $value ) : json_encode( $value );
709
-	                    }
655
+		$updated_post = $original_post = get_post( $post_id );
710 656
 
711
-                        update_post_meta( $post_id, $field->postCustomFieldName, $value );
712
-                        break;
657
+		foreach ( $this->entry as $field_id => $value ) {
713 658
 
714
-                    case 'post_image':
715
-                        $value = $this->update_post_image( $form, $field, $field_id, $value, $this->entry, $post_id );
716
-                        break;
659
+			$field = RGFormsModel::get_field( $form, $field_id );
717 660
 
718
-                }
661
+			if( ! $field ) {
662
+				continue;
663
+			}
719 664
 
720
-                // update entry after
721
-                $this->entry["{$field_id}"] = $value;
665
+			if( GFCommon::is_post_field( $field ) && 'post_category' !== $field->type ) {
666
+
667
+				// Get the value of the field, including $_POSTed value
668
+				$value = RGFormsModel::get_field_value( $field );
669
+
670
+				// Use temporary entry variable, to make values available to fill_post_template() and update_post_image()
671
+				$entry_tmp = $this->entry;
672
+				$entry_tmp["{$field_id}"] = $value;
673
+
674
+				switch( $field->type ) {
675
+
676
+					case 'post_title':
677
+						$post_title = $value;
678
+						if( rgar( $form, 'postTitleTemplateEnabled' ) ) {
679
+							$post_title = $this->fill_post_template( $form['postTitleTemplate'], $form, $entry_tmp );
680
+						}
681
+						$updated_post->post_title = $post_title;
682
+						$updated_post->post_name  = $post_title;
683
+						unset( $post_title );
684
+						break;
685
+
686
+					case 'post_content':
687
+						$post_content = $value;
688
+						if( rgar( $form, 'postContentTemplateEnabled' ) ) {
689
+							$post_content = $this->fill_post_template( $form['postContentTemplate'], $form, $entry_tmp, true );
690
+						}
691
+						$updated_post->post_content = $post_content;
692
+						unset( $post_content );
693
+						break;
694
+					case 'post_excerpt':
695
+						$updated_post->post_excerpt = $value;
696
+						break;
697
+					case 'post_tags':
698
+						wp_set_post_tags( $post_id, $value, false );
699
+						break;
700
+					case 'post_category':
701
+						break;
702
+					case 'post_custom_field':
703
+						if( ! empty( $field->customFieldTemplateEnabled ) ) {
704
+							$value = $this->fill_post_template( $field->customFieldTemplate, $form, $entry_tmp, true );
705
+						}
706
+
707
+						if ( $this->is_field_json_encoded( $field ) && ! is_string( $value ) ) {
708
+							$value = function_exists('wp_json_encode') ? wp_json_encode( $value ) : json_encode( $value );
709
+						}
710
+
711
+						update_post_meta( $post_id, $field->postCustomFieldName, $value );
712
+						break;
713
+
714
+					case 'post_image':
715
+						$value = $this->update_post_image( $form, $field, $field_id, $value, $this->entry, $post_id );
716
+						break;
717
+
718
+				}
719
+
720
+				// update entry after
721
+				$this->entry["{$field_id}"] = $value;
722
+
723
+				$update_entry = true;
724
+
725
+				unset( $entry_tmp );
726
+			}
722 727
 
723
-                $update_entry = true;
724
-
725
-                unset( $entry_tmp );
726
-            }
728
+		}
727 729
 
728
-        }
730
+		if( $update_entry ) {
729 731
 
730
-        if( $update_entry ) {
731
-
732
-            $return_entry = GFAPI::update_entry( $this->entry );
732
+			$return_entry = GFAPI::update_entry( $this->entry );
733 733
 
734
-            if( is_wp_error( $return_entry ) ) {
735
-               do_action( 'gravityview_log_error', 'Updating the entry post fields failed', array( '$this->entry' => $this->entry, '$return_entry' => $return_entry ) );
736
-            } else {
737
-                do_action( 'gravityview_log_debug', 'Updating the entry post fields for post #'.$post_id.' succeeded' );
738
-            }
734
+			if( is_wp_error( $return_entry ) ) {
735
+			   do_action( 'gravityview_log_error', 'Updating the entry post fields failed', array( '$this->entry' => $this->entry, '$return_entry' => $return_entry ) );
736
+			} else {
737
+				do_action( 'gravityview_log_debug', 'Updating the entry post fields for post #'.$post_id.' succeeded' );
738
+			}
739 739
 
740
-        }
740
+		}
741 741
 
742
-        $return_post = wp_update_post( $updated_post, true );
742
+		$return_post = wp_update_post( $updated_post, true );
743 743
 
744
-        if( is_wp_error( $return_post ) ) {
745
-            $return_post->add_data( $updated_post, '$updated_post' );
746
-            do_action( 'gravityview_log_error', 'Updating the post content failed', compact( 'updated_post', 'return_post' ) );
747
-        } else {
748
-            do_action( 'gravityview_log_debug', 'Updating the post content for post #'.$post_id.' succeeded', $updated_post );
749
-        }
750
-    }
744
+		if( is_wp_error( $return_post ) ) {
745
+			$return_post->add_data( $updated_post, '$updated_post' );
746
+			do_action( 'gravityview_log_error', 'Updating the post content failed', compact( 'updated_post', 'return_post' ) );
747
+		} else {
748
+			do_action( 'gravityview_log_debug', 'Updating the post content for post #'.$post_id.' succeeded', $updated_post );
749
+		}
750
+	}
751 751
 
752 752
 	/**
753
-     * Is the field stored in a JSON-encoded manner?
754
-     *
753
+	 * Is the field stored in a JSON-encoded manner?
754
+	 *
755 755
 	 * @param GF_Field $field
756 756
 	 *
757 757
 	 * @return bool True: stored in DB json_encode()'d; False: not encoded
758 758
 	 */
759
-    private function is_field_json_encoded( $field ) {
759
+	private function is_field_json_encoded( $field ) {
760 760
 
761
-	    $json_encoded = false;
761
+		$json_encoded = false;
762 762
 
763
-        $input_type = RGFormsModel::get_input_type( $field );
763
+		$input_type = RGFormsModel::get_input_type( $field );
764 764
 
765
-	    // Only certain custom field types are supported
766
-	    switch( $input_type ) {
767
-		    case 'fileupload':
768
-		    case 'list':
769
-		    case 'multiselect':
770
-			    $json_encoded = true;
771
-			    break;
772
-	    }
765
+		// Only certain custom field types are supported
766
+		switch( $input_type ) {
767
+			case 'fileupload':
768
+			case 'list':
769
+			case 'multiselect':
770
+				$json_encoded = true;
771
+				break;
772
+		}
773 773
 
774
-	    return $json_encoded;
775
-    }
774
+		return $json_encoded;
775
+	}
776 776
 
777
-    /**
778
-     * Convert a field content template into prepared output
779
-     *
780
-     * @uses GravityView_GFFormsModel::get_post_field_images()
781
-     *
782
-     * @since 1.17
783
-     *
784
-     * @param string $template The content template for the field
785
-     * @param array $form Gravity Forms form
786
-     * @param bool $do_shortcode Whether to process shortcode inside content. In GF, only run on Custom Field and Post Content fields
787
-     *
788
-     * @return string
789
-     */
790
-    private function fill_post_template( $template, $form, $entry, $do_shortcode = false ) {
777
+	/**
778
+	 * Convert a field content template into prepared output
779
+	 *
780
+	 * @uses GravityView_GFFormsModel::get_post_field_images()
781
+	 *
782
+	 * @since 1.17
783
+	 *
784
+	 * @param string $template The content template for the field
785
+	 * @param array $form Gravity Forms form
786
+	 * @param bool $do_shortcode Whether to process shortcode inside content. In GF, only run on Custom Field and Post Content fields
787
+	 *
788
+	 * @return string
789
+	 */
790
+	private function fill_post_template( $template, $form, $entry, $do_shortcode = false ) {
791 791
 
792
-        require_once GRAVITYVIEW_DIR . 'includes/class-gravityview-gfformsmodel.php';
792
+		require_once GRAVITYVIEW_DIR . 'includes/class-gravityview-gfformsmodel.php';
793 793
 
794
-        $post_images = GravityView_GFFormsModel::get_post_field_images( $form, $entry );
794
+		$post_images = GravityView_GFFormsModel::get_post_field_images( $form, $entry );
795 795
 
796
-        //replacing post image variables
797
-        $output = GFCommon::replace_variables_post_image( $template, $post_images, $entry );
796
+		//replacing post image variables
797
+		$output = GFCommon::replace_variables_post_image( $template, $post_images, $entry );
798 798
 
799
-        //replacing all other variables
800
-        $output = GFCommon::replace_variables( $output, $form, $entry, false, false, false );
799
+		//replacing all other variables
800
+		$output = GFCommon::replace_variables( $output, $form, $entry, false, false, false );
801 801
 
802
-        // replace conditional shortcodes
803
-        if( $do_shortcode ) {
804
-            $output = do_shortcode( $output );
805
-        }
802
+		// replace conditional shortcodes
803
+		if( $do_shortcode ) {
804
+			$output = do_shortcode( $output );
805
+		}
806 806
 
807
-        return $output;
808
-    }
807
+		return $output;
808
+	}
809 809
 
810 810
 
811
-    /**
812
-     * Perform actions normally performed after updating a lead
813
-     *
814
-     * @since 1.8
815
-     *
816
-     * @see GFEntryDetail::lead_detail_page()
817
-     *
818
-     * @return void
819
-     */
820
-    private function after_update() {
811
+	/**
812
+	 * Perform actions normally performed after updating a lead
813
+	 *
814
+	 * @since 1.8
815
+	 *
816
+	 * @see GFEntryDetail::lead_detail_page()
817
+	 *
818
+	 * @return void
819
+	 */
820
+	private function after_update() {
821 821
 
822
-        do_action( 'gform_after_update_entry', $this->form, $this->entry['id'], self::$original_entry );
823
-        do_action( "gform_after_update_entry_{$this->form['id']}", $this->form, $this->entry['id'], self::$original_entry );
822
+		do_action( 'gform_after_update_entry', $this->form, $this->entry['id'], self::$original_entry );
823
+		do_action( "gform_after_update_entry_{$this->form['id']}", $this->form, $this->entry['id'], self::$original_entry );
824 824
 
825
-        // Re-define the entry now that we've updated it.
826
-        $entry = RGFormsModel::get_lead( $this->entry['id'] );
825
+		// Re-define the entry now that we've updated it.
826
+		$entry = RGFormsModel::get_lead( $this->entry['id'] );
827 827
 
828
-        $entry = GFFormsModel::set_entry_meta( $entry, $this->form );
828
+		$entry = GFFormsModel::set_entry_meta( $entry, $this->form );
829 829
 
830
-        // We need to clear the cache because Gravity Forms caches the field values, which
831
-        // we have just updated.
832
-        foreach ($this->form['fields'] as $key => $field) {
833
-            GFFormsModel::refresh_lead_field_value( $entry['id'], $field->id );
834
-        }
830
+		// We need to clear the cache because Gravity Forms caches the field values, which
831
+		// we have just updated.
832
+		foreach ($this->form['fields'] as $key => $field) {
833
+			GFFormsModel::refresh_lead_field_value( $entry['id'], $field->id );
834
+		}
835 835
 
836
-        $this->entry = $entry;
837
-    }
836
+		$this->entry = $entry;
837
+	}
838 838
 
839 839
 
840
-    /**
841
-     * Display the Edit Entry form
842
-     *
843
-     * @return void
844
-     */
845
-    public function edit_entry_form() {
840
+	/**
841
+	 * Display the Edit Entry form
842
+	 *
843
+	 * @return void
844
+	 */
845
+	public function edit_entry_form() {
846 846
 
847
-        ?>
847
+		?>
848 848
 
849 849
         <div class="gv-edit-entry-wrapper"><?php
850 850
 
851
-            $javascript = gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/inline-javascript.php', $this );
851
+			$javascript = gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/inline-javascript.php', $this );
852 852
 
853
-            /**
854
-             * Fixes weird wpautop() issue
855
-             * @see https://github.com/katzwebservices/GravityView/issues/451
856
-             */
857
-            echo gravityview_strip_whitespace( $javascript );
853
+			/**
854
+			 * Fixes weird wpautop() issue
855
+			 * @see https://github.com/katzwebservices/GravityView/issues/451
856
+			 */
857
+			echo gravityview_strip_whitespace( $javascript );
858 858
 
859
-            ?><h2 class="gv-edit-entry-title">
859
+			?><h2 class="gv-edit-entry-title">
860 860
                 <span><?php
861 861
 
862
-                    /**
863
-                     * @filter `gravityview_edit_entry_title` Modify the edit entry title
864
-                     * @param string $edit_entry_title Modify the "Edit Entry" title
865
-                     * @param GravityView_Edit_Entry_Render $this This object
866
-                     */
867
-                    $edit_entry_title = apply_filters('gravityview_edit_entry_title', __('Edit Entry', 'gravityview'), $this );
862
+					/**
863
+					 * @filter `gravityview_edit_entry_title` Modify the edit entry title
864
+					 * @param string $edit_entry_title Modify the "Edit Entry" title
865
+					 * @param GravityView_Edit_Entry_Render $this This object
866
+					 */
867
+					$edit_entry_title = apply_filters('gravityview_edit_entry_title', __('Edit Entry', 'gravityview'), $this );
868 868
 
869
-                    echo esc_attr( $edit_entry_title );
870
-            ?></span>
869
+					echo esc_attr( $edit_entry_title );
870
+			?></span>
871 871
             </h2>
872 872
 
873 873
             <?php $this->maybe_print_message(); ?>
@@ -878,14 +878,14 @@  discard block
 block discarded – undo
878 878
 
879 879
                 <?php
880 880
 
881
-                wp_nonce_field( self::$nonce_key, self::$nonce_key );
881
+				wp_nonce_field( self::$nonce_key, self::$nonce_key );
882 882
 
883
-                wp_nonce_field( self::$nonce_field, self::$nonce_field, false );
883
+				wp_nonce_field( self::$nonce_field, self::$nonce_field, false );
884 884
 
885
-                // Print the actual form HTML
886
-                $this->render_edit_form();
885
+				// Print the actual form HTML
886
+				$this->render_edit_form();
887 887
 
888
-                ?>
888
+				?>
889 889
             </form>
890 890
 
891 891
             <script>
@@ -897,643 +897,643 @@  discard block
 block discarded – undo
897 897
         </div>
898 898
 
899 899
     <?php
900
-    }
901
-
902
-    /**
903
-     * Display success or error message if the form has been submitted
904
-     *
905
-     * @uses GVCommon::generate_notice
906
-     *
907
-     * @since 1.16.2.2
908
-     *
909
-     * @return void
910
-     */
911
-    private function maybe_print_message() {
912
-
913
-        if( rgpost('action') === 'update' ) {
914
-
915
-            $back_link = esc_url( remove_query_arg( array( 'page', 'view', 'edit' ) ) );
916
-
917
-            if( ! $this->is_valid ){
918
-
919
-                // Keeping this compatible with Gravity Forms.
920
-                $validation_message = "<div class='validation_error'>" . __('There was a problem with your submission.', 'gravityview') . " " . __('Errors have been highlighted below.', 'gravityview') . "</div>";
921
-                $message = apply_filters("gform_validation_message_{$this->form['id']}", apply_filters("gform_validation_message", $validation_message, $this->form), $this->form);
922
-
923
-                echo GVCommon::generate_notice( $message , 'gv-error' );
924
-
925
-            } else {
926
-                $entry_updated_message = sprintf( esc_attr__('Entry Updated. %sReturn to Entry%s', 'gravityview'), '<a href="'. $back_link .'">', '</a>' );
927
-
928
-                /**
929
-                 * @filter `gravityview/edit_entry/success` Modify the edit entry success message (including the anchor link)
930
-                 * @since 1.5.4
931
-                 * @param string $entry_updated_message Existing message
932
-                 * @param int $view_id View ID
933
-                 * @param array $entry Gravity Forms entry array
934
-                 * @param string $back_link URL to return to the original entry. @since 1.6
935
-                 */
936
-                $message = apply_filters( 'gravityview/edit_entry/success', $entry_updated_message , $this->view_id, $this->entry, $back_link );
937
-
938
-                echo GVCommon::generate_notice( $message );
939
-            }
940
-
941
-        }
942
-    }
943
-
944
-    /**
945
-     * Display the Edit Entry form in the original Gravity Forms format
946
-     *
947
-     * @since 1.9
948
-     *
949
-     * @return void
950
-     */
951
-    private function render_edit_form() {
952
-
953
-        /**
954
-         * @action `gravityview/edit-entry/render/before` Before rendering the Edit Entry form
955
-         * @since 1.17
956
-         * @param GravityView_Edit_Entry_Render $this
957
-         */
958
-        do_action( 'gravityview/edit-entry/render/before', $this );
959
-
960
-        add_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields'), 5000, 3 );
961
-        add_filter( 'gform_submit_button', array( $this, 'render_form_buttons') );
962
-        add_filter( 'gform_disable_view_counter', '__return_true' );
963
-
964
-        add_filter( 'gform_field_input', array( $this, 'verify_user_can_edit_post' ), 5, 5 );
965
-        add_filter( 'gform_field_input', array( $this, 'modify_edit_field_input' ), 10, 5 );
966
-
967
-        // We need to remove the fake $_GET['page'] arg to avoid rendering form as if in admin.
968
-        unset( $_GET['page'] );
969
-
970
-        // TODO: Verify multiple-page forms
971
-
972
-        ob_start(); // Prevent PHP warnings possibly caused by prefilling list fields for conditional logic
973
-
974
-        $html = GFFormDisplay::get_form( $this->form['id'], false, false, true, $this->entry );
975
-
976
-        ob_get_clean();
977
-
978
-	    remove_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields' ), 5000 );
979
-        remove_filter( 'gform_submit_button', array( $this, 'render_form_buttons' ) );
980
-        remove_filter( 'gform_disable_view_counter', '__return_true' );
981
-        remove_filter( 'gform_field_input', array( $this, 'verify_user_can_edit_post' ), 5 );
982
-        remove_filter( 'gform_field_input', array( $this, 'modify_edit_field_input' ), 10 );
983
-
984
-        echo $html;
985
-
986
-        /**
987
-         * @action `gravityview/edit-entry/render/after` After rendering the Edit Entry form
988
-         * @since 1.17
989
-         * @param GravityView_Edit_Entry_Render $this
990
-         */
991
-        do_action( 'gravityview/edit-entry/render/after', $this );
992
-    }
993
-
994
-    /**
995
-     * Display the Update/Cancel/Delete buttons for the Edit Entry form
996
-     * @since 1.8
997
-     * @return string
998
-     */
999
-    public function render_form_buttons() {
1000
-        return gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/form-buttons.php', $this );
1001
-    }
1002
-
1003
-
1004
-    /**
1005
-     * Modify the form fields that are shown when using GFFormDisplay::get_form()
1006
-     *
1007
-     * By default, all fields will be shown. We only want the Edit Tab configured fields to be shown.
1008
-     *
1009
-     * @param array $form
1010
-     * @param boolean $ajax Whether in AJAX mode
1011
-     * @param array|string $field_values Passed parameters to the form
1012
-     *
1013
-     * @since 1.9
1014
-     *
1015
-     * @return array Modified form array
1016
-     */
1017
-    public function filter_modify_form_fields( $form, $ajax = false, $field_values = '' ) {
1018
-
1019
-        // In case we have validated the form, use it to inject the validation results into the form render
1020
-        if( isset( $this->form_after_validation ) ) {
1021
-            $form = $this->form_after_validation;
1022
-        } else {
1023
-            $form['fields'] = $this->get_configured_edit_fields( $form, $this->view_id );
1024
-        }
1025
-
1026
-        $form = $this->filter_conditional_logic( $form );
1027
-
1028
-        $form = $this->prefill_conditional_logic( $form );
1029
-
1030
-        // for now we don't support Save and Continue feature.
1031
-        if( ! self::$supports_save_and_continue ) {
1032
-	        unset( $form['save'] );
1033
-        }
1034
-
1035
-        return $form;
1036
-    }
1037
-
1038
-    /**
1039
-     * When displaying a field, check if it's a Post Field, and if so, make sure the post exists and current user has edit rights.
1040
-     *
1041
-     * @since 1.16.2.2
1042
-     *
1043
-     * @param string $field_content Always empty. Returning not-empty overrides the input.
1044
-     * @param GF_Field $field
1045
-     * @param string|array $value If array, it's a field with multiple inputs. If string, single input.
1046
-     * @param int $lead_id Lead ID. Always 0 for the `gform_field_input` filter.
1047
-     * @param int $form_id Form ID
1048
-     *
1049
-     * @return string If error, the error message. If no error, blank string (modify_edit_field_input() runs next)
1050
-     */
1051
-    public function verify_user_can_edit_post( $field_content = '', $field, $value, $lead_id = 0, $form_id ) {
1052
-
1053
-        if( GFCommon::is_post_field( $field ) ) {
1054
-
1055
-            $message = null;
1056
-
1057
-            // First, make sure they have the capability to edit the post.
1058
-            if( false === current_user_can( 'edit_post', $this->entry['post_id'] ) ) {
1059
-
1060
-                /**
1061
-                 * @filter `gravityview/edit_entry/unsupported_post_field_text` Modify the message when someone isn't able to edit a post
1062
-                 * @param string $message The existing "You don't have permission..." text
1063
-                 */
1064
-                $message = apply_filters('gravityview/edit_entry/unsupported_post_field_text', __('You don&rsquo;t have permission to edit this post.', 'gravityview') );
1065
-
1066
-            } elseif( null === get_post( $this->entry['post_id'] ) ) {
1067
-                /**
1068
-                 * @filter `gravityview/edit_entry/no_post_text` Modify the message when someone is editing an entry attached to a post that no longer exists
1069
-                 * @param string $message The existing "This field is not editable; the post no longer exists." text
1070
-                 */
1071
-                $message = apply_filters('gravityview/edit_entry/no_post_text', __('This field is not editable; the post no longer exists.', 'gravityview' ) );
1072
-            }
1073
-
1074
-            if( $message ) {
1075
-                $field_content = sprintf('<div class="ginput_container ginput_container_' . $field->type . '">%s</div>', wpautop( $message ) );
1076
-            }
1077
-        }
1078
-
1079
-        return $field_content;
1080
-    }
1081
-
1082
-    /**
1083
-     *
1084
-     * Fill-in the saved values into the form inputs
1085
-     *
1086
-     * @param string $field_content Always empty. Returning not-empty overrides the input.
1087
-     * @param GF_Field $field
1088
-     * @param string|array $value If array, it's a field with multiple inputs. If string, single input.
1089
-     * @param int $lead_id Lead ID. Always 0 for the `gform_field_input` filter.
1090
-     * @param int $form_id Form ID
1091
-     *
1092
-     * @return mixed
1093
-     */
1094
-    public function modify_edit_field_input( $field_content = '', $field, $value, $lead_id = 0, $form_id ) {
1095
-
1096
-        $gv_field = GravityView_Fields::get_associated_field( $field );
1097
-
1098
-        // If the form has been submitted, then we don't need to pre-fill the values,
1099
-        // Except for fileupload type and when a field input is overridden- run always!!
1100
-        if(
1101
-            ( $this->is_edit_entry_submission() && !in_array( $field->type, array( 'fileupload', 'post_image' ) ) )
1102
-            && false === ( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) )
1103
-            && ! GFCommon::is_product_field( $field->type )
1104
-            || ! empty( $field_content )
1105
-            || in_array( $field->type, array( 'honeypot' ) )
1106
-        ) {
1107
-	        return $field_content;
1108
-        }
1109
-
1110
-        // SET SOME FIELD DEFAULTS TO PREVENT ISSUES
1111
-        $field->adminOnly = false; /** @see GFFormDisplay::get_counter_init_script() need to prevent adminOnly */
1112
-
1113
-        $field_value = $this->get_field_value( $field );
1114
-
1115
-	    // Prevent any PHP warnings, like undefined index
1116
-	    ob_start();
1117
-
1118
-	    $return = null;
1119
-
1120
-        /** @var GravityView_Field $gv_field */
1121
-        if( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) ) {
1122
-            $return = $gv_field->get_field_input( $this->form, $field_value, $this->entry, $field );
1123
-        } else {
1124
-	        $return = $field->get_field_input( $this->form, $field_value, $this->entry );
1125
-	    }
1126
-
1127
-	    // If there was output, it's an error
1128
-	    $warnings = ob_get_clean();
1129
-
1130
-	    if( !empty( $warnings ) ) {
1131
-		    do_action( 'gravityview_log_error', __METHOD__ . $warnings, $field_value );
1132
-	    }
1133
-
1134
-        return $return;
1135
-    }
1136
-
1137
-    /**
1138
-     * Modify the value for the current field input
1139
-     *
1140
-     * @param GF_Field $field
1141
-     *
1142
-     * @return array|mixed|string
1143
-     */
1144
-    private function get_field_value( $field ) {
1145
-
1146
-        /**
1147
-         * @filter `gravityview/edit_entry/pre_populate/override` Allow the pre-populated value to override saved value in Edit Entry form. By default, pre-populate mechanism only kicks on empty fields.
1148
-         * @param boolean True: override saved values; False: don't override (default)
1149
-         * @param $field GF_Field object Gravity Forms field object
1150
-         * @since 1.13
1151
-         */
1152
-        $override_saved_value = apply_filters( 'gravityview/edit_entry/pre_populate/override', false, $field );
1153
-
1154
-        // We're dealing with multiple inputs (e.g. checkbox) but not time or date (as it doesn't store data in input IDs)
1155
-        if( isset( $field->inputs ) && is_array( $field->inputs ) && !in_array( $field->type, array( 'time', 'date' ) ) ) {
1156
-
1157
-            $field_value = array();
1158
-
1159
-            // only accept pre-populated values if the field doesn't have any choice selected.
1160
-            $allow_pre_populated = $field->allowsPrepopulate;
1161
-
1162
-            foreach ( (array)$field->inputs as $input ) {
1163
-
1164
-                $input_id = strval( $input['id'] );
1165
-                
1166
-                if ( isset( $this->entry[ $input_id ] ) && ! gv_empty( $this->entry[ $input_id ], false, false ) ) {
1167
-                    $field_value[ $input_id ] =  'post_category' === $field->type ? GFCommon::format_post_category( $this->entry[ $input_id ], true ) : $this->entry[ $input_id ];
1168
-                    $allow_pre_populated = false;
1169
-                }
1170
-
1171
-            }
1172
-
1173
-            $pre_value = $field->get_value_submission( array(), false );
1174
-
1175
-            $field_value = ! $allow_pre_populated && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $field_value : $pre_value;
1176
-
1177
-        } else {
1178
-
1179
-            $id = intval( $field->id );
900
+	}
1180 901
 
1181
-            // get pre-populated value if exists
1182
-            $pre_value = $field->allowsPrepopulate ? GFFormsModel::get_parameter_value( $field->inputName, array(), $field ) : '';
1183
-
1184
-            // saved field entry value (if empty, fallback to the pre-populated value, if exists)
1185
-            // or pre-populated value if not empty and set to override saved value
1186
-            $field_value = !gv_empty( $this->entry[ $id ], false, false ) && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $this->entry[ $id ] : $pre_value;
902
+	/**
903
+	 * Display success or error message if the form has been submitted
904
+	 *
905
+	 * @uses GVCommon::generate_notice
906
+	 *
907
+	 * @since 1.16.2.2
908
+	 *
909
+	 * @return void
910
+	 */
911
+	private function maybe_print_message() {
1187 912
 
1188
-            // in case field is post_category but inputType is select, multi-select or radio, convert value into array of category IDs.
1189
-            if ( 'post_category' === $field->type && !gv_empty( $field_value, false, false ) ) {
1190
-                $categories = array();
1191
-                foreach ( explode( ',', $field_value ) as $cat_string ) {
1192
-                    $categories[] = GFCommon::format_post_category( $cat_string, true );
1193
-                }
1194
-                $field_value = 'multiselect' === $field->get_input_type() ? $categories : implode( '', $categories );
1195
-            }
913
+		if( rgpost('action') === 'update' ) {
1196 914
 
1197
-        }
915
+			$back_link = esc_url( remove_query_arg( array( 'page', 'view', 'edit' ) ) );
1198 916
 
1199
-        // if value is empty get the default value if defined
1200
-        $field_value = $field->get_value_default_if_empty( $field_value );
1201
-
1202
-	    /**
1203
-	     * @filter `gravityview/edit_entry/field_value` Change the value of an Edit Entry field, if needed
1204
-	     * @since 1.11
1205
-	     * @since 1.20 Added third param
1206
-	     * @param mixed $field_value field value used to populate the input
1207
-	     * @param object $field Gravity Forms field object ( Class GF_Field )
1208
-	     * @param GravityView_Edit_Entry_Render $this Current object
1209
-	     */
1210
-	    $field_value = apply_filters( 'gravityview/edit_entry/field_value', $field_value, $field, $this );
917
+			if( ! $this->is_valid ){
1211 918
 
1212
-	    /**
1213
-	     * @filter `gravityview/edit_entry/field_value_{field_type}` Change the value of an Edit Entry field for a specific field type
1214
-	     * @since 1.17
1215
-	     * @since 1.20 Added third param
1216
-	     * @param mixed $field_value field value used to populate the input
1217
-	     * @param GF_Field $field Gravity Forms field object
1218
-	     * @param GravityView_Edit_Entry_Render $this Current object
1219
-	     */
1220
-	    $field_value = apply_filters( 'gravityview/edit_entry/field_value_' . $field->type , $field_value, $field, $this );
919
+				// Keeping this compatible with Gravity Forms.
920
+				$validation_message = "<div class='validation_error'>" . __('There was a problem with your submission.', 'gravityview') . " " . __('Errors have been highlighted below.', 'gravityview') . "</div>";
921
+				$message = apply_filters("gform_validation_message_{$this->form['id']}", apply_filters("gform_validation_message", $validation_message, $this->form), $this->form);
1221 922
 
1222
-        return $field_value;
1223
-    }
923
+				echo GVCommon::generate_notice( $message , 'gv-error' );
1224 924
 
925
+			} else {
926
+				$entry_updated_message = sprintf( esc_attr__('Entry Updated. %sReturn to Entry%s', 'gravityview'), '<a href="'. $back_link .'">', '</a>' );
1225 927
 
1226
-    // ---- Entry validation
928
+				/**
929
+				 * @filter `gravityview/edit_entry/success` Modify the edit entry success message (including the anchor link)
930
+				 * @since 1.5.4
931
+				 * @param string $entry_updated_message Existing message
932
+				 * @param int $view_id View ID
933
+				 * @param array $entry Gravity Forms entry array
934
+				 * @param string $back_link URL to return to the original entry. @since 1.6
935
+				 */
936
+				$message = apply_filters( 'gravityview/edit_entry/success', $entry_updated_message , $this->view_id, $this->entry, $back_link );
1227 937
 
1228
-    /**
1229
-     * Add field keys that Gravity Forms expects.
1230
-     *
1231
-     * @see GFFormDisplay::validate()
1232
-     * @param  array $form GF Form
1233
-     * @return array       Modified GF Form
1234
-     */
1235
-    public function gform_pre_validation( $form ) {
938
+				echo GVCommon::generate_notice( $message );
939
+			}
1236 940
 
1237
-        if( ! $this->verify_nonce() ) {
1238
-            return $form;
1239
-        }
1240
-
1241
-        // Fix PHP warning regarding undefined index.
1242
-        foreach ( $form['fields'] as &$field) {
1243
-
1244
-            // This is because we're doing admin form pretending to be front-end, so Gravity Forms
1245
-            // expects certain field array items to be set.
1246
-            foreach ( array( 'noDuplicates', 'adminOnly', 'inputType', 'isRequired', 'enablePrice', 'inputs', 'allowedExtensions' ) as $key ) {
1247
-	            $field->{$key} = isset( $field->{$key} ) ? $field->{$key} : NULL;
1248
-            }
1249
-
1250
-            switch( RGFormsModel::get_input_type( $field ) ) {
1251
-
1252
-                /**
1253
-                 * this whole fileupload hack is because in the admin, Gravity Forms simply doesn't update any fileupload field if it's empty, but it DOES in the frontend.
1254
-                 *
1255
-                 * What we have to do is set the value so that it doesn't get overwritten as empty on save and appears immediately in the Edit Entry screen again.
1256
-                 *
1257
-                 * @hack
1258
-                 */
1259
-                case 'fileupload':
1260
-
1261
-                    // Set the previous value
1262
-                    $entry = $this->get_entry();
1263
-
1264
-                    $input_name = 'input_'.$field->id;
1265
-                    $form_id = $form['id'];
1266
-
1267
-                    $value = NULL;
941
+		}
942
+	}
1268 943
 
1269
-                    // Use the previous entry value as the default.
1270
-                    if( isset( $entry[ $field->id ] ) ) {
1271
-                        $value = $entry[ $field->id ];
1272
-                    }
1273
-
1274
-                    // If this is a single upload file
1275
-                    if( !empty( $_FILES[ $input_name ] ) && !empty( $_FILES[ $input_name ]['name'] ) ) {
1276
-                        $file_path = GFFormsModel::get_file_upload_path( $form['id'], $_FILES[ $input_name ]['name'] );
1277
-                        $value = $file_path['url'];
1278
-
1279
-                    } else {
1280
-
1281
-                        // Fix PHP warning on line 1498 of form_display.php for post_image fields
1282
-                        // Fix PHP Notice:  Undefined index:  size in form_display.php on line 1511
1283
-                        $_FILES[ $input_name ] = array('name' => '', 'size' => '' );
1284
-
1285
-                    }
1286
-
1287
-                    if( rgar($field, "multipleFiles") ) {
1288
-
1289
-                        // If there are fresh uploads, process and merge them.
1290
-                        // Otherwise, use the passed values, which should be json-encoded array of URLs
1291
-                        if( isset( GFFormsModel::$uploaded_files[$form_id][$input_name] ) ) {
1292
-                            $value = empty( $value ) ? '[]' : $value;
1293
-                            $value = stripslashes_deep( $value );
1294
-                            $value = GFFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'], array());
1295
-                        }
944
+	/**
945
+	 * Display the Edit Entry form in the original Gravity Forms format
946
+	 *
947
+	 * @since 1.9
948
+	 *
949
+	 * @return void
950
+	 */
951
+	private function render_edit_form() {
1296 952
 
1297
-                    } else {
953
+		/**
954
+		 * @action `gravityview/edit-entry/render/before` Before rendering the Edit Entry form
955
+		 * @since 1.17
956
+		 * @param GravityView_Edit_Entry_Render $this
957
+		 */
958
+		do_action( 'gravityview/edit-entry/render/before', $this );
1298 959
 
1299
-                        // A file already exists when editing an entry
1300
-                        // We set this to solve issue when file upload fields are required.
1301
-                        GFFormsModel::$uploaded_files[ $form_id ][ $input_name ] = $value;
1302
-
1303
-                    }
1304
-
1305
-                    $this->entry[ $input_name ] = $value;
1306
-                    $_POST[ $input_name ] = $value;
960
+		add_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields'), 5000, 3 );
961
+		add_filter( 'gform_submit_button', array( $this, 'render_form_buttons') );
962
+		add_filter( 'gform_disable_view_counter', '__return_true' );
1307 963
 
1308
-                    break;
964
+		add_filter( 'gform_field_input', array( $this, 'verify_user_can_edit_post' ), 5, 5 );
965
+		add_filter( 'gform_field_input', array( $this, 'modify_edit_field_input' ), 10, 5 );
1309 966
 
1310
-                case 'number':
1311
-                    // Fix "undefined index" issue at line 1286 in form_display.php
1312
-                    if( !isset( $_POST['input_'.$field->id ] ) ) {
1313
-                        $_POST['input_'.$field->id ] = NULL;
1314
-                    }
1315
-                    break;
1316
-            }
967
+		// We need to remove the fake $_GET['page'] arg to avoid rendering form as if in admin.
968
+		unset( $_GET['page'] );
1317 969
 
1318
-        }
970
+		// TODO: Verify multiple-page forms
1319 971
 
1320
-        return $form;
1321
-    }
972
+		ob_start(); // Prevent PHP warnings possibly caused by prefilling list fields for conditional logic
1322 973
 
974
+		$html = GFFormDisplay::get_form( $this->form['id'], false, false, true, $this->entry );
1323 975
 
1324
-    /**
1325
-     * Process validation for a edit entry submission
1326
-     *
1327
-     * Sets the `is_valid` object var
1328
-     *
1329
-     * @return void
1330
-     */
1331
-    private function validate() {
976
+		ob_get_clean();
1332 977
 
1333
-        /**
1334
-         * If using GF User Registration Add-on, remove the validation step, otherwise generates error when updating the entry
1335
-         * GF User Registration Add-on version > 3.x has a different class name
1336
-         * @since 1.16.2
1337
-         */
1338
-        if ( class_exists( 'GF_User_Registration' ) ) {
1339
-            remove_filter( 'gform_validation', array( GF_User_Registration::get_instance(), 'validate' ) );
1340
-        } else  if ( class_exists( 'GFUser' ) ) {
1341
-            remove_filter( 'gform_validation', array( 'GFUser', 'user_registration_validation' ) );
1342
-        }
978
+		remove_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields' ), 5000 );
979
+		remove_filter( 'gform_submit_button', array( $this, 'render_form_buttons' ) );
980
+		remove_filter( 'gform_disable_view_counter', '__return_true' );
981
+		remove_filter( 'gform_field_input', array( $this, 'verify_user_can_edit_post' ), 5 );
982
+		remove_filter( 'gform_field_input', array( $this, 'modify_edit_field_input' ), 10 );
1343 983
 
984
+		echo $html;
1344 985
 
1345
-        /**
1346
-         * For some crazy reason, Gravity Forms doesn't validate Edit Entry form submissions.
1347
-         * You can enter whatever you want!
1348
-         * We try validating, and customize the results using `self::custom_validation()`
1349
-         */
1350
-        add_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10, 4);
986
+		/**
987
+		 * @action `gravityview/edit-entry/render/after` After rendering the Edit Entry form
988
+		 * @since 1.17
989
+		 * @param GravityView_Edit_Entry_Render $this
990
+		 */
991
+		do_action( 'gravityview/edit-entry/render/after', $this );
992
+	}
1351 993
 
1352
-        // Needed by the validate funtion
1353
-        $failed_validation_page = NULL;
1354
-        $field_values = RGForms::post( 'gform_field_values' );
994
+	/**
995
+	 * Display the Update/Cancel/Delete buttons for the Edit Entry form
996
+	 * @since 1.8
997
+	 * @return string
998
+	 */
999
+	public function render_form_buttons() {
1000
+		return gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/form-buttons.php', $this );
1001
+	}
1355 1002
 
1356
-        // Prevent entry limit from running when editing an entry, also
1357
-        // prevent form scheduling from preventing editing
1358
-        unset( $this->form['limitEntries'], $this->form['scheduleForm'] );
1359 1003
 
1360
-        // Hide fields depending on Edit Entry settings
1361
-        $this->form['fields'] = $this->get_configured_edit_fields( $this->form, $this->view_id );
1004
+	/**
1005
+	 * Modify the form fields that are shown when using GFFormDisplay::get_form()
1006
+	 *
1007
+	 * By default, all fields will be shown. We only want the Edit Tab configured fields to be shown.
1008
+	 *
1009
+	 * @param array $form
1010
+	 * @param boolean $ajax Whether in AJAX mode
1011
+	 * @param array|string $field_values Passed parameters to the form
1012
+	 *
1013
+	 * @since 1.9
1014
+	 *
1015
+	 * @return array Modified form array
1016
+	 */
1017
+	public function filter_modify_form_fields( $form, $ajax = false, $field_values = '' ) {
1362 1018
 
1363
-        $this->is_valid = GFFormDisplay::validate( $this->form, $field_values, 1, $failed_validation_page );
1019
+		// In case we have validated the form, use it to inject the validation results into the form render
1020
+		if( isset( $this->form_after_validation ) ) {
1021
+			$form = $this->form_after_validation;
1022
+		} else {
1023
+			$form['fields'] = $this->get_configured_edit_fields( $form, $this->view_id );
1024
+		}
1364 1025
 
1365
-        remove_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10 );
1366
-    }
1026
+		$form = $this->filter_conditional_logic( $form );
1367 1027
 
1028
+		$form = $this->prefill_conditional_logic( $form );
1368 1029
 
1369
-    /**
1370
-     * Make validation work for Edit Entry
1371
-     *
1372
-     * Because we're calling the GFFormDisplay::validate() in an unusual way (as a front-end
1373
-     * form pretending to be a back-end form), validate() doesn't know we _can't_ edit post
1374
-     * fields. This goes through all the fields and if they're an invalid post field, we
1375
-     * set them as valid. If there are still issues, we'll return false.
1376
-     *
1377
-     * @param  [type] $validation_results [description]
1378
-     * @return [type]                     [description]
1379
-     */
1380
-    public function custom_validation( $validation_results ) {
1030
+		// for now we don't support Save and Continue feature.
1031
+		if( ! self::$supports_save_and_continue ) {
1032
+			unset( $form['save'] );
1033
+		}
1381 1034
 
1382
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results: ', $validation_results );
1035
+		return $form;
1036
+	}
1383 1037
 
1384
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
1038
+	/**
1039
+	 * When displaying a field, check if it's a Post Field, and if so, make sure the post exists and current user has edit rights.
1040
+	 *
1041
+	 * @since 1.16.2.2
1042
+	 *
1043
+	 * @param string $field_content Always empty. Returning not-empty overrides the input.
1044
+	 * @param GF_Field $field
1045
+	 * @param string|array $value If array, it's a field with multiple inputs. If string, single input.
1046
+	 * @param int $lead_id Lead ID. Always 0 for the `gform_field_input` filter.
1047
+	 * @param int $form_id Form ID
1048
+	 *
1049
+	 * @return string If error, the error message. If no error, blank string (modify_edit_field_input() runs next)
1050
+	 */
1051
+	public function verify_user_can_edit_post( $field_content = '', $field, $value, $lead_id = 0, $form_id ) {
1385 1052
 
1386
-        $gv_valid = true;
1053
+		if( GFCommon::is_post_field( $field ) ) {
1387 1054
 
1388
-        foreach ( $validation_results['form']['fields'] as $key => &$field ) {
1055
+			$message = null;
1389 1056
 
1390
-            $value = RGFormsModel::get_field_value( $field );
1391
-            $field_type = RGFormsModel::get_input_type( $field );
1057
+			// First, make sure they have the capability to edit the post.
1058
+			if( false === current_user_can( 'edit_post', $this->entry['post_id'] ) ) {
1392 1059
 
1393
-            // Validate always
1394
-            switch ( $field_type ) {
1060
+				/**
1061
+				 * @filter `gravityview/edit_entry/unsupported_post_field_text` Modify the message when someone isn't able to edit a post
1062
+				 * @param string $message The existing "You don't have permission..." text
1063
+				 */
1064
+				$message = apply_filters('gravityview/edit_entry/unsupported_post_field_text', __('You don&rsquo;t have permission to edit this post.', 'gravityview') );
1395 1065
 
1066
+			} elseif( null === get_post( $this->entry['post_id'] ) ) {
1067
+				/**
1068
+				 * @filter `gravityview/edit_entry/no_post_text` Modify the message when someone is editing an entry attached to a post that no longer exists
1069
+				 * @param string $message The existing "This field is not editable; the post no longer exists." text
1070
+				 */
1071
+				$message = apply_filters('gravityview/edit_entry/no_post_text', __('This field is not editable; the post no longer exists.', 'gravityview' ) );
1072
+			}
1396 1073
 
1397
-                case 'fileupload' :
1398
-                case 'post_image':
1074
+			if( $message ) {
1075
+				$field_content = sprintf('<div class="ginput_container ginput_container_' . $field->type . '">%s</div>', wpautop( $message ) );
1076
+			}
1077
+		}
1399 1078
 
1400
-                    // in case nothing is uploaded but there are already files saved
1401
-                    if( !empty( $field->failed_validation ) && !empty( $field->isRequired ) && !empty( $value ) ) {
1402
-                        $field->failed_validation = false;
1403
-                        unset( $field->validation_message );
1404
-                    }
1079
+		return $field_content;
1080
+	}
1405 1081
 
1406
-                    // validate if multi file upload reached max number of files [maxFiles] => 2
1407
-                    if( rgobj( $field, 'maxFiles') && rgobj( $field, 'multipleFiles') ) {
1082
+	/**
1083
+	 *
1084
+	 * Fill-in the saved values into the form inputs
1085
+	 *
1086
+	 * @param string $field_content Always empty. Returning not-empty overrides the input.
1087
+	 * @param GF_Field $field
1088
+	 * @param string|array $value If array, it's a field with multiple inputs. If string, single input.
1089
+	 * @param int $lead_id Lead ID. Always 0 for the `gform_field_input` filter.
1090
+	 * @param int $form_id Form ID
1091
+	 *
1092
+	 * @return mixed
1093
+	 */
1094
+	public function modify_edit_field_input( $field_content = '', $field, $value, $lead_id = 0, $form_id ) {
1095
+
1096
+		$gv_field = GravityView_Fields::get_associated_field( $field );
1097
+
1098
+		// If the form has been submitted, then we don't need to pre-fill the values,
1099
+		// Except for fileupload type and when a field input is overridden- run always!!
1100
+		if(
1101
+			( $this->is_edit_entry_submission() && !in_array( $field->type, array( 'fileupload', 'post_image' ) ) )
1102
+			&& false === ( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) )
1103
+			&& ! GFCommon::is_product_field( $field->type )
1104
+			|| ! empty( $field_content )
1105
+			|| in_array( $field->type, array( 'honeypot' ) )
1106
+		) {
1107
+			return $field_content;
1108
+		}
1408 1109
 
1409
-                        $input_name = 'input_' . $field->id;
1410
-                        //uploaded
1411
-                        $file_names = isset( GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] ) ? GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] : array();
1110
+		// SET SOME FIELD DEFAULTS TO PREVENT ISSUES
1111
+		$field->adminOnly = false; /** @see GFFormDisplay::get_counter_init_script() need to prevent adminOnly */
1412 1112
 
1413
-                        //existent
1414
-                        $entry = $this->get_entry();
1415
-                        $value = NULL;
1416
-                        if( isset( $entry[ $field->id ] ) ) {
1417
-                            $value = json_decode( $entry[ $field->id ], true );
1418
-                        }
1113
+		$field_value = $this->get_field_value( $field );
1419 1114
 
1420
-                        // count uploaded files and existent entry files
1421
-                        $count_files = count( $file_names ) + count( $value );
1115
+		// Prevent any PHP warnings, like undefined index
1116
+		ob_start();
1422 1117
 
1423
-                        if( $count_files > $field->maxFiles ) {
1424
-                            $field->validation_message = __( 'Maximum number of files reached', 'gravityview' );
1425
-                            $field->failed_validation = 1;
1426
-                            $gv_valid = false;
1118
+		$return = null;
1427 1119
 
1428
-                            // in case of error make sure the newest upload files are removed from the upload input
1429
-                            GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ] = null;
1430
-                        }
1120
+		/** @var GravityView_Field $gv_field */
1121
+		if( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) ) {
1122
+			$return = $gv_field->get_field_input( $this->form, $field_value, $this->entry, $field );
1123
+		} else {
1124
+			$return = $field->get_field_input( $this->form, $field_value, $this->entry );
1125
+		}
1431 1126
 
1432
-                    }
1127
+		// If there was output, it's an error
1128
+		$warnings = ob_get_clean();
1433 1129
 
1130
+		if( !empty( $warnings ) ) {
1131
+			do_action( 'gravityview_log_error', __METHOD__ . $warnings, $field_value );
1132
+		}
1434 1133
 
1435
-                    break;
1134
+		return $return;
1135
+	}
1436 1136
 
1437
-            }
1137
+	/**
1138
+	 * Modify the value for the current field input
1139
+	 *
1140
+	 * @param GF_Field $field
1141
+	 *
1142
+	 * @return array|mixed|string
1143
+	 */
1144
+	private function get_field_value( $field ) {
1438 1145
 
1439
-            // This field has failed validation.
1440
-            if( !empty( $field->failed_validation ) ) {
1146
+		/**
1147
+		 * @filter `gravityview/edit_entry/pre_populate/override` Allow the pre-populated value to override saved value in Edit Entry form. By default, pre-populate mechanism only kicks on empty fields.
1148
+		 * @param boolean True: override saved values; False: don't override (default)
1149
+		 * @param $field GF_Field object Gravity Forms field object
1150
+		 * @since 1.13
1151
+		 */
1152
+		$override_saved_value = apply_filters( 'gravityview/edit_entry/pre_populate/override', false, $field );
1441 1153
 
1442
-                do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field is invalid.', array( 'field' => $field, 'value' => $value ) );
1154
+		// We're dealing with multiple inputs (e.g. checkbox) but not time or date (as it doesn't store data in input IDs)
1155
+		if( isset( $field->inputs ) && is_array( $field->inputs ) && !in_array( $field->type, array( 'time', 'date' ) ) ) {
1443 1156
 
1444
-                switch ( $field_type ) {
1157
+			$field_value = array();
1445 1158
 
1446
-                    // Captchas don't need to be re-entered.
1447
-                    case 'captcha':
1159
+			// only accept pre-populated values if the field doesn't have any choice selected.
1160
+			$allow_pre_populated = $field->allowsPrepopulate;
1448 1161
 
1449
-                        // Post Image fields aren't editable, so we un-fail them.
1450
-                    case 'post_image':
1451
-                        $field->failed_validation = false;
1452
-                        unset( $field->validation_message );
1453
-                        break;
1162
+			foreach ( (array)$field->inputs as $input ) {
1454 1163
 
1455
-                }
1164
+				$input_id = strval( $input['id'] );
1165
+                
1166
+				if ( isset( $this->entry[ $input_id ] ) && ! gv_empty( $this->entry[ $input_id ], false, false ) ) {
1167
+					$field_value[ $input_id ] =  'post_category' === $field->type ? GFCommon::format_post_category( $this->entry[ $input_id ], true ) : $this->entry[ $input_id ];
1168
+					$allow_pre_populated = false;
1169
+				}
1456 1170
 
1457
-                // You can't continue inside a switch, so we do it after.
1458
-                if( empty( $field->failed_validation ) ) {
1459
-                    continue;
1460
-                }
1171
+			}
1461 1172
 
1462
-                // checks if the No Duplicates option is not validating entry against itself, since
1463
-                // we're editing a stored entry, it would also assume it's a duplicate.
1464
-                if( !empty( $field->noDuplicates ) ) {
1173
+			$pre_value = $field->get_value_submission( array(), false );
1465 1174
 
1466
-                    $entry = $this->get_entry();
1175
+			$field_value = ! $allow_pre_populated && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $field_value : $pre_value;
1467 1176
 
1468
-                    // If the value of the entry is the same as the stored value
1469
-                    // Then we can assume it's not a duplicate, it's the same.
1470
-                    if( !empty( $entry ) && $value == $entry[ $field->id ] ) {
1471
-                        //if value submitted was not changed, then don't validate
1472
-                        $field->failed_validation = false;
1177
+		} else {
1473 1178
 
1474
-                        unset( $field->validation_message );
1179
+			$id = intval( $field->id );
1475 1180
 
1476
-                        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field not a duplicate; it is the same entry.', $entry );
1181
+			// get pre-populated value if exists
1182
+			$pre_value = $field->allowsPrepopulate ? GFFormsModel::get_parameter_value( $field->inputName, array(), $field ) : '';
1477 1183
 
1478
-                        continue;
1479
-                    }
1480
-                }
1184
+			// saved field entry value (if empty, fallback to the pre-populated value, if exists)
1185
+			// or pre-populated value if not empty and set to override saved value
1186
+			$field_value = !gv_empty( $this->entry[ $id ], false, false ) && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $this->entry[ $id ] : $pre_value;
1481 1187
 
1482
-                // if here then probably we are facing the validation 'At least one field must be filled out'
1483
-                if( GFFormDisplay::is_empty( $field, $this->form_id  ) && empty( $field->isRequired ) ) {
1484
-                    unset( $field->validation_message );
1485
-	                $field->validation_message = false;
1486
-                    continue;
1487
-                }
1188
+			// in case field is post_category but inputType is select, multi-select or radio, convert value into array of category IDs.
1189
+			if ( 'post_category' === $field->type && !gv_empty( $field_value, false, false ) ) {
1190
+				$categories = array();
1191
+				foreach ( explode( ',', $field_value ) as $cat_string ) {
1192
+					$categories[] = GFCommon::format_post_category( $cat_string, true );
1193
+				}
1194
+				$field_value = 'multiselect' === $field->get_input_type() ? $categories : implode( '', $categories );
1195
+			}
1196
+
1197
+		}
1198
+
1199
+		// if value is empty get the default value if defined
1200
+		$field_value = $field->get_value_default_if_empty( $field_value );
1201
+
1202
+		/**
1203
+		 * @filter `gravityview/edit_entry/field_value` Change the value of an Edit Entry field, if needed
1204
+		 * @since 1.11
1205
+		 * @since 1.20 Added third param
1206
+		 * @param mixed $field_value field value used to populate the input
1207
+		 * @param object $field Gravity Forms field object ( Class GF_Field )
1208
+		 * @param GravityView_Edit_Entry_Render $this Current object
1209
+		 */
1210
+		$field_value = apply_filters( 'gravityview/edit_entry/field_value', $field_value, $field, $this );
1211
+
1212
+		/**
1213
+		 * @filter `gravityview/edit_entry/field_value_{field_type}` Change the value of an Edit Entry field for a specific field type
1214
+		 * @since 1.17
1215
+		 * @since 1.20 Added third param
1216
+		 * @param mixed $field_value field value used to populate the input
1217
+		 * @param GF_Field $field Gravity Forms field object
1218
+		 * @param GravityView_Edit_Entry_Render $this Current object
1219
+		 */
1220
+		$field_value = apply_filters( 'gravityview/edit_entry/field_value_' . $field->type , $field_value, $field, $this );
1221
+
1222
+		return $field_value;
1223
+	}
1224
+
1225
+
1226
+	// ---- Entry validation
1227
+
1228
+	/**
1229
+	 * Add field keys that Gravity Forms expects.
1230
+	 *
1231
+	 * @see GFFormDisplay::validate()
1232
+	 * @param  array $form GF Form
1233
+	 * @return array       Modified GF Form
1234
+	 */
1235
+	public function gform_pre_validation( $form ) {
1236
+
1237
+		if( ! $this->verify_nonce() ) {
1238
+			return $form;
1239
+		}
1240
+
1241
+		// Fix PHP warning regarding undefined index.
1242
+		foreach ( $form['fields'] as &$field) {
1243
+
1244
+			// This is because we're doing admin form pretending to be front-end, so Gravity Forms
1245
+			// expects certain field array items to be set.
1246
+			foreach ( array( 'noDuplicates', 'adminOnly', 'inputType', 'isRequired', 'enablePrice', 'inputs', 'allowedExtensions' ) as $key ) {
1247
+				$field->{$key} = isset( $field->{$key} ) ? $field->{$key} : NULL;
1248
+			}
1249
+
1250
+			switch( RGFormsModel::get_input_type( $field ) ) {
1251
+
1252
+				/**
1253
+				 * this whole fileupload hack is because in the admin, Gravity Forms simply doesn't update any fileupload field if it's empty, but it DOES in the frontend.
1254
+				 *
1255
+				 * What we have to do is set the value so that it doesn't get overwritten as empty on save and appears immediately in the Edit Entry screen again.
1256
+				 *
1257
+				 * @hack
1258
+				 */
1259
+				case 'fileupload':
1260
+
1261
+					// Set the previous value
1262
+					$entry = $this->get_entry();
1263
+
1264
+					$input_name = 'input_'.$field->id;
1265
+					$form_id = $form['id'];
1266
+
1267
+					$value = NULL;
1268
+
1269
+					// Use the previous entry value as the default.
1270
+					if( isset( $entry[ $field->id ] ) ) {
1271
+						$value = $entry[ $field->id ];
1272
+					}
1273
+
1274
+					// If this is a single upload file
1275
+					if( !empty( $_FILES[ $input_name ] ) && !empty( $_FILES[ $input_name ]['name'] ) ) {
1276
+						$file_path = GFFormsModel::get_file_upload_path( $form['id'], $_FILES[ $input_name ]['name'] );
1277
+						$value = $file_path['url'];
1278
+
1279
+					} else {
1280
+
1281
+						// Fix PHP warning on line 1498 of form_display.php for post_image fields
1282
+						// Fix PHP Notice:  Undefined index:  size in form_display.php on line 1511
1283
+						$_FILES[ $input_name ] = array('name' => '', 'size' => '' );
1284
+
1285
+					}
1286
+
1287
+					if( rgar($field, "multipleFiles") ) {
1488 1288
 
1489
-                $gv_valid = false;
1289
+						// If there are fresh uploads, process and merge them.
1290
+						// Otherwise, use the passed values, which should be json-encoded array of URLs
1291
+						if( isset( GFFormsModel::$uploaded_files[$form_id][$input_name] ) ) {
1292
+							$value = empty( $value ) ? '[]' : $value;
1293
+							$value = stripslashes_deep( $value );
1294
+							$value = GFFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'], array());
1295
+						}
1490 1296
 
1491
-            }
1297
+					} else {
1492 1298
 
1493
-        }
1299
+						// A file already exists when editing an entry
1300
+						// We set this to solve issue when file upload fields are required.
1301
+						GFFormsModel::$uploaded_files[ $form_id ][ $input_name ] = $value;
1302
+
1303
+					}
1304
+
1305
+					$this->entry[ $input_name ] = $value;
1306
+					$_POST[ $input_name ] = $value;
1307
+
1308
+					break;
1309
+
1310
+				case 'number':
1311
+					// Fix "undefined index" issue at line 1286 in form_display.php
1312
+					if( !isset( $_POST['input_'.$field->id ] ) ) {
1313
+						$_POST['input_'.$field->id ] = NULL;
1314
+					}
1315
+					break;
1316
+			}
1317
+
1318
+		}
1319
+
1320
+		return $form;
1321
+	}
1322
+
1323
+
1324
+	/**
1325
+	 * Process validation for a edit entry submission
1326
+	 *
1327
+	 * Sets the `is_valid` object var
1328
+	 *
1329
+	 * @return void
1330
+	 */
1331
+	private function validate() {
1332
+
1333
+		/**
1334
+		 * If using GF User Registration Add-on, remove the validation step, otherwise generates error when updating the entry
1335
+		 * GF User Registration Add-on version > 3.x has a different class name
1336
+		 * @since 1.16.2
1337
+		 */
1338
+		if ( class_exists( 'GF_User_Registration' ) ) {
1339
+			remove_filter( 'gform_validation', array( GF_User_Registration::get_instance(), 'validate' ) );
1340
+		} else  if ( class_exists( 'GFUser' ) ) {
1341
+			remove_filter( 'gform_validation', array( 'GFUser', 'user_registration_validation' ) );
1342
+		}
1343
+
1344
+
1345
+		/**
1346
+		 * For some crazy reason, Gravity Forms doesn't validate Edit Entry form submissions.
1347
+		 * You can enter whatever you want!
1348
+		 * We try validating, and customize the results using `self::custom_validation()`
1349
+		 */
1350
+		add_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10, 4);
1351
+
1352
+		// Needed by the validate funtion
1353
+		$failed_validation_page = NULL;
1354
+		$field_values = RGForms::post( 'gform_field_values' );
1355
+
1356
+		// Prevent entry limit from running when editing an entry, also
1357
+		// prevent form scheduling from preventing editing
1358
+		unset( $this->form['limitEntries'], $this->form['scheduleForm'] );
1359
+
1360
+		// Hide fields depending on Edit Entry settings
1361
+		$this->form['fields'] = $this->get_configured_edit_fields( $this->form, $this->view_id );
1362
+
1363
+		$this->is_valid = GFFormDisplay::validate( $this->form, $field_values, 1, $failed_validation_page );
1364
+
1365
+		remove_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10 );
1366
+	}
1367
+
1368
+
1369
+	/**
1370
+	 * Make validation work for Edit Entry
1371
+	 *
1372
+	 * Because we're calling the GFFormDisplay::validate() in an unusual way (as a front-end
1373
+	 * form pretending to be a back-end form), validate() doesn't know we _can't_ edit post
1374
+	 * fields. This goes through all the fields and if they're an invalid post field, we
1375
+	 * set them as valid. If there are still issues, we'll return false.
1376
+	 *
1377
+	 * @param  [type] $validation_results [description]
1378
+	 * @return [type]                     [description]
1379
+	 */
1380
+	public function custom_validation( $validation_results ) {
1494 1381
 
1495
-        $validation_results['is_valid'] = $gv_valid;
1382
+		do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results: ', $validation_results );
1496 1383
 
1497
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results.', $validation_results );
1384
+		do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
1498 1385
 
1499
-        // We'll need this result when rendering the form ( on GFFormDisplay::get_form )
1500
-        $this->form_after_validation = $validation_results['form'];
1386
+		$gv_valid = true;
1501 1387
 
1502
-        return $validation_results;
1503
-    }
1388
+		foreach ( $validation_results['form']['fields'] as $key => &$field ) {
1504 1389
 
1390
+			$value = RGFormsModel::get_field_value( $field );
1391
+			$field_type = RGFormsModel::get_input_type( $field );
1505 1392
 
1506
-    /**
1507
-     * TODO: This seems to be hacky... we should remove it. Entry is set when updating the form using setup_vars()!
1508
-     * Get the current entry and set it if it's not yet set.
1509
-     * @return array Gravity Forms entry array
1510
-     */
1511
-    public function get_entry() {
1393
+			// Validate always
1394
+			switch ( $field_type ) {
1512 1395
 
1513
-        if( empty( $this->entry ) ) {
1514
-            // Get the database value of the entry that's being edited
1515
-            $this->entry = gravityview_get_entry( GravityView_frontend::is_single_entry() );
1516
-        }
1517 1396
 
1518
-        return $this->entry;
1519
-    }
1397
+				case 'fileupload' :
1398
+				case 'post_image':
1520 1399
 
1400
+					// in case nothing is uploaded but there are already files saved
1401
+					if( !empty( $field->failed_validation ) && !empty( $field->isRequired ) && !empty( $value ) ) {
1402
+						$field->failed_validation = false;
1403
+						unset( $field->validation_message );
1404
+					}
1521 1405
 
1406
+					// validate if multi file upload reached max number of files [maxFiles] => 2
1407
+					if( rgobj( $field, 'maxFiles') && rgobj( $field, 'multipleFiles') ) {
1522 1408
 
1523
-    // --- Filters
1409
+						$input_name = 'input_' . $field->id;
1410
+						//uploaded
1411
+						$file_names = isset( GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] ) ? GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] : array();
1524 1412
 
1525
-    /**
1526
-     * Get the Edit Entry fields as configured in the View
1527
-     *
1528
-     * @since 1.8
1529
-     *
1530
-     * @param int $view_id
1531
-     *
1532
-     * @return array Array of fields that are configured in the Edit tab in the Admin
1533
-     */
1534
-    private function get_configured_edit_fields( $form, $view_id ) {
1413
+						//existent
1414
+						$entry = $this->get_entry();
1415
+						$value = NULL;
1416
+						if( isset( $entry[ $field->id ] ) ) {
1417
+							$value = json_decode( $entry[ $field->id ], true );
1418
+						}
1535 1419
 
1536
-        // Get all fields for form
1420
+						// count uploaded files and existent entry files
1421
+						$count_files = count( $file_names ) + count( $value );
1422
+
1423
+						if( $count_files > $field->maxFiles ) {
1424
+							$field->validation_message = __( 'Maximum number of files reached', 'gravityview' );
1425
+							$field->failed_validation = 1;
1426
+							$gv_valid = false;
1427
+
1428
+							// in case of error make sure the newest upload files are removed from the upload input
1429
+							GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ] = null;
1430
+						}
1431
+
1432
+					}
1433
+
1434
+
1435
+					break;
1436
+
1437
+			}
1438
+
1439
+			// This field has failed validation.
1440
+			if( !empty( $field->failed_validation ) ) {
1441
+
1442
+				do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field is invalid.', array( 'field' => $field, 'value' => $value ) );
1443
+
1444
+				switch ( $field_type ) {
1445
+
1446
+					// Captchas don't need to be re-entered.
1447
+					case 'captcha':
1448
+
1449
+						// Post Image fields aren't editable, so we un-fail them.
1450
+					case 'post_image':
1451
+						$field->failed_validation = false;
1452
+						unset( $field->validation_message );
1453
+						break;
1454
+
1455
+				}
1456
+
1457
+				// You can't continue inside a switch, so we do it after.
1458
+				if( empty( $field->failed_validation ) ) {
1459
+					continue;
1460
+				}
1461
+
1462
+				// checks if the No Duplicates option is not validating entry against itself, since
1463
+				// we're editing a stored entry, it would also assume it's a duplicate.
1464
+				if( !empty( $field->noDuplicates ) ) {
1465
+
1466
+					$entry = $this->get_entry();
1467
+
1468
+					// If the value of the entry is the same as the stored value
1469
+					// Then we can assume it's not a duplicate, it's the same.
1470
+					if( !empty( $entry ) && $value == $entry[ $field->id ] ) {
1471
+						//if value submitted was not changed, then don't validate
1472
+						$field->failed_validation = false;
1473
+
1474
+						unset( $field->validation_message );
1475
+
1476
+						do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field not a duplicate; it is the same entry.', $entry );
1477
+
1478
+						continue;
1479
+					}
1480
+				}
1481
+
1482
+				// if here then probably we are facing the validation 'At least one field must be filled out'
1483
+				if( GFFormDisplay::is_empty( $field, $this->form_id  ) && empty( $field->isRequired ) ) {
1484
+					unset( $field->validation_message );
1485
+					$field->validation_message = false;
1486
+					continue;
1487
+				}
1488
+
1489
+				$gv_valid = false;
1490
+
1491
+			}
1492
+
1493
+		}
1494
+
1495
+		$validation_results['is_valid'] = $gv_valid;
1496
+
1497
+		do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results.', $validation_results );
1498
+
1499
+		// We'll need this result when rendering the form ( on GFFormDisplay::get_form )
1500
+		$this->form_after_validation = $validation_results['form'];
1501
+
1502
+		return $validation_results;
1503
+	}
1504
+
1505
+
1506
+	/**
1507
+	 * TODO: This seems to be hacky... we should remove it. Entry is set when updating the form using setup_vars()!
1508
+	 * Get the current entry and set it if it's not yet set.
1509
+	 * @return array Gravity Forms entry array
1510
+	 */
1511
+	public function get_entry() {
1512
+
1513
+		if( empty( $this->entry ) ) {
1514
+			// Get the database value of the entry that's being edited
1515
+			$this->entry = gravityview_get_entry( GravityView_frontend::is_single_entry() );
1516
+		}
1517
+
1518
+		return $this->entry;
1519
+	}
1520
+
1521
+
1522
+
1523
+	// --- Filters
1524
+
1525
+	/**
1526
+	 * Get the Edit Entry fields as configured in the View
1527
+	 *
1528
+	 * @since 1.8
1529
+	 *
1530
+	 * @param int $view_id
1531
+	 *
1532
+	 * @return array Array of fields that are configured in the Edit tab in the Admin
1533
+	 */
1534
+	private function get_configured_edit_fields( $form, $view_id ) {
1535
+
1536
+		// Get all fields for form
1537 1537
 		if ( defined( 'GRAVITYVIEW_FUTURE_CORE_LOADED' ) ) {
1538 1538
 			if ( \GV\View::exists( $view_id ) ) {
1539 1539
 				$view = \GV\View::by_id( $view_id );
@@ -1544,446 +1544,446 @@  discard block
 block discarded – undo
1544 1544
 			$properties = GravityView_View_Data::getInstance()->get_fields( $view_id );
1545 1545
 		}
1546 1546
 
1547
-        // If edit tab not yet configured, show all fields
1548
-        $edit_fields = !empty( $properties['edit_edit-fields'] ) ? $properties['edit_edit-fields'] : NULL;
1547
+		// If edit tab not yet configured, show all fields
1548
+		$edit_fields = !empty( $properties['edit_edit-fields'] ) ? $properties['edit_edit-fields'] : NULL;
1549 1549
 
1550
-        // Hide fields depending on admin settings
1551
-        $fields = $this->filter_fields( $form['fields'], $edit_fields );
1550
+		// Hide fields depending on admin settings
1551
+		$fields = $this->filter_fields( $form['fields'], $edit_fields );
1552 1552
 
1553
-	    // If Edit Entry fields are configured, remove adminOnly field settings. Otherwise, don't.
1554
-	    $fields = $this->filter_admin_only_fields( $fields, $edit_fields, $form, $view_id );
1553
+		// If Edit Entry fields are configured, remove adminOnly field settings. Otherwise, don't.
1554
+		$fields = $this->filter_admin_only_fields( $fields, $edit_fields, $form, $view_id );
1555 1555
 
1556
-        /**
1557
-         * @filter `gravityview/edit_entry/form_fields` Modify the fields displayed in Edit Entry form
1558
-         * @since 1.17
1559
-         * @param GF_Field[] $fields Gravity Forms form fields
1560
-         * @param array|null $edit_fields Fields for the Edit Entry tab configured in the View Configuration
1561
-         * @param array $form GF Form array (`fields` key modified to have only fields configured to show in Edit Entry)
1562
-         * @param int $view_id View ID
1563
-         */
1564
-        $fields = apply_filters( 'gravityview/edit_entry/form_fields', $fields, $edit_fields, $form, $view_id );
1556
+		/**
1557
+		 * @filter `gravityview/edit_entry/form_fields` Modify the fields displayed in Edit Entry form
1558
+		 * @since 1.17
1559
+		 * @param GF_Field[] $fields Gravity Forms form fields
1560
+		 * @param array|null $edit_fields Fields for the Edit Entry tab configured in the View Configuration
1561
+		 * @param array $form GF Form array (`fields` key modified to have only fields configured to show in Edit Entry)
1562
+		 * @param int $view_id View ID
1563
+		 */
1564
+		$fields = apply_filters( 'gravityview/edit_entry/form_fields', $fields, $edit_fields, $form, $view_id );
1565 1565
 
1566
-        return $fields;
1567
-    }
1568
-
1569
-
1570
-    /**
1571
-     * Filter area fields based on specified conditions
1572
-     *  - This filter removes the fields that have calculation configured
1573
-     *
1574
-     * @uses GravityView_Edit_Entry::user_can_edit_field() Check caps
1575
-     * @access private
1576
-     * @param GF_Field[] $fields
1577
-     * @param array $configured_fields
1578
-     * @since  1.5
1579
-     * @return array $fields
1580
-     */
1581
-    private function filter_fields( $fields, $configured_fields ) {
1582
-
1583
-        if( empty( $fields ) || !is_array( $fields ) ) {
1584
-            return $fields;
1585
-        }
1586
-
1587
-        $edit_fields = array();
1588
-
1589
-        $field_type_blacklist = $this->loader->get_field_blacklist( $this->entry );
1590
-
1591
-        // First, remove blacklist or calculation fields
1592
-        foreach ( $fields as $key => $field ) {
1593
-
1594
-            // Remove the fields that have calculation properties and keep them to be used later
1595
-            // @since 1.16.2
1596
-            if( $field->has_calculation() ) {
1597
-                $this->fields_with_calculation[] = $field;
1598
-                // don't remove the calculation fields on form render.
1599
-            }
1600
-
1601
-            if( in_array( $field->type, $field_type_blacklist ) ) {
1602
-                unset( $fields[ $key ] );
1603
-            }
1604
-        }
1605
-
1606
-        // The Edit tab has not been configured, so we return all fields by default.
1607
-        if( empty( $configured_fields ) ) {
1608
-            return $fields;
1609
-        }
1610
-
1611
-        // The edit tab has been configured, so we loop through to configured settings
1612
-        foreach ( $configured_fields as $configured_field ) {
1613
-
1614
-	        /** @var GF_Field $field */
1615
-	        foreach ( $fields as $field ) {
1616
-
1617
-                if( intval( $configured_field['id'] ) === intval( $field->id ) && $this->user_can_edit_field( $configured_field, false ) ) {
1618
-                    $edit_fields[] = $this->merge_field_properties( $field, $configured_field );
1619
-                    break;
1620
-                }
1621
-
1622
-            }
1623
-
1624
-        }
1625
-
1626
-        return $edit_fields;
1627
-
1628
-    }
1629
-
1630
-    /**
1631
-     * Override GF Form field properties with the ones defined on the View
1632
-     * @param  GF_Field $field GF Form field object
1633
-     * @param  array $field_setting  GV field options
1634
-     * @since  1.5
1635
-     * @return array|GF_Field
1636
-     */
1637
-    private function merge_field_properties( $field, $field_setting ) {
1638
-
1639
-        $return_field = $field;
1640
-
1641
-        if( empty( $field_setting['show_label'] ) ) {
1642
-            $return_field->label = '';
1643
-        } elseif ( !empty( $field_setting['custom_label'] ) ) {
1644
-            $return_field->label = $field_setting['custom_label'];
1645
-        }
1646
-
1647
-        if( !empty( $field_setting['custom_class'] ) ) {
1648
-            $return_field->cssClass .= ' '. gravityview_sanitize_html_class( $field_setting['custom_class'] );
1649
-        }
1650
-
1651
-        /**
1652
-         * Normalize page numbers - avoid conflicts with page validation
1653
-         * @since 1.6
1654
-         */
1655
-        $return_field->pageNumber = 1;
1656
-
1657
-        return $return_field;
1658
-
1659
-    }
1660
-
1661
-    /**
1662
-     * Remove fields that shouldn't be visible based on the Gravity Forms adminOnly field property
1663
-     *
1664
-     * @since 1.9.1
1665
-     *
1666
-     * @param array|GF_Field[] $fields Gravity Forms form fields
1667
-     * @param array|null $edit_fields Fields for the Edit Entry tab configured in the View Configuration
1668
-     * @param array $form GF Form array
1669
-     * @param int $view_id View ID
1670
-     *
1671
-     * @return array Possibly modified form array
1672
-     */
1673
-    private function filter_admin_only_fields( $fields = array(), $edit_fields = null, $form = array(), $view_id = 0 ) {
1674
-
1675
-	    /**
1676
-         * @filter `gravityview/edit_entry/use_gf_admin_only_setting` When Edit tab isn't configured, should the Gravity Forms "Admin Only" field settings be used to control field display to non-admins? Default: true
1677
-	     * If the Edit Entry tab is not configured, adminOnly fields will not be shown to non-administrators.
1678
-	     * If the Edit Entry tab *is* configured, adminOnly fields will be shown to non-administrators, using the configured GV permissions
1679
-	     * @since 1.9.1
1680
-	     * @param boolean $use_gf_adminonly_setting True: Hide field if set to Admin Only in GF and the user is not an admin. False: show field based on GV permissions, ignoring GF permissions.
1681
-	     * @param array $form GF Form array
1682
-	     * @param int $view_id View ID
1683
-	     */
1684
-	    $use_gf_adminonly_setting = apply_filters( 'gravityview/edit_entry/use_gf_admin_only_setting', empty( $edit_fields ), $form, $view_id );
1685
-
1686
-	    if( $use_gf_adminonly_setting && false === GVCommon::has_cap( 'gravityforms_edit_entries', $this->entry['id'] ) ) {
1687
-            foreach( $fields as $k => $field ) {
1688
-                if( $field->adminOnly ) {
1689
-                    unset( $fields[ $k ] );
1690
-                }
1691
-            }
1692
-            return $fields;
1693
-        }
1694
-
1695
-	    foreach( $fields as &$field ) {
1696
-		    $field->adminOnly = false;
1697
-        }
1698
-
1699
-        return $fields;
1700
-    }
1701
-
1702
-    // --- Conditional Logic
1703
-
1704
-    /**
1705
-     * Conditional logic isn't designed to work with forms that already have content. When switching input values,
1706
-     * the dependent fields will be blank.
1707
-     *
1708
-     * Note: This is because GF populates a JavaScript variable with the input values. This is tough to filter at the input level;
1709
-     * via the `gform_field_value` filter; it requires lots of legwork. Doing it at the form level is easier.
1710
-     *
1711
-     * @since 1.17.4
1712
-     *
1713
-     * @param array $form Gravity Forms array object
1714
-     *
1715
-     * @return array $form, modified to fix conditional
1716
-     */
1717
-    function prefill_conditional_logic( $form ) {
1718
-
1719
-        if( ! GFFormDisplay::has_conditional_logic( $form ) ) {
1720
-            return $form;
1721
-        }
1722
-
1723
-        // Have Conditional Logic pre-fill fields as if the data were default values
1724
-        /** @var GF_Field $field */
1725
-        foreach ( $form['fields'] as &$field ) {
1726
-
1727
-            if( 'checkbox' === $field->type ) {
1728
-                foreach ( $field->get_entry_inputs() as $key => $input ) {
1729
-                    $input_id = $input['id'];
1730
-                    $choice = $field->choices[ $key ];
1731
-                    $value = rgar( $this->entry, $input_id );
1732
-                    $match = RGFormsModel::choice_value_match( $field, $choice, $value );
1733
-                    if( $match ) {
1734
-                        $field->choices[ $key ]['isSelected'] = true;
1735
-                    }
1736
-                }
1737
-            } else {
1738
-
1739
-                // We need to run through each field to set the default values
1740
-                foreach ( $this->entry as $field_id => $field_value ) {
1741
-
1742
-                    if( floatval( $field_id ) === floatval( $field->id ) ) {
1743
-
1744
-                        if( 'list' === $field->type ) {
1745
-                            $list_rows = maybe_unserialize( $field_value );
1746
-
1747
-                            $list_field_value = array();
1748
-                            foreach ( (array) $list_rows as $row ) {
1749
-                                foreach ( (array) $row as $column ) {
1750
-                                    $list_field_value[] = $column;
1751
-                                }
1752
-                            }
1753
-
1754
-                            $field->defaultValue = serialize( $list_field_value );
1755
-                        } else {
1756
-                            $field->defaultValue = $field_value;
1757
-                        }
1758
-                    }
1759
-                }
1760
-            }
1761
-        }
1762
-
1763
-        return $form;
1764
-    }
1765
-
1766
-    /**
1767
-     * Remove the conditional logic rules from the form button and the form fields, if needed.
1768
-     *
1769
-     * @todo Merge with caller method
1770
-     * @since 1.9
1771
-     *
1772
-     * @param array $form Gravity Forms form
1773
-     * @return array Modified form, if not using Conditional Logic
1774
-     */
1775
-    private function filter_conditional_logic( $form ) {
1776
-
1777
-        /**
1778
-         * @filter `gravityview/edit_entry/conditional_logic` Should the Edit Entry form use Gravity Forms conditional logic showing/hiding of fields?
1779
-         * @since 1.9
1780
-         * @param bool $use_conditional_logic True: Gravity Forms will show/hide fields just like in the original form; False: conditional logic will be disabled and fields will be shown based on configuration. Default: true
1781
-         * @param array $form Gravity Forms form
1782
-         */
1783
-        $use_conditional_logic = apply_filters( 'gravityview/edit_entry/conditional_logic', true, $form );
1784
-
1785
-        if( $use_conditional_logic ) {
1786
-            return $form;
1787
-        }
1788
-
1789
-        foreach( $form['fields'] as &$field ) {
1790
-            /* @var GF_Field $field */
1791
-            $field->conditionalLogic = null;
1792
-        }
1793
-
1794
-        unset( $form['button']['conditionalLogic'] );
1795
-
1796
-        return $form;
1797
-
1798
-    }
1799
-
1800
-    /**
1801
-     * Disable the Gravity Forms conditional logic script and features on the Edit Entry screen
1802
-     *
1803
-     * @since 1.9
1804
-     *
1805
-     * @param $has_conditional_logic
1806
-     * @param $form
1807
-     * @return mixed
1808
-     */
1809
-    public function manage_conditional_logic( $has_conditional_logic, $form ) {
1810
-
1811
-        if( ! $this->is_edit_entry() ) {
1812
-            return $has_conditional_logic;
1813
-        }
1814
-
1815
-	    /** @see GravityView_Edit_Entry_Render::filter_conditional_logic for filter documentation */
1816
-        return apply_filters( 'gravityview/edit_entry/conditional_logic', $has_conditional_logic, $form );
1817
-    }
1818
-
1819
-
1820
-    // --- User checks and nonces
1821
-
1822
-    /**
1823
-     * Check if the user can edit the entry
1824
-     *
1825
-     * - Is the nonce valid?
1826
-     * - Does the user have the right caps for the entry
1827
-     * - Is the entry in the trash?
1828
-     *
1829
-     * @todo Move to GVCommon
1830
-     *
1831
-     * @param  boolean $echo Show error messages in the form?
1832
-     * @return boolean        True: can edit form. False: nope.
1833
-     */
1834
-    private function user_can_edit_entry( $echo = false ) {
1835
-
1836
-        $error = NULL;
1837
-
1838
-        /**
1839
-         *  1. Permalinks are turned off
1840
-         *  2. There are two entries embedded using oEmbed
1841
-         *  3. One of the entries has just been saved
1842
-         */
1843
-        if( !empty( $_POST['lid'] ) && !empty( $_GET['entry'] ) && ( $_POST['lid'] !== $_GET['entry'] ) ) {
1844
-
1845
-            $error = true;
1846
-
1847
-        }
1848
-
1849
-        if( !empty( $_GET['entry'] ) && (string)$this->entry['id'] !== $_GET['entry'] ) {
1850
-
1851
-            $error = true;
1852
-
1853
-        } elseif( ! $this->verify_nonce() ) {
1854
-
1855
-            /**
1856
-             * If the Entry is embedded, there may be two entries on the same page.
1857
-             * If that's the case, and one is being edited, the other should fail gracefully and not display an error.
1858
-             */
1859
-            if( GravityView_oEmbed::getInstance()->get_entry_id() ) {
1860
-                $error = true;
1861
-            } else {
1862
-                $error = __( 'The link to edit this entry is not valid; it may have expired.', 'gravityview');
1863
-            }
1864
-
1865
-        }
1866
-
1867
-        if( ! GravityView_Edit_Entry::check_user_cap_edit_entry( $this->entry ) ) {
1868
-            $error = __( 'You do not have permission to edit this entry.', 'gravityview');
1869
-        }
1870
-
1871
-        if( $this->entry['status'] === 'trash' ) {
1872
-            $error = __('You cannot edit the entry; it is in the trash.', 'gravityview' );
1873
-        }
1566
+		return $fields;
1567
+	}
1874 1568
 
1875
-        // No errors; everything's fine here!
1876
-        if( empty( $error ) ) {
1877
-            return true;
1878
-        }
1879 1569
 
1880
-        if( $echo && $error !== true ) {
1570
+	/**
1571
+	 * Filter area fields based on specified conditions
1572
+	 *  - This filter removes the fields that have calculation configured
1573
+	 *
1574
+	 * @uses GravityView_Edit_Entry::user_can_edit_field() Check caps
1575
+	 * @access private
1576
+	 * @param GF_Field[] $fields
1577
+	 * @param array $configured_fields
1578
+	 * @since  1.5
1579
+	 * @return array $fields
1580
+	 */
1581
+	private function filter_fields( $fields, $configured_fields ) {
1881 1582
 
1882
-	        $error = esc_html( $error );
1583
+		if( empty( $fields ) || !is_array( $fields ) ) {
1584
+			return $fields;
1585
+		}
1883 1586
 
1884
-	        /**
1885
-	         * @since 1.9
1886
-	         */
1887
-	        if ( ! empty( $this->entry ) ) {
1888
-		        $error .= ' ' . gravityview_get_link( '#', _x('Go back.', 'Link shown when invalid Edit Entry link is clicked', 'gravityview' ), array( 'onclick' => "window.history.go(-1); return false;" ) );
1889
-	        }
1587
+		$edit_fields = array();
1890 1588
 
1891
-            echo GVCommon::generate_notice( wpautop( $error ), 'gv-error error');
1892
-        }
1589
+		$field_type_blacklist = $this->loader->get_field_blacklist( $this->entry );
1893 1590
 
1894
-        do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_entry]' . $error );
1591
+		// First, remove blacklist or calculation fields
1592
+		foreach ( $fields as $key => $field ) {
1895 1593
 
1896
-        return false;
1897
-    }
1898
-
1899
-
1900
-    /**
1901
-     * Check whether a field is editable by the current user, and optionally display an error message
1902
-     * @uses  GravityView_Edit_Entry->check_user_cap_edit_field() Check user capabilities
1903
-     * @param  array  $field Field or field settings array
1904
-     * @param  boolean $echo  Whether to show error message telling user they aren't allowed
1905
-     * @return boolean         True: user can edit the current field; False: nope, they can't.
1906
-     */
1907
-    private function user_can_edit_field( $field, $echo = false ) {
1594
+			// Remove the fields that have calculation properties and keep them to be used later
1595
+			// @since 1.16.2
1596
+			if( $field->has_calculation() ) {
1597
+				$this->fields_with_calculation[] = $field;
1598
+				// don't remove the calculation fields on form render.
1599
+			}
1908 1600
 
1909
-        $error = NULL;
1601
+			if( in_array( $field->type, $field_type_blacklist ) ) {
1602
+				unset( $fields[ $key ] );
1603
+			}
1604
+		}
1910 1605
 
1911
-        if( ! $this->check_user_cap_edit_field( $field ) ) {
1912
-            $error = __( 'You do not have permission to edit this field.', 'gravityview');
1913
-        }
1606
+		// The Edit tab has not been configured, so we return all fields by default.
1607
+		if( empty( $configured_fields ) ) {
1608
+			return $fields;
1609
+		}
1914 1610
 
1915
-        // No errors; everything's fine here!
1916
-        if( empty( $error ) ) {
1917
-            return true;
1918
-        }
1611
+		// The edit tab has been configured, so we loop through to configured settings
1612
+		foreach ( $configured_fields as $configured_field ) {
1919 1613
 
1920
-        if( $echo ) {
1921
-            echo GVCommon::generate_notice( wpautop( esc_html( $error ) ), 'gv-error error');
1922
-        }
1923
-
1924
-        do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_field]' . $error );
1614
+			/** @var GF_Field $field */
1615
+			foreach ( $fields as $field ) {
1925 1616
 
1926
-        return false;
1617
+				if( intval( $configured_field['id'] ) === intval( $field->id ) && $this->user_can_edit_field( $configured_field, false ) ) {
1618
+					$edit_fields[] = $this->merge_field_properties( $field, $configured_field );
1619
+					break;
1620
+				}
1927 1621
 
1928
-    }
1622
+			}
1929 1623
 
1624
+		}
1930 1625
 
1931
-    /**
1932
-     * checks if user has permissions to edit a specific field
1933
-     *
1934
-     * Needs to be used combined with GravityView_Edit_Entry::user_can_edit_field for maximum security!!
1935
-     *
1936
-     * @param  [type] $field [description]
1937
-     * @return bool
1938
-     */
1939
-    private function check_user_cap_edit_field( $field ) {
1626
+		return $edit_fields;
1940 1627
 
1941
-        // If they can edit any entries (as defined in Gravity Forms), we're good.
1942
-        if( GVCommon::has_cap( array( 'gravityforms_edit_entries', 'gravityview_edit_others_entries' ) ) ) {
1943
-            return true;
1944
-        }
1628
+	}
1945 1629
 
1946
-        $field_cap = isset( $field['allow_edit_cap'] ) ? $field['allow_edit_cap'] : false;
1630
+	/**
1631
+	 * Override GF Form field properties with the ones defined on the View
1632
+	 * @param  GF_Field $field GF Form field object
1633
+	 * @param  array $field_setting  GV field options
1634
+	 * @since  1.5
1635
+	 * @return array|GF_Field
1636
+	 */
1637
+	private function merge_field_properties( $field, $field_setting ) {
1947 1638
 
1948
-        // If the field has custom editing capaibilities set, check those
1949
-        if( $field_cap ) {
1950
-            return GVCommon::has_cap( $field['allow_edit_cap'] );
1951
-        }
1952
-
1953
-        return false;
1954
-    }
1639
+		$return_field = $field;
1955 1640
 
1641
+		if( empty( $field_setting['show_label'] ) ) {
1642
+			$return_field->label = '';
1643
+		} elseif ( !empty( $field_setting['custom_label'] ) ) {
1644
+			$return_field->label = $field_setting['custom_label'];
1645
+		}
1956 1646
 
1957
-    /**
1958
-     * Is the current nonce valid for editing the entry?
1959
-     * @return boolean
1960
-     */
1961
-    public function verify_nonce() {
1647
+		if( !empty( $field_setting['custom_class'] ) ) {
1648
+			$return_field->cssClass .= ' '. gravityview_sanitize_html_class( $field_setting['custom_class'] );
1649
+		}
1962 1650
 
1963
-        // Verify form submitted for editing single
1964
-        if( $this->is_edit_entry_submission() ) {
1965
-            $valid = wp_verify_nonce( $_POST[ self::$nonce_field ], self::$nonce_field );
1966
-        }
1651
+		/**
1652
+		 * Normalize page numbers - avoid conflicts with page validation
1653
+		 * @since 1.6
1654
+		 */
1655
+		$return_field->pageNumber = 1;
1967 1656
 
1968
-        // Verify
1969
-        else if( ! $this->is_edit_entry() ) {
1970
-            $valid = false;
1971
-        }
1657
+		return $return_field;
1972 1658
 
1973
-        else {
1974
-            $valid = wp_verify_nonce( $_GET['edit'], self::$nonce_key );
1975
-        }
1659
+	}
1660
+
1661
+	/**
1662
+	 * Remove fields that shouldn't be visible based on the Gravity Forms adminOnly field property
1663
+	 *
1664
+	 * @since 1.9.1
1665
+	 *
1666
+	 * @param array|GF_Field[] $fields Gravity Forms form fields
1667
+	 * @param array|null $edit_fields Fields for the Edit Entry tab configured in the View Configuration
1668
+	 * @param array $form GF Form array
1669
+	 * @param int $view_id View ID
1670
+	 *
1671
+	 * @return array Possibly modified form array
1672
+	 */
1673
+	private function filter_admin_only_fields( $fields = array(), $edit_fields = null, $form = array(), $view_id = 0 ) {
1674
+
1675
+		/**
1676
+		 * @filter `gravityview/edit_entry/use_gf_admin_only_setting` When Edit tab isn't configured, should the Gravity Forms "Admin Only" field settings be used to control field display to non-admins? Default: true
1677
+		 * If the Edit Entry tab is not configured, adminOnly fields will not be shown to non-administrators.
1678
+		 * If the Edit Entry tab *is* configured, adminOnly fields will be shown to non-administrators, using the configured GV permissions
1679
+		 * @since 1.9.1
1680
+		 * @param boolean $use_gf_adminonly_setting True: Hide field if set to Admin Only in GF and the user is not an admin. False: show field based on GV permissions, ignoring GF permissions.
1681
+		 * @param array $form GF Form array
1682
+		 * @param int $view_id View ID
1683
+		 */
1684
+		$use_gf_adminonly_setting = apply_filters( 'gravityview/edit_entry/use_gf_admin_only_setting', empty( $edit_fields ), $form, $view_id );
1685
+
1686
+		if( $use_gf_adminonly_setting && false === GVCommon::has_cap( 'gravityforms_edit_entries', $this->entry['id'] ) ) {
1687
+			foreach( $fields as $k => $field ) {
1688
+				if( $field->adminOnly ) {
1689
+					unset( $fields[ $k ] );
1690
+				}
1691
+			}
1692
+			return $fields;
1693
+		}
1694
+
1695
+		foreach( $fields as &$field ) {
1696
+			$field->adminOnly = false;
1697
+		}
1698
+
1699
+		return $fields;
1700
+	}
1701
+
1702
+	// --- Conditional Logic
1703
+
1704
+	/**
1705
+	 * Conditional logic isn't designed to work with forms that already have content. When switching input values,
1706
+	 * the dependent fields will be blank.
1707
+	 *
1708
+	 * Note: This is because GF populates a JavaScript variable with the input values. This is tough to filter at the input level;
1709
+	 * via the `gform_field_value` filter; it requires lots of legwork. Doing it at the form level is easier.
1710
+	 *
1711
+	 * @since 1.17.4
1712
+	 *
1713
+	 * @param array $form Gravity Forms array object
1714
+	 *
1715
+	 * @return array $form, modified to fix conditional
1716
+	 */
1717
+	function prefill_conditional_logic( $form ) {
1718
+
1719
+		if( ! GFFormDisplay::has_conditional_logic( $form ) ) {
1720
+			return $form;
1721
+		}
1722
+
1723
+		// Have Conditional Logic pre-fill fields as if the data were default values
1724
+		/** @var GF_Field $field */
1725
+		foreach ( $form['fields'] as &$field ) {
1726
+
1727
+			if( 'checkbox' === $field->type ) {
1728
+				foreach ( $field->get_entry_inputs() as $key => $input ) {
1729
+					$input_id = $input['id'];
1730
+					$choice = $field->choices[ $key ];
1731
+					$value = rgar( $this->entry, $input_id );
1732
+					$match = RGFormsModel::choice_value_match( $field, $choice, $value );
1733
+					if( $match ) {
1734
+						$field->choices[ $key ]['isSelected'] = true;
1735
+					}
1736
+				}
1737
+			} else {
1738
+
1739
+				// We need to run through each field to set the default values
1740
+				foreach ( $this->entry as $field_id => $field_value ) {
1741
+
1742
+					if( floatval( $field_id ) === floatval( $field->id ) ) {
1743
+
1744
+						if( 'list' === $field->type ) {
1745
+							$list_rows = maybe_unserialize( $field_value );
1746
+
1747
+							$list_field_value = array();
1748
+							foreach ( (array) $list_rows as $row ) {
1749
+								foreach ( (array) $row as $column ) {
1750
+									$list_field_value[] = $column;
1751
+								}
1752
+							}
1753
+
1754
+							$field->defaultValue = serialize( $list_field_value );
1755
+						} else {
1756
+							$field->defaultValue = $field_value;
1757
+						}
1758
+					}
1759
+				}
1760
+			}
1761
+		}
1762
+
1763
+		return $form;
1764
+	}
1765
+
1766
+	/**
1767
+	 * Remove the conditional logic rules from the form button and the form fields, if needed.
1768
+	 *
1769
+	 * @todo Merge with caller method
1770
+	 * @since 1.9
1771
+	 *
1772
+	 * @param array $form Gravity Forms form
1773
+	 * @return array Modified form, if not using Conditional Logic
1774
+	 */
1775
+	private function filter_conditional_logic( $form ) {
1776
+
1777
+		/**
1778
+		 * @filter `gravityview/edit_entry/conditional_logic` Should the Edit Entry form use Gravity Forms conditional logic showing/hiding of fields?
1779
+		 * @since 1.9
1780
+		 * @param bool $use_conditional_logic True: Gravity Forms will show/hide fields just like in the original form; False: conditional logic will be disabled and fields will be shown based on configuration. Default: true
1781
+		 * @param array $form Gravity Forms form
1782
+		 */
1783
+		$use_conditional_logic = apply_filters( 'gravityview/edit_entry/conditional_logic', true, $form );
1784
+
1785
+		if( $use_conditional_logic ) {
1786
+			return $form;
1787
+		}
1788
+
1789
+		foreach( $form['fields'] as &$field ) {
1790
+			/* @var GF_Field $field */
1791
+			$field->conditionalLogic = null;
1792
+		}
1793
+
1794
+		unset( $form['button']['conditionalLogic'] );
1795
+
1796
+		return $form;
1797
+
1798
+	}
1799
+
1800
+	/**
1801
+	 * Disable the Gravity Forms conditional logic script and features on the Edit Entry screen
1802
+	 *
1803
+	 * @since 1.9
1804
+	 *
1805
+	 * @param $has_conditional_logic
1806
+	 * @param $form
1807
+	 * @return mixed
1808
+	 */
1809
+	public function manage_conditional_logic( $has_conditional_logic, $form ) {
1810
+
1811
+		if( ! $this->is_edit_entry() ) {
1812
+			return $has_conditional_logic;
1813
+		}
1814
+
1815
+		/** @see GravityView_Edit_Entry_Render::filter_conditional_logic for filter documentation */
1816
+		return apply_filters( 'gravityview/edit_entry/conditional_logic', $has_conditional_logic, $form );
1817
+	}
1818
+
1819
+
1820
+	// --- User checks and nonces
1821
+
1822
+	/**
1823
+	 * Check if the user can edit the entry
1824
+	 *
1825
+	 * - Is the nonce valid?
1826
+	 * - Does the user have the right caps for the entry
1827
+	 * - Is the entry in the trash?
1828
+	 *
1829
+	 * @todo Move to GVCommon
1830
+	 *
1831
+	 * @param  boolean $echo Show error messages in the form?
1832
+	 * @return boolean        True: can edit form. False: nope.
1833
+	 */
1834
+	private function user_can_edit_entry( $echo = false ) {
1835
+
1836
+		$error = NULL;
1837
+
1838
+		/**
1839
+		 *  1. Permalinks are turned off
1840
+		 *  2. There are two entries embedded using oEmbed
1841
+		 *  3. One of the entries has just been saved
1842
+		 */
1843
+		if( !empty( $_POST['lid'] ) && !empty( $_GET['entry'] ) && ( $_POST['lid'] !== $_GET['entry'] ) ) {
1844
+
1845
+			$error = true;
1846
+
1847
+		}
1848
+
1849
+		if( !empty( $_GET['entry'] ) && (string)$this->entry['id'] !== $_GET['entry'] ) {
1850
+
1851
+			$error = true;
1852
+
1853
+		} elseif( ! $this->verify_nonce() ) {
1854
+
1855
+			/**
1856
+			 * If the Entry is embedded, there may be two entries on the same page.
1857
+			 * If that's the case, and one is being edited, the other should fail gracefully and not display an error.
1858
+			 */
1859
+			if( GravityView_oEmbed::getInstance()->get_entry_id() ) {
1860
+				$error = true;
1861
+			} else {
1862
+				$error = __( 'The link to edit this entry is not valid; it may have expired.', 'gravityview');
1863
+			}
1864
+
1865
+		}
1866
+
1867
+		if( ! GravityView_Edit_Entry::check_user_cap_edit_entry( $this->entry ) ) {
1868
+			$error = __( 'You do not have permission to edit this entry.', 'gravityview');
1869
+		}
1870
+
1871
+		if( $this->entry['status'] === 'trash' ) {
1872
+			$error = __('You cannot edit the entry; it is in the trash.', 'gravityview' );
1873
+		}
1874
+
1875
+		// No errors; everything's fine here!
1876
+		if( empty( $error ) ) {
1877
+			return true;
1878
+		}
1976 1879
 
1977
-        /**
1978
-         * @filter `gravityview/edit_entry/verify_nonce` Override Edit Entry nonce validation. Return true to declare nonce valid.
1979
-         * @since 1.13
1980
-         * @param int|boolean $valid False if invalid; 1 or 2 when nonce was generated
1981
-         * @param string $nonce_field Key used when validating submissions. Default: is_gv_edit_entry
1982
-         */
1983
-        $valid = apply_filters( 'gravityview/edit_entry/verify_nonce', $valid, self::$nonce_field );
1880
+		if( $echo && $error !== true ) {
1881
+
1882
+			$error = esc_html( $error );
1883
+
1884
+			/**
1885
+			 * @since 1.9
1886
+			 */
1887
+			if ( ! empty( $this->entry ) ) {
1888
+				$error .= ' ' . gravityview_get_link( '#', _x('Go back.', 'Link shown when invalid Edit Entry link is clicked', 'gravityview' ), array( 'onclick' => "window.history.go(-1); return false;" ) );
1889
+			}
1890
+
1891
+			echo GVCommon::generate_notice( wpautop( $error ), 'gv-error error');
1892
+		}
1893
+
1894
+		do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_entry]' . $error );
1895
+
1896
+		return false;
1897
+	}
1898
+
1899
+
1900
+	/**
1901
+	 * Check whether a field is editable by the current user, and optionally display an error message
1902
+	 * @uses  GravityView_Edit_Entry->check_user_cap_edit_field() Check user capabilities
1903
+	 * @param  array  $field Field or field settings array
1904
+	 * @param  boolean $echo  Whether to show error message telling user they aren't allowed
1905
+	 * @return boolean         True: user can edit the current field; False: nope, they can't.
1906
+	 */
1907
+	private function user_can_edit_field( $field, $echo = false ) {
1908
+
1909
+		$error = NULL;
1910
+
1911
+		if( ! $this->check_user_cap_edit_field( $field ) ) {
1912
+			$error = __( 'You do not have permission to edit this field.', 'gravityview');
1913
+		}
1914
+
1915
+		// No errors; everything's fine here!
1916
+		if( empty( $error ) ) {
1917
+			return true;
1918
+		}
1984 1919
 
1985
-        return $valid;
1986
-    }
1920
+		if( $echo ) {
1921
+			echo GVCommon::generate_notice( wpautop( esc_html( $error ) ), 'gv-error error');
1922
+		}
1923
+
1924
+		do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_field]' . $error );
1925
+
1926
+		return false;
1927
+
1928
+	}
1929
+
1930
+
1931
+	/**
1932
+	 * checks if user has permissions to edit a specific field
1933
+	 *
1934
+	 * Needs to be used combined with GravityView_Edit_Entry::user_can_edit_field for maximum security!!
1935
+	 *
1936
+	 * @param  [type] $field [description]
1937
+	 * @return bool
1938
+	 */
1939
+	private function check_user_cap_edit_field( $field ) {
1940
+
1941
+		// If they can edit any entries (as defined in Gravity Forms), we're good.
1942
+		if( GVCommon::has_cap( array( 'gravityforms_edit_entries', 'gravityview_edit_others_entries' ) ) ) {
1943
+			return true;
1944
+		}
1945
+
1946
+		$field_cap = isset( $field['allow_edit_cap'] ) ? $field['allow_edit_cap'] : false;
1947
+
1948
+		// If the field has custom editing capaibilities set, check those
1949
+		if( $field_cap ) {
1950
+			return GVCommon::has_cap( $field['allow_edit_cap'] );
1951
+		}
1952
+
1953
+		return false;
1954
+	}
1955
+
1956
+
1957
+	/**
1958
+	 * Is the current nonce valid for editing the entry?
1959
+	 * @return boolean
1960
+	 */
1961
+	public function verify_nonce() {
1962
+
1963
+		// Verify form submitted for editing single
1964
+		if( $this->is_edit_entry_submission() ) {
1965
+			$valid = wp_verify_nonce( $_POST[ self::$nonce_field ], self::$nonce_field );
1966
+		}
1967
+
1968
+		// Verify
1969
+		else if( ! $this->is_edit_entry() ) {
1970
+			$valid = false;
1971
+		}
1972
+
1973
+		else {
1974
+			$valid = wp_verify_nonce( $_GET['edit'], self::$nonce_key );
1975
+		}
1976
+
1977
+		/**
1978
+		 * @filter `gravityview/edit_entry/verify_nonce` Override Edit Entry nonce validation. Return true to declare nonce valid.
1979
+		 * @since 1.13
1980
+		 * @param int|boolean $valid False if invalid; 1 or 2 when nonce was generated
1981
+		 * @param string $nonce_field Key used when validating submissions. Default: is_gv_edit_entry
1982
+		 */
1983
+		$valid = apply_filters( 'gravityview/edit_entry/verify_nonce', $valid, self::$nonce_field );
1984
+
1985
+		return $valid;
1986
+	}
1987 1987
 
1988 1988
 
1989 1989
 	/**
Please login to merge, or discard this patch.
Spacing   +226 added lines, -226 removed lines patch added patch discarded remove patch
@@ -106,16 +106,16 @@  discard block
 block discarded – undo
106 106
     function load() {
107 107
 
108 108
         /** @define "GRAVITYVIEW_DIR" "../../../" */
109
-        include_once( GRAVITYVIEW_DIR .'includes/class-admin-approve-entries.php' );
109
+        include_once( GRAVITYVIEW_DIR . 'includes/class-admin-approve-entries.php' );
110 110
 
111 111
         // Don't display an embedded form when editing an entry
112 112
         add_action( 'wp_head', array( $this, 'prevent_render_form' ) );
113 113
         add_action( 'wp_footer', array( $this, 'prevent_render_form' ) );
114 114
 
115 115
         // Stop Gravity Forms processing what is ours!
116
-        add_filter( 'wp', array( $this, 'prevent_maybe_process_form'), 8 );
116
+        add_filter( 'wp', array( $this, 'prevent_maybe_process_form' ), 8 );
117 117
 
118
-        add_filter( 'gravityview_is_edit_entry', array( $this, 'is_edit_entry') );
118
+        add_filter( 'gravityview_is_edit_entry', array( $this, 'is_edit_entry' ) );
119 119
 
120 120
         add_action( 'gravityview_edit_entry', array( $this, 'init' ) );
121 121
 
@@ -126,7 +126,7 @@  discard block
 block discarded – undo
126 126
         add_filter( 'gform_plupload_settings', array( $this, 'modify_fileupload_settings' ), 10, 3 );
127 127
 
128 128
         // Add fields expected by GFFormDisplay::validate()
129
-        add_filter( 'gform_pre_validation', array( $this, 'gform_pre_validation') );
129
+        add_filter( 'gform_pre_validation', array( $this, 'gform_pre_validation' ) );
130 130
 
131 131
 		// Fix multiselect value for GF 2.2
132 132
 		add_filter( 'gravityview/edit_entry/field_value_multiselect', array( $this, 'fix_multiselect_value_serialization' ), 10, 3 );
@@ -143,8 +143,8 @@  discard block
 block discarded – undo
143 143
      * @return void
144 144
      */
145 145
     public function prevent_render_form() {
146
-        if( $this->is_edit_entry() ) {
147
-            if( 'wp_head' === current_filter() ) {
146
+        if ( $this->is_edit_entry() ) {
147
+            if ( 'wp_head' === current_filter() ) {
148 148
                 add_filter( 'gform_shortcode_form', '__return_empty_string' );
149 149
             } else {
150 150
                 remove_filter( 'gform_shortcode_form', '__return_empty_string' );
@@ -159,13 +159,13 @@  discard block
 block discarded – undo
159 159
      */
160 160
     public function prevent_maybe_process_form() {
161 161
 
162
-        if( ! empty( $_POST ) ) {
162
+        if ( ! empty( $_POST ) ) {
163 163
 	        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[prevent_maybe_process_form] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
164 164
         }
165 165
 
166
-        if( $this->is_edit_entry_submission() ) {
167
-            remove_action( 'wp',  array( 'RGForms', 'maybe_process_form'), 9 );
168
-	        remove_action( 'wp',  array( 'GFForms', 'maybe_process_form'), 9 );
166
+        if ( $this->is_edit_entry_submission() ) {
167
+            remove_action( 'wp', array( 'RGForms', 'maybe_process_form' ), 9 );
168
+	        remove_action( 'wp', array( 'GFForms', 'maybe_process_form' ), 9 );
169 169
         }
170 170
     }
171 171
 
@@ -175,7 +175,7 @@  discard block
 block discarded – undo
175 175
      */
176 176
     public function is_edit_entry() {
177 177
 
178
-        $is_edit_entry = GravityView_frontend::is_single_entry() && ! empty( $_GET['edit'] );
178
+        $is_edit_entry = GravityView_frontend::is_single_entry() && ! empty( $_GET[ 'edit' ] );
179 179
 
180 180
         return ( $is_edit_entry || $this->is_edit_entry_submission() );
181 181
     }
@@ -186,7 +186,7 @@  discard block
 block discarded – undo
186 186
 	 * @return boolean
187 187
 	 */
188 188
 	public function is_edit_entry_submission() {
189
-		return !empty( $_POST[ self::$nonce_field ] );
189
+		return ! empty( $_POST[ self::$nonce_field ] );
190 190
 	}
191 191
 
192 192
     /**
@@ -197,15 +197,15 @@  discard block
 block discarded – undo
197 197
 
198 198
 
199 199
         $entries = $gravityview_view->getEntries();
200
-	    self::$original_entry = $entries[0];
201
-	    $this->entry = $entries[0];
200
+	    self::$original_entry = $entries[ 0 ];
201
+	    $this->entry = $entries[ 0 ];
202 202
 
203 203
         self::$original_form = $gravityview_view->getForm();
204 204
         $this->form = $gravityview_view->getForm();
205 205
         $this->form_id = $gravityview_view->getFormId();
206 206
         $this->view_id = $gravityview_view->getViewId();
207 207
 
208
-        self::$nonce_key = GravityView_Edit_Entry::get_nonce_key( $this->view_id, $this->form_id, $this->entry['id'] );
208
+        self::$nonce_key = GravityView_Edit_Entry::get_nonce_key( $this->view_id, $this->form_id, $this->entry[ 'id' ] );
209 209
     }
210 210
 
211 211
 
@@ -226,14 +226,14 @@  discard block
 block discarded – undo
226 226
 
227 227
         // Multiple Views embedded, don't proceed if nonce fails
228 228
 		$multiple_views = defined( 'GRAVITYVIEW_FUTURE_CORE_LOADED' ) ? gravityview()->views->count() > 1 : $gv_data->has_multiple_views();
229
-        if( $multiple_views && ! wp_verify_nonce( $_GET['edit'], self::$nonce_key ) ) {
230
-            do_action('gravityview_log_error', __METHOD__ . ': Nonce validation failed for the Edit Entry request; returning' );
229
+        if ( $multiple_views && ! wp_verify_nonce( $_GET[ 'edit' ], self::$nonce_key ) ) {
230
+            do_action( 'gravityview_log_error', __METHOD__ . ': Nonce validation failed for the Edit Entry request; returning' );
231 231
             return;
232 232
         }
233 233
 
234 234
         // Sorry, you're not allowed here.
235
-        if( false === $this->user_can_edit_entry( true ) ) {
236
-            do_action('gravityview_log_error', __METHOD__ . ': User is not allowed to edit this entry; returning', $this->entry );
235
+        if ( false === $this->user_can_edit_entry( true ) ) {
236
+            do_action( 'gravityview_log_error', __METHOD__ . ': User is not allowed to edit this entry; returning', $this->entry );
237 237
             return;
238 238
         }
239 239
 
@@ -253,9 +253,9 @@  discard block
 block discarded – undo
253 253
     private function print_scripts() {
254 254
         $gravityview_view = GravityView_View::getInstance();
255 255
 
256
-        wp_register_script( 'gform_gravityforms', GFCommon::get_base_url().'/js/gravityforms.js', array( 'jquery', 'gform_json', 'gform_placeholder', 'sack', 'plupload-all', 'gravityview-fe-view' ) );
256
+        wp_register_script( 'gform_gravityforms', GFCommon::get_base_url() . '/js/gravityforms.js', array( 'jquery', 'gform_json', 'gform_placeholder', 'sack', 'plupload-all', 'gravityview-fe-view' ) );
257 257
 
258
-        GFFormDisplay::enqueue_form_scripts($gravityview_view->getForm(), false);
258
+        GFFormDisplay::enqueue_form_scripts( $gravityview_view->getForm(), false );
259 259
 
260 260
         // Sack is required for images
261 261
         wp_print_scripts( array( 'sack', 'gform_gravityforms' ) );
@@ -267,32 +267,32 @@  discard block
 block discarded – undo
267 267
      */
268 268
     private function process_save() {
269 269
 
270
-        if( empty( $_POST ) || ! isset( $_POST['lid'] ) ) {
270
+        if ( empty( $_POST ) || ! isset( $_POST[ 'lid' ] ) ) {
271 271
             return;
272 272
         }
273 273
 
274 274
         // Make sure the entry, view, and form IDs are all correct
275 275
         $valid = $this->verify_nonce();
276 276
 
277
-        if( !$valid ) {
278
-            do_action('gravityview_log_error', __METHOD__ . ' Nonce validation failed.' );
277
+        if ( ! $valid ) {
278
+            do_action( 'gravityview_log_error', __METHOD__ . ' Nonce validation failed.' );
279 279
             return;
280 280
         }
281 281
 
282
-        if( $this->entry['id'] !== $_POST['lid'] ) {
283
-            do_action('gravityview_log_error', __METHOD__ . ' Entry ID did not match posted entry ID.' );
282
+        if ( $this->entry[ 'id' ] !== $_POST[ 'lid' ] ) {
283
+            do_action( 'gravityview_log_error', __METHOD__ . ' Entry ID did not match posted entry ID.' );
284 284
             return;
285 285
         }
286 286
 
287
-        do_action('gravityview_log_debug', __METHOD__ . ': $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
287
+        do_action( 'gravityview_log_debug', __METHOD__ . ': $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
288 288
 
289 289
         $this->process_save_process_files( $this->form_id );
290 290
 
291 291
         $this->validate();
292 292
 
293
-        if( $this->is_valid ) {
293
+        if ( $this->is_valid ) {
294 294
 
295
-            do_action('gravityview_log_debug', __METHOD__ . ': Submission is valid.' );
295
+            do_action( 'gravityview_log_debug', __METHOD__ . ': Submission is valid.' );
296 296
 
297 297
             /**
298 298
              * @hack This step is needed to unset the adminOnly from form fields, to add the calculation fields
@@ -302,22 +302,22 @@  discard block
 block discarded – undo
302 302
             /**
303 303
              * @hack to avoid the capability validation of the method save_lead for GF 1.9+
304 304
              */
305
-            unset( $_GET['page'] );
305
+            unset( $_GET[ 'page' ] );
306 306
 
307
-            $date_created = $this->entry['date_created'];
307
+            $date_created = $this->entry[ 'date_created' ];
308 308
 
309 309
             /**
310 310
              * @hack to force Gravity Forms to use $read_value_from_post in GFFormsModel::save_lead()
311 311
              * @since 1.17.2
312 312
              */
313
-            unset( $this->entry['date_created'] );
313
+            unset( $this->entry[ 'date_created' ] );
314 314
 
315 315
             GFFormsModel::save_lead( $form, $this->entry );
316 316
 
317 317
 	        // Delete the values for hidden inputs
318 318
 	        $this->unset_hidden_field_values();
319 319
             
320
-            $this->entry['date_created'] = $date_created;
320
+            $this->entry[ 'date_created' ] = $date_created;
321 321
 
322 322
             // Process calculation fields
323 323
             $this->update_calculation_fields();
@@ -337,10 +337,10 @@  discard block
 block discarded – undo
337 337
              * @param string $entry_id Numeric ID of the entry that was updated
338 338
              * @param GravityView_Edit_Entry_Render $this This object
339 339
              */
340
-            do_action( 'gravityview/edit_entry/after_update', $this->form, $this->entry['id'], $this );
340
+            do_action( 'gravityview/edit_entry/after_update', $this->form, $this->entry[ 'id' ], $this );
341 341
 
342 342
         } else {
343
-            do_action('gravityview_log_error', __METHOD__ . ': Submission is NOT valid.', $this->entry );
343
+            do_action( 'gravityview_log_error', __METHOD__ . ': Submission is NOT valid.', $this->entry );
344 344
         }
345 345
 
346 346
     } // process_save
@@ -357,8 +357,8 @@  discard block
 block discarded – undo
357 357
     private function unset_hidden_field_values() {
358 358
 	    global $wpdb;
359 359
 
360
-	    $lead_detail_table      = GFFormsModel::get_lead_details_table_name();
361
-	    $current_fields   = $wpdb->get_results( $wpdb->prepare( "SELECT id, field_number FROM $lead_detail_table WHERE lead_id=%d", $this->entry['id'] ) );
360
+	    $lead_detail_table = GFFormsModel::get_lead_details_table_name();
361
+	    $current_fields = $wpdb->get_results( $wpdb->prepare( "SELECT id, field_number FROM $lead_detail_table WHERE lead_id=%d", $this->entry[ 'id' ] ) );
362 362
 
363 363
 	    foreach ( $this->entry as $input_id => $field_value ) {
364 364
 
@@ -438,7 +438,7 @@  discard block
 block discarded – undo
438 438
 		}
439 439
 
440 440
 		/** No file is being uploaded. */
441
-		if ( empty( $_FILES[ $input_name ]['name'] ) ) {
441
+		if ( empty( $_FILES[ $input_name ][ 'name' ] ) ) {
442 442
 			/** So return the original upload */
443 443
 			return $entry[ $input_id ];
444 444
 		}
@@ -456,11 +456,11 @@  discard block
 block discarded – undo
456 456
      * @return mixed
457 457
      */
458 458
     public function modify_fileupload_settings( $plupload_init, $form_id, $instance ) {
459
-        if( ! $this->is_edit_entry() ) {
459
+        if ( ! $this->is_edit_entry() ) {
460 460
             return $plupload_init;
461 461
         }
462 462
 
463
-        $plupload_init['gf_vars']['max_files'] = 0;
463
+        $plupload_init[ 'gf_vars' ][ 'max_files' ] = 0;
464 464
 
465 465
         return $plupload_init;
466 466
     }
@@ -475,22 +475,22 @@  discard block
 block discarded – undo
475 475
         $form = $this->form;
476 476
 
477 477
 	    /** @var GF_Field $field */
478
-        foreach( $form['fields'] as $k => &$field ) {
478
+        foreach ( $form[ 'fields' ] as $k => &$field ) {
479 479
 
480 480
             /**
481 481
              * Remove the fields with calculation formulas before save to avoid conflicts with GF logic
482 482
              * @since 1.16.3
483 483
              * @var GF_Field $field
484 484
              */
485
-            if( $field->has_calculation() ) {
486
-                unset( $form['fields'][ $k ] );
485
+            if ( $field->has_calculation() ) {
486
+                unset( $form[ 'fields' ][ $k ] );
487 487
             }
488 488
 
489 489
             $field->adminOnly = false;
490 490
 
491
-            if( isset( $field->inputs ) && is_array( $field->inputs ) ) {
492
-                foreach( $field->inputs as $key => $input ) {
493
-                    $field->inputs[ $key ][ 'id' ] = (string)$input['id'];
491
+            if ( isset( $field->inputs ) && is_array( $field->inputs ) ) {
492
+                foreach ( $field->inputs as $key => $input ) {
493
+                    $field->inputs[ $key ][ 'id' ] = (string)$input[ 'id' ];
494 494
                 }
495 495
             }
496 496
         }
@@ -504,30 +504,30 @@  discard block
 block discarded – undo
504 504
         $update = false;
505 505
 
506 506
         // get the most up to date entry values
507
-        $entry = GFAPI::get_entry( $this->entry['id'] );
507
+        $entry = GFAPI::get_entry( $this->entry[ 'id' ] );
508 508
 
509
-        if( !empty( $this->fields_with_calculation ) ) {
509
+        if ( ! empty( $this->fields_with_calculation ) ) {
510 510
             $update = true;
511 511
             foreach ( $this->fields_with_calculation as $calc_field ) {
512 512
                 $inputs = $calc_field->get_entry_inputs();
513 513
                 if ( is_array( $inputs ) ) {
514 514
                     foreach ( $inputs as $input ) {
515
-                        $input_name = 'input_' . str_replace( '.', '_', $input['id'] );
516
-                        $entry[ strval( $input['id'] ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
515
+                        $input_name = 'input_' . str_replace( '.', '_', $input[ 'id' ] );
516
+                        $entry[ strval( $input[ 'id' ] ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry[ 'id' ], $entry );
517 517
                     }
518 518
                 } else {
519
-                    $input_name = 'input_' . str_replace( '.', '_', $calc_field->id);
520
-                    $entry[ strval( $calc_field->id ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry['id'], $entry );
519
+                    $input_name = 'input_' . str_replace( '.', '_', $calc_field->id );
520
+                    $entry[ strval( $calc_field->id ) ] = RGFormsModel::prepare_value( $form, $calc_field, '', $input_name, $entry[ 'id' ], $entry );
521 521
                 }
522 522
             }
523 523
 
524 524
         }
525 525
 
526
-        if( $update ) {
526
+        if ( $update ) {
527 527
 
528 528
             $return_entry = GFAPI::update_entry( $entry );
529 529
 
530
-            if( is_wp_error( $return_entry ) ) {
530
+            if ( is_wp_error( $return_entry ) ) {
531 531
                 do_action( 'gravityview_log_error', 'Updating the entry calculation fields failed', $return_entry );
532 532
             } else {
533 533
                 do_action( 'gravityview_log_debug', 'Updating the entry calculation fields succeeded' );
@@ -558,18 +558,18 @@  discard block
 block discarded – undo
558 558
 
559 559
         $input_name = 'input_' . $field_id;
560 560
 
561
-        if ( !empty( $_FILES[ $input_name ]['name'] ) ) {
561
+        if ( ! empty( $_FILES[ $input_name ][ 'name' ] ) ) {
562 562
 
563 563
             // We have a new image
564 564
 
565
-            $value = RGFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'] );
565
+            $value = RGFormsModel::prepare_value( $form, $field, $value, $input_name, $entry[ 'id' ] );
566 566
 
567 567
             $ary = ! empty( $value ) ? explode( '|:|', $value ) : array();
568 568
             $img_url = rgar( $ary, 0 );
569 569
 
570
-            $img_title       = count( $ary ) > 1 ? $ary[1] : '';
571
-            $img_caption     = count( $ary ) > 2 ? $ary[2] : '';
572
-            $img_description = count( $ary ) > 3 ? $ary[3] : '';
570
+            $img_title       = count( $ary ) > 1 ? $ary[ 1 ] : '';
571
+            $img_caption     = count( $ary ) > 2 ? $ary[ 2 ] : '';
572
+            $img_description = count( $ary ) > 3 ? $ary[ 3 ] : '';
573 573
 
574 574
             $image_meta = array(
575 575
                 'post_excerpt' => $img_caption,
@@ -578,7 +578,7 @@  discard block
 block discarded – undo
578 578
 
579 579
             //adding title only if it is not empty. It will default to the file name if it is not in the array
580 580
             if ( ! empty( $img_title ) ) {
581
-                $image_meta['post_title'] = $img_title;
581
+                $image_meta[ 'post_title' ] = $img_title;
582 582
             }
583 583
 
584 584
             /**
@@ -593,13 +593,13 @@  discard block
 block discarded – undo
593 593
                 set_post_thumbnail( $post_id, $media_id );
594 594
             }
595 595
 
596
-        } elseif ( !empty( $_POST[ $input_name ] ) && is_array( $value ) ) {
596
+        } elseif ( ! empty( $_POST[ $input_name ] ) && is_array( $value ) ) {
597 597
 
598 598
             $img_url = $_POST[ $input_name ];
599 599
 
600
-			$img_title       = rgar( $_POST, $input_name.'_1' );
601
-			$img_caption     = rgar( $_POST, $input_name .'_4' );
602
-			$img_description = rgar( $_POST, $input_name .'_7' );
600
+			$img_title       = rgar( $_POST, $input_name . '_1' );
601
+			$img_caption     = rgar( $_POST, $input_name . '_4' );
602
+			$img_description = rgar( $_POST, $input_name . '_7' );
603 603
 
604 604
 			$value = ! empty( $img_url ) ? $img_url . "|:|" . $img_title . "|:|" . $img_caption . "|:|" . $img_description : '';
605 605
 
@@ -637,16 +637,16 @@  discard block
 block discarded – undo
637 637
      */
638 638
     private function maybe_update_post_fields( $form ) {
639 639
 
640
-        if( empty( $this->entry['post_id'] ) ) {
640
+        if ( empty( $this->entry[ 'post_id' ] ) ) {
641 641
 	        do_action( 'gravityview_log_debug', __METHOD__ . ': This entry has no post fields. Continuing...' );
642 642
             return;
643 643
         }
644 644
 
645
-        $post_id = $this->entry['post_id'];
645
+        $post_id = $this->entry[ 'post_id' ];
646 646
 
647 647
         // Security check
648
-        if( false === GVCommon::has_cap( 'edit_post', $post_id ) ) {
649
-            do_action( 'gravityview_log_error', 'The current user does not have the ability to edit Post #'.$post_id );
648
+        if ( false === GVCommon::has_cap( 'edit_post', $post_id ) ) {
649
+            do_action( 'gravityview_log_error', 'The current user does not have the ability to edit Post #' . $post_id );
650 650
             return;
651 651
         }
652 652
 
@@ -658,25 +658,25 @@  discard block
 block discarded – undo
658 658
 
659 659
             $field = RGFormsModel::get_field( $form, $field_id );
660 660
 
661
-            if( ! $field ) {
661
+            if ( ! $field ) {
662 662
                 continue;
663 663
             }
664 664
 
665
-            if( GFCommon::is_post_field( $field ) && 'post_category' !== $field->type ) {
665
+            if ( GFCommon::is_post_field( $field ) && 'post_category' !== $field->type ) {
666 666
 
667 667
                 // Get the value of the field, including $_POSTed value
668 668
                 $value = RGFormsModel::get_field_value( $field );
669 669
 
670 670
                 // Use temporary entry variable, to make values available to fill_post_template() and update_post_image()
671 671
                 $entry_tmp = $this->entry;
672
-                $entry_tmp["{$field_id}"] = $value;
672
+                $entry_tmp[ "{$field_id}" ] = $value;
673 673
 
674
-                switch( $field->type ) {
674
+                switch ( $field->type ) {
675 675
 
676 676
                     case 'post_title':
677 677
                         $post_title = $value;
678
-                        if( rgar( $form, 'postTitleTemplateEnabled' ) ) {
679
-                            $post_title = $this->fill_post_template( $form['postTitleTemplate'], $form, $entry_tmp );
678
+                        if ( rgar( $form, 'postTitleTemplateEnabled' ) ) {
679
+                            $post_title = $this->fill_post_template( $form[ 'postTitleTemplate' ], $form, $entry_tmp );
680 680
                         }
681 681
                         $updated_post->post_title = $post_title;
682 682
                         $updated_post->post_name  = $post_title;
@@ -685,8 +685,8 @@  discard block
 block discarded – undo
685 685
 
686 686
                     case 'post_content':
687 687
                         $post_content = $value;
688
-                        if( rgar( $form, 'postContentTemplateEnabled' ) ) {
689
-                            $post_content = $this->fill_post_template( $form['postContentTemplate'], $form, $entry_tmp, true );
688
+                        if ( rgar( $form, 'postContentTemplateEnabled' ) ) {
689
+                            $post_content = $this->fill_post_template( $form[ 'postContentTemplate' ], $form, $entry_tmp, true );
690 690
                         }
691 691
                         $updated_post->post_content = $post_content;
692 692
                         unset( $post_content );
@@ -700,12 +700,12 @@  discard block
 block discarded – undo
700 700
                     case 'post_category':
701 701
                         break;
702 702
                     case 'post_custom_field':
703
-                        if( ! empty( $field->customFieldTemplateEnabled ) ) {
703
+                        if ( ! empty( $field->customFieldTemplateEnabled ) ) {
704 704
                             $value = $this->fill_post_template( $field->customFieldTemplate, $form, $entry_tmp, true );
705 705
                         }
706 706
 
707 707
 	                    if ( $this->is_field_json_encoded( $field ) && ! is_string( $value ) ) {
708
-		                    $value = function_exists('wp_json_encode') ? wp_json_encode( $value ) : json_encode( $value );
708
+		                    $value = function_exists( 'wp_json_encode' ) ? wp_json_encode( $value ) : json_encode( $value );
709 709
 	                    }
710 710
 
711 711
                         update_post_meta( $post_id, $field->postCustomFieldName, $value );
@@ -718,7 +718,7 @@  discard block
 block discarded – undo
718 718
                 }
719 719
 
720 720
                 // update entry after
721
-                $this->entry["{$field_id}"] = $value;
721
+                $this->entry[ "{$field_id}" ] = $value;
722 722
 
723 723
                 $update_entry = true;
724 724
 
@@ -727,25 +727,25 @@  discard block
 block discarded – undo
727 727
 
728 728
         }
729 729
 
730
-        if( $update_entry ) {
730
+        if ( $update_entry ) {
731 731
 
732 732
             $return_entry = GFAPI::update_entry( $this->entry );
733 733
 
734
-            if( is_wp_error( $return_entry ) ) {
734
+            if ( is_wp_error( $return_entry ) ) {
735 735
                do_action( 'gravityview_log_error', 'Updating the entry post fields failed', array( '$this->entry' => $this->entry, '$return_entry' => $return_entry ) );
736 736
             } else {
737
-                do_action( 'gravityview_log_debug', 'Updating the entry post fields for post #'.$post_id.' succeeded' );
737
+                do_action( 'gravityview_log_debug', 'Updating the entry post fields for post #' . $post_id . ' succeeded' );
738 738
             }
739 739
 
740 740
         }
741 741
 
742 742
         $return_post = wp_update_post( $updated_post, true );
743 743
 
744
-        if( is_wp_error( $return_post ) ) {
744
+        if ( is_wp_error( $return_post ) ) {
745 745
             $return_post->add_data( $updated_post, '$updated_post' );
746 746
             do_action( 'gravityview_log_error', 'Updating the post content failed', compact( 'updated_post', 'return_post' ) );
747 747
         } else {
748
-            do_action( 'gravityview_log_debug', 'Updating the post content for post #'.$post_id.' succeeded', $updated_post );
748
+            do_action( 'gravityview_log_debug', 'Updating the post content for post #' . $post_id . ' succeeded', $updated_post );
749 749
         }
750 750
     }
751 751
 
@@ -763,7 +763,7 @@  discard block
 block discarded – undo
763 763
         $input_type = RGFormsModel::get_input_type( $field );
764 764
 
765 765
 	    // Only certain custom field types are supported
766
-	    switch( $input_type ) {
766
+	    switch ( $input_type ) {
767 767
 		    case 'fileupload':
768 768
 		    case 'list':
769 769
 		    case 'multiselect':
@@ -800,7 +800,7 @@  discard block
 block discarded – undo
800 800
         $output = GFCommon::replace_variables( $output, $form, $entry, false, false, false );
801 801
 
802 802
         // replace conditional shortcodes
803
-        if( $do_shortcode ) {
803
+        if ( $do_shortcode ) {
804 804
             $output = do_shortcode( $output );
805 805
         }
806 806
 
@@ -819,18 +819,18 @@  discard block
 block discarded – undo
819 819
      */
820 820
     private function after_update() {
821 821
 
822
-        do_action( 'gform_after_update_entry', $this->form, $this->entry['id'], self::$original_entry );
823
-        do_action( "gform_after_update_entry_{$this->form['id']}", $this->form, $this->entry['id'], self::$original_entry );
822
+        do_action( 'gform_after_update_entry', $this->form, $this->entry[ 'id' ], self::$original_entry );
823
+        do_action( "gform_after_update_entry_{$this->form[ 'id' ]}", $this->form, $this->entry[ 'id' ], self::$original_entry );
824 824
 
825 825
         // Re-define the entry now that we've updated it.
826
-        $entry = RGFormsModel::get_lead( $this->entry['id'] );
826
+        $entry = RGFormsModel::get_lead( $this->entry[ 'id' ] );
827 827
 
828 828
         $entry = GFFormsModel::set_entry_meta( $entry, $this->form );
829 829
 
830 830
         // We need to clear the cache because Gravity Forms caches the field values, which
831 831
         // we have just updated.
832
-        foreach ($this->form['fields'] as $key => $field) {
833
-            GFFormsModel::refresh_lead_field_value( $entry['id'], $field->id );
832
+        foreach ( $this->form[ 'fields' ] as $key => $field ) {
833
+            GFFormsModel::refresh_lead_field_value( $entry[ 'id' ], $field->id );
834 834
         }
835 835
 
836 836
         $this->entry = $entry;
@@ -848,7 +848,7 @@  discard block
 block discarded – undo
848 848
 
849 849
         <div class="gv-edit-entry-wrapper"><?php
850 850
 
851
-            $javascript = gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/inline-javascript.php', $this );
851
+            $javascript = gravityview_ob_include( GravityView_Edit_Entry::$file . '/partials/inline-javascript.php', $this );
852 852
 
853 853
             /**
854 854
              * Fixes weird wpautop() issue
@@ -864,7 +864,7 @@  discard block
 block discarded – undo
864 864
                      * @param string $edit_entry_title Modify the "Edit Entry" title
865 865
                      * @param GravityView_Edit_Entry_Render $this This object
866 866
                      */
867
-                    $edit_entry_title = apply_filters('gravityview_edit_entry_title', __('Edit Entry', 'gravityview'), $this );
867
+                    $edit_entry_title = apply_filters( 'gravityview_edit_entry_title', __( 'Edit Entry', 'gravityview' ), $this );
868 868
 
869 869
                     echo esc_attr( $edit_entry_title );
870 870
             ?></span>
@@ -910,20 +910,20 @@  discard block
 block discarded – undo
910 910
      */
911 911
     private function maybe_print_message() {
912 912
 
913
-        if( rgpost('action') === 'update' ) {
913
+        if ( rgpost( 'action' ) === 'update' ) {
914 914
 
915 915
             $back_link = esc_url( remove_query_arg( array( 'page', 'view', 'edit' ) ) );
916 916
 
917
-            if( ! $this->is_valid ){
917
+            if ( ! $this->is_valid ) {
918 918
 
919 919
                 // Keeping this compatible with Gravity Forms.
920
-                $validation_message = "<div class='validation_error'>" . __('There was a problem with your submission.', 'gravityview') . " " . __('Errors have been highlighted below.', 'gravityview') . "</div>";
921
-                $message = apply_filters("gform_validation_message_{$this->form['id']}", apply_filters("gform_validation_message", $validation_message, $this->form), $this->form);
920
+                $validation_message = "<div class='validation_error'>" . __( 'There was a problem with your submission.', 'gravityview' ) . " " . __( 'Errors have been highlighted below.', 'gravityview' ) . "</div>";
921
+                $message = apply_filters( "gform_validation_message_{$this->form[ 'id' ]}", apply_filters( "gform_validation_message", $validation_message, $this->form ), $this->form );
922 922
 
923
-                echo GVCommon::generate_notice( $message , 'gv-error' );
923
+                echo GVCommon::generate_notice( $message, 'gv-error' );
924 924
 
925 925
             } else {
926
-                $entry_updated_message = sprintf( esc_attr__('Entry Updated. %sReturn to Entry%s', 'gravityview'), '<a href="'. $back_link .'">', '</a>' );
926
+                $entry_updated_message = sprintf( esc_attr__( 'Entry Updated. %sReturn to Entry%s', 'gravityview' ), '<a href="' . $back_link . '">', '</a>' );
927 927
 
928 928
                 /**
929 929
                  * @filter `gravityview/edit_entry/success` Modify the edit entry success message (including the anchor link)
@@ -933,7 +933,7 @@  discard block
 block discarded – undo
933 933
                  * @param array $entry Gravity Forms entry array
934 934
                  * @param string $back_link URL to return to the original entry. @since 1.6
935 935
                  */
936
-                $message = apply_filters( 'gravityview/edit_entry/success', $entry_updated_message , $this->view_id, $this->entry, $back_link );
936
+                $message = apply_filters( 'gravityview/edit_entry/success', $entry_updated_message, $this->view_id, $this->entry, $back_link );
937 937
 
938 938
                 echo GVCommon::generate_notice( $message );
939 939
             }
@@ -957,21 +957,21 @@  discard block
 block discarded – undo
957 957
          */
958 958
         do_action( 'gravityview/edit-entry/render/before', $this );
959 959
 
960
-        add_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields'), 5000, 3 );
961
-        add_filter( 'gform_submit_button', array( $this, 'render_form_buttons') );
960
+        add_filter( 'gform_pre_render', array( $this, 'filter_modify_form_fields' ), 5000, 3 );
961
+        add_filter( 'gform_submit_button', array( $this, 'render_form_buttons' ) );
962 962
         add_filter( 'gform_disable_view_counter', '__return_true' );
963 963
 
964 964
         add_filter( 'gform_field_input', array( $this, 'verify_user_can_edit_post' ), 5, 5 );
965 965
         add_filter( 'gform_field_input', array( $this, 'modify_edit_field_input' ), 10, 5 );
966 966
 
967 967
         // We need to remove the fake $_GET['page'] arg to avoid rendering form as if in admin.
968
-        unset( $_GET['page'] );
968
+        unset( $_GET[ 'page' ] );
969 969
 
970 970
         // TODO: Verify multiple-page forms
971 971
 
972 972
         ob_start(); // Prevent PHP warnings possibly caused by prefilling list fields for conditional logic
973 973
 
974
-        $html = GFFormDisplay::get_form( $this->form['id'], false, false, true, $this->entry );
974
+        $html = GFFormDisplay::get_form( $this->form[ 'id' ], false, false, true, $this->entry );
975 975
 
976 976
         ob_get_clean();
977 977
 
@@ -997,7 +997,7 @@  discard block
 block discarded – undo
997 997
      * @return string
998 998
      */
999 999
     public function render_form_buttons() {
1000
-        return gravityview_ob_include( GravityView_Edit_Entry::$file .'/partials/form-buttons.php', $this );
1000
+        return gravityview_ob_include( GravityView_Edit_Entry::$file . '/partials/form-buttons.php', $this );
1001 1001
     }
1002 1002
 
1003 1003
 
@@ -1017,10 +1017,10 @@  discard block
 block discarded – undo
1017 1017
     public function filter_modify_form_fields( $form, $ajax = false, $field_values = '' ) {
1018 1018
 
1019 1019
         // In case we have validated the form, use it to inject the validation results into the form render
1020
-        if( isset( $this->form_after_validation ) ) {
1020
+        if ( isset( $this->form_after_validation ) ) {
1021 1021
             $form = $this->form_after_validation;
1022 1022
         } else {
1023
-            $form['fields'] = $this->get_configured_edit_fields( $form, $this->view_id );
1023
+            $form[ 'fields' ] = $this->get_configured_edit_fields( $form, $this->view_id );
1024 1024
         }
1025 1025
 
1026 1026
         $form = $this->filter_conditional_logic( $form );
@@ -1028,8 +1028,8 @@  discard block
 block discarded – undo
1028 1028
         $form = $this->prefill_conditional_logic( $form );
1029 1029
 
1030 1030
         // for now we don't support Save and Continue feature.
1031
-        if( ! self::$supports_save_and_continue ) {
1032
-	        unset( $form['save'] );
1031
+        if ( ! self::$supports_save_and_continue ) {
1032
+	        unset( $form[ 'save' ] );
1033 1033
         }
1034 1034
 
1035 1035
         return $form;
@@ -1050,29 +1050,29 @@  discard block
 block discarded – undo
1050 1050
      */
1051 1051
     public function verify_user_can_edit_post( $field_content = '', $field, $value, $lead_id = 0, $form_id ) {
1052 1052
 
1053
-        if( GFCommon::is_post_field( $field ) ) {
1053
+        if ( GFCommon::is_post_field( $field ) ) {
1054 1054
 
1055 1055
             $message = null;
1056 1056
 
1057 1057
             // First, make sure they have the capability to edit the post.
1058
-            if( false === current_user_can( 'edit_post', $this->entry['post_id'] ) ) {
1058
+            if ( false === current_user_can( 'edit_post', $this->entry[ 'post_id' ] ) ) {
1059 1059
 
1060 1060
                 /**
1061 1061
                  * @filter `gravityview/edit_entry/unsupported_post_field_text` Modify the message when someone isn't able to edit a post
1062 1062
                  * @param string $message The existing "You don't have permission..." text
1063 1063
                  */
1064
-                $message = apply_filters('gravityview/edit_entry/unsupported_post_field_text', __('You don&rsquo;t have permission to edit this post.', 'gravityview') );
1064
+                $message = apply_filters( 'gravityview/edit_entry/unsupported_post_field_text', __( 'You don&rsquo;t have permission to edit this post.', 'gravityview' ) );
1065 1065
 
1066
-            } elseif( null === get_post( $this->entry['post_id'] ) ) {
1066
+            } elseif ( null === get_post( $this->entry[ 'post_id' ] ) ) {
1067 1067
                 /**
1068 1068
                  * @filter `gravityview/edit_entry/no_post_text` Modify the message when someone is editing an entry attached to a post that no longer exists
1069 1069
                  * @param string $message The existing "This field is not editable; the post no longer exists." text
1070 1070
                  */
1071
-                $message = apply_filters('gravityview/edit_entry/no_post_text', __('This field is not editable; the post no longer exists.', 'gravityview' ) );
1071
+                $message = apply_filters( 'gravityview/edit_entry/no_post_text', __( 'This field is not editable; the post no longer exists.', 'gravityview' ) );
1072 1072
             }
1073 1073
 
1074
-            if( $message ) {
1075
-                $field_content = sprintf('<div class="ginput_container ginput_container_' . $field->type . '">%s</div>', wpautop( $message ) );
1074
+            if ( $message ) {
1075
+                $field_content = sprintf( '<div class="ginput_container ginput_container_' . $field->type . '">%s</div>', wpautop( $message ) );
1076 1076
             }
1077 1077
         }
1078 1078
 
@@ -1097,8 +1097,8 @@  discard block
 block discarded – undo
1097 1097
 
1098 1098
         // If the form has been submitted, then we don't need to pre-fill the values,
1099 1099
         // Except for fileupload type and when a field input is overridden- run always!!
1100
-        if(
1101
-            ( $this->is_edit_entry_submission() && !in_array( $field->type, array( 'fileupload', 'post_image' ) ) )
1100
+        if (
1101
+            ( $this->is_edit_entry_submission() && ! in_array( $field->type, array( 'fileupload', 'post_image' ) ) )
1102 1102
             && false === ( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) )
1103 1103
             && ! GFCommon::is_product_field( $field->type )
1104 1104
             || ! empty( $field_content )
@@ -1118,7 +1118,7 @@  discard block
 block discarded – undo
1118 1118
 	    $return = null;
1119 1119
 
1120 1120
         /** @var GravityView_Field $gv_field */
1121
-        if( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) ) {
1121
+        if ( $gv_field && is_callable( array( $gv_field, 'get_field_input' ) ) ) {
1122 1122
             $return = $gv_field->get_field_input( $this->form, $field_value, $this->entry, $field );
1123 1123
         } else {
1124 1124
 	        $return = $field->get_field_input( $this->form, $field_value, $this->entry );
@@ -1127,7 +1127,7 @@  discard block
 block discarded – undo
1127 1127
 	    // If there was output, it's an error
1128 1128
 	    $warnings = ob_get_clean();
1129 1129
 
1130
-	    if( !empty( $warnings ) ) {
1130
+	    if ( ! empty( $warnings ) ) {
1131 1131
 		    do_action( 'gravityview_log_error', __METHOD__ . $warnings, $field_value );
1132 1132
 	    }
1133 1133
 
@@ -1152,7 +1152,7 @@  discard block
 block discarded – undo
1152 1152
         $override_saved_value = apply_filters( 'gravityview/edit_entry/pre_populate/override', false, $field );
1153 1153
 
1154 1154
         // We're dealing with multiple inputs (e.g. checkbox) but not time or date (as it doesn't store data in input IDs)
1155
-        if( isset( $field->inputs ) && is_array( $field->inputs ) && !in_array( $field->type, array( 'time', 'date' ) ) ) {
1155
+        if ( isset( $field->inputs ) && is_array( $field->inputs ) && ! in_array( $field->type, array( 'time', 'date' ) ) ) {
1156 1156
 
1157 1157
             $field_value = array();
1158 1158
 
@@ -1161,10 +1161,10 @@  discard block
 block discarded – undo
1161 1161
 
1162 1162
             foreach ( (array)$field->inputs as $input ) {
1163 1163
 
1164
-                $input_id = strval( $input['id'] );
1164
+                $input_id = strval( $input[ 'id' ] );
1165 1165
                 
1166 1166
                 if ( isset( $this->entry[ $input_id ] ) && ! gv_empty( $this->entry[ $input_id ], false, false ) ) {
1167
-                    $field_value[ $input_id ] =  'post_category' === $field->type ? GFCommon::format_post_category( $this->entry[ $input_id ], true ) : $this->entry[ $input_id ];
1167
+                    $field_value[ $input_id ] = 'post_category' === $field->type ? GFCommon::format_post_category( $this->entry[ $input_id ], true ) : $this->entry[ $input_id ];
1168 1168
                     $allow_pre_populated = false;
1169 1169
                 }
1170 1170
 
@@ -1172,7 +1172,7 @@  discard block
 block discarded – undo
1172 1172
 
1173 1173
             $pre_value = $field->get_value_submission( array(), false );
1174 1174
 
1175
-            $field_value = ! $allow_pre_populated && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $field_value : $pre_value;
1175
+            $field_value = ! $allow_pre_populated && ! ( $override_saved_value && ! gv_empty( $pre_value, false, false ) ) ? $field_value : $pre_value;
1176 1176
 
1177 1177
         } else {
1178 1178
 
@@ -1183,13 +1183,13 @@  discard block
 block discarded – undo
1183 1183
 
1184 1184
             // saved field entry value (if empty, fallback to the pre-populated value, if exists)
1185 1185
             // or pre-populated value if not empty and set to override saved value
1186
-            $field_value = !gv_empty( $this->entry[ $id ], false, false ) && ! ( $override_saved_value && !gv_empty( $pre_value, false, false ) ) ? $this->entry[ $id ] : $pre_value;
1186
+            $field_value = ! gv_empty( $this->entry[ $id ], false, false ) && ! ( $override_saved_value && ! gv_empty( $pre_value, false, false ) ) ? $this->entry[ $id ] : $pre_value;
1187 1187
 
1188 1188
             // in case field is post_category but inputType is select, multi-select or radio, convert value into array of category IDs.
1189
-            if ( 'post_category' === $field->type && !gv_empty( $field_value, false, false ) ) {
1189
+            if ( 'post_category' === $field->type && ! gv_empty( $field_value, false, false ) ) {
1190 1190
                 $categories = array();
1191 1191
                 foreach ( explode( ',', $field_value ) as $cat_string ) {
1192
-                    $categories[] = GFCommon::format_post_category( $cat_string, true );
1192
+                    $categories[ ] = GFCommon::format_post_category( $cat_string, true );
1193 1193
                 }
1194 1194
                 $field_value = 'multiselect' === $field->get_input_type() ? $categories : implode( '', $categories );
1195 1195
             }
@@ -1217,7 +1217,7 @@  discard block
 block discarded – undo
1217 1217
 	     * @param GF_Field $field Gravity Forms field object
1218 1218
 	     * @param GravityView_Edit_Entry_Render $this Current object
1219 1219
 	     */
1220
-	    $field_value = apply_filters( 'gravityview/edit_entry/field_value_' . $field->type , $field_value, $field, $this );
1220
+	    $field_value = apply_filters( 'gravityview/edit_entry/field_value_' . $field->type, $field_value, $field, $this );
1221 1221
 
1222 1222
         return $field_value;
1223 1223
     }
@@ -1234,12 +1234,12 @@  discard block
 block discarded – undo
1234 1234
      */
1235 1235
     public function gform_pre_validation( $form ) {
1236 1236
 
1237
-        if( ! $this->verify_nonce() ) {
1237
+        if ( ! $this->verify_nonce() ) {
1238 1238
             return $form;
1239 1239
         }
1240 1240
 
1241 1241
         // Fix PHP warning regarding undefined index.
1242
-        foreach ( $form['fields'] as &$field) {
1242
+        foreach ( $form[ 'fields' ] as &$field ) {
1243 1243
 
1244 1244
             // This is because we're doing admin form pretending to be front-end, so Gravity Forms
1245 1245
             // expects certain field array items to be set.
@@ -1247,7 +1247,7 @@  discard block
 block discarded – undo
1247 1247
 	            $field->{$key} = isset( $field->{$key} ) ? $field->{$key} : NULL;
1248 1248
             }
1249 1249
 
1250
-            switch( RGFormsModel::get_input_type( $field ) ) {
1250
+            switch ( RGFormsModel::get_input_type( $field ) ) {
1251 1251
 
1252 1252
                 /**
1253 1253
                  * this whole fileupload hack is because in the admin, Gravity Forms simply doesn't update any fileupload field if it's empty, but it DOES in the frontend.
@@ -1261,37 +1261,37 @@  discard block
 block discarded – undo
1261 1261
                     // Set the previous value
1262 1262
                     $entry = $this->get_entry();
1263 1263
 
1264
-                    $input_name = 'input_'.$field->id;
1265
-                    $form_id = $form['id'];
1264
+                    $input_name = 'input_' . $field->id;
1265
+                    $form_id = $form[ 'id' ];
1266 1266
 
1267 1267
                     $value = NULL;
1268 1268
 
1269 1269
                     // Use the previous entry value as the default.
1270
-                    if( isset( $entry[ $field->id ] ) ) {
1270
+                    if ( isset( $entry[ $field->id ] ) ) {
1271 1271
                         $value = $entry[ $field->id ];
1272 1272
                     }
1273 1273
 
1274 1274
                     // If this is a single upload file
1275
-                    if( !empty( $_FILES[ $input_name ] ) && !empty( $_FILES[ $input_name ]['name'] ) ) {
1276
-                        $file_path = GFFormsModel::get_file_upload_path( $form['id'], $_FILES[ $input_name ]['name'] );
1277
-                        $value = $file_path['url'];
1275
+                    if ( ! empty( $_FILES[ $input_name ] ) && ! empty( $_FILES[ $input_name ][ 'name' ] ) ) {
1276
+                        $file_path = GFFormsModel::get_file_upload_path( $form[ 'id' ], $_FILES[ $input_name ][ 'name' ] );
1277
+                        $value = $file_path[ 'url' ];
1278 1278
 
1279 1279
                     } else {
1280 1280
 
1281 1281
                         // Fix PHP warning on line 1498 of form_display.php for post_image fields
1282 1282
                         // Fix PHP Notice:  Undefined index:  size in form_display.php on line 1511
1283
-                        $_FILES[ $input_name ] = array('name' => '', 'size' => '' );
1283
+                        $_FILES[ $input_name ] = array( 'name' => '', 'size' => '' );
1284 1284
 
1285 1285
                     }
1286 1286
 
1287
-                    if( rgar($field, "multipleFiles") ) {
1287
+                    if ( rgar( $field, "multipleFiles" ) ) {
1288 1288
 
1289 1289
                         // If there are fresh uploads, process and merge them.
1290 1290
                         // Otherwise, use the passed values, which should be json-encoded array of URLs
1291
-                        if( isset( GFFormsModel::$uploaded_files[$form_id][$input_name] ) ) {
1291
+                        if ( isset( GFFormsModel::$uploaded_files[ $form_id ][ $input_name ] ) ) {
1292 1292
                             $value = empty( $value ) ? '[]' : $value;
1293 1293
                             $value = stripslashes_deep( $value );
1294
-                            $value = GFFormsModel::prepare_value( $form, $field, $value, $input_name, $entry['id'], array());
1294
+                            $value = GFFormsModel::prepare_value( $form, $field, $value, $input_name, $entry[ 'id' ], array() );
1295 1295
                         }
1296 1296
 
1297 1297
                     } else {
@@ -1309,8 +1309,8 @@  discard block
 block discarded – undo
1309 1309
 
1310 1310
                 case 'number':
1311 1311
                     // Fix "undefined index" issue at line 1286 in form_display.php
1312
-                    if( !isset( $_POST['input_'.$field->id ] ) ) {
1313
-                        $_POST['input_'.$field->id ] = NULL;
1312
+                    if ( ! isset( $_POST[ 'input_' . $field->id ] ) ) {
1313
+                        $_POST[ 'input_' . $field->id ] = NULL;
1314 1314
                     }
1315 1315
                     break;
1316 1316
             }
@@ -1347,7 +1347,7 @@  discard block
 block discarded – undo
1347 1347
          * You can enter whatever you want!
1348 1348
          * We try validating, and customize the results using `self::custom_validation()`
1349 1349
          */
1350
-        add_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10, 4);
1350
+        add_filter( 'gform_validation_' . $this->form_id, array( $this, 'custom_validation' ), 10, 4 );
1351 1351
 
1352 1352
         // Needed by the validate funtion
1353 1353
         $failed_validation_page = NULL;
@@ -1355,14 +1355,14 @@  discard block
 block discarded – undo
1355 1355
 
1356 1356
         // Prevent entry limit from running when editing an entry, also
1357 1357
         // prevent form scheduling from preventing editing
1358
-        unset( $this->form['limitEntries'], $this->form['scheduleForm'] );
1358
+        unset( $this->form[ 'limitEntries' ], $this->form[ 'scheduleForm' ] );
1359 1359
 
1360 1360
         // Hide fields depending on Edit Entry settings
1361
-        $this->form['fields'] = $this->get_configured_edit_fields( $this->form, $this->view_id );
1361
+        $this->form[ 'fields' ] = $this->get_configured_edit_fields( $this->form, $this->view_id );
1362 1362
 
1363 1363
         $this->is_valid = GFFormDisplay::validate( $this->form, $field_values, 1, $failed_validation_page );
1364 1364
 
1365
-        remove_filter( 'gform_validation_'. $this->form_id, array( $this, 'custom_validation' ), 10 );
1365
+        remove_filter( 'gform_validation_' . $this->form_id, array( $this, 'custom_validation' ), 10 );
1366 1366
     }
1367 1367
 
1368 1368
 
@@ -1379,13 +1379,13 @@  discard block
 block discarded – undo
1379 1379
      */
1380 1380
     public function custom_validation( $validation_results ) {
1381 1381
 
1382
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results: ', $validation_results );
1382
+        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results: ', $validation_results );
1383 1383
 
1384
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
1384
+        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] $_POSTed data (sanitized): ', esc_html( print_r( $_POST, true ) ) );
1385 1385
 
1386 1386
         $gv_valid = true;
1387 1387
 
1388
-        foreach ( $validation_results['form']['fields'] as $key => &$field ) {
1388
+        foreach ( $validation_results[ 'form' ][ 'fields' ] as $key => &$field ) {
1389 1389
 
1390 1390
             $value = RGFormsModel::get_field_value( $field );
1391 1391
             $field_type = RGFormsModel::get_input_type( $field );
@@ -1398,35 +1398,35 @@  discard block
 block discarded – undo
1398 1398
                 case 'post_image':
1399 1399
 
1400 1400
                     // in case nothing is uploaded but there are already files saved
1401
-                    if( !empty( $field->failed_validation ) && !empty( $field->isRequired ) && !empty( $value ) ) {
1401
+                    if ( ! empty( $field->failed_validation ) && ! empty( $field->isRequired ) && ! empty( $value ) ) {
1402 1402
                         $field->failed_validation = false;
1403 1403
                         unset( $field->validation_message );
1404 1404
                     }
1405 1405
 
1406 1406
                     // validate if multi file upload reached max number of files [maxFiles] => 2
1407
-                    if( rgobj( $field, 'maxFiles') && rgobj( $field, 'multipleFiles') ) {
1407
+                    if ( rgobj( $field, 'maxFiles' ) && rgobj( $field, 'multipleFiles' ) ) {
1408 1408
 
1409 1409
                         $input_name = 'input_' . $field->id;
1410 1410
                         //uploaded
1411
-                        $file_names = isset( GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] ) ? GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ][ $input_name ] : array();
1411
+                        $file_names = isset( GFFormsModel::$uploaded_files[ $validation_results[ 'form' ][ 'id' ] ][ $input_name ] ) ? GFFormsModel::$uploaded_files[ $validation_results[ 'form' ][ 'id' ] ][ $input_name ] : array();
1412 1412
 
1413 1413
                         //existent
1414 1414
                         $entry = $this->get_entry();
1415 1415
                         $value = NULL;
1416
-                        if( isset( $entry[ $field->id ] ) ) {
1416
+                        if ( isset( $entry[ $field->id ] ) ) {
1417 1417
                             $value = json_decode( $entry[ $field->id ], true );
1418 1418
                         }
1419 1419
 
1420 1420
                         // count uploaded files and existent entry files
1421 1421
                         $count_files = count( $file_names ) + count( $value );
1422 1422
 
1423
-                        if( $count_files > $field->maxFiles ) {
1423
+                        if ( $count_files > $field->maxFiles ) {
1424 1424
                             $field->validation_message = __( 'Maximum number of files reached', 'gravityview' );
1425 1425
                             $field->failed_validation = 1;
1426 1426
                             $gv_valid = false;
1427 1427
 
1428 1428
                             // in case of error make sure the newest upload files are removed from the upload input
1429
-                            GFFormsModel::$uploaded_files[ $validation_results['form']['id'] ] = null;
1429
+                            GFFormsModel::$uploaded_files[ $validation_results[ 'form' ][ 'id' ] ] = null;
1430 1430
                         }
1431 1431
 
1432 1432
                     }
@@ -1437,7 +1437,7 @@  discard block
 block discarded – undo
1437 1437
             }
1438 1438
 
1439 1439
             // This field has failed validation.
1440
-            if( !empty( $field->failed_validation ) ) {
1440
+            if ( ! empty( $field->failed_validation ) ) {
1441 1441
 
1442 1442
                 do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field is invalid.', array( 'field' => $field, 'value' => $value ) );
1443 1443
 
@@ -1455,32 +1455,32 @@  discard block
 block discarded – undo
1455 1455
                 }
1456 1456
 
1457 1457
                 // You can't continue inside a switch, so we do it after.
1458
-                if( empty( $field->failed_validation ) ) {
1458
+                if ( empty( $field->failed_validation ) ) {
1459 1459
                     continue;
1460 1460
                 }
1461 1461
 
1462 1462
                 // checks if the No Duplicates option is not validating entry against itself, since
1463 1463
                 // we're editing a stored entry, it would also assume it's a duplicate.
1464
-                if( !empty( $field->noDuplicates ) ) {
1464
+                if ( ! empty( $field->noDuplicates ) ) {
1465 1465
 
1466 1466
                     $entry = $this->get_entry();
1467 1467
 
1468 1468
                     // If the value of the entry is the same as the stored value
1469 1469
                     // Then we can assume it's not a duplicate, it's the same.
1470
-                    if( !empty( $entry ) && $value == $entry[ $field->id ] ) {
1470
+                    if ( ! empty( $entry ) && $value == $entry[ $field->id ] ) {
1471 1471
                         //if value submitted was not changed, then don't validate
1472 1472
                         $field->failed_validation = false;
1473 1473
 
1474 1474
                         unset( $field->validation_message );
1475 1475
 
1476
-                        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field not a duplicate; it is the same entry.', $entry );
1476
+                        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Field not a duplicate; it is the same entry.', $entry );
1477 1477
 
1478 1478
                         continue;
1479 1479
                     }
1480 1480
                 }
1481 1481
 
1482 1482
                 // if here then probably we are facing the validation 'At least one field must be filled out'
1483
-                if( GFFormDisplay::is_empty( $field, $this->form_id  ) && empty( $field->isRequired ) ) {
1483
+                if ( GFFormDisplay::is_empty( $field, $this->form_id ) && empty( $field->isRequired ) ) {
1484 1484
                     unset( $field->validation_message );
1485 1485
 	                $field->validation_message = false;
1486 1486
                     continue;
@@ -1492,12 +1492,12 @@  discard block
 block discarded – undo
1492 1492
 
1493 1493
         }
1494 1494
 
1495
-        $validation_results['is_valid'] = $gv_valid;
1495
+        $validation_results[ 'is_valid' ] = $gv_valid;
1496 1496
 
1497
-        do_action('gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results.', $validation_results );
1497
+        do_action( 'gravityview_log_debug', 'GravityView_Edit_Entry[custom_validation] Validation results.', $validation_results );
1498 1498
 
1499 1499
         // We'll need this result when rendering the form ( on GFFormDisplay::get_form )
1500
-        $this->form_after_validation = $validation_results['form'];
1500
+        $this->form_after_validation = $validation_results[ 'form' ];
1501 1501
 
1502 1502
         return $validation_results;
1503 1503
     }
@@ -1510,7 +1510,7 @@  discard block
 block discarded – undo
1510 1510
      */
1511 1511
     public function get_entry() {
1512 1512
 
1513
-        if( empty( $this->entry ) ) {
1513
+        if ( empty( $this->entry ) ) {
1514 1514
             // Get the database value of the entry that's being edited
1515 1515
             $this->entry = gravityview_get_entry( GravityView_frontend::is_single_entry() );
1516 1516
         }
@@ -1545,10 +1545,10 @@  discard block
 block discarded – undo
1545 1545
 		}
1546 1546
 
1547 1547
         // If edit tab not yet configured, show all fields
1548
-        $edit_fields = !empty( $properties['edit_edit-fields'] ) ? $properties['edit_edit-fields'] : NULL;
1548
+        $edit_fields = ! empty( $properties[ 'edit_edit-fields' ] ) ? $properties[ 'edit_edit-fields' ] : NULL;
1549 1549
 
1550 1550
         // Hide fields depending on admin settings
1551
-        $fields = $this->filter_fields( $form['fields'], $edit_fields );
1551
+        $fields = $this->filter_fields( $form[ 'fields' ], $edit_fields );
1552 1552
 
1553 1553
 	    // If Edit Entry fields are configured, remove adminOnly field settings. Otherwise, don't.
1554 1554
 	    $fields = $this->filter_admin_only_fields( $fields, $edit_fields, $form, $view_id );
@@ -1580,7 +1580,7 @@  discard block
 block discarded – undo
1580 1580
      */
1581 1581
     private function filter_fields( $fields, $configured_fields ) {
1582 1582
 
1583
-        if( empty( $fields ) || !is_array( $fields ) ) {
1583
+        if ( empty( $fields ) || ! is_array( $fields ) ) {
1584 1584
             return $fields;
1585 1585
         }
1586 1586
 
@@ -1593,18 +1593,18 @@  discard block
 block discarded – undo
1593 1593
 
1594 1594
             // Remove the fields that have calculation properties and keep them to be used later
1595 1595
             // @since 1.16.2
1596
-            if( $field->has_calculation() ) {
1597
-                $this->fields_with_calculation[] = $field;
1596
+            if ( $field->has_calculation() ) {
1597
+                $this->fields_with_calculation[ ] = $field;
1598 1598
                 // don't remove the calculation fields on form render.
1599 1599
             }
1600 1600
 
1601
-            if( in_array( $field->type, $field_type_blacklist ) ) {
1601
+            if ( in_array( $field->type, $field_type_blacklist ) ) {
1602 1602
                 unset( $fields[ $key ] );
1603 1603
             }
1604 1604
         }
1605 1605
 
1606 1606
         // The Edit tab has not been configured, so we return all fields by default.
1607
-        if( empty( $configured_fields ) ) {
1607
+        if ( empty( $configured_fields ) ) {
1608 1608
             return $fields;
1609 1609
         }
1610 1610
 
@@ -1614,8 +1614,8 @@  discard block
 block discarded – undo
1614 1614
 	        /** @var GF_Field $field */
1615 1615
 	        foreach ( $fields as $field ) {
1616 1616
 
1617
-                if( intval( $configured_field['id'] ) === intval( $field->id ) && $this->user_can_edit_field( $configured_field, false ) ) {
1618
-                    $edit_fields[] = $this->merge_field_properties( $field, $configured_field );
1617
+                if ( intval( $configured_field[ 'id' ] ) === intval( $field->id ) && $this->user_can_edit_field( $configured_field, false ) ) {
1618
+                    $edit_fields[ ] = $this->merge_field_properties( $field, $configured_field );
1619 1619
                     break;
1620 1620
                 }
1621 1621
 
@@ -1638,14 +1638,14 @@  discard block
 block discarded – undo
1638 1638
 
1639 1639
         $return_field = $field;
1640 1640
 
1641
-        if( empty( $field_setting['show_label'] ) ) {
1641
+        if ( empty( $field_setting[ 'show_label' ] ) ) {
1642 1642
             $return_field->label = '';
1643
-        } elseif ( !empty( $field_setting['custom_label'] ) ) {
1644
-            $return_field->label = $field_setting['custom_label'];
1643
+        } elseif ( ! empty( $field_setting[ 'custom_label' ] ) ) {
1644
+            $return_field->label = $field_setting[ 'custom_label' ];
1645 1645
         }
1646 1646
 
1647
-        if( !empty( $field_setting['custom_class'] ) ) {
1648
-            $return_field->cssClass .= ' '. gravityview_sanitize_html_class( $field_setting['custom_class'] );
1647
+        if ( ! empty( $field_setting[ 'custom_class' ] ) ) {
1648
+            $return_field->cssClass .= ' ' . gravityview_sanitize_html_class( $field_setting[ 'custom_class' ] );
1649 1649
         }
1650 1650
 
1651 1651
         /**
@@ -1683,16 +1683,16 @@  discard block
 block discarded – undo
1683 1683
 	     */
1684 1684
 	    $use_gf_adminonly_setting = apply_filters( 'gravityview/edit_entry/use_gf_admin_only_setting', empty( $edit_fields ), $form, $view_id );
1685 1685
 
1686
-	    if( $use_gf_adminonly_setting && false === GVCommon::has_cap( 'gravityforms_edit_entries', $this->entry['id'] ) ) {
1687
-            foreach( $fields as $k => $field ) {
1688
-                if( $field->adminOnly ) {
1686
+	    if ( $use_gf_adminonly_setting && false === GVCommon::has_cap( 'gravityforms_edit_entries', $this->entry[ 'id' ] ) ) {
1687
+            foreach ( $fields as $k => $field ) {
1688
+                if ( $field->adminOnly ) {
1689 1689
                     unset( $fields[ $k ] );
1690 1690
                 }
1691 1691
             }
1692 1692
             return $fields;
1693 1693
         }
1694 1694
 
1695
-	    foreach( $fields as &$field ) {
1695
+	    foreach ( $fields as &$field ) {
1696 1696
 		    $field->adminOnly = false;
1697 1697
         }
1698 1698
 
@@ -1716,22 +1716,22 @@  discard block
 block discarded – undo
1716 1716
      */
1717 1717
     function prefill_conditional_logic( $form ) {
1718 1718
 
1719
-        if( ! GFFormDisplay::has_conditional_logic( $form ) ) {
1719
+        if ( ! GFFormDisplay::has_conditional_logic( $form ) ) {
1720 1720
             return $form;
1721 1721
         }
1722 1722
 
1723 1723
         // Have Conditional Logic pre-fill fields as if the data were default values
1724 1724
         /** @var GF_Field $field */
1725
-        foreach ( $form['fields'] as &$field ) {
1725
+        foreach ( $form[ 'fields' ] as &$field ) {
1726 1726
 
1727
-            if( 'checkbox' === $field->type ) {
1727
+            if ( 'checkbox' === $field->type ) {
1728 1728
                 foreach ( $field->get_entry_inputs() as $key => $input ) {
1729
-                    $input_id = $input['id'];
1729
+                    $input_id = $input[ 'id' ];
1730 1730
                     $choice = $field->choices[ $key ];
1731 1731
                     $value = rgar( $this->entry, $input_id );
1732 1732
                     $match = RGFormsModel::choice_value_match( $field, $choice, $value );
1733
-                    if( $match ) {
1734
-                        $field->choices[ $key ]['isSelected'] = true;
1733
+                    if ( $match ) {
1734
+                        $field->choices[ $key ][ 'isSelected' ] = true;
1735 1735
                     }
1736 1736
                 }
1737 1737
             } else {
@@ -1739,15 +1739,15 @@  discard block
 block discarded – undo
1739 1739
                 // We need to run through each field to set the default values
1740 1740
                 foreach ( $this->entry as $field_id => $field_value ) {
1741 1741
 
1742
-                    if( floatval( $field_id ) === floatval( $field->id ) ) {
1742
+                    if ( floatval( $field_id ) === floatval( $field->id ) ) {
1743 1743
 
1744
-                        if( 'list' === $field->type ) {
1744
+                        if ( 'list' === $field->type ) {
1745 1745
                             $list_rows = maybe_unserialize( $field_value );
1746 1746
 
1747 1747
                             $list_field_value = array();
1748
-                            foreach ( (array) $list_rows as $row ) {
1749
-                                foreach ( (array) $row as $column ) {
1750
-                                    $list_field_value[] = $column;
1748
+                            foreach ( (array)$list_rows as $row ) {
1749
+                                foreach ( (array)$row as $column ) {
1750
+                                    $list_field_value[ ] = $column;
1751 1751
                                 }
1752 1752
                             }
1753 1753
 
@@ -1782,16 +1782,16 @@  discard block
 block discarded – undo
1782 1782
          */
1783 1783
         $use_conditional_logic = apply_filters( 'gravityview/edit_entry/conditional_logic', true, $form );
1784 1784
 
1785
-        if( $use_conditional_logic ) {
1785
+        if ( $use_conditional_logic ) {
1786 1786
             return $form;
1787 1787
         }
1788 1788
 
1789
-        foreach( $form['fields'] as &$field ) {
1789
+        foreach ( $form[ 'fields' ] as &$field ) {
1790 1790
             /* @var GF_Field $field */
1791 1791
             $field->conditionalLogic = null;
1792 1792
         }
1793 1793
 
1794
-        unset( $form['button']['conditionalLogic'] );
1794
+        unset( $form[ 'button' ][ 'conditionalLogic' ] );
1795 1795
 
1796 1796
         return $form;
1797 1797
 
@@ -1808,7 +1808,7 @@  discard block
 block discarded – undo
1808 1808
      */
1809 1809
     public function manage_conditional_logic( $has_conditional_logic, $form ) {
1810 1810
 
1811
-        if( ! $this->is_edit_entry() ) {
1811
+        if ( ! $this->is_edit_entry() ) {
1812 1812
             return $has_conditional_logic;
1813 1813
         }
1814 1814
 
@@ -1840,44 +1840,44 @@  discard block
 block discarded – undo
1840 1840
          *  2. There are two entries embedded using oEmbed
1841 1841
          *  3. One of the entries has just been saved
1842 1842
          */
1843
-        if( !empty( $_POST['lid'] ) && !empty( $_GET['entry'] ) && ( $_POST['lid'] !== $_GET['entry'] ) ) {
1843
+        if ( ! empty( $_POST[ 'lid' ] ) && ! empty( $_GET[ 'entry' ] ) && ( $_POST[ 'lid' ] !== $_GET[ 'entry' ] ) ) {
1844 1844
 
1845 1845
             $error = true;
1846 1846
 
1847 1847
         }
1848 1848
 
1849
-        if( !empty( $_GET['entry'] ) && (string)$this->entry['id'] !== $_GET['entry'] ) {
1849
+        if ( ! empty( $_GET[ 'entry' ] ) && (string)$this->entry[ 'id' ] !== $_GET[ 'entry' ] ) {
1850 1850
 
1851 1851
             $error = true;
1852 1852
 
1853
-        } elseif( ! $this->verify_nonce() ) {
1853
+        } elseif ( ! $this->verify_nonce() ) {
1854 1854
 
1855 1855
             /**
1856 1856
              * If the Entry is embedded, there may be two entries on the same page.
1857 1857
              * If that's the case, and one is being edited, the other should fail gracefully and not display an error.
1858 1858
              */
1859
-            if( GravityView_oEmbed::getInstance()->get_entry_id() ) {
1859
+            if ( GravityView_oEmbed::getInstance()->get_entry_id() ) {
1860 1860
                 $error = true;
1861 1861
             } else {
1862
-                $error = __( 'The link to edit this entry is not valid; it may have expired.', 'gravityview');
1862
+                $error = __( 'The link to edit this entry is not valid; it may have expired.', 'gravityview' );
1863 1863
             }
1864 1864
 
1865 1865
         }
1866 1866
 
1867
-        if( ! GravityView_Edit_Entry::check_user_cap_edit_entry( $this->entry ) ) {
1868
-            $error = __( 'You do not have permission to edit this entry.', 'gravityview');
1867
+        if ( ! GravityView_Edit_Entry::check_user_cap_edit_entry( $this->entry ) ) {
1868
+            $error = __( 'You do not have permission to edit this entry.', 'gravityview' );
1869 1869
         }
1870 1870
 
1871
-        if( $this->entry['status'] === 'trash' ) {
1872
-            $error = __('You cannot edit the entry; it is in the trash.', 'gravityview' );
1871
+        if ( $this->entry[ 'status' ] === 'trash' ) {
1872
+            $error = __( 'You cannot edit the entry; it is in the trash.', 'gravityview' );
1873 1873
         }
1874 1874
 
1875 1875
         // No errors; everything's fine here!
1876
-        if( empty( $error ) ) {
1876
+        if ( empty( $error ) ) {
1877 1877
             return true;
1878 1878
         }
1879 1879
 
1880
-        if( $echo && $error !== true ) {
1880
+        if ( $echo && $error !== true ) {
1881 1881
 
1882 1882
 	        $error = esc_html( $error );
1883 1883
 
@@ -1885,13 +1885,13 @@  discard block
 block discarded – undo
1885 1885
 	         * @since 1.9
1886 1886
 	         */
1887 1887
 	        if ( ! empty( $this->entry ) ) {
1888
-		        $error .= ' ' . gravityview_get_link( '#', _x('Go back.', 'Link shown when invalid Edit Entry link is clicked', 'gravityview' ), array( 'onclick' => "window.history.go(-1); return false;" ) );
1888
+		        $error .= ' ' . gravityview_get_link( '#', _x( 'Go back.', 'Link shown when invalid Edit Entry link is clicked', 'gravityview' ), array( 'onclick' => "window.history.go(-1); return false;" ) );
1889 1889
 	        }
1890 1890
 
1891
-            echo GVCommon::generate_notice( wpautop( $error ), 'gv-error error');
1891
+            echo GVCommon::generate_notice( wpautop( $error ), 'gv-error error' );
1892 1892
         }
1893 1893
 
1894
-        do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_entry]' . $error );
1894
+        do_action( 'gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_entry]' . $error );
1895 1895
 
1896 1896
         return false;
1897 1897
     }
@@ -1908,20 +1908,20 @@  discard block
 block discarded – undo
1908 1908
 
1909 1909
         $error = NULL;
1910 1910
 
1911
-        if( ! $this->check_user_cap_edit_field( $field ) ) {
1912
-            $error = __( 'You do not have permission to edit this field.', 'gravityview');
1911
+        if ( ! $this->check_user_cap_edit_field( $field ) ) {
1912
+            $error = __( 'You do not have permission to edit this field.', 'gravityview' );
1913 1913
         }
1914 1914
 
1915 1915
         // No errors; everything's fine here!
1916
-        if( empty( $error ) ) {
1916
+        if ( empty( $error ) ) {
1917 1917
             return true;
1918 1918
         }
1919 1919
 
1920
-        if( $echo ) {
1921
-            echo GVCommon::generate_notice( wpautop( esc_html( $error ) ), 'gv-error error');
1920
+        if ( $echo ) {
1921
+            echo GVCommon::generate_notice( wpautop( esc_html( $error ) ), 'gv-error error' );
1922 1922
         }
1923 1923
 
1924
-        do_action('gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_field]' . $error );
1924
+        do_action( 'gravityview_log_error', 'GravityView_Edit_Entry[user_can_edit_field]' . $error );
1925 1925
 
1926 1926
         return false;
1927 1927
 
@@ -1939,15 +1939,15 @@  discard block
 block discarded – undo
1939 1939
     private function check_user_cap_edit_field( $field ) {
1940 1940
 
1941 1941
         // If they can edit any entries (as defined in Gravity Forms), we're good.
1942
-        if( GVCommon::has_cap( array( 'gravityforms_edit_entries', 'gravityview_edit_others_entries' ) ) ) {
1942
+        if ( GVCommon::has_cap( array( 'gravityforms_edit_entries', 'gravityview_edit_others_entries' ) ) ) {
1943 1943
             return true;
1944 1944
         }
1945 1945
 
1946
-        $field_cap = isset( $field['allow_edit_cap'] ) ? $field['allow_edit_cap'] : false;
1946
+        $field_cap = isset( $field[ 'allow_edit_cap' ] ) ? $field[ 'allow_edit_cap' ] : false;
1947 1947
 
1948 1948
         // If the field has custom editing capaibilities set, check those
1949
-        if( $field_cap ) {
1950
-            return GVCommon::has_cap( $field['allow_edit_cap'] );
1949
+        if ( $field_cap ) {
1950
+            return GVCommon::has_cap( $field[ 'allow_edit_cap' ] );
1951 1951
         }
1952 1952
 
1953 1953
         return false;
@@ -1961,17 +1961,17 @@  discard block
 block discarded – undo
1961 1961
     public function verify_nonce() {
1962 1962
 
1963 1963
         // Verify form submitted for editing single
1964
-        if( $this->is_edit_entry_submission() ) {
1964
+        if ( $this->is_edit_entry_submission() ) {
1965 1965
             $valid = wp_verify_nonce( $_POST[ self::$nonce_field ], self::$nonce_field );
1966 1966
         }
1967 1967
 
1968 1968
         // Verify
1969
-        else if( ! $this->is_edit_entry() ) {
1969
+        else if ( ! $this->is_edit_entry() ) {
1970 1970
             $valid = false;
1971 1971
         }
1972 1972
 
1973 1973
         else {
1974
-            $valid = wp_verify_nonce( $_GET['edit'], self::$nonce_key );
1974
+            $valid = wp_verify_nonce( $_GET[ 'edit' ], self::$nonce_key );
1975 1975
         }
1976 1976
 
1977 1977
         /**
Please login to merge, or discard this patch.
includes/fields/class-gravityview-field-post-content.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -22,13 +22,13 @@  discard block
 block discarded – undo
22 22
 
23 23
 	function field_options( $field_options, $template_id, $field_id, $context, $input_type ) {
24 24
 
25
-		unset( $field_options['show_as_link'] );
25
+		unset( $field_options[ 'show_as_link' ] );
26 26
 
27
-		if( 'edit' === $context ) {
27
+		if ( 'edit' === $context ) {
28 28
 			return $field_options;
29 29
 		}
30 30
 
31
-		$this->add_field_support('dynamic_data', $field_options );
31
+		$this->add_field_support( 'dynamic_data', $field_options );
32 32
 
33 33
 		return $field_options;
34 34
 	}
@@ -44,7 +44,7 @@  discard block
 block discarded – undo
44 44
 	 */
45 45
 	public function get_field_input( $form, $value = '', $entry = null, GF_Field_Post_Content $field ) {
46 46
 
47
-		$id    = (int) $field->id;
47
+		$id    = (int)$field->id;
48 48
 		$input_name = "input_{$id}";
49 49
 		$class = esc_attr( $field->size );
50 50
 		$tabindex = $field->get_tabindex();
Please login to merge, or discard this patch.