|
@@ -125,8 +125,8 @@ discard block |
|
|
block discarded – undo |
|
125
|
125
|
|
|
126
|
126
|
$form = false; |
|
127
|
127
|
|
|
128
|
|
- if( $entry ) { |
|
129
|
|
- $form = GFAPI::get_form( $entry['form_id'] ); |
|
|
128
|
+ if ( $entry ) { |
|
|
129
|
+ $form = GFAPI::get_form( $entry[ 'form_id' ] ); |
|
130
|
130
|
} |
|
131
|
131
|
|
|
132
|
132
|
return $form; |
|
@@ -202,7 +202,7 @@ discard block |
|
|
block discarded – undo |
|
202
|
202
|
} |
|
203
|
203
|
} |
|
204
|
204
|
|
|
205
|
|
- return (bool) $has_transaction_data; |
|
|
205
|
+ return (bool)$has_transaction_data; |
|
206
|
206
|
} |
|
207
|
207
|
|
|
208
|
208
|
/** |
|
@@ -240,7 +240,7 @@ discard block |
|
|
block discarded – undo |
|
240
|
240
|
|
|
241
|
241
|
$results = GFAPI::get_entries( intval( $form_id ), $search_criteria, null, $paging ); |
|
242
|
242
|
|
|
243
|
|
- $result = ( ! empty( $results ) && ! empty( $results[0]['id'] ) ) ? $results[0]['id'] : null; |
|
|
243
|
+ $result = ( ! empty( $results ) && ! empty( $results[ 0 ][ 'id' ] ) ) ? $results[ 0 ][ 'id' ] : null; |
|
244
|
244
|
|
|
245
|
245
|
return $result; |
|
246
|
246
|
} |
|
@@ -257,10 +257,10 @@ discard block |
|
|
block discarded – undo |
|
257
|
257
|
* |
|
258
|
258
|
* @return array Empty array if GFAPI class isn't available or no forms. Otherwise, the array of Forms |
|
259
|
259
|
*/ |
|
260
|
|
- public static function get_forms( $active = true, $trash = false ) { |
|
|
260
|
+ public static function get_forms( $active = true, $trash = false ) { |
|
261
|
261
|
$forms = array(); |
|
262
|
262
|
if ( class_exists( 'GFAPI' ) ) { |
|
263
|
|
- if( 'any' === $active ) { |
|
|
263
|
+ if ( 'any' === $active ) { |
|
264
|
264
|
$active_forms = GFAPI::get_forms( true, $trash ); |
|
265
|
265
|
$inactive_forms = GFAPI::get_forms( false, $trash ); |
|
266
|
266
|
$forms = array_merge( array_filter( $active_forms ), array_filter( $inactive_forms ) ); |
|
@@ -291,9 +291,9 @@ discard block |
|
|
block discarded – undo |
|
291
|
291
|
$has_post_fields = false; |
|
292
|
292
|
|
|
293
|
293
|
if ( $form ) { |
|
294
|
|
- foreach ( $form['fields'] as $field ) { |
|
295
|
|
- if ( $include_parent_field || empty( $field['inputs'] ) ) { |
|
296
|
|
- $fields["{$field['id']}"] = array( |
|
|
294
|
+ foreach ( $form[ 'fields' ] as $field ) { |
|
|
295
|
+ if ( $include_parent_field || empty( $field[ 'inputs' ] ) ) { |
|
|
296
|
+ $fields[ "{$field[ 'id' ]}" ] = array( |
|
297
|
297
|
'label' => \GV\Utils::get( $field, 'label' ), |
|
298
|
298
|
'parent' => null, |
|
299
|
299
|
'type' => \GV\Utils::get( $field, 'type' ), |
|
@@ -302,10 +302,10 @@ discard block |
|
|
block discarded – undo |
|
302
|
302
|
); |
|
303
|
303
|
} |
|
304
|
304
|
|
|
305
|
|
- if ( $add_default_properties && ! empty( $field['inputs'] ) ) { |
|
306
|
|
- foreach ( $field['inputs'] as $input ) { |
|
|
305
|
+ if ( $add_default_properties && ! empty( $field[ 'inputs' ] ) ) { |
|
|
306
|
+ foreach ( $field[ 'inputs' ] as $input ) { |
|
307
|
307
|
|
|
308
|
|
- if( ! empty( $input['isHidden'] ) ) { |
|
|
308
|
+ if ( ! empty( $input[ 'isHidden' ] ) ) { |
|
309
|
309
|
continue; |
|
310
|
310
|
} |
|
311
|
311
|
|
|
@@ -313,10 +313,10 @@ discard block |
|
|
block discarded – undo |
|
313
|
313
|
* @hack |
|
314
|
314
|
* In case of email/email confirmation, the input for email has the same id as the parent field |
|
315
|
315
|
*/ |
|
316
|
|
- if( 'email' === $field['type'] && false === strpos( $input['id'], '.' ) ) { |
|
|
316
|
+ if ( 'email' === $field[ 'type' ] && false === strpos( $input[ 'id' ], '.' ) ) { |
|
317
|
317
|
continue; |
|
318
|
318
|
} |
|
319
|
|
- $fields["{$input['id']}"] = array( |
|
|
319
|
+ $fields[ "{$input[ 'id' ]}" ] = array( |
|
320
|
320
|
'label' => \GV\Utils::get( $input, 'label' ), |
|
321
|
321
|
'customLabel' => \GV\Utils::get( $input, 'customLabel' ), |
|
322
|
322
|
'parent' => $field, |
|
@@ -328,7 +328,7 @@ discard block |
|
|
block discarded – undo |
|
328
|
328
|
} |
|
329
|
329
|
|
|
330
|
330
|
|
|
331
|
|
- if( GFCommon::is_product_field( $field['type'] ) ){ |
|
|
331
|
+ if ( GFCommon::is_product_field( $field[ 'type' ] ) ) { |
|
332
|
332
|
$has_product_fields = true; |
|
333
|
333
|
} |
|
334
|
334
|
|
|
@@ -342,7 +342,7 @@ discard block |
|
|
block discarded – undo |
|
342
|
342
|
* @since 1.7 |
|
343
|
343
|
*/ |
|
344
|
344
|
if ( $has_post_fields ) { |
|
345
|
|
- $fields['post_id'] = array( |
|
|
345
|
+ $fields[ 'post_id' ] = array( |
|
346
|
346
|
'label' => __( 'Post ID', 'gravityview' ), |
|
347
|
347
|
'type' => 'post_id', |
|
348
|
348
|
); |
|
@@ -355,11 +355,11 @@ discard block |
|
|
block discarded – undo |
|
355
|
355
|
foreach ( $payment_fields as $payment_field ) { |
|
356
|
356
|
|
|
357
|
357
|
// Either the field exists ($fields['shipping']) or the form explicitly contains a `shipping` field with numeric key |
|
358
|
|
- if( isset( $fields["{$payment_field->name}"] ) || GFCommon::get_fields_by_type( $form, $payment_field->name ) ) { |
|
|
358
|
+ if ( isset( $fields[ "{$payment_field->name}" ] ) || GFCommon::get_fields_by_type( $form, $payment_field->name ) ) { |
|
359
|
359
|
continue; |
|
360
|
360
|
} |
|
361
|
361
|
|
|
362
|
|
- $fields["{$payment_field->name}"] = array( |
|
|
362
|
+ $fields[ "{$payment_field->name}" ] = array( |
|
363
|
363
|
'label' => $payment_field->label, |
|
364
|
364
|
'desc' => $payment_field->description, |
|
365
|
365
|
'type' => $payment_field->name, |
|
@@ -391,9 +391,9 @@ discard block |
|
|
block discarded – undo |
|
391
|
391
|
|
|
392
|
392
|
$fields = array(); |
|
393
|
393
|
|
|
394
|
|
- foreach ( $extra_fields as $key => $field ){ |
|
395
|
|
- if ( ! empty( $only_default_column ) && ! empty( $field['is_default_column'] ) ) { |
|
396
|
|
- $fields[ $key ] = array( 'label' => $field['label'], 'type' => 'entry_meta' ); |
|
|
394
|
+ foreach ( $extra_fields as $key => $field ) { |
|
|
395
|
+ if ( ! empty( $only_default_column ) && ! empty( $field[ 'is_default_column' ] ) ) { |
|
|
396
|
+ $fields[ $key ] = array( 'label' => $field[ 'label' ], 'type' => 'entry_meta' ); |
|
397
|
397
|
} |
|
398
|
398
|
} |
|
399
|
399
|
|
|
@@ -433,33 +433,33 @@ discard block |
|
|
block discarded – undo |
|
433
|
433
|
'search_criteria' => null, |
|
434
|
434
|
'sorting' => null, |
|
435
|
435
|
'paging' => null, |
|
436
|
|
- 'cache' => (isset( $passed_criteria['cache'] ) ? (bool) $passed_criteria['cache'] : true), |
|
|
436
|
+ 'cache' => ( isset( $passed_criteria[ 'cache' ] ) ? (bool)$passed_criteria[ 'cache' ] : true ), |
|
437
|
437
|
'context_view_id' => null, |
|
438
|
438
|
); |
|
439
|
439
|
|
|
440
|
440
|
$criteria = wp_parse_args( $passed_criteria, $search_criteria_defaults ); |
|
441
|
441
|
|
|
442
|
|
- if ( ! empty( $criteria['search_criteria']['field_filters'] ) ) { |
|
443
|
|
- foreach ( $criteria['search_criteria']['field_filters'] as &$filter ) { |
|
|
442
|
+ if ( ! empty( $criteria[ 'search_criteria' ][ 'field_filters' ] ) ) { |
|
|
443
|
+ foreach ( $criteria[ 'search_criteria' ][ 'field_filters' ] as &$filter ) { |
|
444
|
444
|
|
|
445
|
445
|
if ( ! is_array( $filter ) ) { |
|
446
|
446
|
continue; |
|
447
|
447
|
} |
|
448
|
448
|
|
|
449
|
449
|
// By default, we want searches to be wildcard for each field. |
|
450
|
|
- $filter['operator'] = empty( $filter['operator'] ) ? 'contains' : $filter['operator']; |
|
|
450
|
+ $filter[ 'operator' ] = empty( $filter[ 'operator' ] ) ? 'contains' : $filter[ 'operator' ]; |
|
451
|
451
|
|
|
452
|
452
|
/** |
|
453
|
453
|
* @filter `gravityview_search_operator` Modify the search operator for the field (contains, is, isnot, etc) |
|
454
|
454
|
* @param string $operator Existing search operator |
|
455
|
455
|
* @param array $filter array with `key`, `value`, `operator`, `type` keys |
|
456
|
456
|
*/ |
|
457
|
|
- $filter['operator'] = apply_filters( 'gravityview_search_operator', $filter['operator'], $filter ); |
|
|
457
|
+ $filter[ 'operator' ] = apply_filters( 'gravityview_search_operator', $filter[ 'operator' ], $filter ); |
|
458
|
458
|
} |
|
459
|
459
|
|
|
460
|
460
|
// don't send just the [mode] without any field filter. |
|
461
|
|
- if( count( $criteria['search_criteria']['field_filters'] ) === 1 && array_key_exists( 'mode' , $criteria['search_criteria']['field_filters'] ) ) { |
|
462
|
|
- unset( $criteria['search_criteria']['field_filters']['mode'] ); |
|
|
461
|
+ if ( count( $criteria[ 'search_criteria' ][ 'field_filters' ] ) === 1 && array_key_exists( 'mode', $criteria[ 'search_criteria' ][ 'field_filters' ] ) ) { |
|
|
462
|
+ unset( $criteria[ 'search_criteria' ][ 'field_filters' ][ 'mode' ] ); |
|
463
|
463
|
} |
|
464
|
464
|
|
|
465
|
465
|
} |
|
@@ -470,33 +470,33 @@ discard block |
|
|
block discarded – undo |
|
470
|
470
|
* Prepare date formats to be in Gravity Forms DB format; |
|
471
|
471
|
* $passed_criteria may include date formats incompatible with Gravity Forms. |
|
472
|
472
|
*/ |
|
473
|
|
- foreach ( array('start_date', 'end_date' ) as $key ) { |
|
|
473
|
+ foreach ( array( 'start_date', 'end_date' ) as $key ) { |
|
474
|
474
|
|
|
475
|
|
- if ( ! empty( $criteria['search_criteria'][ $key ] ) ) { |
|
|
475
|
+ if ( ! empty( $criteria[ 'search_criteria' ][ $key ] ) ) { |
|
476
|
476
|
|
|
477
|
477
|
// Use date_create instead of new DateTime so it returns false if invalid date format. |
|
478
|
|
- $date = date_create( $criteria['search_criteria'][ $key ] ); |
|
|
478
|
+ $date = date_create( $criteria[ 'search_criteria' ][ $key ] ); |
|
479
|
479
|
|
|
480
|
480
|
if ( $date ) { |
|
481
|
481
|
// Gravity Forms wants dates in the `Y-m-d H:i:s` format. |
|
482
|
|
- $criteria['search_criteria'][ $key ] = $date->format( 'Y-m-d H:i:s' ); |
|
|
482
|
+ $criteria[ 'search_criteria' ][ $key ] = $date->format( 'Y-m-d H:i:s' ); |
|
483
|
483
|
} else { |
|
484
|
|
- gravityview()->log->error( '{key} Date format not valid:', array( 'key' => $key, $criteria['search_criteria'][ $key ] ) ); |
|
|
484
|
+ gravityview()->log->error( '{key} Date format not valid:', array( 'key' => $key, $criteria[ 'search_criteria' ][ $key ] ) ); |
|
485
|
485
|
|
|
486
|
486
|
// If it's an invalid date, unset it. Gravity Forms freaks out otherwise. |
|
487
|
|
- unset( $criteria['search_criteria'][ $key ] ); |
|
|
487
|
+ unset( $criteria[ 'search_criteria' ][ $key ] ); |
|
488
|
488
|
} |
|
489
|
489
|
} |
|
490
|
490
|
} |
|
491
|
491
|
|
|
492
|
|
- if ( empty( $criteria['context_view_id'] ) ) { |
|
|
492
|
+ if ( empty( $criteria[ 'context_view_id' ] ) ) { |
|
493
|
493
|
// Calculate the context view id and send it to the advanced filter |
|
494
|
494
|
if ( GravityView_frontend::getInstance()->getSingleEntry() ) { |
|
495
|
|
- $criteria['context_view_id'] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
|
495
|
+ $criteria[ 'context_view_id' ] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
496
|
496
|
} else if ( class_exists( 'GravityView_View_Data' ) && GravityView_View_Data::getInstance() && GravityView_View_Data::getInstance()->has_multiple_views() ) { |
|
497
|
|
- $criteria['context_view_id'] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
|
497
|
+ $criteria[ 'context_view_id' ] = GravityView_frontend::getInstance()->get_context_view_id(); |
|
498
|
498
|
} else if ( 'delete' === GFForms::get( 'action' ) ) { |
|
499
|
|
- $criteria['context_view_id'] = isset( $_GET['view_id'] ) ? intval( $_GET['view_id'] ) : null; |
|
|
499
|
+ $criteria[ 'context_view_id' ] = isset( $_GET[ 'view_id' ] ) ? intval( $_GET[ 'view_id' ] ) : null; |
|
500
|
500
|
} |
|
501
|
501
|
} |
|
502
|
502
|
|
|
@@ -506,7 +506,7 @@ discard block |
|
|
block discarded – undo |
|
506
|
506
|
* @param array $form_ids Forms to search |
|
507
|
507
|
* @param int $view_id ID of the view being used to search |
|
508
|
508
|
*/ |
|
509
|
|
- $criteria = apply_filters( 'gravityview_search_criteria', $criteria, $form_ids, $criteria['context_view_id'] ); |
|
|
509
|
+ $criteria = apply_filters( 'gravityview_search_criteria', $criteria, $form_ids, $criteria[ 'context_view_id' ] ); |
|
510
|
510
|
|
|
511
|
511
|
return (array)$criteria; |
|
512
|
512
|
} |
|
@@ -541,7 +541,7 @@ discard block |
|
|
block discarded – undo |
|
541
|
541
|
/** Reduce # of database calls */ |
|
542
|
542
|
add_filter( 'gform_is_encrypted_field', '__return_false' ); |
|
543
|
543
|
|
|
544
|
|
- if ( ! empty( $criteria['cache'] ) ) { |
|
|
544
|
+ if ( ! empty( $criteria[ 'cache' ] ) ) { |
|
545
|
545
|
|
|
546
|
546
|
$Cache = new GravityView_Cache( $form_ids, $criteria ); |
|
547
|
547
|
|
|
@@ -549,7 +549,7 @@ discard block |
|
|
block discarded – undo |
|
549
|
549
|
|
|
550
|
550
|
// Still update the total count when using cached results |
|
551
|
551
|
if ( ! is_null( $total ) ) { |
|
552
|
|
- $total = GFAPI::count_entries( $form_ids, $criteria['search_criteria'] ); |
|
|
552
|
+ $total = GFAPI::count_entries( $form_ids, $criteria[ 'search_criteria' ] ); |
|
553
|
553
|
} |
|
554
|
554
|
|
|
555
|
555
|
$return = $entries; |
|
@@ -571,9 +571,9 @@ discard block |
|
|
block discarded – undo |
|
571
|
571
|
$entries = apply_filters_ref_array( 'gravityview_before_get_entries', array( null, $criteria, $passed_criteria, &$total ) ); |
|
572
|
572
|
|
|
573
|
573
|
// No entries returned from gravityview_before_get_entries |
|
574
|
|
- if( is_null( $entries ) ) { |
|
|
574
|
+ if ( is_null( $entries ) ) { |
|
575
|
575
|
|
|
576
|
|
- $entries = GFAPI::get_entries( $form_ids, $criteria['search_criteria'], $criteria['sorting'], $criteria['paging'], $total ); |
|
|
576
|
+ $entries = GFAPI::get_entries( $form_ids, $criteria[ 'search_criteria' ], $criteria[ 'sorting' ], $criteria[ 'paging' ], $total ); |
|
577
|
577
|
|
|
578
|
578
|
if ( is_wp_error( $entries ) ) { |
|
579
|
579
|
gravityview()->log->error( '{error}', array( 'error' => $entries->get_error_message(), 'data' => $entries ) ); |
|
@@ -584,7 +584,7 @@ discard block |
|
|
block discarded – undo |
|
584
|
584
|
} |
|
585
|
585
|
} |
|
586
|
586
|
|
|
587
|
|
- if ( ! empty( $criteria['cache'] ) && isset( $Cache ) ) { |
|
|
587
|
+ if ( ! empty( $criteria[ 'cache' ] ) && isset( $Cache ) ) { |
|
588
|
588
|
|
|
589
|
589
|
// Cache results |
|
590
|
590
|
$Cache->set( $entries, 'entries' ); |
|
@@ -693,12 +693,12 @@ discard block |
|
|
block discarded – undo |
|
693
|
693
|
*/ |
|
694
|
694
|
$check_entry_display = apply_filters( 'gravityview/common/get_entry/check_entry_display', $check_entry_display, $entry ); |
|
695
|
695
|
|
|
696
|
|
- if( $check_entry_display ) { |
|
|
696
|
+ if ( $check_entry_display ) { |
|
697
|
697
|
// Is the entry allowed |
|
698
|
698
|
$entry = self::check_entry_display( $entry ); |
|
699
|
699
|
} |
|
700
|
700
|
|
|
701
|
|
- if( is_wp_error( $entry ) ) { |
|
|
701
|
+ if ( is_wp_error( $entry ) ) { |
|
702
|
702
|
gravityview()->log->error( '{error}', array( 'error' => $entry->get_error_message() ) ); |
|
703
|
703
|
return false; |
|
704
|
704
|
} |
|
@@ -732,12 +732,12 @@ discard block |
|
|
block discarded – undo |
|
732
|
732
|
|
|
733
|
733
|
$value = false; |
|
734
|
734
|
|
|
735
|
|
- if( 'context' === $val1 ) { |
|
|
735
|
+ if ( 'context' === $val1 ) { |
|
736
|
736
|
|
|
737
|
737
|
$matching_contexts = array( $val2 ); |
|
738
|
738
|
|
|
739
|
739
|
// We allow for non-standard contexts. |
|
740
|
|
- switch( $val2 ) { |
|
|
740
|
+ switch ( $val2 ) { |
|
741
|
741
|
// Check for either single or edit |
|
742
|
742
|
case 'singular': |
|
743
|
743
|
$matching_contexts = array( 'single', 'edit' ); |
|
@@ -780,18 +780,18 @@ discard block |
|
|
block discarded – undo |
|
780
|
780
|
$json_val_1 = json_decode( $val1, true ); |
|
781
|
781
|
$json_val_2 = json_decode( $val2, true ); |
|
782
|
782
|
|
|
783
|
|
- if( ! empty( $json_val_1 ) || ! empty( $json_val_2 ) ) { |
|
|
783
|
+ if ( ! empty( $json_val_1 ) || ! empty( $json_val_2 ) ) { |
|
784
|
784
|
|
|
785
|
785
|
$json_in = false; |
|
786
|
|
- $json_val_1 = $json_val_1 ? (array) $json_val_1 : array( $val1 ); |
|
787
|
|
- $json_val_2 = $json_val_2 ? (array) $json_val_2 : array( $val2 ); |
|
|
786
|
+ $json_val_1 = $json_val_1 ? (array)$json_val_1 : array( $val1 ); |
|
|
787
|
+ $json_val_2 = $json_val_2 ? (array)$json_val_2 : array( $val2 ); |
|
788
|
788
|
|
|
789
|
789
|
// For JSON, we want to compare as "in" or "not in" rather than "contains" |
|
790
|
790
|
foreach ( $json_val_1 as $item_1 ) { |
|
791
|
791
|
foreach ( $json_val_2 as $item_2 ) { |
|
792
|
792
|
$json_in = self::matches_operation( $item_1, $item_2, 'is' ); |
|
793
|
793
|
|
|
794
|
|
- if( $json_in ) { |
|
|
794
|
+ if ( $json_in ) { |
|
795
|
795
|
break 2; |
|
796
|
796
|
} |
|
797
|
797
|
} |
|
@@ -843,10 +843,10 @@ discard block |
|
|
block discarded – undo |
|
843
|
843
|
public static function check_entry_display( $entry, $view = null ) { |
|
844
|
844
|
|
|
845
|
845
|
if ( ! $entry || is_wp_error( $entry ) ) { |
|
846
|
|
- return new WP_Error('entry_not_found', 'Entry was not found.', $entry ); |
|
|
846
|
+ return new WP_Error( 'entry_not_found', 'Entry was not found.', $entry ); |
|
847
|
847
|
} |
|
848
|
848
|
|
|
849
|
|
- if ( empty( $entry['form_id'] ) ) { |
|
|
849
|
+ if ( empty( $entry[ 'form_id' ] ) ) { |
|
850
|
850
|
return new WP_Error( 'form_id_not_set', '[apply_filters_to_entry] Entry is empty!', $entry ); |
|
851
|
851
|
} |
|
852
|
852
|
|
|
@@ -856,19 +856,19 @@ discard block |
|
|
block discarded – undo |
|
856
|
856
|
* Check whether the entry is in the entries subset by running a modified query. |
|
857
|
857
|
*/ |
|
858
|
858
|
add_action( 'gravityview/view/query', $entry_subset_callback = function( &$query, $view, $request ) use ( $entry ) { |
|
859
|
|
- $_tmp_query = new \GF_Query( $view->form->ID, array( 'field_filters' => array( 'mode' => 'all', array( 'key' => 'id', 'operation' => 'is', 'value' => $entry['id'] ) ) ) ); |
|
|
859
|
+ $_tmp_query = new \GF_Query( $view->form->ID, array( 'field_filters' => array( 'mode' => 'all', array( 'key' => 'id', 'operation' => 'is', 'value' => $entry[ 'id' ] ) ) ) ); |
|
860
|
860
|
$_tmp_query_parts = $_tmp_query->_introspect(); |
|
861
|
861
|
|
|
862
|
862
|
$query_parts = $query->_introspect(); |
|
863
|
863
|
|
|
864
|
|
- $query->where( \GF_Query_Condition::_and( $_tmp_query_parts['where'], $query_parts['where'] ) ); |
|
|
864
|
+ $query->where( \GF_Query_Condition::_and( $_tmp_query_parts[ 'where' ], $query_parts[ 'where' ] ) ); |
|
865
|
865
|
|
|
866
|
866
|
}, 10, 3 ); |
|
867
|
867
|
|
|
868
|
868
|
// Prevent page offset from being applied to the single entry query; it's used to return to the referring page number |
|
869
|
869
|
add_filter( 'gravityview_search_criteria', $remove_pagenum = function( $criteria ) { |
|
870
|
870
|
|
|
871
|
|
- $criteria['paging'] = array( |
|
|
871
|
+ $criteria[ 'paging' ] = array( |
|
872
|
872
|
'offset' => 0, |
|
873
|
873
|
'page_size' => 25 |
|
874
|
874
|
); |
|
@@ -887,20 +887,20 @@ discard block |
|
|
block discarded – undo |
|
887
|
887
|
} |
|
888
|
888
|
|
|
889
|
889
|
// This entry is on a View with joins |
|
890
|
|
- if( $entries[0] instanceof \GV\Multi_Entry ) { |
|
|
890
|
+ if ( $entries[ 0 ] instanceof \GV\Multi_Entry ) { |
|
891
|
891
|
|
|
892
|
892
|
$multi_entry_ids = array(); |
|
893
|
893
|
|
|
894
|
|
- foreach ( $entries[0]->entries as $multi_entry ) { |
|
895
|
|
- $multi_entry_ids[] = (int) $multi_entry->ID; |
|
|
894
|
+ foreach ( $entries[ 0 ]->entries as $multi_entry ) { |
|
|
895
|
+ $multi_entry_ids[ ] = (int)$multi_entry->ID; |
|
896
|
896
|
} |
|
897
|
897
|
|
|
898
|
|
- if( ! in_array( (int) $entry['id'], $multi_entry_ids, true ) ) { |
|
|
898
|
+ if ( ! in_array( (int)$entry[ 'id' ], $multi_entry_ids, true ) ) { |
|
899
|
899
|
remove_action( 'gravityview/view/query', $entry_subset_callback ); |
|
900
|
900
|
return new \WP_Error( 'failed_criteria', 'Entry failed search_criteria and field_filters' ); |
|
901
|
901
|
} |
|
902
|
902
|
|
|
903
|
|
- } elseif ( (int) $entries[0]->ID !== (int) $entry['id'] ) { |
|
|
903
|
+ } elseif ( (int)$entries[ 0 ]->ID !== (int)$entry[ 'id' ] ) { |
|
904
|
904
|
remove_action( 'gravityview/view/query', $entry_subset_callback ); |
|
905
|
905
|
return new \WP_Error( 'failed_criteria', 'Entry failed search_criteria and field_filters' ); |
|
906
|
906
|
} |
|
@@ -913,59 +913,59 @@ discard block |
|
|
block discarded – undo |
|
913
|
913
|
'context_view_id' => $view ? $view->ID : null, |
|
914
|
914
|
) ); |
|
915
|
915
|
|
|
916
|
|
- if ( empty( $criteria['search_criteria'] ) || ! is_array( $criteria['search_criteria'] ) ) { |
|
|
916
|
+ if ( empty( $criteria[ 'search_criteria' ] ) || ! is_array( $criteria[ 'search_criteria' ] ) ) { |
|
917
|
917
|
gravityview()->log->debug( '[apply_filters_to_entry] Entry approved! No search criteria found:', array( 'data' => $criteria ) ); |
|
918
|
918
|
return $entry; |
|
919
|
919
|
} |
|
920
|
920
|
|
|
921
|
921
|
// Make sure the current View is connected to the same form as the Entry |
|
922
|
|
- if( ! empty( $criteria['context_view_id'] ) ) { |
|
923
|
|
- $context_view_id = intval( $criteria['context_view_id'] ); |
|
|
922
|
+ if ( ! empty( $criteria[ 'context_view_id' ] ) ) { |
|
|
923
|
+ $context_view_id = intval( $criteria[ 'context_view_id' ] ); |
|
924
|
924
|
$context_form_id = gravityview_get_form_id( $context_view_id ); |
|
925
|
|
- if( intval( $context_form_id ) !== intval( $entry['form_id'] ) ) { |
|
926
|
|
- 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'] ); |
|
|
925
|
+ if ( intval( $context_form_id ) !== intval( $entry[ 'form_id' ] ) ) { |
|
|
926
|
+ 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' ] ); |
|
927
|
927
|
} |
|
928
|
928
|
} |
|
929
|
929
|
|
|
930
|
|
- $search_criteria = $criteria['search_criteria']; |
|
|
930
|
+ $search_criteria = $criteria[ 'search_criteria' ]; |
|
931
|
931
|
|
|
932
|
932
|
// check entry status |
|
933
|
|
- if ( array_key_exists( 'status', $search_criteria ) && $search_criteria['status'] != $entry['status'] ) { |
|
934
|
|
- 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 ); |
|
|
933
|
+ if ( array_key_exists( 'status', $search_criteria ) && $search_criteria[ 'status' ] != $entry[ 'status' ] ) { |
|
|
934
|
+ 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 ); |
|
935
|
935
|
} |
|
936
|
936
|
|
|
937
|
937
|
// check entry date |
|
938
|
938
|
// @todo: Does it make sense to apply the Date create filters to the single entry? |
|
939
|
939
|
|
|
940
|
940
|
// field_filters |
|
941
|
|
- if ( empty( $search_criteria['field_filters'] ) || ! is_array( $search_criteria['field_filters'] ) ) { |
|
|
941
|
+ if ( empty( $search_criteria[ 'field_filters' ] ) || ! is_array( $search_criteria[ 'field_filters' ] ) ) { |
|
942
|
942
|
gravityview()->log->debug( '[apply_filters_to_entry] Entry approved! No field filters criteria found:', array( 'data' => $search_criteria ) ); |
|
943
|
943
|
return $entry; |
|
944
|
944
|
} |
|
945
|
945
|
|
|
946
|
|
- $filters = $search_criteria['field_filters']; |
|
|
946
|
+ $filters = $search_criteria[ 'field_filters' ]; |
|
947
|
947
|
|
|
948
|
|
- $mode = array_key_exists( 'mode', $filters ) ? strtolower( $filters['mode'] ) : 'all'; |
|
|
948
|
+ $mode = array_key_exists( 'mode', $filters ) ? strtolower( $filters[ 'mode' ] ) : 'all'; |
|
949
|
949
|
|
|
950
|
|
- $mode = $mode ? : 'all'; // If mode is an empty string, assume it's 'all' |
|
|
950
|
+ $mode = $mode ?: 'all'; // If mode is an empty string, assume it's 'all' |
|
951
|
951
|
|
|
952
|
952
|
// Prevent the mode from being processed below |
|
953
|
|
- unset( $filters['mode'] ); |
|
|
953
|
+ unset( $filters[ 'mode' ] ); |
|
954
|
954
|
|
|
955
|
|
- $form = self::get_form( $entry['form_id'] ); |
|
|
955
|
+ $form = self::get_form( $entry[ 'form_id' ] ); |
|
956
|
956
|
|
|
957
|
957
|
foreach ( $filters as $filter ) { |
|
958
|
|
- $operator = isset( $filter['operator'] ) ? strtolower( $filter['operator'] ) : 'is'; |
|
|
958
|
+ $operator = isset( $filter[ 'operator' ] ) ? strtolower( $filter[ 'operator' ] ) : 'is'; |
|
959
|
959
|
|
|
960
|
|
- if ( ! isset( $filter['key'] ) ) { |
|
|
960
|
+ if ( ! isset( $filter[ 'key' ] ) ) { |
|
961
|
961
|
gravityview()->log->debug( '[apply_filters_to_entry] Filter key not set, any field mode', array( 'filter' => $filter ) ); |
|
962
|
962
|
/** |
|
963
|
963
|
* This is a cross-field search. Let's start digging'. |
|
964
|
964
|
*/ |
|
965
|
965
|
foreach ( \GV\Utils::get( $form, 'fields', array() ) as $field ) { |
|
966
|
966
|
$field_value = GFFormsModel::get_lead_field_value( $entry, $field ); |
|
967
|
|
- if ( $is_value_match = GravityView_GFFormsModel::is_value_match( $field_value, $filter['value'], $operator, $field ) ) { |
|
968
|
|
- if ( 'any' === $mode) { |
|
|
967
|
+ if ( $is_value_match = GravityView_GFFormsModel::is_value_match( $field_value, $filter[ 'value' ], $operator, $field ) ) { |
|
|
968
|
+ if ( 'any' === $mode ) { |
|
969
|
969
|
return $entry; // All good here |
|
970
|
970
|
} // mode === 'all' |
|
971
|
971
|
continue 2; // Next filter |
|
@@ -974,13 +974,13 @@ discard block |
|
|
block discarded – undo |
|
974
|
974
|
} |
|
975
|
975
|
|
|
976
|
976
|
if ( 'all' === $mode ) { |
|
977
|
|
- return new WP_Error('failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a subcriterium for any field in ALL mode', $filter ); |
|
|
977
|
+ return new WP_Error( 'failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a subcriterium for any field in ALL mode', $filter ); |
|
978
|
978
|
} |
|
979
|
979
|
|
|
980
|
980
|
continue; |
|
981
|
981
|
} |
|
982
|
982
|
|
|
983
|
|
- $k = $filter['key']; |
|
|
983
|
+ $k = $filter[ 'key' ]; |
|
984
|
984
|
|
|
985
|
985
|
$field = self::get_field( $form, $k ); |
|
986
|
986
|
|
|
@@ -988,12 +988,12 @@ discard block |
|
|
block discarded – undo |
|
988
|
988
|
$field_value = isset( $entry[ $k ] ) ? $entry[ $k ] : null; |
|
989
|
989
|
$field = $k; |
|
990
|
990
|
} else { |
|
991
|
|
- $field_value = GFFormsModel::get_lead_field_value( $entry, $field ); |
|
|
991
|
+ $field_value = GFFormsModel::get_lead_field_value( $entry, $field ); |
|
992
|
992
|
// If it's a complex field, then fetch the input's value, if exists at the current key. Otherwise, let GF handle it |
|
993
|
993
|
$field_value = ( is_array( $field_value ) && isset( $field_value[ $k ] ) ) ? \GV\Utils::get( $field_value, $k ) : $field_value; |
|
994
|
994
|
} |
|
995
|
995
|
|
|
996
|
|
- $is_value_match = GravityView_GFFormsModel::is_value_match( $field_value, $filter['value'], $operator, $field ); |
|
|
996
|
+ $is_value_match = GravityView_GFFormsModel::is_value_match( $field_value, $filter[ 'value' ], $operator, $field ); |
|
997
|
997
|
|
|
998
|
998
|
// Any match is all we need to know |
|
999
|
999
|
if ( $is_value_match && 'any' === $mode ) { |
|
@@ -1002,7 +1002,7 @@ discard block |
|
|
block discarded – undo |
|
1002
|
1002
|
|
|
1003
|
1003
|
// Any failed match is a total fail |
|
1004
|
1004
|
if ( ! $is_value_match && 'all' === $mode ) { |
|
1005
|
|
- return new WP_Error('failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a criterium for ALL mode', $filter ); |
|
|
1005
|
+ return new WP_Error( 'failed_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed a criterium for ALL mode', $filter ); |
|
1006
|
1006
|
} |
|
1007
|
1007
|
} |
|
1008
|
1008
|
|
|
@@ -1012,7 +1012,7 @@ discard block |
|
|
block discarded – undo |
|
1012
|
1012
|
gravityview()->log->debug( '[apply_filters_to_entry] Entry approved: all conditions were met' ); |
|
1013
|
1013
|
return $entry; |
|
1014
|
1014
|
} else { |
|
1015
|
|
- return new WP_Error('failed_any_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed all the criteria for ANY mode', $filters ); |
|
|
1015
|
+ return new WP_Error( 'failed_any_criteria', '[apply_filters_to_entry] Entry cannot be displayed. Failed all the criteria for ANY mode', $filters ); |
|
1016
|
1016
|
} |
|
1017
|
1017
|
|
|
1018
|
1018
|
} |
|
@@ -1053,18 +1053,18 @@ discard block |
|
|
block discarded – undo |
|
1053
|
1053
|
* Gravity Forms code to adjust date to locally-configured Time Zone |
|
1054
|
1054
|
* @see GFCommon::format_date() for original code |
|
1055
|
1055
|
*/ |
|
1056
|
|
- $date_gmt_time = mysql2date( 'G', $date_string ); |
|
|
1056
|
+ $date_gmt_time = mysql2date( 'G', $date_string ); |
|
1057
|
1057
|
$date_local_timestamp = GFCommon::get_local_timestamp( $date_gmt_time ); |
|
1058
|
1058
|
|
|
1059
|
|
- $format = \GV\Utils::get( $atts, 'format' ); |
|
1060
|
|
- $is_human = ! empty( $atts['human'] ); |
|
1061
|
|
- $is_diff = ! empty( $atts['diff'] ); |
|
1062
|
|
- $is_raw = ! empty( $atts['raw'] ); |
|
1063
|
|
- $is_timestamp = ! empty( $atts['timestamp'] ); |
|
1064
|
|
- $include_time = ! empty( $atts['time'] ); |
|
|
1059
|
+ $format = \GV\Utils::get( $atts, 'format' ); |
|
|
1060
|
+ $is_human = ! empty( $atts[ 'human' ] ); |
|
|
1061
|
+ $is_diff = ! empty( $atts[ 'diff' ] ); |
|
|
1062
|
+ $is_raw = ! empty( $atts[ 'raw' ] ); |
|
|
1063
|
+ $is_timestamp = ! empty( $atts[ 'timestamp' ] ); |
|
|
1064
|
+ $include_time = ! empty( $atts[ 'time' ] ); |
|
1065
|
1065
|
|
|
1066
|
1066
|
// If we're using time diff, we want to have a different default format |
|
1067
|
|
- if( empty( $format ) ) { |
|
|
1067
|
+ if ( empty( $format ) ) { |
|
1068
|
1068
|
/* translators: %s: relative time from now, used for generic date comparisons. "1 day ago", or "20 seconds ago" */ |
|
1069
|
1069
|
$format = $is_diff ? esc_html__( '%s ago', 'gravityview' ) : get_option( 'date_format' ); |
|
1070
|
1070
|
} |
|
@@ -1072,7 +1072,7 @@ discard block |
|
|
block discarded – undo |
|
1072
|
1072
|
// If raw was specified, don't modify the stored value |
|
1073
|
1073
|
if ( $is_raw ) { |
|
1074
|
1074
|
$formatted_date = $date_string; |
|
1075
|
|
- } elseif( $is_timestamp ) { |
|
|
1075
|
+ } elseif ( $is_timestamp ) { |
|
1076
|
1076
|
$formatted_date = $date_local_timestamp; |
|
1077
|
1077
|
} elseif ( $is_diff ) { |
|
1078
|
1078
|
$formatted_date = sprintf( $format, human_time_diff( $date_gmt_time ) ); |
|
@@ -1106,7 +1106,7 @@ discard block |
|
|
block discarded – undo |
|
1106
|
1106
|
|
|
1107
|
1107
|
$label = \GV\Utils::get( $field, 'label' ); |
|
1108
|
1108
|
|
|
1109
|
|
- if( floor( $field_id ) !== floatval( $field_id ) ) { |
|
|
1109
|
+ if ( floor( $field_id ) !== floatval( $field_id ) ) { |
|
1110
|
1110
|
$label = GFFormsModel::get_choice_text( $field, $field_value, $field_id ); |
|
1111
|
1111
|
} |
|
1112
|
1112
|
|
|
@@ -1134,7 +1134,7 @@ discard block |
|
|
block discarded – undo |
|
1134
|
1134
|
$form = GFAPI::get_form( $form ); |
|
1135
|
1135
|
} |
|
1136
|
1136
|
|
|
1137
|
|
- if ( class_exists( 'GFFormsModel' ) ){ |
|
|
1137
|
+ if ( class_exists( 'GFFormsModel' ) ) { |
|
1138
|
1138
|
return GFFormsModel::get_field( $form, $field_id ); |
|
1139
|
1139
|
} else { |
|
1140
|
1140
|
return null; |
|
@@ -1181,19 +1181,19 @@ discard block |
|
|
block discarded – undo |
|
1181
|
1181
|
$shortcodes = array(); |
|
1182
|
1182
|
|
|
1183
|
1183
|
preg_match_all( '/' . get_shortcode_regex() . '/s', $content, $matches, PREG_SET_ORDER ); |
|
1184
|
|
- if ( empty( $matches ) ){ |
|
|
1184
|
+ if ( empty( $matches ) ) { |
|
1185
|
1185
|
return false; |
|
1186
|
1186
|
} |
|
1187
|
1187
|
|
|
1188
|
1188
|
foreach ( $matches as $shortcode ) { |
|
1189
|
|
- if ( $tag === $shortcode[2] ) { |
|
|
1189
|
+ if ( $tag === $shortcode[ 2 ] ) { |
|
1190
|
1190
|
|
|
1191
|
1191
|
// Changed this to $shortcode instead of true so we get the parsed atts. |
|
1192
|
|
- $shortcodes[] = $shortcode; |
|
|
1192
|
+ $shortcodes[ ] = $shortcode; |
|
1193
|
1193
|
|
|
1194
|
|
- } else if ( isset( $shortcode[5] ) && $results = self::has_shortcode_r( $shortcode[5], $tag ) ) { |
|
1195
|
|
- foreach( $results as $result ) { |
|
1196
|
|
- $shortcodes[] = $result; |
|
|
1194
|
+ } else if ( isset( $shortcode[ 5 ] ) && $results = self::has_shortcode_r( $shortcode[ 5 ], $tag ) ) { |
|
|
1195
|
+ foreach ( $results as $result ) { |
|
|
1196
|
+ $shortcodes[ ] = $result; |
|
1197
|
1197
|
} |
|
1198
|
1198
|
} |
|
1199
|
1199
|
} |
|
@@ -1225,7 +1225,7 @@ discard block |
|
|
block discarded – undo |
|
1225
|
1225
|
'post_type' => 'gravityview', |
|
1226
|
1226
|
'posts_per_page' => 100, |
|
1227
|
1227
|
'meta_key' => '_gravityview_form_id', |
|
1228
|
|
- 'meta_value' => (int) $form_id, |
|
|
1228
|
+ 'meta_value' => (int)$form_id, |
|
1229
|
1229
|
); |
|
1230
|
1230
|
$args = wp_parse_args( $args, $defaults ); |
|
1231
|
1231
|
$views = get_posts( $args ); |
|
@@ -1237,21 +1237,21 @@ discard block |
|
|
block discarded – undo |
|
1237
|
1237
|
|
|
1238
|
1238
|
$data = unserialize( $view->meta_value ); |
|
1239
|
1239
|
|
|
1240
|
|
- if( ! $data || ! is_array( $data ) ) { |
|
|
1240
|
+ if ( ! $data || ! is_array( $data ) ) { |
|
1241
|
1241
|
continue; |
|
1242
|
1242
|
} |
|
1243
|
1243
|
|
|
1244
|
1244
|
foreach ( $data as $datum ) { |
|
1245
|
|
- if ( ! empty( $datum[2] ) && (int) $datum[2] === (int) $form_id ) { |
|
1246
|
|
- $joined_forms[] = $view->post_id; |
|
|
1245
|
+ if ( ! empty( $datum[ 2 ] ) && (int)$datum[ 2 ] === (int)$form_id ) { |
|
|
1246
|
+ $joined_forms[ ] = $view->post_id; |
|
1247
|
1247
|
} |
|
1248
|
1248
|
} |
|
1249
|
1249
|
} |
|
1250
|
1250
|
|
|
1251
|
1251
|
if ( $joined_forms ) { |
|
1252
|
|
- $joined_args = array( |
|
|
1252
|
+ $joined_args = array( |
|
1253
|
1253
|
'post_type' => 'gravityview', |
|
1254
|
|
- 'posts_per_page' => $args['posts_per_page'], |
|
|
1254
|
+ 'posts_per_page' => $args[ 'posts_per_page' ], |
|
1255
|
1255
|
'post__in' => $joined_forms, |
|
1256
|
1256
|
); |
|
1257
|
1257
|
$views = array_merge( $views, get_posts( $joined_args ) ); |
|
@@ -1407,7 +1407,7 @@ discard block |
|
|
block discarded – undo |
|
1407
|
1407
|
|
|
1408
|
1408
|
$directory_widgets = wp_parse_args( $view_widgets, $defaults ); |
|
1409
|
1409
|
|
|
1410
|
|
- if( $json_decode ) { |
|
|
1410
|
+ if ( $json_decode ) { |
|
1411
|
1411
|
$directory_widgets = gv_map_deep( $directory_widgets, 'gv_maybe_json_decode' ); |
|
1412
|
1412
|
} |
|
1413
|
1413
|
|
|
@@ -1423,7 +1423,7 @@ discard block |
|
|
block discarded – undo |
|
1423
|
1423
|
* @return string html |
|
1424
|
1424
|
*/ |
|
1425
|
1425
|
public static function get_sortable_fields( $formid, $current = '' ) { |
|
1426
|
|
- $output = '<option value="" ' . selected( '', $current, false ).'>' . esc_html__( 'Default', 'gravityview' ) .'</option>'; |
|
|
1426
|
+ $output = '<option value="" ' . selected( '', $current, false ) . '>' . esc_html__( 'Default', 'gravityview' ) . '</option>'; |
|
1427
|
1427
|
|
|
1428
|
1428
|
if ( empty( $formid ) ) { |
|
1429
|
1429
|
return $output; |
|
@@ -1436,11 +1436,11 @@ discard block |
|
|
block discarded – undo |
|
1436
|
1436
|
$blacklist_field_types = apply_filters( 'gravityview_blacklist_field_types', array( 'list', 'textarea' ), null ); |
|
1437
|
1437
|
|
|
1438
|
1438
|
foreach ( $fields as $id => $field ) { |
|
1439
|
|
- if ( in_array( $field['type'], $blacklist_field_types ) ) { |
|
|
1439
|
+ if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) { |
|
1440
|
1440
|
continue; |
|
1441
|
1441
|
} |
|
1442
|
1442
|
|
|
1443
|
|
- $output .= '<option value="'. $id .'" '. selected( $id, $current, false ).'>'. esc_attr( $field['label'] ) .'</option>'; |
|
|
1443
|
+ $output .= '<option value="' . $id . '" ' . selected( $id, $current, false ) . '>' . esc_attr( $field[ 'label' ] ) . '</option>'; |
|
1444
|
1444
|
} |
|
1445
|
1445
|
} |
|
1446
|
1446
|
|
|
@@ -1475,9 +1475,9 @@ discard block |
|
|
block discarded – undo |
|
1475
|
1475
|
$blacklist_field_types = apply_filters( 'gravityview_blacklist_field_types', $blacklist, NULL ); |
|
1476
|
1476
|
|
|
1477
|
1477
|
// TODO: Convert to using array_filter |
|
1478
|
|
- foreach( $fields as $id => $field ) { |
|
|
1478
|
+ foreach ( $fields as $id => $field ) { |
|
1479
|
1479
|
|
|
1480
|
|
- if( in_array( $field['type'], $blacklist_field_types ) ) { |
|
|
1480
|
+ if ( in_array( $field[ 'type' ], $blacklist_field_types ) ) { |
|
1481
|
1481
|
unset( $fields[ $id ] ); |
|
1482
|
1482
|
} |
|
1483
|
1483
|
} |
|
@@ -1518,14 +1518,14 @@ discard block |
|
|
block discarded – undo |
|
1518
|
1518
|
* @param int|array $field field key or field array |
|
1519
|
1519
|
* @return boolean |
|
1520
|
1520
|
*/ |
|
1521
|
|
- public static function is_field_numeric( $form = null, $field = '' ) { |
|
|
1521
|
+ public static function is_field_numeric( $form = null, $field = '' ) { |
|
1522
|
1522
|
|
|
1523
|
1523
|
if ( ! is_array( $form ) && ! is_array( $field ) ) { |
|
1524
|
1524
|
$form = self::get_form( $form ); |
|
1525
|
1525
|
} |
|
1526
|
1526
|
|
|
1527
|
1527
|
// If entry meta, it's a string. Otherwise, numeric |
|
1528
|
|
- if( ! is_numeric( $field ) && is_string( $field ) ) { |
|
|
1528
|
+ if ( ! is_numeric( $field ) && is_string( $field ) ) { |
|
1529
|
1529
|
$type = $field; |
|
1530
|
1530
|
} else { |
|
1531
|
1531
|
$type = self::get_field_type( $form, $field ); |
|
@@ -1539,9 +1539,9 @@ discard block |
|
|
block discarded – undo |
|
1539
|
1539
|
$numeric_types = apply_filters( 'gravityview/common/numeric_types', array( 'number', 'time' ) ); |
|
1540
|
1540
|
|
|
1541
|
1541
|
// Defer to GravityView_Field setting, if the field type is registered and `is_numeric` is true |
|
1542
|
|
- if( $gv_field = GravityView_Fields::get( $type ) ) { |
|
1543
|
|
- if( true === $gv_field->is_numeric ) { |
|
1544
|
|
- $numeric_types[] = $gv_field->is_numeric; |
|
|
1542
|
+ if ( $gv_field = GravityView_Fields::get( $type ) ) { |
|
|
1543
|
+ if ( true === $gv_field->is_numeric ) { |
|
|
1544
|
+ $numeric_types[ ] = $gv_field->is_numeric; |
|
1545
|
1545
|
} |
|
1546
|
1546
|
} |
|
1547
|
1547
|
|
|
@@ -1691,18 +1691,18 @@ discard block |
|
|
block discarded – undo |
|
1691
|
1691
|
$final_atts = array_filter( $final_atts ); |
|
1692
|
1692
|
|
|
1693
|
1693
|
// If the href wasn't passed as an attribute, use the value passed to the function |
|
1694
|
|
- if ( empty( $final_atts['href'] ) && ! empty( $href ) ) { |
|
1695
|
|
- $final_atts['href'] = $href; |
|
|
1694
|
+ if ( empty( $final_atts[ 'href' ] ) && ! empty( $href ) ) { |
|
|
1695
|
+ $final_atts[ 'href' ] = $href; |
|
1696
|
1696
|
} |
|
1697
|
1697
|
|
|
1698
|
|
- $final_atts['href'] = esc_url_raw( $href ); |
|
|
1698
|
+ $final_atts[ 'href' ] = esc_url_raw( $href ); |
|
1699
|
1699
|
|
|
1700
|
1700
|
/** |
|
1701
|
1701
|
* Fix potential security issue with target=_blank |
|
1702
|
1702
|
* @see https://dev.to/ben/the-targetblank-vulnerability-by-example |
|
1703
|
1703
|
*/ |
|
1704
|
|
- if( '_blank' === \GV\Utils::get( $final_atts, 'target' ) ) { |
|
1705
|
|
- $final_atts['rel'] = trim( \GV\Utils::get( $final_atts, 'rel', '' ) . ' noopener noreferrer' ); |
|
|
1704
|
+ if ( '_blank' === \GV\Utils::get( $final_atts, 'target' ) ) { |
|
|
1705
|
+ $final_atts[ 'rel' ] = trim( \GV\Utils::get( $final_atts, 'rel', '' ) . ' noopener noreferrer' ); |
|
1706
|
1706
|
} |
|
1707
|
1707
|
|
|
1708
|
1708
|
// Sort the attributes alphabetically, to help testing |
|
@@ -1714,7 +1714,7 @@ discard block |
|
|
block discarded – undo |
|
1714
|
1714
|
$output .= sprintf( ' %s="%s"', $attr, esc_attr( $value ) ); |
|
1715
|
1715
|
} |
|
1716
|
1716
|
|
|
1717
|
|
- if( '' !== $output ) { |
|
|
1717
|
+ if ( '' !== $output ) { |
|
1718
|
1718
|
$output = '<a' . $output . '>' . $anchor_text . '</a>'; |
|
1719
|
1719
|
} |
|
1720
|
1720
|
|
|
@@ -1741,7 +1741,7 @@ discard block |
|
|
block discarded – undo |
|
1741
|
1741
|
if ( is_array( $value ) && isset( $merged[ $key ] ) && is_array( $merged[ $key ] ) ) { |
|
1742
|
1742
|
$merged[ $key ] = self::array_merge_recursive_distinct( $merged[ $key ], $value ); |
|
1743
|
1743
|
} else if ( is_numeric( $key ) && isset( $merged[ $key ] ) ) { |
|
1744
|
|
- $merged[] = $value; |
|
|
1744
|
+ $merged[ ] = $value; |
|
1745
|
1745
|
} else { |
|
1746
|
1746
|
$merged[ $key ] = $value; |
|
1747
|
1747
|
} |
|
@@ -1774,7 +1774,7 @@ discard block |
|
|
block discarded – undo |
|
1774
|
1774
|
* `$context` is where are we using this information (e.g. change_entry_creator, search_widget ..) |
|
1775
|
1775
|
* @param array $settings Settings array, with `number` key defining the # of users to display |
|
1776
|
1776
|
*/ |
|
1777
|
|
- $get_users_settings = apply_filters( 'gravityview/get_users/'. $context, apply_filters( 'gravityview_change_entry_creator_user_parameters', $get_users_settings ) ); |
|
|
1777
|
+ $get_users_settings = apply_filters( 'gravityview/get_users/' . $context, apply_filters( 'gravityview_change_entry_creator_user_parameters', $get_users_settings ) ); |
|
1778
|
1778
|
|
|
1779
|
1779
|
return get_users( $get_users_settings ); |
|
1780
|
1780
|
} |
|
@@ -1794,11 +1794,11 @@ discard block |
|
|
block discarded – undo |
|
1794
|
1794
|
public static function generate_notice( $notice, $class = '', $cap = '', $object_id = null ) { |
|
1795
|
1795
|
|
|
1796
|
1796
|
// If $cap is defined, only show notice if user has capability |
|
1797
|
|
- if( $cap && ! GVCommon::has_cap( $cap, $object_id ) ) { |
|
|
1797
|
+ if ( $cap && ! GVCommon::has_cap( $cap, $object_id ) ) { |
|
1798
|
1798
|
return ''; |
|
1799
|
1799
|
} |
|
1800
|
1800
|
|
|
1801
|
|
- return '<div class="gv-notice '.gravityview_sanitize_html_class( $class ) .'">'. $notice .'</div>'; |
|
|
1801
|
+ return '<div class="gv-notice ' . gravityview_sanitize_html_class( $class ) . '">' . $notice . '</div>'; |
|
1802
|
1802
|
} |
|
1803
|
1803
|
|
|
1804
|
1804
|
/** |