|
@@ -126,8 +126,8 @@ discard block |
|
|
block discarded – undo |
|
126
|
126
|
|
|
127
|
127
|
$form = false; |
|
128
|
128
|
|
|
129
|
|
- if( $entry ) { |
|
130
|
|
- $form = GFAPI::get_form( $entry['form_id'] ); |
|
|
129
|
+ if ( $entry ) { |
|
|
130
|
+ $form = GFAPI::get_form( $entry[ 'form_id' ] ); |
|
131
|
131
|
} |
|
132
|
132
|
|
|
133
|
133
|
return $form; |
|
@@ -193,12 +193,12 @@ discard block |
|
|
block discarded – undo |
|
193
|
193
|
|
|
194
|
194
|
$has_transaction_data = rgar( $entry, $meta, false ); |
|
195
|
195
|
|
|
196
|
|
- if( ! empty( $has_transaction_data ) ) { |
|
|
196
|
+ if ( ! empty( $has_transaction_data ) ) { |
|
197
|
197
|
break; |
|
198
|
198
|
} |
|
199
|
199
|
} |
|
200
|
200
|
|
|
201
|
|
- return (bool) $has_transaction_data; |
|
|
201
|
+ return (bool)$has_transaction_data; |
|
202
|
202
|
} |
|
203
|
203
|
|
|
204
|
204
|
/** |
|
@@ -236,7 +236,7 @@ discard block |
|
|
block discarded – undo |
|
236
|
236
|
|
|
237
|
237
|
$results = GFAPI::get_entries( intval( $form_id ), $search_criteria, null, $paging ); |
|
238
|
238
|
|
|
239
|
|
- $result = ( ! empty( $results ) && ! empty( $results[0]['id'] ) ) ? $results[0]['id'] : null; |
|
|
239
|
+ $result = ( ! empty( $results ) && ! empty( $results[ 0 ][ 'id' ] ) ) ? $results[ 0 ][ 'id' ] : null; |
|
240
|
240
|
|
|
241
|
241
|
return $result; |
|
242
|
242
|
} |
|
@@ -253,10 +253,10 @@ discard block |
|
|
block discarded – undo |
|
253
|
253
|
* |
|
254
|
254
|
* @return array Empty array if GFAPI class isn't available or no forms. Otherwise, the array of Forms |
|
255
|
255
|
*/ |
|
256
|
|
- public static function get_forms( $active = true, $trash = false ) { |
|
|
256
|
+ public static function get_forms( $active = true, $trash = false ) { |
|
257
|
257
|
$forms = array(); |
|
258
|
258
|
if ( class_exists( 'GFAPI' ) ) { |
|
259
|
|
- if( 'any' === $active ) { |
|
|
259
|
+ if ( 'any' === $active ) { |
|
260
|
260
|
$active_forms = GFAPI::get_forms( true, $trash ); |
|
261
|
261
|
$inactive_forms = GFAPI::get_forms( false, $trash ); |
|
262
|
262
|
$forms = array_merge( array_filter( $active_forms ), array_filter( $inactive_forms ) ); |
|
@@ -287,9 +287,9 @@ discard block |
|
|
block discarded – undo |
|
287
|
287
|
$has_post_fields = false; |
|
288
|
288
|
|
|
289
|
289
|
if ( $form ) { |
|
290
|
|
- foreach ( $form['fields'] as $field ) { |
|
291
|
|
- if ( $include_parent_field || empty( $field['inputs'] ) ) { |
|
292
|
|
- $fields["{$field['id']}"] = array( |
|
|
290
|
+ foreach ( $form[ 'fields' ] as $field ) { |
|
|
291
|
+ if ( $include_parent_field || empty( $field[ 'inputs' ] ) ) { |
|
|
292
|
+ $fields[ "{$field[ 'id' ]}" ] = array( |
|
293
|
293
|
'label' => rgar( $field, 'label' ), |
|
294
|
294
|
'parent' => null, |
|
295
|
295
|
'type' => rgar( $field, 'type' ), |
|
@@ -298,10 +298,10 @@ discard block |
|
|
block discarded – undo |
|
298
|
298
|
); |
|
299
|
299
|
} |
|
300
|
300
|
|
|
301
|
|
- if ( $add_default_properties && ! empty( $field['inputs'] ) ) { |
|
302
|
|
- foreach ( $field['inputs'] as $input ) { |
|
|
301
|
+ if ( $add_default_properties && ! empty( $field[ 'inputs' ] ) ) { |
|
|
302
|
+ foreach ( $field[ 'inputs' ] as $input ) { |
|
303
|
303
|
|
|
304
|
|
- if( ! empty( $input['isHidden'] ) ) { |
|
|
304
|
+ if ( ! empty( $input[ 'isHidden' ] ) ) { |
|
305
|
305
|
continue; |
|
306
|
306
|
} |
|
307
|
307
|
|
|
@@ -309,10 +309,10 @@ discard block |
|
|
block discarded – undo |
|
309
|
309
|
* @hack |
|
310
|
310
|
* In case of email/email confirmation, the input for email has the same id as the parent field |
|
311
|
311
|
*/ |
|
312
|
|
- if( 'email' === $field['type'] && false === strpos( $input['id'], '.' ) ) { |
|
|
312
|
+ if ( 'email' === $field[ 'type' ] && false === strpos( $input[ 'id' ], '.' ) ) { |
|
313
|
313
|
continue; |
|
314
|
314
|
} |
|
315
|
|
- $fields["{$input['id']}"] = array( |
|
|
315
|
+ $fields[ "{$input[ 'id' ]}" ] = array( |
|
316
|
316
|
'label' => rgar( $input, 'label' ), |
|
317
|
317
|
'customLabel' => rgar( $input, 'customLabel' ), |
|
318
|
318
|
'parent' => $field, |
|
@@ -324,7 +324,7 @@ discard block |
|
|
block discarded – undo |
|
324
|
324
|
} |
|
325
|
325
|
|
|
326
|
326
|
|
|
327
|
|
- if( GFCommon::is_product_field( $field['type'] ) ){ |
|
|
327
|
+ if ( GFCommon::is_product_field( $field[ 'type' ] ) ) { |
|
328
|
328
|
$has_product_fields = true; |
|
329
|
329
|
} |
|
330
|
330
|
|
|
@@ -338,7 +338,7 @@ discard block |
|
|
block discarded – undo |
|
338
|
338
|
* @since 1.7 |
|
339
|
339
|
*/ |
|
340
|
340
|
if ( $has_post_fields ) { |
|
341
|
|
- $fields['post_id'] = array( |
|
|
341
|
+ $fields[ 'post_id' ] = array( |
|
342
|
342
|
'label' => __( 'Post ID', 'gravityview' ), |
|
343
|
343
|
'type' => 'post_id', |
|
344
|
344
|
); |
|
@@ -351,11 +351,11 @@ discard block |
|
|
block discarded – undo |
|
351
|
351
|
foreach ( $payment_fields as $payment_field ) { |
|
352
|
352
|
|
|
353
|
353
|
// Either the field exists ($fields['shipping']) or the form explicitly contains a `shipping` field with numeric key |
|
354
|
|
- if( isset( $fields["{$payment_field->name}"] ) || GFCommon::get_fields_by_type( $form, $payment_field->name ) ) { |
|
|
354
|
+ if ( isset( $fields[ "{$payment_field->name}" ] ) || GFCommon::get_fields_by_type( $form, $payment_field->name ) ) { |
|
355
|
355
|
continue; |
|
356
|
356
|
} |
|
357
|
357
|
|
|
358
|
|
- $fields["{$payment_field->name}"] = array( |
|
|
358
|
+ $fields[ "{$payment_field->name}" ] = array( |
|
359
|
359
|
'label' => $payment_field->label, |
|
360
|
360
|
'desc' => $payment_field->description, |
|
361
|
361
|
'type' => $payment_field->name, |
|
@@ -387,9 +387,9 @@ discard block |
|
|
block discarded – undo |
|
387
|
387
|
|
|
388
|
388
|
$fields = array(); |
|
389
|
389
|
|
|
390
|
|
- foreach ( $extra_fields as $key => $field ){ |
|
391
|
|
- if ( ! empty( $only_default_column ) && ! empty( $field['is_default_column'] ) ) { |
|
392
|
|
- $fields[ $key ] = array( 'label' => $field['label'], 'type' => 'entry_meta' ); |
|
|
390
|
+ foreach ( $extra_fields as $key => $field ) { |
|
|
391
|
+ if ( ! empty( $only_default_column ) && ! empty( $field[ 'is_default_column' ] ) ) { |
|
|
392
|
+ $fields[ $key ] = array( 'label' => $field[ 'label' ], 'type' => 'entry_meta' ); |
|
393
|
393
|
} |
|
394
|
394
|
} |
|
395
|
395
|
|
|
@@ -429,32 +429,32 @@ discard block |
|
|
block discarded – undo |
|
429
|
429
|
'search_criteria' => null, |
|
430
|
430
|
'sorting' => null, |
|
431
|
431
|
'paging' => null, |
|
432
|
|
- 'cache' => (isset( $passed_criteria['cache'] ) ? (bool) $passed_criteria['cache'] : true), |
|
|
432
|
+ 'cache' => ( isset( $passed_criteria[ 'cache' ] ) ? (bool)$passed_criteria[ 'cache' ] : true ), |
|
433
|
433
|
); |
|
434
|
434
|
|
|
435
|
435
|
$criteria = wp_parse_args( $passed_criteria, $search_criteria_defaults ); |
|
436
|
436
|
|
|
437
|
|
- if ( ! empty( $criteria['search_criteria']['field_filters'] ) ) { |
|
438
|
|
- foreach ( $criteria['search_criteria']['field_filters'] as &$filter ) { |
|
|
437
|
+ if ( ! empty( $criteria[ 'search_criteria' ][ 'field_filters' ] ) ) { |
|
|
438
|
+ foreach ( $criteria[ 'search_criteria' ][ 'field_filters' ] as &$filter ) { |
|
439
|
439
|
|
|
440
|
440
|
if ( ! is_array( $filter ) ) { |
|
441
|
441
|
continue; |
|
442
|
442
|
} |
|
443
|
443
|
|
|
444
|
444
|
// By default, we want searches to be wildcard for each field. |
|
445
|
|
- $filter['operator'] = empty( $filter['operator'] ) ? 'contains' : $filter['operator']; |
|
|
445
|
+ $filter[ 'operator' ] = empty( $filter[ 'operator' ] ) ? 'contains' : $filter[ 'operator' ]; |
|
446
|
446
|
|
|
447
|
447
|
/** |
|
448
|
448
|
* @filter `gravityview_search_operator` Modify the search operator for the field (contains, is, isnot, etc) |
|
449
|
449
|
* @param string $operator Existing search operator |
|
450
|
450
|
* @param array $filter array with `key`, `value`, `operator`, `type` keys |
|
451
|
451
|
*/ |
|
452
|
|
- $filter['operator'] = apply_filters( 'gravityview_search_operator', $filter['operator'], $filter ); |
|
|
452
|
+ $filter[ 'operator' ] = apply_filters( 'gravityview_search_operator', $filter[ 'operator' ], $filter ); |
|
453
|
453
|
} |
|
454
|
454
|
|
|
455
|
455
|
// don't send just the [mode] without any field filter. |
|
456
|
|
- if( count( $criteria['search_criteria']['field_filters'] ) === 1 && array_key_exists( 'mode' , $criteria['search_criteria']['field_filters'] ) ) { |
|
457
|
|
- unset( $criteria['search_criteria']['field_filters']['mode'] ); |
|
|
456
|
+ if ( count( $criteria[ 'search_criteria' ][ 'field_filters' ] ) === 1 && array_key_exists( 'mode', $criteria[ 'search_criteria' ][ 'field_filters' ] ) ) { |
|
|
457
|
+ unset( $criteria[ 'search_criteria' ][ 'field_filters' ][ 'mode' ] ); |
|
458
|
458
|
} |
|
459
|
459
|
|
|
460
|
460
|
} |
|
@@ -465,21 +465,21 @@ discard block |
|
|
block discarded – undo |
|
465
|
465
|
* Prepare date formats to be in Gravity Forms DB format; |
|
466
|
466
|
* $passed_criteria may include date formats incompatible with Gravity Forms. |
|
467
|
467
|
*/ |
|
468
|
|
- foreach ( array('start_date', 'end_date' ) as $key ) { |
|
|
468
|
+ foreach ( array( 'start_date', 'end_date' ) as $key ) { |
|
469
|
469
|
|
|
470
|
|
- if ( ! empty( $criteria['search_criteria'][ $key ] ) ) { |
|
|
470
|
+ if ( ! empty( $criteria[ 'search_criteria' ][ $key ] ) ) { |
|
471
|
471
|
|
|
472
|
472
|
// Use date_create instead of new DateTime so it returns false if invalid date format. |
|
473
|
|
- $date = date_create( $criteria['search_criteria'][ $key ] ); |
|
|
473
|
+ $date = date_create( $criteria[ 'search_criteria' ][ $key ] ); |
|
474
|
474
|
|
|
475
|
475
|
if ( $date ) { |
|
476
|
476
|
// Gravity Forms wants dates in the `Y-m-d H:i:s` format. |
|
477
|
|
- $criteria['search_criteria'][ $key ] = $date->format( 'Y-m-d H:i:s' ); |
|
|
477
|
+ $criteria[ 'search_criteria' ][ $key ] = $date->format( 'Y-m-d H:i:s' ); |
|
478
|
478
|
} else { |
|
479
|
|
- do_action( 'gravityview_log_error', '[filter_get_entries_criteria] '.$key.' Date format not valid:', $criteria['search_criteria'][ $key ] ); |
|
|
479
|
+ do_action( 'gravityview_log_error', '[filter_get_entries_criteria] ' . $key . ' Date format not valid:', $criteria[ 'search_criteria' ][ $key ] ); |
|
480
|
480
|
|
|
481
|
481
|
// If it's an invalid date, unset it. Gravity Forms freaks out otherwise. |
|
482
|
|
- unset( $criteria['search_criteria'][ $key ] ); |
|
|
482
|
+ unset( $criteria[ 'search_criteria' ][ $key ] ); |
|
483
|
483
|
} |
|
484
|
484
|
} |
|
485
|
485
|
} |
|
@@ -498,14 +498,14 @@ discard block |
|
|
block discarded – undo |
|
498
|
498
|
|
|
499
|
499
|
// Calculate the context view id and send it to the advanced filter |
|
500
|
500
|
if ( GravityView_frontend::getInstance()->getSingleEntry() ) { |
|
501
|
|
- $criteria['context_view_id'] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
|
501
|
+ $criteria[ 'context_view_id' ] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
502
|
502
|
} elseif ( $multiple_original ) { |
|
503
|
|
- $criteria['context_view_id'] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
|
503
|
+ $criteria[ 'context_view_id' ] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
504
|
504
|
} elseif ( 'delete' === GFForms::get( 'action' ) ) { |
|
505
|
|
- $criteria['context_view_id'] = isset( $_GET['view_id'] ) ? intval( $_GET['view_id'] ) : null; |
|
506
|
|
- } elseif( !isset( $criteria['context_view_id'] ) ) { |
|
|
505
|
+ $criteria[ 'context_view_id' ] = isset( $_GET[ 'view_id' ] ) ? intval( $_GET[ 'view_id' ] ) : null; |
|
|
506
|
+ } elseif ( ! isset( $criteria[ 'context_view_id' ] ) ) { |
|
507
|
507
|
// Prevent overriding the Context View ID: Some widgets could set the context_view_id (e.g. Recent Entries widget) |
|
508
|
|
- $criteria['context_view_id'] = null; |
|
|
508
|
+ $criteria[ 'context_view_id' ] = null; |
|
509
|
509
|
} |
|
510
|
510
|
|
|
511
|
511
|
/** |
|
@@ -514,7 +514,7 @@ discard block |
|
|
block discarded – undo |
|
514
|
514
|
* @param array $form_ids Forms to search |
|
515
|
515
|
* @param int $view_id ID of the view being used to search |
|
516
|
516
|
*/ |
|
517
|
|
- $criteria = apply_filters( 'gravityview_search_criteria', $criteria, $form_ids, $criteria['context_view_id'] ); |
|
|
517
|
+ $criteria = apply_filters( 'gravityview_search_criteria', $criteria, $form_ids, $criteria[ 'context_view_id' ] ); |
|
518
|
518
|
|
|
519
|
519
|
return (array)$criteria; |
|
520
|
520
|
} |
|
@@ -544,7 +544,7 @@ discard block |
|
|
block discarded – undo |
|
544
|
544
|
/** Reduce # of database calls */ |
|
545
|
545
|
add_filter( 'gform_is_encrypted_field', '__return_false' ); |
|
546
|
546
|
|
|
547
|
|
- if ( ! empty( $criteria['cache'] ) ) { |
|
|
547
|
+ if ( ! empty( $criteria[ 'cache' ] ) ) { |
|
548
|
548
|
|
|
549
|
549
|
$Cache = new GravityView_Cache( $form_ids, $criteria ); |
|
550
|
550
|
|
|
@@ -552,7 +552,7 @@ discard block |
|
|
block discarded – undo |
|
552
|
552
|
|
|
553
|
553
|
// Still update the total count when using cached results |
|
554
|
554
|
if ( ! is_null( $total ) ) { |
|
555
|
|
- $total = GFAPI::count_entries( $form_ids, $criteria['search_criteria'] ); |
|
|
555
|
+ $total = GFAPI::count_entries( $form_ids, $criteria[ 'search_criteria' ] ); |
|
556
|
556
|
} |
|
557
|
557
|
|
|
558
|
558
|
$return = $entries; |
|
@@ -573,9 +573,9 @@ discard block |
|
|
block discarded – undo |
|
573
|
573
|
$entries = apply_filters( 'gravityview_before_get_entries', null, $criteria, $passed_criteria, $total ); |
|
574
|
574
|
|
|
575
|
575
|
// No entries returned from gravityview_before_get_entries |
|
576
|
|
- if( is_null( $entries ) ) { |
|
|
576
|
+ if ( is_null( $entries ) ) { |
|
577
|
577
|
|
|
578
|
|
- $entries = GFAPI::get_entries( $form_ids, $criteria['search_criteria'], $criteria['sorting'], $criteria['paging'], $total ); |
|
|
578
|
+ $entries = GFAPI::get_entries( $form_ids, $criteria[ 'search_criteria' ], $criteria[ 'sorting' ], $criteria[ 'paging' ], $total ); |
|
579
|
579
|
|
|
580
|
580
|
if ( is_wp_error( $entries ) ) { |
|
581
|
581
|
do_action( 'gravityview_log_error', $entries->get_error_message(), $entries ); |
|
@@ -586,7 +586,7 @@ discard block |
|
|
block discarded – undo |
|
586
|
586
|
} |
|
587
|
587
|
} |
|
588
|
588
|
|
|
589
|
|
- if ( ! empty( $criteria['cache'] ) && isset( $Cache ) ) { |
|
|
589
|
+ if ( ! empty( $criteria[ 'cache' ] ) && isset( $Cache ) ) { |
|
590
|
590
|
|
|
591
|
591
|
// Cache results |
|
592
|
592
|
$Cache->set( $entries, 'entries' ); |
|
@@ -691,12 +691,12 @@ discard block |
|
|
block discarded – undo |
|
691
|
691
|
*/ |
|
692
|
692
|
$check_entry_display = apply_filters( 'gravityview/common/get_entry/check_entry_display', $check_entry_display, $entry ); |
|
693
|
693
|
|
|
694
|
|
- if( $check_entry_display ) { |
|
|
694
|
+ if ( $check_entry_display ) { |
|
695
|
695
|
// Is the entry allowed |
|
696
|
696
|
$entry = self::check_entry_display( $entry ); |
|
697
|
697
|
} |
|
698
|
698
|
|
|
699
|
|
- if( is_wp_error( $entry ) ) { |
|
|
699
|
+ if ( is_wp_error( $entry ) ) { |
|
700
|
700
|
do_action( 'gravityview_log_error', __METHOD__ . ': ' . $entry->get_error_message() ); |
|
701
|
701
|
return false; |
|
702
|
702
|
} |
|
@@ -727,7 +727,7 @@ discard block |
|
|
block discarded – undo |
|
727
|
727
|
*/ |
|
728
|
728
|
public static function matches_operation( $val1, $val2, $operation ) { |
|
729
|
729
|
|
|
730
|
|
- $json_function = function_exists('wp_json_encode') ? 'wp_json_encode' : 'json_encode'; |
|
|
730
|
+ $json_function = function_exists( 'wp_json_encode' ) ? 'wp_json_encode' : 'json_encode'; |
|
731
|
731
|
|
|
732
|
732
|
// Only process strings |
|
733
|
733
|
$val1 = ! is_string( $val1 ) ? $json_function( $val1 ) : $val1; |
|
@@ -735,12 +735,12 @@ discard block |
|
|
block discarded – undo |
|
735
|
735
|
|
|
736
|
736
|
$value = false; |
|
737
|
737
|
|
|
738
|
|
- if( 'context' === $val1 ) { |
|
|
738
|
+ if ( 'context' === $val1 ) { |
|
739
|
739
|
|
|
740
|
740
|
$matching_contexts = array( $val2 ); |
|
741
|
741
|
|
|
742
|
742
|
// We allow for non-standard contexts. |
|
743
|
|
- switch( $val2 ) { |
|
|
743
|
+ switch ( $val2 ) { |
|
744
|
744
|
// Check for either single or edit |
|
745
|
745
|
case 'singular': |
|
746
|
746
|
$matching_contexts = array( 'single', 'edit' ); |
|
@@ -783,7 +783,7 @@ discard block |
|
|
block discarded – undo |
|
783
|
783
|
$json_val_1 = json_decode( $val1, true ); |
|
784
|
784
|
$json_val_2 = json_decode( $val2, true ); |
|
785
|
785
|
|
|
786
|
|
- if( ! empty( $json_val_1 ) || ! empty( $json_val_2 ) ) { |
|
|
786
|
+ if ( ! empty( $json_val_1 ) || ! empty( $json_val_2 ) ) { |
|
787
|
787
|
|
|
788
|
788
|
$json_in = false; |
|
789
|
789
|
$json_val_1 = $json_val_1 ? $json_val_1 : array( $val1 ); |
|
@@ -794,7 +794,7 @@ discard block |
|
|
block discarded – undo |
|
794
|
794
|
foreach ( $json_val_2 as $item_2 ) { |
|
795
|
795
|
$json_in = self::matches_operation( $item_1, $item_2, 'is' ); |
|
796
|
796
|
|
|
797
|
|
- if( $json_in ) { |
|
|
797
|
+ if ( $json_in ) { |
|
798
|
798
|
break 2; |
|
799
|
799
|
} |
|
800
|
800
|
} |
|
@@ -861,76 +861,76 @@ discard block |
|
|
block discarded – undo |
|
861
|
861
|
public static function check_entry_display( $entry ) { |
|
862
|
862
|
|
|
863
|
863
|
if ( ! $entry || is_wp_error( $entry ) ) { |
|
864
|
|
- return new WP_Error('entry_not_found', 'Entry was not found.', $entry ); |
|
|
864
|
+ return new WP_Error( 'entry_not_found', 'Entry was not found.', $entry ); |
|
865
|
865
|
} |
|
866
|
866
|
|
|
867
|
|
- if ( empty( $entry['form_id'] ) ) { |
|
|
867
|
+ if ( empty( $entry[ 'form_id' ] ) ) { |
|
868
|
868
|
return new WP_Error( 'form_id_not_set', '[apply_filters_to_entry] Entry is empty!', $entry ); |
|
869
|
869
|
} |
|
870
|
870
|
|
|
871
|
871
|
$criteria = self::calculate_get_entries_criteria(); |
|
872
|
872
|
|
|
873
|
|
- if ( empty( $criteria['search_criteria'] ) || ! is_array( $criteria['search_criteria'] ) ) { |
|
|
873
|
+ if ( empty( $criteria[ 'search_criteria' ] ) || ! is_array( $criteria[ 'search_criteria' ] ) ) { |
|
874
|
874
|
do_action( 'gravityview_log_debug', '[apply_filters_to_entry] Entry approved! No search criteria found:', $criteria ); |
|
875
|
875
|
return $entry; |
|
876
|
876
|
} |
|
877
|
877
|
|
|
878
|
878
|
// Make sure the current View is connected to the same form as the Entry |
|
879
|
|
- if( ! empty( $criteria['context_view_id'] ) ) { |
|
880
|
|
- $context_view_id = intval( $criteria['context_view_id'] ); |
|
|
879
|
+ if ( ! empty( $criteria[ 'context_view_id' ] ) ) { |
|
|
880
|
+ $context_view_id = intval( $criteria[ 'context_view_id' ] ); |
|
881
|
881
|
$context_form_id = gravityview_get_form_id( $context_view_id ); |
|
882
|
|
- if( intval( $context_form_id ) !== intval( $entry['form_id'] ) ) { |
|
883
|
|
- return new WP_Error( 'view_id_not_match', sprintf( '[apply_filters_to_entry] Entry form ID does not match current View connected form ID:', $entry['form_id'] ), $criteria['context_view_id'] ); |
|
|
882
|
+ if ( intval( $context_form_id ) !== intval( $entry[ 'form_id' ] ) ) { |
|
|
883
|
+ return new WP_Error( 'view_id_not_match', sprintf( '[apply_filters_to_entry] Entry form ID does not match current View connected form ID:', $entry[ 'form_id' ] ), $criteria[ 'context_view_id' ] ); |
|
884
|
884
|
} |
|
885
|
885
|
} |
|
886
|
886
|
|
|
887
|
|
- $search_criteria = $criteria['search_criteria']; |
|
|
887
|
+ $search_criteria = $criteria[ 'search_criteria' ]; |
|
888
|
888
|
|
|
889
|
889
|
// check entry status |
|
890
|
|
- if ( array_key_exists( 'status', $search_criteria ) && $search_criteria['status'] != $entry['status'] ) { |
|
891
|
|
- return new WP_Error( 'status_not_valid', sprintf( '[apply_filters_to_entry] Entry status - %s - is not valid according to filter:', $entry['status'] ), $search_criteria ); |
|
|
890
|
+ if ( array_key_exists( 'status', $search_criteria ) && $search_criteria[ 'status' ] != $entry[ 'status' ] ) { |
|
|
891
|
+ return new WP_Error( 'status_not_valid', sprintf( '[apply_filters_to_entry] Entry status - %s - is not valid according to filter:', $entry[ 'status' ] ), $search_criteria ); |
|
892
|
892
|
} |
|
893
|
893
|
|
|
894
|
894
|
// check entry date |
|
895
|
895
|
// @todo: Does it make sense to apply the Date create filters to the single entry? |
|
896
|
896
|
|
|
897
|
897
|
// field_filters |
|
898
|
|
- if ( empty( $search_criteria['field_filters'] ) || ! is_array( $search_criteria['field_filters'] ) ) { |
|
|
898
|
+ if ( empty( $search_criteria[ 'field_filters' ] ) || ! is_array( $search_criteria[ 'field_filters' ] ) ) { |
|
899
|
899
|
do_action( 'gravityview_log_debug', '[apply_filters_to_entry] Entry approved! No field filters criteria found:', $search_criteria ); |
|
900
|
900
|
return $entry; |
|
901
|
901
|
} |
|
902
|
902
|
|
|
903
|
|
- $filters = $search_criteria['field_filters']; |
|
|
903
|
+ $filters = $search_criteria[ 'field_filters' ]; |
|
904
|
904
|
|
|
905
|
|
- $mode = array_key_exists( 'mode', $filters ) ? strtolower( $filters['mode'] ) : 'all'; |
|
|
905
|
+ $mode = array_key_exists( 'mode', $filters ) ? strtolower( $filters[ 'mode' ] ) : 'all'; |
|
906
|
906
|
|
|
907
|
907
|
// Prevent the mode from being processed below |
|
908
|
|
- unset( $filters['mode'] ); |
|
|
908
|
+ unset( $filters[ 'mode' ] ); |
|
909
|
909
|
|
|
910
|
|
- $form = self::get_form( $entry['form_id'] ); |
|
|
910
|
+ $form = self::get_form( $entry[ 'form_id' ] ); |
|
911
|
911
|
|
|
912
|
912
|
foreach ( $filters as $filter ) { |
|
913
|
913
|
|
|
914
|
|
- if ( ! isset( $filter['key'] ) ) { |
|
|
914
|
+ if ( ! isset( $filter[ 'key' ] ) ) { |
|
915
|
915
|
do_action( 'gravityview_log_debug', '[apply_filters_to_entry] Filter key not set', $filter ); |
|
916
|
916
|
continue; |
|
917
|
917
|
} |
|
918
|
918
|
|
|
919
|
|
- $k = $filter['key']; |
|
|
919
|
+ $k = $filter[ 'key' ]; |
|
920
|
920
|
|
|
921
|
921
|
$field = self::get_field( $form, $k ); |
|
922
|
922
|
|
|
923
|
923
|
if ( is_null( $field ) ) { |
|
924
|
924
|
$field_value = isset( $entry[ $k ] ) ? $entry[ $k ] : null; |
|
925
|
925
|
} else { |
|
926
|
|
- $field_value = GFFormsModel::get_lead_field_value( $entry, $field ); |
|
|
926
|
+ $field_value = GFFormsModel::get_lead_field_value( $entry, $field ); |
|
927
|
927
|
// If it's a complex field, then fetch the input's value, if exists at the current key. Otherwise, let GF handle it |
|
928
|
928
|
$field_value = ( is_array( $field_value ) && isset( $field_value[ $k ] ) ) ? rgar( $field_value, $k ) : $field_value; |
|
929
|
929
|
} |
|
930
|
930
|
|
|
931
|
|
- $operator = isset( $filter['operator'] ) ? strtolower( $filter['operator'] ) : 'is'; |
|
|
931
|
+ $operator = isset( $filter[ 'operator' ] ) ? strtolower( $filter[ 'operator' ] ) : 'is'; |
|
932
|
932
|
|
|
933
|
|
- $is_value_match = GFFormsModel::is_value_match( $field_value, $filter['value'], $operator, $field ); |
|
|
933
|
+ $is_value_match = GFFormsModel::is_value_match( $field_value, $filter[ 'value' ], $operator, $field ); |
|
934
|
934
|
|
|
935
|
935
|
// Any match is all we need to know |
|
936
|
936
|
if ( $is_value_match && 'any' === $mode ) { |
|
@@ -939,7 +939,7 @@ discard block |
|
|
block discarded – undo |
|
939
|
939
|
|
|
940
|
940
|
// Any failed match is a total fail |
|
941
|
941
|
if ( ! $is_value_match && 'all' === $mode ) { |
|
942
|
|
- return new WP_Error('failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a criterium for ALL mode', $filter ); |
|
|
942
|
+ return new WP_Error( 'failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a criterium for ALL mode', $filter ); |
|
943
|
943
|
} |
|
944
|
944
|
} |
|
945
|
945
|
|
|
@@ -949,7 +949,7 @@ discard block |
|
|
block discarded – undo |
|
949
|
949
|
do_action( 'gravityview_log_debug', '[apply_filters_to_entry] Entry approved: all conditions were met' ); |
|
950
|
950
|
return $entry; |
|
951
|
951
|
} else { |
|
952
|
|
- return new WP_Error('failed_any_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed all the criteria for ANY mode', $filters ); |
|
|
952
|
+ return new WP_Error( 'failed_any_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed all the criteria for ANY mode', $filters ); |
|
953
|
953
|
} |
|
954
|
954
|
|
|
955
|
955
|
} |
|
@@ -990,18 +990,18 @@ discard block |
|
|
block discarded – undo |
|
990
|
990
|
* Gravity Forms code to adjust date to locally-configured Time Zone |
|
991
|
991
|
* @see GFCommon::format_date() for original code |
|
992
|
992
|
*/ |
|
993
|
|
- $date_gmt_time = mysql2date( 'G', $date_string ); |
|
|
993
|
+ $date_gmt_time = mysql2date( 'G', $date_string ); |
|
994
|
994
|
$date_local_timestamp = GFCommon::get_local_timestamp( $date_gmt_time ); |
|
995
|
995
|
|
|
996
|
|
- $format = rgar( $atts, 'format' ); |
|
997
|
|
- $is_human = ! empty( $atts['human'] ); |
|
998
|
|
- $is_diff = ! empty( $atts['diff'] ); |
|
999
|
|
- $is_raw = ! empty( $atts['raw'] ); |
|
1000
|
|
- $is_timestamp = ! empty( $atts['timestamp'] ); |
|
1001
|
|
- $include_time = ! empty( $atts['time'] ); |
|
|
996
|
+ $format = rgar( $atts, 'format' ); |
|
|
997
|
+ $is_human = ! empty( $atts[ 'human' ] ); |
|
|
998
|
+ $is_diff = ! empty( $atts[ 'diff' ] ); |
|
|
999
|
+ $is_raw = ! empty( $atts[ 'raw' ] ); |
|
|
1000
|
+ $is_timestamp = ! empty( $atts[ 'timestamp' ] ); |
|
|
1001
|
+ $include_time = ! empty( $atts[ 'time' ] ); |
|
1002
|
1002
|
|
|
1003
|
1003
|
// If we're using time diff, we want to have a different default format |
|
1004
|
|
- if( empty( $format ) ) { |
|
|
1004
|
+ if ( empty( $format ) ) { |
|
1005
|
1005
|
/* translators: %s: relative time from now, used for generic date comparisons. "1 day ago", or "20 seconds ago" */ |
|
1006
|
1006
|
$format = $is_diff ? esc_html__( '%s ago', 'gravityview' ) : get_option( 'date_format' ); |
|
1007
|
1007
|
} |
|
@@ -1009,7 +1009,7 @@ discard block |
|
|
block discarded – undo |
|
1009
|
1009
|
// If raw was specified, don't modify the stored value |
|
1010
|
1010
|
if ( $is_raw ) { |
|
1011
|
1011
|
$formatted_date = $date_string; |
|
1012
|
|
- } elseif( $is_timestamp ) { |
|
|
1012
|
+ } elseif ( $is_timestamp ) { |
|
1013
|
1013
|
$formatted_date = $date_local_timestamp; |
|
1014
|
1014
|
} elseif ( $is_diff ) { |
|
1015
|
1015
|
$formatted_date = sprintf( $format, human_time_diff( $date_gmt_time ) ); |
|
@@ -1043,7 +1043,7 @@ discard block |
|
|
block discarded – undo |
|
1043
|
1043
|
|
|
1044
|
1044
|
$label = rgar( $field, 'label' ); |
|
1045
|
1045
|
|
|
1046
|
|
- if( floor( $field_id ) !== floatval( $field_id ) ) { |
|
|
1046
|
+ if ( floor( $field_id ) !== floatval( $field_id ) ) { |
|
1047
|
1047
|
$label = GFFormsModel::get_choice_text( $field, $field_value, $field_id ); |
|
1048
|
1048
|
} |
|
1049
|
1049
|
|
|
@@ -1071,7 +1071,7 @@ discard block |
|
|
block discarded – undo |
|
1071
|
1071
|
$form = GFAPI::get_form( $form ); |
|
1072
|
1072
|
} |
|
1073
|
1073
|
|
|
1074
|
|
- if ( class_exists( 'GFFormsModel' ) ){ |
|
|
1074
|
+ if ( class_exists( 'GFFormsModel' ) ) { |
|
1075
|
1075
|
return GFFormsModel::get_field( $form, $field_id ); |
|
1076
|
1076
|
} else { |
|
1077
|
1077
|
return null; |
|
@@ -1118,19 +1118,19 @@ discard block |
|
|
block discarded – undo |
|
1118
|
1118
|
$shortcodes = array(); |
|
1119
|
1119
|
|
|
1120
|
1120
|
preg_match_all( '/' . get_shortcode_regex() . '/s', $content, $matches, PREG_SET_ORDER ); |
|
1121
|
|
- if ( empty( $matches ) ){ |
|
|
1121
|
+ if ( empty( $matches ) ) { |
|
1122
|
1122
|
return false; |
|
1123
|
1123
|
} |
|
1124
|
1124
|
|
|
1125
|
1125
|
foreach ( $matches as $shortcode ) { |
|
1126
|
|
- if ( $tag === $shortcode[2] ) { |
|
|
1126
|
+ if ( $tag === $shortcode[ 2 ] ) { |
|
1127
|
1127
|
|
|
1128
|
1128
|
// Changed this to $shortcode instead of true so we get the parsed atts. |
|
1129
|
|
- $shortcodes[] = $shortcode; |
|
|
1129
|
+ $shortcodes[ ] = $shortcode; |
|
1130
|
1130
|
|
|
1131
|
|
- } else if ( isset( $shortcode[5] ) && $results = self::has_shortcode_r( $shortcode[5], $tag ) ) { |
|
1132
|
|
- foreach( $results as $result ) { |
|
1133
|
|
- $shortcodes[] = $result; |
|
|
1131
|
+ } else if ( isset( $shortcode[ 5 ] ) && $results = self::has_shortcode_r( $shortcode[ 5 ], $tag ) ) { |
|
|
1132
|
+ foreach ( $results as $result ) { |
|
|
1133
|
+ $shortcodes[ ] = $result; |
|
1134
|
1134
|
} |
|
1135
|
1135
|
} |
|
1136
|
1136
|
} |
|
@@ -1274,7 +1274,7 @@ discard block |
|
|
block discarded – undo |
|
1274
|
1274
|
public static function get_directory_fields( $post_id, $apply_filter = true ) { |
|
1275
|
1275
|
$fields = get_post_meta( $post_id, '_gravityview_directory_fields', true ); |
|
1276
|
1276
|
|
|
1277
|
|
- if( $apply_filter ) { |
|
|
1277
|
+ if ( $apply_filter ) { |
|
1278
|
1278
|
/** |
|
1279
|
1279
|
* @filter `gravityview/configuration/fields` Filter the View fields' configuration array |
|
1280
|
1280
|
* @since 1.6.5 |
|
@@ -1297,7 +1297,7 @@ discard block |
|
|
block discarded – undo |
|
1297
|
1297
|
* @return string html |
|
1298
|
1298
|
*/ |
|
1299
|
1299
|
public static function get_sortable_fields( $formid, $current = '' ) { |
|
1300
|
|
- $output = '<option value="" ' . selected( '', $current, false ).'>' . esc_html__( 'Default', 'gravityview' ) .'</option>'; |
|
|
1300
|
+ $output = '<option value="" ' . selected( '', $current, false ) . '>' . esc_html__( 'Default', 'gravityview' ) . '</option>'; |
|
1301
|
1301
|
|
|
1302
|
1302
|
if ( empty( $formid ) ) { |
|
1303
|
1303
|
return $output; |
|
@@ -1310,11 +1310,11 @@ discard block |
|
|
block discarded – undo |
|
1310
|
1310
|
$blacklist_field_types = apply_filters( 'gravityview_blacklist_field_types', array( 'list', 'textarea' ), null ); |
|
1311
|
1311
|
|
|
1312
|
1312
|
foreach ( $fields as $id => $field ) { |
|
1313
|
|
- if ( in_array( $field['type'], $blacklist_field_types ) ) { |
|
|
1313
|
+ if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) { |
|
1314
|
1314
|
continue; |
|
1315
|
1315
|
} |
|
1316
|
1316
|
|
|
1317
|
|
- $output .= '<option value="'. $id .'" '. selected( $id, $current, false ).'>'. esc_attr( $field['label'] ) .'</option>'; |
|
|
1317
|
+ $output .= '<option value="' . $id . '" ' . selected( $id, $current, false ) . '>' . esc_attr( $field[ 'label' ] ) . '</option>'; |
|
1318
|
1318
|
} |
|
1319
|
1319
|
} |
|
1320
|
1320
|
|
|
@@ -1349,9 +1349,9 @@ discard block |
|
|
block discarded – undo |
|
1349
|
1349
|
$blacklist_field_types = apply_filters( 'gravityview_blacklist_field_types', $blacklist, NULL ); |
|
1350
|
1350
|
|
|
1351
|
1351
|
// TODO: Convert to using array_filter |
|
1352
|
|
- foreach( $fields as $id => $field ) { |
|
|
1352
|
+ foreach ( $fields as $id => $field ) { |
|
1353
|
1353
|
|
|
1354
|
|
- if( in_array( $field['type'], $blacklist_field_types ) ) { |
|
|
1354
|
+ if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) { |
|
1355
|
1355
|
unset( $fields[ $id ] ); |
|
1356
|
1356
|
} |
|
1357
|
1357
|
} |
|
@@ -1392,14 +1392,14 @@ discard block |
|
|
block discarded – undo |
|
1392
|
1392
|
* @param int|array $field field key or field array |
|
1393
|
1393
|
* @return boolean |
|
1394
|
1394
|
*/ |
|
1395
|
|
- public static function is_field_numeric( $form = null, $field = '' ) { |
|
|
1395
|
+ public static function is_field_numeric( $form = null, $field = '' ) { |
|
1396
|
1396
|
|
|
1397
|
1397
|
if ( ! is_array( $form ) && ! is_array( $field ) ) { |
|
1398
|
1398
|
$form = self::get_form( $form ); |
|
1399
|
1399
|
} |
|
1400
|
1400
|
|
|
1401
|
1401
|
// If entry meta, it's a string. Otherwise, numeric |
|
1402
|
|
- if( ! is_numeric( $field ) && is_string( $field ) ) { |
|
|
1402
|
+ if ( ! is_numeric( $field ) && is_string( $field ) ) { |
|
1403
|
1403
|
$type = $field; |
|
1404
|
1404
|
} else { |
|
1405
|
1405
|
$type = self::get_field_type( $form, $field ); |
|
@@ -1413,9 +1413,9 @@ discard block |
|
|
block discarded – undo |
|
1413
|
1413
|
$numeric_types = apply_filters( 'gravityview/common/numeric_types', array( 'number', 'time' ) ); |
|
1414
|
1414
|
|
|
1415
|
1415
|
// Defer to GravityView_Field setting, if the field type is registered and `is_numeric` is true |
|
1416
|
|
- if( $gv_field = GravityView_Fields::get( $type ) ) { |
|
1417
|
|
- if( true === $gv_field->is_numeric ) { |
|
1418
|
|
- $numeric_types[] = $gv_field->is_numeric; |
|
|
1416
|
+ if ( $gv_field = GravityView_Fields::get( $type ) ) { |
|
|
1417
|
+ if ( true === $gv_field->is_numeric ) { |
|
|
1418
|
+ $numeric_types[ ] = $gv_field->is_numeric; |
|
1419
|
1419
|
} |
|
1420
|
1420
|
} |
|
1421
|
1421
|
|
|
@@ -1565,18 +1565,18 @@ discard block |
|
|
block discarded – undo |
|
1565
|
1565
|
$final_atts = array_filter( $final_atts ); |
|
1566
|
1566
|
|
|
1567
|
1567
|
// If the href wasn't passed as an attribute, use the value passed to the function |
|
1568
|
|
- if ( empty( $final_atts['href'] ) && ! empty( $href ) ) { |
|
1569
|
|
- $final_atts['href'] = $href; |
|
|
1568
|
+ if ( empty( $final_atts[ 'href' ] ) && ! empty( $href ) ) { |
|
|
1569
|
+ $final_atts[ 'href' ] = $href; |
|
1570
|
1570
|
} |
|
1571
|
1571
|
|
|
1572
|
|
- $final_atts['href'] = esc_url_raw( $href ); |
|
|
1572
|
+ $final_atts[ 'href' ] = esc_url_raw( $href ); |
|
1573
|
1573
|
|
|
1574
|
1574
|
/** |
|
1575
|
1575
|
* Fix potential security issue with target=_blank |
|
1576
|
1576
|
* @see https://dev.to/ben/the-targetblank-vulnerability-by-example |
|
1577
|
1577
|
*/ |
|
1578
|
|
- if( '_blank' === rgar( $final_atts, 'target' ) ) { |
|
1579
|
|
- $final_atts['rel'] = trim( rgar( $final_atts, 'rel', '' ) . ' noopener noreferrer' ); |
|
|
1578
|
+ if ( '_blank' === rgar( $final_atts, 'target' ) ) { |
|
|
1579
|
+ $final_atts[ 'rel' ] = trim( rgar( $final_atts, 'rel', '' ) . ' noopener noreferrer' ); |
|
1580
|
1580
|
} |
|
1581
|
1581
|
|
|
1582
|
1582
|
// Sort the attributes alphabetically, to help testing |
|
@@ -1588,7 +1588,7 @@ discard block |
|
|
block discarded – undo |
|
1588
|
1588
|
$output .= sprintf( ' %s="%s"', $attr, esc_attr( $value ) ); |
|
1589
|
1589
|
} |
|
1590
|
1590
|
|
|
1591
|
|
- if( '' !== $output ) { |
|
|
1591
|
+ if ( '' !== $output ) { |
|
1592
|
1592
|
$output = '<a' . $output . '>' . $anchor_text . '</a>'; |
|
1593
|
1593
|
} |
|
1594
|
1594
|
|
|
@@ -1615,7 +1615,7 @@ discard block |
|
|
block discarded – undo |
|
1615
|
1615
|
if ( is_array( $value ) && isset( $merged[ $key ] ) && is_array( $merged[ $key ] ) ) { |
|
1616
|
1616
|
$merged[ $key ] = self::array_merge_recursive_distinct( $merged[ $key ], $value ); |
|
1617
|
1617
|
} else if ( is_numeric( $key ) && isset( $merged[ $key ] ) ) { |
|
1618
|
|
- $merged[] = $value; |
|
|
1618
|
+ $merged[ ] = $value; |
|
1619
|
1619
|
} else { |
|
1620
|
1620
|
$merged[ $key ] = $value; |
|
1621
|
1621
|
} |
|
@@ -1648,7 +1648,7 @@ discard block |
|
|
block discarded – undo |
|
1648
|
1648
|
* `$context` is where are we using this information (e.g. change_entry_creator, search_widget ..) |
|
1649
|
1649
|
* @param array $settings Settings array, with `number` key defining the # of users to display |
|
1650
|
1650
|
*/ |
|
1651
|
|
- $get_users_settings = apply_filters( 'gravityview/get_users/'. $context, apply_filters( 'gravityview_change_entry_creator_user_parameters', $get_users_settings ) ); |
|
|
1651
|
+ $get_users_settings = apply_filters( 'gravityview/get_users/' . $context, apply_filters( 'gravityview_change_entry_creator_user_parameters', $get_users_settings ) ); |
|
1652
|
1652
|
|
|
1653
|
1653
|
return get_users( $get_users_settings ); |
|
1654
|
1654
|
} |
|
@@ -1668,11 +1668,11 @@ discard block |
|
|
block discarded – undo |
|
1668
|
1668
|
public static function generate_notice( $notice, $class = '', $cap = '', $object_id = null ) { |
|
1669
|
1669
|
|
|
1670
|
1670
|
// If $cap is defined, only show notice if user has capability |
|
1671
|
|
- if( $cap && ! GVCommon::has_cap( $cap, $object_id ) ) { |
|
|
1671
|
+ if ( $cap && ! GVCommon::has_cap( $cap, $object_id ) ) { |
|
1672
|
1672
|
return ''; |
|
1673
|
1673
|
} |
|
1674
|
1674
|
|
|
1675
|
|
- return '<div class="gv-notice '.gravityview_sanitize_html_class( $class ) .'">'. $notice .'</div>'; |
|
|
1675
|
+ return '<div class="gv-notice ' . gravityview_sanitize_html_class( $class ) . '">' . $notice . '</div>'; |
|
1676
|
1676
|
} |
|
1677
|
1677
|
|
|
1678
|
1678
|
/** |