Completed
Push — develop ( 20a773...59c868 )
by Gennady
16:59
created
includes/widgets/search-widget/class-search-widget.php 1 patch
Spacing   +174 added lines, -174 removed lines patch added patch discarded remove patch
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
 				'type' => 'radio',
65 65
 				'full_width' => true,
66 66
 				'label' => esc_html__( 'Search Mode', 'gravityview' ),
67
-				'desc' => __('Should search results match all search fields, or any?', 'gravityview'),
67
+				'desc' => __( 'Should search results match all search fields, or any?', 'gravityview' ),
68 68
 				'value' => 'any',
69 69
 				'class' => 'hide-if-js',
70 70
 				'options' => array(
@@ -83,7 +83,7 @@  discard block
 block discarded – undo
83 83
 
84 84
 			// admin - add scripts - run at 1100 to make sure GravityView_Admin_Views::add_scripts_and_styles() runs first at 999
85 85
 			add_action( 'admin_enqueue_scripts', array( $this, 'add_scripts_and_styles' ), 1100 );
86
-			add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts') );
86
+			add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts' ) );
87 87
 			add_filter( 'gravityview_noconflict_scripts', array( $this, 'register_no_conflict' ) );
88 88
 
89 89
 			// ajax - get the searchable fields
@@ -227,7 +227,7 @@  discard block
 block discarded – undo
227 227
 		$script_min = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
228 228
 		$script_source = empty( $script_min ) ? '/source' : '';
229 229
 
230
-		wp_enqueue_script( 'gravityview_searchwidget_admin', plugins_url( 'assets/js'.$script_source.'/admin-search-widget'.$script_min.'.js', __FILE__ ), array( 'jquery', 'gravityview_views_scripts' ), \GV\Plugin::$version );
230
+		wp_enqueue_script( 'gravityview_searchwidget_admin', plugins_url( 'assets/js' . $script_source . '/admin-search-widget' . $script_min . '.js', __FILE__ ), array( 'jquery', 'gravityview_views_scripts' ), \GV\Plugin::$version );
231 231
 
232 232
 		wp_localize_script( 'gravityview_searchwidget_admin', 'gvSearchVar', array(
233 233
 			'nonce' => wp_create_nonce( 'gravityview_ajaxsearchwidget' ),
@@ -249,7 +249,7 @@  discard block
 block discarded – undo
249 249
 	 * @return array Scripts allowed in no-conflict mode, plus the search widget script
250 250
 	 */
251 251
 	public function register_no_conflict( $allowed ) {
252
-		$allowed[] = 'gravityview_searchwidget_admin';
252
+		$allowed[ ] = 'gravityview_searchwidget_admin';
253 253
 		return $allowed;
254 254
 	}
255 255
 
@@ -262,24 +262,24 @@  discard block
 block discarded – undo
262 262
 	 */
263 263
 	public static function get_searchable_fields() {
264 264
 
265
-		if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'gravityview_ajaxsearchwidget' ) ) {
265
+		if ( ! isset( $_POST[ 'nonce' ] ) || ! wp_verify_nonce( $_POST[ 'nonce' ], 'gravityview_ajaxsearchwidget' ) ) {
266 266
 			exit( '0' );
267 267
 		}
268 268
 
269 269
 		$form = '';
270 270
 
271 271
 		// Fetch the form for the current View
272
-		if ( ! empty( $_POST['view_id'] ) ) {
272
+		if ( ! empty( $_POST[ 'view_id' ] ) ) {
273 273
 
274
-			$form = gravityview_get_form_id( $_POST['view_id'] );
274
+			$form = gravityview_get_form_id( $_POST[ 'view_id' ] );
275 275
 
276
-		} elseif ( ! empty( $_POST['formid'] ) ) {
276
+		} elseif ( ! empty( $_POST[ 'formid' ] ) ) {
277 277
 
278
-			$form = (int) $_POST['formid'];
278
+			$form = (int)$_POST[ 'formid' ];
279 279
 
280
-		} elseif ( ! empty( $_POST['template_id'] ) && class_exists( 'GravityView_Ajax' ) ) {
280
+		} elseif ( ! empty( $_POST[ 'template_id' ] ) && class_exists( 'GravityView_Ajax' ) ) {
281 281
 
282
-			$form = GravityView_Ajax::pre_get_form_fields( $_POST['template_id'] );
282
+			$form = GravityView_Ajax::pre_get_form_fields( $_POST[ 'template_id' ] );
283 283
 
284 284
 		}
285 285
 
@@ -329,14 +329,14 @@  discard block
 block discarded – undo
329 329
 		);
330 330
 
331 331
 		if ( gravityview()->plugin->supports( \GV\Plugin::FEATURE_GFQUERY ) ) {
332
-			$custom_fields['is_approved'] = array(
332
+			$custom_fields[ 'is_approved' ] = array(
333 333
 				'text' => esc_html__( 'Approval Status', 'gravityview' ),
334 334
 				'type' => 'multi',
335 335
 			);
336 336
 		}
337 337
 
338
-		foreach( $custom_fields as $custom_field_key => $custom_field ) {
339
-			$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'] );
338
+		foreach ( $custom_fields as $custom_field_key => $custom_field ) {
339
+			$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' ] );
340 340
 		}
341 341
 
342 342
 		// Get fields with sub-inputs and no parent
@@ -358,13 +358,13 @@  discard block
 block discarded – undo
358 358
 
359 359
 			foreach ( $fields as $id => $field ) {
360 360
 
361
-				if ( in_array( $field['type'], $blacklist_field_types ) ) {
361
+				if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) {
362 362
 					continue;
363 363
 				}
364 364
 
365
-				$types = self::get_search_input_types( $id, $field['type'] );
365
+				$types = self::get_search_input_types( $id, $field[ 'type' ] );
366 366
 
367
-				$output .= '<option value="'. $id .'" '. selected( $id, $current, false ).'data-inputtypes="'. esc_attr( $types ) .'">'. esc_html( $field['label'] ) .'</option>';
367
+				$output .= '<option value="' . $id . '" ' . selected( $id, $current, false ) . 'data-inputtypes="' . esc_attr( $types ) . '">' . esc_html( $field[ 'label' ] ) . '</option>';
368 368
 			}
369 369
 		}
370 370
 
@@ -387,7 +387,7 @@  discard block
 block discarded – undo
387 387
 	public static function get_search_input_types( $field_id = '', $field_type = null ) {
388 388
 
389 389
 		// @todo - This needs to be improved - many fields have . including products and addresses
390
-		if ( false !== strpos( (string) $field_id, '.' ) && in_array( $field_type, array( 'checkbox' ) ) || in_array( $field_id, array( 'is_fulfilled' ) ) ) {
390
+		if ( false !== strpos( (string)$field_id, '.' ) && in_array( $field_type, array( 'checkbox' ) ) || in_array( $field_id, array( 'is_fulfilled' ) ) ) {
391 391
 			$input_type = 'boolean'; // on/off checkbox
392 392
 		} elseif ( in_array( $field_type, array( 'checkbox', 'post_category', 'multiselect' ) ) ) {
393 393
 			$input_type = 'multi'; //multiselect
@@ -433,19 +433,19 @@  discard block
 block discarded – undo
433 433
 			$post_id = 0;
434 434
 
435 435
 			// We're in the WordPress Widget context, and an overriding post ID has been set.
436
-			if ( ! empty( $widget_args['post_id'] ) ) {
437
-				$post_id = absint( $widget_args['post_id'] );
436
+			if ( ! empty( $widget_args[ 'post_id' ] ) ) {
437
+				$post_id = absint( $widget_args[ 'post_id' ] );
438 438
 			}
439 439
 			// We're in the WordPress Widget context, and the base View ID should be used
440
-			else if ( ! empty( $widget_args['view_id'] ) ) {
441
-				$post_id = absint( $widget_args['view_id'] );
440
+			else if ( ! empty( $widget_args[ 'view_id' ] ) ) {
441
+				$post_id = absint( $widget_args[ 'view_id' ] );
442 442
 			}
443 443
 
444 444
 			$args = gravityview_get_permalink_query_args( $post_id );
445 445
 
446 446
 			// Add hidden fields to the search form
447 447
 			foreach ( $args as $key => $value ) {
448
-				$search_fields[] = array(
448
+				$search_fields[ ] = array(
449 449
 					'name'  => $key,
450 450
 					'input' => 'hidden',
451 451
 					'value' => $value,
@@ -484,28 +484,28 @@  discard block
 block discarded – undo
484 484
 		/**
485 485
 		 * Include the sidebar Widgets.
486 486
 		 */
487
-		$widgets = (array) get_option( 'widget_gravityview_search', array() );
487
+		$widgets = (array)get_option( 'widget_gravityview_search', array() );
488 488
 
489 489
 		foreach ( $widgets as $widget ) {
490
-			if ( ! empty( $widget['view_id'] ) && $widget['view_id'] == $view->ID ) {
491
-				if( $_fields = json_decode( $widget['search_fields'], true ) ) {
490
+			if ( ! empty( $widget[ 'view_id' ] ) && $widget[ 'view_id' ] == $view->ID ) {
491
+				if ( $_fields = json_decode( $widget[ 'search_fields' ], true ) ) {
492 492
 					foreach ( $_fields as $field ) {
493
-						if ( empty( $field['form_id'] ) ) {
494
-							$field['form_id'] = $view->form ? $view->form->ID : 0;
493
+						if ( empty( $field[ 'form_id' ] ) ) {
494
+							$field[ 'form_id' ] = $view->form ? $view->form->ID : 0;
495 495
 						}
496
-						$searchable_fields[] = $with_full_field ? $field : $field['field'];
496
+						$searchable_fields[ ] = $with_full_field ? $field : $field[ 'field' ];
497 497
 					}
498 498
 				}
499 499
 			}
500 500
 		}
501 501
 
502 502
 		foreach ( $view->widgets->by_id( $this->get_widget_id() )->all() as $widget ) {
503
-			if( $_fields = json_decode( $widget->configuration->get( 'search_fields' ), true ) ) {
503
+			if ( $_fields = json_decode( $widget->configuration->get( 'search_fields' ), true ) ) {
504 504
 				foreach ( $_fields as $field ) {
505
-					if ( empty( $field['form_id'] ) ) {
506
-						$field['form_id'] = $view->form ? $view->form->ID : 0;
505
+					if ( empty( $field[ 'form_id' ] ) ) {
506
+						$field[ 'form_id' ] = $view->form ? $view->form->ID : 0;
507 507
 					}
508
-					$searchable_fields[] = $with_full_field ? $field : $field['field'];
508
+					$searchable_fields[ ] = $with_full_field ? $field : $field[ 'field' ];
509 509
 				}
510 510
 			}
511 511
 		}
@@ -535,7 +535,7 @@  discard block
 block discarded – undo
535 535
 			return $search_criteria; // Return the original criteria, GF_Query modification kicks in later
536 536
 		}
537 537
 
538
-		if( 'post' === $this->search_method ) {
538
+		if ( 'post' === $this->search_method ) {
539 539
 			$get = $_POST;
540 540
 		} else {
541 541
 			$get = $_GET;
@@ -554,15 +554,15 @@  discard block
 block discarded – undo
554 554
 		$get = gv_map_deep( $get, 'rawurldecode' );
555 555
 
556 556
 		// Make sure array key is set up
557
-		$search_criteria['field_filters'] = \GV\Utils::get( $search_criteria, 'field_filters', array() );
557
+		$search_criteria[ 'field_filters' ] = \GV\Utils::get( $search_criteria, 'field_filters', array() );
558 558
 
559 559
 		$searchable_fields = $this->get_view_searchable_fields( $view );
560 560
 		$searchable_field_objects = $this->get_view_searchable_fields( $view, true );
561 561
 
562 562
 		// add free search
563
-		if ( isset( $get['gv_search'] ) && '' !== $get['gv_search'] && in_array( 'search_all', $searchable_fields ) ) {
563
+		if ( isset( $get[ 'gv_search' ] ) && '' !== $get[ 'gv_search' ] && in_array( 'search_all', $searchable_fields ) ) {
564 564
 
565
-			$search_all_value = trim( $get['gv_search'] );
565
+			$search_all_value = trim( $get[ 'gv_search' ] );
566 566
 
567 567
 			/**
568 568
 			 * @filter `gravityview/search-all-split-words` Search for each word separately or the whole phrase?
@@ -587,7 +587,7 @@  discard block
 block discarded – undo
587 587
 			}
588 588
 
589 589
 			foreach ( $words as $word ) {
590
-				$search_criteria['field_filters'][] = array(
590
+				$search_criteria[ 'field_filters' ][ ] = array(
591 591
 					'key' => null, // The field ID to search
592 592
 					'value' => $word, // The value to search
593 593
 					'operator' => 'contains', // What to search in. Options: `is` or `contains`
@@ -600,14 +600,14 @@  discard block
 block discarded – undo
600 600
 			/**
601 601
 			 * Get and normalize the dates according to the input format.
602 602
 			 */
603
-			if ( $curr_start = ! empty( $get['gv_start'] ) ? $get['gv_start'] : '' ) {
604
-				if( $curr_start_date = date_create_from_format( $this->get_datepicker_format( true ), $curr_start ) ) {
603
+			if ( $curr_start = ! empty( $get[ 'gv_start' ] ) ? $get[ 'gv_start' ] : '' ) {
604
+				if ( $curr_start_date = date_create_from_format( $this->get_datepicker_format( true ), $curr_start ) ) {
605 605
 					$curr_start = $curr_start_date->format( 'Y-m-d' );
606 606
 				}
607 607
 			}
608 608
 
609
-			if ( $curr_end = ! empty( $get['gv_start'] ) ? ( ! empty( $get['gv_end'] ) ? $get['gv_end'] : '' ) : '' ) {
610
-				if( $curr_end_date = date_create_from_format( $this->get_datepicker_format( true ), $curr_end ) ) {
609
+			if ( $curr_end = ! empty( $get[ 'gv_start' ] ) ? ( ! empty( $get[ 'gv_end' ] ) ? $get[ 'gv_end' ] : '' ) : '' ) {
610
+				if ( $curr_end_date = date_create_from_format( $this->get_datepicker_format( true ), $curr_end ) ) {
611 611
 					$curr_end = $curr_end_date->format( 'Y-m-d' );
612 612
 				}
613 613
 			}
@@ -642,22 +642,22 @@  discard block
 block discarded – undo
642 642
 			 */
643 643
 			if ( ! empty( $curr_start ) ) {
644 644
 				$curr_start = date( 'Y-m-d H:i:s', strtotime( $curr_start ) );
645
-				$search_criteria['start_date'] = $adjust_tz ? get_gmt_from_date( $curr_start ) : $curr_start;
645
+				$search_criteria[ 'start_date' ] = $adjust_tz ? get_gmt_from_date( $curr_start ) : $curr_start;
646 646
 			}
647 647
 
648 648
 			if ( ! empty( $curr_end ) ) {
649 649
 				// Fast-forward 24 hour on the end time
650 650
 				$curr_end = date( 'Y-m-d H:i:s', strtotime( $curr_end ) + DAY_IN_SECONDS );
651
-				$search_criteria['end_date'] = $adjust_tz ? get_gmt_from_date( $curr_end ) : $curr_end;
652
-				if ( strpos( $search_criteria['end_date'], '00:00:00' ) ) { // See https://github.com/gravityview/GravityView/issues/1056
653
-					$search_criteria['end_date'] = date( 'Y-m-d H:i:s', strtotime( $search_criteria['end_date'] ) - 1 );
651
+				$search_criteria[ 'end_date' ] = $adjust_tz ? get_gmt_from_date( $curr_end ) : $curr_end;
652
+				if ( strpos( $search_criteria[ 'end_date' ], '00:00:00' ) ) { // See https://github.com/gravityview/GravityView/issues/1056
653
+					$search_criteria[ 'end_date' ] = date( 'Y-m-d H:i:s', strtotime( $search_criteria[ 'end_date' ] ) - 1 );
654 654
 				}
655 655
 			}
656 656
 		}
657 657
 
658 658
 		// search for a specific entry ID
659 659
 		if ( ! empty( $get[ 'gv_id' ] ) && in_array( 'entry_id', $searchable_fields ) ) {
660
-			$search_criteria['field_filters'][] = array(
660
+			$search_criteria[ 'field_filters' ][ ] = array(
661 661
 				'key' => 'id',
662 662
 				'value' => absint( $get[ 'gv_id' ] ),
663 663
 				'operator' => $this->get_operator( $get, 'gv_id', array( '=' ), '=' ),
@@ -666,20 +666,20 @@  discard block
 block discarded – undo
666 666
 
667 667
 		// search for a specific Created_by ID
668 668
 		if ( ! empty( $get[ 'gv_by' ] ) && in_array( 'created_by', $searchable_fields ) ) {
669
-			$search_criteria['field_filters'][] = array(
669
+			$search_criteria[ 'field_filters' ][ ] = array(
670 670
 				'key' => 'created_by',
671
-				'value' => $get['gv_by'],
671
+				'value' => $get[ 'gv_by' ],
672 672
 				'operator' => $this->get_operator( $get, 'gv_by', array( '=' ), '=' ),
673 673
 			);
674 674
 		}
675 675
 
676 676
 		// Get search mode passed in URL
677
-		$mode = isset( $get['mode'] ) && in_array( $get['mode'], array( 'any', 'all' ) ) ?  $get['mode'] : 'any';
677
+		$mode = isset( $get[ 'mode' ] ) && in_array( $get[ 'mode' ], array( 'any', 'all' ) ) ? $get[ 'mode' ] : 'any';
678 678
 
679 679
 		// get the other search filters
680 680
 		foreach ( $get as $key => $value ) {
681 681
 
682
-			if ( 0 !== strpos( $key, 'filter_' ) || gv_empty( $value, false, false ) || ( is_array( $value ) && count( $value ) === 1 && gv_empty( $value[0], false, false ) ) ) {
682
+			if ( 0 !== strpos( $key, 'filter_' ) || gv_empty( $value, false, false ) || ( is_array( $value ) && count( $value ) === 1 && gv_empty( $value[ 0 ], false, false ) ) ) {
683 683
 				continue; // Not a filter, or empty
684 684
 			}
685 685
 
@@ -693,19 +693,19 @@  discard block
 block discarded – undo
693 693
 				continue;
694 694
 			}
695 695
 
696
-			if ( ! isset( $filter['operator'] ) ) {
697
-				$filter['operator'] = $this->get_operator( $get, $key, array( 'contains' ), 'contains' );
696
+			if ( ! isset( $filter[ 'operator' ] ) ) {
697
+				$filter[ 'operator' ] = $this->get_operator( $get, $key, array( 'contains' ), 'contains' );
698 698
 			}
699 699
 
700
-			if ( isset( $filter[0]['value'] ) ) {
701
-				$search_criteria['field_filters'] = array_merge( $search_criteria['field_filters'], $filter );
700
+			if ( isset( $filter[ 0 ][ 'value' ] ) ) {
701
+				$search_criteria[ 'field_filters' ] = array_merge( $search_criteria[ 'field_filters' ], $filter );
702 702
 
703 703
 				// if date range type, set search mode to ALL
704
-				if ( ! empty( $filter[0]['operator'] ) && in_array( $filter[0]['operator'], array( '>=', '<=', '>', '<' ) ) ) {
704
+				if ( ! empty( $filter[ 0 ][ 'operator' ] ) && in_array( $filter[ 0 ][ 'operator' ], array( '>=', '<=', '>', '<' ) ) ) {
705 705
 					$mode = 'all';
706 706
 				}
707
-			} elseif( !empty( $filter ) ) {
708
-				$search_criteria['field_filters'][] = $filter;
707
+			} elseif ( ! empty( $filter ) ) {
708
+				$search_criteria[ 'field_filters' ][ ] = $filter;
709 709
 			}
710 710
 		}
711 711
 
@@ -714,7 +714,7 @@  discard block
 block discarded – undo
714 714
 		 * @since 1.5.1
715 715
 		 * @param[out,in] string $mode Search mode (`any` vs `all`)
716 716
 		 */
717
-		$search_criteria['field_filters']['mode'] = apply_filters( 'gravityview/search/mode', $mode );
717
+		$search_criteria[ 'field_filters' ][ 'mode' ] = apply_filters( 'gravityview/search/mode', $mode );
718 718
 
719 719
 		gravityview()->log->debug( 'Returned Search Criteria: ', array( 'data' => $search_criteria ) );
720 720
 
@@ -748,19 +748,19 @@  discard block
 block discarded – undo
748 748
 
749 749
 		$query_class = $view->get_query_class();
750 750
 
751
-		if ( empty( $search_criteria['field_filters'] ) ) {
751
+		if ( empty( $search_criteria[ 'field_filters' ] ) ) {
752 752
 			return;
753 753
 		}
754 754
 
755 755
 		$widgets = $view->widgets->by_id( $this->widget_id );
756 756
 		if ( $widgets->count() ) {
757 757
 			$widgets = $widgets->all();
758
-			$widget  = $widgets[0];
758
+			$widget  = $widgets[ 0 ];
759 759
 
760 760
 			$search_fields = json_decode( $widget->configuration->get( 'search_fields' ), true );
761 761
 
762
-			foreach ( (array) $search_fields as $search_field ) {
763
-				if ( 'created_by' === $search_field['field'] && 'input_text' === $search_field['input'] ) {
762
+			foreach ( (array)$search_fields as $search_field ) {
763
+				if ( 'created_by' === $search_field[ 'field' ] && 'input_text' === $search_field[ 'input' ] ) {
764 764
 					$created_by_text_mode = true;
765 765
 				}
766 766
 			}
@@ -769,7 +769,7 @@  discard block
 block discarded – undo
769 769
 		$extra_conditions = array();
770 770
 		$mode = 'any';
771 771
 
772
-		foreach ( $search_criteria['field_filters'] as &$filter ) {
772
+		foreach ( $search_criteria[ 'field_filters' ] as &$filter ) {
773 773
 			if ( ! is_array( $filter ) ) {
774 774
 				if ( in_array( strtolower( $filter ), array( 'any', 'all' ) ) ) {
775 775
 					$mode = $filter;
@@ -778,13 +778,13 @@  discard block
 block discarded – undo
778 778
 			}
779 779
 
780 780
 			// Construct a manual query for unapproved statuses
781
-			if ( 'is_approved' === $filter['key'] && in_array( \GravityView_Entry_Approval_Status::UNAPPROVED, (array) $filter['value'] ) ) {
782
-				$_tmp_query       = new $query_class( $view->form->ID, array(
781
+			if ( 'is_approved' === $filter[ 'key' ] && in_array( \GravityView_Entry_Approval_Status::UNAPPROVED, (array)$filter[ 'value' ] ) ) {
782
+				$_tmp_query = new $query_class( $view->form->ID, array(
783 783
 					'field_filters' => array(
784 784
 						array(
785 785
 							'operator' => 'in',
786 786
 							'key'      => 'is_approved',
787
-							'value'    => (array) $filter['value'],
787
+							'value'    => (array)$filter[ 'value' ],
788 788
 						),
789 789
 						array(
790 790
 							'operator' => 'is',
@@ -796,30 +796,30 @@  discard block
 block discarded – undo
796 796
 				) );
797 797
 				$_tmp_query_parts = $_tmp_query->_introspect();
798 798
 
799
-				$extra_conditions[] = $_tmp_query_parts['where'];
799
+				$extra_conditions[ ] = $_tmp_query_parts[ 'where' ];
800 800
 
801 801
 				$filter = false;
802 802
 				continue;
803 803
 			}
804 804
 
805 805
 			// Construct manual query for text mode creator search
806
-			if ( 'created_by' === $filter['key'] && ! empty( $created_by_text_mode ) ) {
807
-				$extra_conditions[] = new GravityView_Widget_Search_Author_GF_Query_Condition( $filter, $view );
806
+			if ( 'created_by' === $filter[ 'key' ] && ! empty( $created_by_text_mode ) ) {
807
+				$extra_conditions[ ] = new GravityView_Widget_Search_Author_GF_Query_Condition( $filter, $view );
808 808
 				$filter = false;
809 809
 				continue;
810 810
 			}
811 811
 
812 812
 			// By default, we want searches to be wildcard for each field.
813
-			$filter['operator'] = empty( $filter['operator'] ) ? 'contains' : $filter['operator'];
813
+			$filter[ 'operator' ] = empty( $filter[ 'operator' ] ) ? 'contains' : $filter[ 'operator' ];
814 814
 
815 815
 			// For multichoice, let's have an in (OR) search.
816
-			if ( is_array( $filter['value'] ) ) {
817
-				$filter['operator'] = 'in'; // @todo what about in contains (OR LIKE chains)?
816
+			if ( is_array( $filter[ 'value' ] ) ) {
817
+				$filter[ 'operator' ] = 'in'; // @todo what about in contains (OR LIKE chains)?
818 818
 			}
819 819
 
820 820
 			// Default form with joins functionality
821
-			if ( empty( $filter['form_id'] ) ) {
822
-				$filter['form_id'] = $view->form ? $view->form->ID : 0;
821
+			if ( empty( $filter[ 'form_id' ] ) ) {
822
+				$filter[ 'form_id' ] = $view->form ? $view->form->ID : 0;
823 823
 			}
824 824
 
825 825
 			/**
@@ -829,28 +829,28 @@  discard block
 block discarded – undo
829 829
 			 * @since develop
830 830
 			 * @param \GV\View $view The View we're operating on.
831 831
 			 */
832
-			$filter['operator'] = apply_filters( 'gravityview_search_operator', $filter['operator'], $filter, $view );
832
+			$filter[ 'operator' ] = apply_filters( 'gravityview_search_operator', $filter[ 'operator' ], $filter, $view );
833 833
 		}
834 834
 
835
-		if ( ! empty( $search_criteria['start_date'] ) || ! empty( $search_criteria['end_date'] ) ) {
835
+		if ( ! empty( $search_criteria[ 'start_date' ] ) || ! empty( $search_criteria[ 'end_date' ] ) ) {
836 836
 			$date_criteria = array();
837 837
 
838
-			if ( isset( $search_criteria['start_date'] ) ) {
839
-				$date_criteria['start_date'] = $search_criteria['start_date'];
838
+			if ( isset( $search_criteria[ 'start_date' ] ) ) {
839
+				$date_criteria[ 'start_date' ] = $search_criteria[ 'start_date' ];
840 840
 			}
841 841
 
842
-			if ( isset( $search_criteria['end_date'] ) ) {
843
-				$date_criteria['end_date'] = $search_criteria['end_date'];
842
+			if ( isset( $search_criteria[ 'end_date' ] ) ) {
843
+				$date_criteria[ 'end_date' ] = $search_criteria[ 'end_date' ];
844 844
 			}
845 845
 
846 846
 			$_tmp_query         = new $query_class( $view->form->ID, $date_criteria );
847 847
 			$_tmp_query_parts   = $_tmp_query->_introspect();
848
-			$extra_conditions[] = $_tmp_query_parts['where'];
848
+			$extra_conditions[ ] = $_tmp_query_parts[ 'where' ];
849 849
 		}
850 850
 
851 851
 		$search_conditions = array();
852 852
 
853
-		if ( $filters = array_filter( $search_criteria['field_filters'] ) ) {
853
+		if ( $filters = array_filter( $search_criteria[ 'field_filters' ] ) ) {
854 854
 
855 855
 			foreach ( $filters as $filter ) {
856 856
 				if ( ! is_array( $filter ) ) {
@@ -863,12 +863,12 @@  discard block
 block discarded – undo
863 863
 				 * code by reusing what's inside GF_Query already as they
864 864
 				 * take care of many small things like forcing numeric, etc.
865 865
 				 */
866
-				$_tmp_query       = new $query_class( $filter['form_id'], array( 'mode' => 'any', 'field_filters' => array( $filter ) ) );
866
+				$_tmp_query       = new $query_class( $filter[ 'form_id' ], array( 'mode' => 'any', 'field_filters' => array( $filter ) ) );
867 867
 				$_tmp_query_parts = $_tmp_query->_introspect();
868
-				$search_condition = $_tmp_query_parts['where'];
868
+				$search_condition = $_tmp_query_parts[ 'where' ];
869 869
 
870
-				if ( empty( $filter['key'] ) && $search_condition->expressions ) {
871
-					$search_conditions[] = $search_condition;
870
+				if ( empty( $filter[ 'key' ] ) && $search_condition->expressions ) {
871
+					$search_conditions[ ] = $search_condition;
872 872
 				} else {
873 873
 					$left = $search_condition->left;
874 874
 					$alias = $query->_alias( $left->field_id, $left->source, $left->is_entry_column() ? 't' : 'm' );
@@ -879,21 +879,21 @@  discard block
 block discarded – undo
879 879
 							$join = $_join->join;
880 880
 
881 881
 							// Join
882
-							$search_conditions[] = new GF_Query_Condition(
882
+							$search_conditions[ ] = new GF_Query_Condition(
883 883
 								new GF_Query_Column( GF_Query_Column::META, $join->ID, $query->_alias( GF_Query_Column::META, $join->ID, 'm' ) ),
884 884
 								$search_condition->operator,
885 885
 								$search_condition->right
886 886
 							);
887 887
 
888 888
 							// On
889
-							$search_conditions[] = new GF_Query_Condition(
889
+							$search_conditions[ ] = new GF_Query_Condition(
890 890
 								new GF_Query_Column( GF_Query_Column::META, $on->ID, $query->_alias( GF_Query_Column::META, $on->ID, 'm' ) ),
891 891
 								$search_condition->operator,
892 892
 								$search_condition->right
893 893
 							);
894 894
 						}
895 895
 					} else {
896
-						$search_conditions[] = new GF_Query_Condition(
896
+						$search_conditions[ ] = new GF_Query_Condition(
897 897
 							new GF_Query_Column( $left->field_id, $left->source, $alias ),
898 898
 							$search_condition->operator,
899 899
 							$search_condition->right
@@ -915,7 +915,7 @@  discard block
 block discarded – undo
915 915
 		/**
916 916
 		 * Combine the parts as a new WHERE clause.
917 917
 		 */
918
-		$where = call_user_func_array( '\GF_Query_Condition::_and', array_merge( array( $query_parts['where'] ), $search_conditions, $extra_conditions ) );
918
+		$where = call_user_func_array( '\GF_Query_Condition::_and', array_merge( array( $query_parts[ 'where' ] ), $search_conditions, $extra_conditions ) );
919 919
 		$query->where( $where );
920 920
 	}
921 921
 
@@ -938,7 +938,7 @@  discard block
 block discarded – undo
938 938
 		$field_id = str_replace( 'filter_', '', $key );
939 939
 
940 940
 		// calculates field_id, removing 'filter_' and for '_' for advanced fields ( like name or checkbox )
941
-		if ( preg_match('/^[0-9_]+$/ism', $field_id ) ) {
941
+		if ( preg_match( '/^[0-9_]+$/ism', $field_id ) ) {
942 942
 			$field_id = str_replace( '_', '.', $field_id );
943 943
 		}
944 944
 
@@ -995,7 +995,7 @@  discard block
 block discarded – undo
995 995
 			// form is in searchable fields
996 996
 			$found = false;
997 997
 			foreach ( $searchable_fields as $field ) {
998
-				if ( $field_id == $field['field'] && $form->ID == $field['form_id'] ) {
998
+				if ( $field_id == $field[ 'field' ] && $form->ID == $field[ 'form_id' ] ) {
999 999
 					$found = true;
1000 1000
 					break;
1001 1001
 				}
@@ -1031,7 +1031,7 @@  discard block
 block discarded – undo
1031 1031
 
1032 1032
 			case 'select':
1033 1033
 			case 'radio':
1034
-				$filter['operator'] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1034
+				$filter[ 'operator' ] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1035 1035
 				break;
1036 1036
 
1037 1037
 			case 'post_category':
@@ -1045,7 +1045,7 @@  discard block
 block discarded – undo
1045 1045
 
1046 1046
 				foreach ( $value as $val ) {
1047 1047
 					$cat = get_term( $val, 'category' );
1048
-					$filter[] = array(
1048
+					$filter[ ] = array(
1049 1049
 						'key'      => $field_id,
1050 1050
 						'value'    => esc_attr( $cat->name ) . ':' . $val,
1051 1051
 						'operator' => $this->get_operator( $get, $key, array( 'is' ), 'is' ),
@@ -1064,7 +1064,7 @@  discard block
 block discarded – undo
1064 1064
 				$filter = array();
1065 1065
 
1066 1066
 				foreach ( $value as $val ) {
1067
-					$filter[] = array( 'key' => $field_id, 'value' => $val );
1067
+					$filter[ ] = array( 'key' => $field_id, 'value' => $val );
1068 1068
 				}
1069 1069
 
1070 1070
 				break;
@@ -1073,9 +1073,9 @@  discard block
 block discarded – undo
1073 1073
 				// convert checkbox on/off into the correct search filter
1074 1074
 				if ( false !== strpos( $field_id, '.' ) && ! empty( $form_field->inputs ) && ! empty( $form_field->choices ) ) {
1075 1075
 					foreach ( $form_field->inputs as $k => $input ) {
1076
-						if ( $input['id'] == $field_id ) {
1077
-							$filter['value'] = $form_field->choices[ $k ]['value'];
1078
-							$filter['operator'] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1076
+						if ( $input[ 'id' ] == $field_id ) {
1077
+							$filter[ 'value' ] = $form_field->choices[ $k ][ 'value' ];
1078
+							$filter[ 'operator' ] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1079 1079
 							break;
1080 1080
 						}
1081 1081
 					}
@@ -1085,7 +1085,7 @@  discard block
 block discarded – undo
1085 1085
 					$filter = array();
1086 1086
 
1087 1087
 					foreach ( $value as $val ) {
1088
-						$filter[] = array(
1088
+						$filter[ ] = array(
1089 1089
 							'key'      => $field_id,
1090 1090
 							'value'    => $val,
1091 1091
 							'operator' => $this->get_operator( $get, $key, array( 'is' ), 'is' ),
@@ -1106,9 +1106,9 @@  discard block
 block discarded – undo
1106 1106
 					foreach ( $words as $word ) {
1107 1107
 						if ( ! empty( $word ) && strlen( $word ) > 1 ) {
1108 1108
 							// Keep the same key for each filter
1109
-							$filter['value'] = $word;
1109
+							$filter[ 'value' ] = $word;
1110 1110
 							// Add a search for the value
1111
-							$filters[] = $filter;
1111
+							$filters[ ] = $filter;
1112 1112
 						}
1113 1113
 					}
1114 1114
 
@@ -1122,19 +1122,19 @@  discard block
 block discarded – undo
1122 1122
 
1123 1123
 					foreach ( $searchable_fields as $searchable_field ) {
1124 1124
 
1125
-						if( $form_field->ID !== $searchable_field['field'] ) {
1125
+						if ( $form_field->ID !== $searchable_field[ 'field' ] ) {
1126 1126
 							continue;
1127 1127
 						}
1128 1128
 
1129 1129
 						// Only exact-match dropdowns, not text search
1130
-						if( in_array( $searchable_field['input'], array( 'text', 'search' ), true ) ) {
1130
+						if ( in_array( $searchable_field[ 'input' ], array( 'text', 'search' ), true ) ) {
1131 1131
 							continue;
1132 1132
 						}
1133 1133
 
1134 1134
 						$input_id = gravityview_get_input_id_from_id( $form_field->ID );
1135 1135
 
1136 1136
 						if ( 4 === $input_id ) {
1137
-							$filter['operator'] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1137
+							$filter[ 'operator' ] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1138 1138
 						};
1139 1139
 					}
1140 1140
 				}
@@ -1161,12 +1161,12 @@  discard block
 block discarded – undo
1161 1161
 						 * @since 1.16.3
1162 1162
 						 * Safeguard until GF implements '<=' operator
1163 1163
 						 */
1164
-						if( !GFFormsModel::is_valid_operator( $operator ) && $operator === '<=' ) {
1164
+						if ( ! GFFormsModel::is_valid_operator( $operator ) && $operator === '<=' ) {
1165 1165
 							$operator = '<';
1166 1166
 							$date = date( 'Y-m-d', strtotime( self::get_formatted_date( $date, 'Y-m-d', $date_format ) . ' +1 day' ) );
1167 1167
 						}
1168 1168
 
1169
-						$filter[] = array(
1169
+						$filter[ ] = array(
1170 1170
 							'key'      => $field_id,
1171 1171
 							'value'    => self::get_formatted_date( $date, 'Y-m-d', $date_format ),
1172 1172
 							'operator' => $this->get_operator( $get, $key, array( $operator ), $operator ),
@@ -1174,8 +1174,8 @@  discard block
 block discarded – undo
1174 1174
 					}
1175 1175
 				} else {
1176 1176
 					$date = $value;
1177
-					$filter['value'] = self::get_formatted_date( $date, 'Y-m-d', $date_format );
1178
-					$filter['operator'] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1177
+					$filter[ 'value' ] = self::get_formatted_date( $date, 'Y-m-d', $date_format );
1178
+					$filter[ 'operator' ] = $this->get_operator( $get, $key, array( 'is' ), 'is' );
1179 1179
 				}
1180 1180
 
1181 1181
 				break;
@@ -1206,7 +1206,7 @@  discard block
 block discarded – undo
1206 1206
 			'ymd_dot' => 'Y.m.d',
1207 1207
 		);
1208 1208
 
1209
-		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ){
1209
+		if ( ! empty( $field->dateFormat ) && isset( $datepicker[ $field->dateFormat ] ) ) {
1210 1210
 			$format = $datepicker[ $field->dateFormat ];
1211 1211
 		}
1212 1212
 
@@ -1243,7 +1243,7 @@  discard block
 block discarded – undo
1243 1243
 	public function add_template_path( $file_paths ) {
1244 1244
 
1245 1245
 		// Index 100 is the default GravityView template path.
1246
-		$file_paths[102] = self::$file . 'templates/';
1246
+		$file_paths[ 102 ] = self::$file . 'templates/';
1247 1247
 
1248 1248
 		return $file_paths;
1249 1249
 	}
@@ -1262,7 +1262,7 @@  discard block
 block discarded – undo
1262 1262
 		$has_date = false;
1263 1263
 
1264 1264
 		foreach ( $search_fields as $k => $field ) {
1265
-			if ( in_array( $field['input'], array( 'date', 'date_range', 'entry_date' ) ) ) {
1265
+			if ( in_array( $field[ 'input' ], array( 'date', 'date_range', 'entry_date' ) ) ) {
1266 1266
 				$has_date = true;
1267 1267
 				break;
1268 1268
 			}
@@ -1289,7 +1289,7 @@  discard block
 block discarded – undo
1289 1289
 		}
1290 1290
 
1291 1291
 		// get configured search fields
1292
-		$search_fields = ! empty( $widget_args['search_fields'] ) ? json_decode( $widget_args['search_fields'], true ) : '';
1292
+		$search_fields = ! empty( $widget_args[ 'search_fields' ] ) ? json_decode( $widget_args[ 'search_fields' ], true ) : '';
1293 1293
 
1294 1294
 		if ( empty( $search_fields ) || ! is_array( $search_fields ) ) {
1295 1295
 			gravityview()->log->debug( 'No search fields configured for widget:', array( 'data' => $widget_args ) );
@@ -1305,40 +1305,40 @@  discard block
 block discarded – undo
1305 1305
 
1306 1306
 			$updated_field = $this->get_search_filter_details( $updated_field, $context );
1307 1307
 
1308
-			switch ( $field['field'] ) {
1308
+			switch ( $field[ 'field' ] ) {
1309 1309
 
1310 1310
 				case 'search_all':
1311
-					$updated_field['key'] = 'search_all';
1312
-					$updated_field['input'] = 'search_all';
1313
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_search' );
1311
+					$updated_field[ 'key' ] = 'search_all';
1312
+					$updated_field[ 'input' ] = 'search_all';
1313
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_search' );
1314 1314
 					break;
1315 1315
 
1316 1316
 				case 'entry_date':
1317
-					$updated_field['key'] = 'entry_date';
1318
-					$updated_field['input'] = 'entry_date';
1319
-					$updated_field['value'] = array(
1317
+					$updated_field[ 'key' ] = 'entry_date';
1318
+					$updated_field[ 'input' ] = 'entry_date';
1319
+					$updated_field[ 'value' ] = array(
1320 1320
 						'start' => $this->rgget_or_rgpost( 'gv_start' ),
1321 1321
 						'end' => $this->rgget_or_rgpost( 'gv_end' ),
1322 1322
 					);
1323 1323
 					break;
1324 1324
 
1325 1325
 				case 'entry_id':
1326
-					$updated_field['key'] = 'entry_id';
1327
-					$updated_field['input'] = 'entry_id';
1328
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_id' );
1326
+					$updated_field[ 'key' ] = 'entry_id';
1327
+					$updated_field[ 'input' ] = 'entry_id';
1328
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_id' );
1329 1329
 					break;
1330 1330
 
1331 1331
 				case 'created_by':
1332
-					$updated_field['key'] = 'created_by';
1333
-					$updated_field['name'] = 'gv_by';
1334
-					$updated_field['value'] = $this->rgget_or_rgpost( 'gv_by' );
1335
-					$updated_field['choices'] = self::get_created_by_choices( $view );
1332
+					$updated_field[ 'key' ] = 'created_by';
1333
+					$updated_field[ 'name' ] = 'gv_by';
1334
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'gv_by' );
1335
+					$updated_field[ 'choices' ] = self::get_created_by_choices( $view );
1336 1336
 					break;
1337 1337
 				
1338 1338
 				case 'is_approved':
1339
-					$updated_field['key'] = 'is_approved';
1340
-					$updated_field['value'] = $this->rgget_or_rgpost( 'filter_is_approved' );
1341
-					$updated_field['choices'] = self::get_is_approved_choices();
1339
+					$updated_field[ 'key' ] = 'is_approved';
1340
+					$updated_field[ 'value' ] = $this->rgget_or_rgpost( 'filter_is_approved' );
1341
+					$updated_field[ 'choices' ] = self::get_is_approved_choices();
1342 1342
 					break;
1343 1343
 			}
1344 1344
 
@@ -1359,16 +1359,16 @@  discard block
 block discarded – undo
1359 1359
 
1360 1360
 		$gravityview_view->permalink_fields = $this->add_no_permalink_fields( array(), $this, $widget_args );
1361 1361
 
1362
-		$gravityview_view->search_layout = ! empty( $widget_args['search_layout'] ) ? $widget_args['search_layout'] : 'horizontal';
1362
+		$gravityview_view->search_layout = ! empty( $widget_args[ 'search_layout' ] ) ? $widget_args[ 'search_layout' ] : 'horizontal';
1363 1363
 
1364 1364
 		/** @since 1.14 */
1365
-		$gravityview_view->search_mode = ! empty( $widget_args['search_mode'] ) ? $widget_args['search_mode'] : 'any';
1365
+		$gravityview_view->search_mode = ! empty( $widget_args[ 'search_mode' ] ) ? $widget_args[ 'search_mode' ] : 'any';
1366 1366
 
1367
-		$custom_class = ! empty( $widget_args['custom_class'] ) ? $widget_args['custom_class'] : '';
1367
+		$custom_class = ! empty( $widget_args[ 'custom_class' ] ) ? $widget_args[ 'custom_class' ] : '';
1368 1368
 
1369 1369
 		$gravityview_view->search_class = self::get_search_class( $custom_class );
1370 1370
 
1371
-		$gravityview_view->search_clear = ! empty( $widget_args['search_clear'] ) ? $widget_args['search_clear'] : false;
1371
+		$gravityview_view->search_clear = ! empty( $widget_args[ 'search_clear' ] ) ? $widget_args[ 'search_clear' ] : false;
1372 1372
 
1373 1373
 		if ( $this->has_date_field( $search_fields ) ) {
1374 1374
 			// enqueue datepicker stuff only if needed!
@@ -1390,10 +1390,10 @@  discard block
 block discarded – undo
1390 1390
 	public static function get_search_class( $custom_class = '' ) {
1391 1391
 		$gravityview_view = GravityView_View::getInstance();
1392 1392
 
1393
-		$search_class = 'gv-search-'.$gravityview_view->search_layout;
1393
+		$search_class = 'gv-search-' . $gravityview_view->search_layout;
1394 1394
 
1395
-		if ( ! empty( $custom_class )  ) {
1396
-			$search_class .= ' '.$custom_class;
1395
+		if ( ! empty( $custom_class ) ) {
1396
+			$search_class .= ' ' . $custom_class;
1397 1397
 		}
1398 1398
 
1399 1399
 		/**
@@ -1437,9 +1437,9 @@  discard block
 block discarded – undo
1437 1437
 
1438 1438
 		if ( ! $label ) {
1439 1439
 
1440
-			$label = isset( $form_field['label'] ) ? $form_field['label'] : '';
1440
+			$label = isset( $form_field[ 'label' ] ) ? $form_field[ 'label' ] : '';
1441 1441
 
1442
-			switch( $field['field'] ) {
1442
+			switch ( $field[ 'field' ] ) {
1443 1443
 				case 'search_all':
1444 1444
 					$label = __( 'Search Entries:', 'gravityview' );
1445 1445
 					break;
@@ -1451,10 +1451,10 @@  discard block
 block discarded – undo
1451 1451
 					break;
1452 1452
 				default:
1453 1453
 					// If this is a field input, not a field
1454
-					if ( strpos( $field['field'], '.' ) > 0 && ! empty( $form_field['inputs'] ) ) {
1454
+					if ( strpos( $field[ 'field' ], '.' ) > 0 && ! empty( $form_field[ 'inputs' ] ) ) {
1455 1455
 
1456 1456
 						// Get the label for the field in question, which returns an array
1457
-						$items = wp_list_filter( $form_field['inputs'], array( 'id' => $field['field'] ) );
1457
+						$items = wp_list_filter( $form_field[ 'inputs' ], array( 'id' => $field[ 'field' ] ) );
1458 1458
 
1459 1459
 						// Get the item with the `label` key
1460 1460
 						$values = wp_list_pluck( $items, 'label' );
@@ -1495,35 +1495,35 @@  discard block
 block discarded – undo
1495 1495
 		$form = $gravityview_view->getForm();
1496 1496
 
1497 1497
 		// for advanced field ids (eg, first name / last name )
1498
-		$name = 'filter_' . str_replace( '.', '_', $field['field'] );
1498
+		$name = 'filter_' . str_replace( '.', '_', $field[ 'field' ] );
1499 1499
 
1500 1500
 		// get searched value from $_GET/$_POST (string or array)
1501 1501
 		$value = $this->rgget_or_rgpost( $name );
1502 1502
 
1503 1503
 		// get form field details
1504
-		$form_field = gravityview_get_field( $form, $field['field'] );
1504
+		$form_field = gravityview_get_field( $form, $field[ 'field' ] );
1505 1505
 
1506 1506
 		$filter = array(
1507
-			'key' => $field['field'],
1507
+			'key' => $field[ 'field' ],
1508 1508
 			'name' => $name,
1509 1509
 			'label' => self::get_field_label( $field, $form_field ),
1510
-			'input' => $field['input'],
1510
+			'input' => $field[ 'input' ],
1511 1511
 			'value' => $value,
1512
-			'type' => $form_field['type'],
1512
+			'type' => $form_field[ 'type' ],
1513 1513
 		);
1514 1514
 
1515 1515
 		// collect choices
1516
-		if ( 'post_category' === $form_field['type'] && ! empty( $form_field['displayAllCategories'] ) && empty( $form_field['choices'] ) ) {
1517
-			$filter['choices'] = gravityview_get_terms_choices();
1518
-		} elseif ( ! empty( $form_field['choices'] ) ) {
1519
-			$filter['choices'] = $form_field['choices'];
1516
+		if ( 'post_category' === $form_field[ 'type' ] && ! empty( $form_field[ 'displayAllCategories' ] ) && empty( $form_field[ 'choices' ] ) ) {
1517
+			$filter[ 'choices' ] = gravityview_get_terms_choices();
1518
+		} elseif ( ! empty( $form_field[ 'choices' ] ) ) {
1519
+			$filter[ 'choices' ] = $form_field[ 'choices' ];
1520 1520
 		}
1521 1521
 
1522
-		if ( 'date_range' === $field['input'] && empty( $value ) ) {
1523
-			$filter['value'] = array( 'start' => '', 'end' => '' );
1522
+		if ( 'date_range' === $field[ 'input' ] && empty( $value ) ) {
1523
+			$filter[ 'value' ] = array( 'start' => '', 'end' => '' );
1524 1524
 		}
1525 1525
 
1526
-		if ( ! empty( $filter['choices'] ) ) {
1526
+		if ( ! empty( $filter[ 'choices' ] ) ) {
1527 1527
 			/**
1528 1528
 			 * @filter `gravityview/search/sieve_choices` Only output used choices for this field.
1529 1529
 			 * @param[in,out] bool Yes or no.
@@ -1531,7 +1531,7 @@  discard block
 block discarded – undo
1531 1531
 			 * @param \GV\Context The context.
1532 1532
 			 */
1533 1533
 			if ( apply_filters( 'gravityview/search/sieve_choices', false, $field, $context ) ) {
1534
-				$filter['choices'] = $this->sieve_filter_choices( $filter, $context );
1534
+				$filter[ 'choices' ] = $this->sieve_filter_choices( $filter, $context );
1535 1535
 			}
1536 1536
 		}
1537 1537
 
@@ -1560,11 +1560,11 @@  discard block
 block discarded – undo
1560 1560
 	 * @return array The filter choices.
1561 1561
 	 */
1562 1562
 	private function sieve_filter_choices( $filter, $context ) {
1563
-		if ( empty( $filter['key'] ) || empty( $filter['choices'] ) ) {
1563
+		if ( empty( $filter[ 'key' ] ) || empty( $filter[ 'choices' ] ) ) {
1564 1564
 			return $filter; // @todo Populate plugins might give us empty choices
1565 1565
 		}
1566 1566
 
1567
-		if ( ! is_numeric( $filter['key'] ) ) {
1567
+		if ( ! is_numeric( $filter[ 'key' ] ) ) {
1568 1568
 			return $filter;
1569 1569
 		}
1570 1570
 
@@ -1574,27 +1574,27 @@  discard block
 block discarded – undo
1574 1574
 
1575 1575
 		$table = GFFormsModel::get_entry_meta_table_name();
1576 1576
 
1577
-		$key_like = $wpdb->esc_like( $filter['key'] ) . '.%';
1577
+		$key_like = $wpdb->esc_like( $filter[ 'key' ] ) . '.%';
1578 1578
 
1579 1579
 		switch ( \GV\Utils::get( $filter, 'type' ) ):
1580 1580
 			case 'post_category':
1581 1581
 				$choices = $wpdb->get_col( $wpdb->prepare(
1582 1582
 					"SELECT DISTINCT SUBSTRING_INDEX(meta_value, ':', 1) FROM $table WHERE (meta_key LIKE %s OR meta_key = %d) AND form_id = %d",
1583
-					$key_like, $filter['key'], $form_id
1583
+					$key_like, $filter[ 'key' ], $form_id
1584 1584
 				) );
1585 1585
 				break;
1586 1586
 			default:
1587 1587
 				$choices = $wpdb->get_col( $wpdb->prepare(
1588 1588
 					"SELECT DISTINCT meta_value FROM $table WHERE (meta_key LIKE %s OR meta_key = %d) AND form_id = %d",
1589
-					$key_like, $filter['key'], $form_id
1589
+					$key_like, $filter[ 'key' ], $form_id
1590 1590
 				) );
1591 1591
 				break;
1592 1592
 		endswitch;
1593 1593
 
1594 1594
 		$filter_choices = array();
1595
-		foreach ( $filter['choices'] as $choice ) {
1596
-			if ( in_array( $choice['text'], $choices, true ) || in_array( $choice['value'], $choices, true ) ) {
1597
-				$filter_choices[] = $choice;
1595
+		foreach ( $filter[ 'choices' ] as $choice ) {
1596
+			if ( in_array( $choice[ 'text' ], $choices, true ) || in_array( $choice[ 'value' ], $choices, true ) ) {
1597
+				$filter_choices[ ] = $choice;
1598 1598
 			}
1599 1599
 		}
1600 1600
 
@@ -1629,7 +1629,7 @@  discard block
 block discarded – undo
1629 1629
 			 * @param \GV\View $view The view.
1630 1630
 			 */
1631 1631
 			$text = apply_filters( 'gravityview/search/created_by/text', $user->display_name, $user, $view );
1632
-			$choices[] = array(
1632
+			$choices[ ] = array(
1633 1633
 				'value' => $user->ID,
1634 1634
 				'text' => $text,
1635 1635
 			);
@@ -1649,9 +1649,9 @@  discard block
 block discarded – undo
1649 1649
 
1650 1650
 		$choices = array();
1651 1651
 		foreach ( GravityView_Entry_Approval_Status::get_all() as $status ) {
1652
-			$choices[] = array(
1653
-				'value' => $status['value'],
1654
-				'text' => $status['label'],
1652
+			$choices[ ] = array(
1653
+				'value' => $status[ 'value' ],
1654
+				'text' => $status[ 'label' ],
1655 1655
 			);
1656 1656
 		}
1657 1657
 
@@ -1703,7 +1703,7 @@  discard block
 block discarded – undo
1703 1703
 	 */
1704 1704
 	public function add_datepicker_js_dependency( $js_dependencies ) {
1705 1705
 
1706
-		$js_dependencies[] = 'jquery-ui-datepicker';
1706
+		$js_dependencies[ ] = 'jquery-ui-datepicker';
1707 1707
 
1708 1708
 		return $js_dependencies;
1709 1709
 	}
@@ -1747,7 +1747,7 @@  discard block
 block discarded – undo
1747 1747
 			'isRTL'             => is_rtl(),
1748 1748
 		), $view_data );
1749 1749
 
1750
-		$localizations['datepicker'] = $datepicker_settings;
1750
+		$localizations[ 'datepicker' ] = $datepicker_settings;
1751 1751
 
1752 1752
 		return $localizations;
1753 1753
 
@@ -1774,7 +1774,7 @@  discard block
 block discarded – undo
1774 1774
 	 * @return void
1775 1775
 	 */
1776 1776
 	private function maybe_enqueue_flexibility() {
1777
-		if ( isset( $_SERVER['HTTP_USER_AGENT'] ) && preg_match( '/MSIE [8-9]/', $_SERVER['HTTP_USER_AGENT'] ) ) {
1777
+		if ( isset( $_SERVER[ 'HTTP_USER_AGENT' ] ) && preg_match( '/MSIE [8-9]/', $_SERVER[ 'HTTP_USER_AGENT' ] ) ) {
1778 1778
 			wp_enqueue_script( 'gv-flexibility' );
1779 1779
 		}
1780 1780
 	}
@@ -1796,7 +1796,7 @@  discard block
 block discarded – undo
1796 1796
 		add_filter( 'gravityview_js_localization', array( $this, 'add_datepicker_localization' ), 10, 2 );
1797 1797
 
1798 1798
 		$scheme = is_ssl() ? 'https://' : 'http://';
1799
-		wp_enqueue_style( 'jquery-ui-datepicker', $scheme.'ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/themes/smoothness/jquery-ui.css' );
1799
+		wp_enqueue_style( 'jquery-ui-datepicker', $scheme . 'ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/themes/smoothness/jquery-ui.css' );
1800 1800
 
1801 1801
 		/**
1802 1802
 		 * @filter `gravityview_search_datepicker_class`
@@ -1875,7 +1875,7 @@  discard block
 block discarded – undo
1875 1875
 	public function add_preview_inputs() {
1876 1876
 		global $wp;
1877 1877
 
1878
-		if ( ! is_preview() || ! current_user_can( 'publish_gravityviews') ) {
1878
+		if ( ! is_preview() || ! current_user_can( 'publish_gravityviews' ) ) {
1879 1879
 			return;
1880 1880
 		}
1881 1881
 
@@ -1927,7 +1927,7 @@  discard block
 block discarded – undo
1927 1927
  */
1928 1928
 class GravityView_Widget_Search_Author_GF_Query_Condition extends \GF_Query_Condition {
1929 1929
 	public function __construct( $filter, $view ) {
1930
-		$this->value = $filter['value'];
1930
+		$this->value = $filter[ 'value' ];
1931 1931
 		$this->view = $view;
1932 1932
 	}
1933 1933
 
@@ -1959,11 +1959,11 @@  discard block
 block discarded – undo
1959 1959
 		$conditions = array();
1960 1960
 
1961 1961
 		foreach ( $user_fields as $user_field ) {
1962
-			$conditions[] = $wpdb->prepare( "`u`.`$user_field` LIKE %s", '%' . $wpdb->esc_like( $this->value ) .  '%' );
1962
+			$conditions[ ] = $wpdb->prepare( "`u`.`$user_field` LIKE %s", '%' . $wpdb->esc_like( $this->value ) . '%' );
1963 1963
 		}
1964 1964
 
1965 1965
 		foreach ( $user_meta_fields as $meta_field ) {
1966
-			$conditions[] = $wpdb->prepare( "(`um`.`meta_key` = %s AND `um`.`meta_value` LIKE %s)", $meta_field, '%' . $wpdb->esc_like( $this->value ) .  '%' );
1966
+			$conditions[ ] = $wpdb->prepare( "(`um`.`meta_key` = %s AND `um`.`meta_value` LIKE %s)", $meta_field, '%' . $wpdb->esc_like( $this->value ) . '%' );
1967 1967
 		}
1968 1968
 
1969 1969
 		$conditions = '(' . implode( ' OR ', $conditions ) . ')';
Please login to merge, or discard this patch.