Completed
Push — master ( 1b32e3...e32e6e )
by Zack
06:12 queued 14s
created
includes/class-api.php 1 patch
Indentation   +43 added lines, -43 removed lines patch added patch discarded remove patch
@@ -1,15 +1,15 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * GravityView template tags API
4
- *
5
- * @package   GravityView
6
- * @license   GPL2+
7
- * @author    Katz Web Services, Inc.
8
- * @link      http://gravityview.co
9
- * @copyright Copyright 2014, Katz Web Services, Inc.
10
- *
11
- * @since 1.0.0
12
- */
3
+	 * GravityView template tags API
4
+	 *
5
+	 * @package   GravityView
6
+	 * @license   GPL2+
7
+	 * @author    Katz Web Services, Inc.
8
+	 * @link      http://gravityview.co
9
+	 * @copyright Copyright 2014, Katz Web Services, Inc.
10
+	 *
11
+	 * @since 1.0.0
12
+	 */
13 13
 
14 14
 class GravityView_API {
15 15
 
@@ -146,20 +146,20 @@  discard block
 block discarded – undo
146 146
 
147 147
 		if( !empty( $field['custom_class'] ) ) {
148 148
 
149
-            $custom_class = $field['custom_class'];
149
+			$custom_class = $field['custom_class'];
150 150
 
151
-            if( !empty( $entry ) ) {
151
+			if( !empty( $entry ) ) {
152 152
 
153
-                // We want the merge tag to be formatted as a class. The merge tag may be
154
-                // replaced by a multiple-word value that should be output as a single class.
155
-                // "Office Manager" will be formatted as `.OfficeManager`, not `.Office` and `.Manager`
156
-                add_filter('gform_merge_tag_filter', 'sanitize_html_class');
153
+				// We want the merge tag to be formatted as a class. The merge tag may be
154
+				// replaced by a multiple-word value that should be output as a single class.
155
+				// "Office Manager" will be formatted as `.OfficeManager`, not `.Office` and `.Manager`
156
+				add_filter('gform_merge_tag_filter', 'sanitize_html_class');
157 157
 
158
-                $custom_class = self::replace_variables( $custom_class, $form, $entry);
158
+				$custom_class = self::replace_variables( $custom_class, $form, $entry);
159 159
 
160
-                // And then we want life to return to normal
161
-                remove_filter('gform_merge_tag_filter', 'sanitize_html_class');
162
-            }
160
+				// And then we want life to return to normal
161
+				remove_filter('gform_merge_tag_filter', 'sanitize_html_class');
162
+			}
163 163
 
164 164
 			// And now we want the spaces to be handled nicely.
165 165
 			$classes[] = gravityview_sanitize_html_class( $custom_class );
@@ -292,7 +292,7 @@  discard block
 block discarded – undo
292 292
 			'format' => $format,
293 293
 			'entry' => $entry,
294 294
 			'field_type' => $field_type, /** {@since 1.6} */
295
-		    'field_path' => $field_path, /** {@since 1.16} */
295
+			'field_path' => $field_path, /** {@since 1.16} */
296 296
 		));
297 297
 
298 298
 		if( ! empty( $field_path ) ) {
@@ -603,29 +603,29 @@  discard block
 block discarded – undo
603 603
 		return sanitize_title( $slug );
604 604
 	}
605 605
 
606
-    /**
607
-     * If using the entry custom slug feature, make sure the new entries have the custom slug created and saved as meta
608
-     *
609
-     * Triggered by add_action( 'gform_entry_created', array( 'GravityView_API', 'entry_create_custom_slug' ), 10, 2 );
610
-     *
611
-     * @param $entry array Gravity Forms entry object
612
-     * @param $form array Gravity Forms form object
613
-     */
614
-    public static function entry_create_custom_slug( $entry, $form ) {
615
-        /**
616
-         * @filter `gravityview_custom_entry_slug` On entry creation, check if we are using the custom entry slug feature and update the meta
617
-         * @param boolean $custom Should we process the custom entry slug?
618
-         */
619
-        $custom = apply_filters( 'gravityview_custom_entry_slug', false );
620
-        if( $custom ) {
621
-            // create the gravityview_unique_id and save it
606
+	/**
607
+	 * If using the entry custom slug feature, make sure the new entries have the custom slug created and saved as meta
608
+	 *
609
+	 * Triggered by add_action( 'gform_entry_created', array( 'GravityView_API', 'entry_create_custom_slug' ), 10, 2 );
610
+	 *
611
+	 * @param $entry array Gravity Forms entry object
612
+	 * @param $form array Gravity Forms form object
613
+	 */
614
+	public static function entry_create_custom_slug( $entry, $form ) {
615
+		/**
616
+		 * @filter `gravityview_custom_entry_slug` On entry creation, check if we are using the custom entry slug feature and update the meta
617
+		 * @param boolean $custom Should we process the custom entry slug?
618
+		 */
619
+		$custom = apply_filters( 'gravityview_custom_entry_slug', false );
620
+		if( $custom ) {
621
+			// create the gravityview_unique_id and save it
622 622
 
623
-            // Get the entry hash
624
-            $hash = self::get_custom_entry_slug( $entry['id'], $entry );
625
-            gform_update_meta( $entry['id'], 'gravityview_unique_id', $hash );
623
+			// Get the entry hash
624
+			$hash = self::get_custom_entry_slug( $entry['id'], $entry );
625
+			gform_update_meta( $entry['id'], 'gravityview_unique_id', $hash );
626 626
 
627
-        }
628
-    }
627
+		}
628
+	}
629 629
 
630 630
 
631 631
 
@@ -889,7 +889,7 @@  discard block
 block discarded – undo
889 889
 
890 890
 			// If there was an error, continue to the next term.
891 891
 			if ( is_wp_error( $term_link ) ) {
892
-			    continue;
892
+				continue;
893 893
 			}
894 894
 
895 895
 			$output[] = gravityview_get_link( $term_link, esc_html( $term->name ) );
Please login to merge, or discard this patch.
includes/helper-functions.php 1 patch
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -1,8 +1,8 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Functions that don't require GravityView or Gravity Forms API access but are used in the plugin to extend PHP and WP functions
4
- * @since 1.12
5
- */
3
+	 * Functions that don't require GravityView or Gravity Forms API access but are used in the plugin to extend PHP and WP functions
4
+	 * @since 1.12
5
+	 */
6 6
 
7 7
 /**
8 8
  * Check whether a variable is not an empty string
@@ -341,7 +341,7 @@  discard block
 block discarded – undo
341 341
 		! isset( $value ) // If it's not set, it's empty!
342 342
 		|| false === $value
343 343
 		|| null === $value
344
-	    || '' === $value // Empty string
344
+		|| '' === $value // Empty string
345 345
 		|| array() === $value // Empty array
346 346
 		|| ( is_object( $value ) && ! get_object_vars( $value ) ) // Empty object
347 347
 	) {
Please login to merge, or discard this patch.
includes/admin/class.render.settings.php 1 patch
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -1,15 +1,15 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * Renders field/widget options and view settings
4
- *
5
- * @package   GravityView
6
- * @license   GPL2+
7
- * @author    Katz Web Services, Inc.
8
- * @link      http://gravityview.co
9
- * @copyright Copyright 2014, Katz Web Services, Inc.
10
- *
11
- * @since 1.2
12
- */
3
+	 * Renders field/widget options and view settings
4
+	 *
5
+	 * @package   GravityView
6
+	 * @license   GPL2+
7
+	 * @author    Katz Web Services, Inc.
8
+	 * @link      http://gravityview.co
9
+	 * @copyright Copyright 2014, Katz Web Services, Inc.
10
+	 *
11
+	 * @since 1.2
12
+	 */
13 13
 
14 14
 class GravityView_Render_Settings {
15 15
 
Please login to merge, or discard this patch.
includes/widgets/search-widget/class-search-widget.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -386,14 +386,14 @@
 block discarded – undo
386 386
 		$curr_start = esc_attr( rgget( 'gv_start' ) );
387 387
 		$curr_end = esc_attr( rgget( 'gv_end' ) );
388 388
 
389
-        /**
390
-         * @filter `gravityview_date_created_adjust_timezone` Whether to adjust the timezone for entries. \n
391
-         * date_created is stored in UTC format. Convert search date into UTC (also used on templates/fields/date_created.php)
392
-         * @since 1.12
393
-         * @param[out,in] boolean $adjust_tz  Use timezone-adjusted datetime? If true, adjusts date based on blog's timezone setting. If false, uses UTC setting. Default: true
394
-         * @param[in] string $context Where the filter is being called from. `search` in this case.
395
-         */
396
-        $adjust_tz = apply_filters( 'gravityview_date_created_adjust_timezone', true, 'search' );
389
+		/**
390
+		 * @filter `gravityview_date_created_adjust_timezone` Whether to adjust the timezone for entries. \n
391
+		 * date_created is stored in UTC format. Convert search date into UTC (also used on templates/fields/date_created.php)
392
+		 * @since 1.12
393
+		 * @param[out,in] boolean $adjust_tz  Use timezone-adjusted datetime? If true, adjusts date based on blog's timezone setting. If false, uses UTC setting. Default: true
394
+		 * @param[in] string $context Where the filter is being called from. `search` in this case.
395
+		 */
396
+		$adjust_tz = apply_filters( 'gravityview_date_created_adjust_timezone', true, 'search' );
397 397
 
398 398
 
399 399
 		/**
Please login to merge, or discard this patch.
includes/class-gravityview-settings.php 1 patch
Indentation   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -418,8 +418,8 @@  discard block
 block discarded – undo
418 418
                     type="' . $field['type'] . '"
419 419
                     name="' . esc_attr( $name ) . '"
420 420
                     value="' . $value . '" ' .
421
-		        implode( ' ', $attributes ) .
422
-		        ' />';
421
+				implode( ' ', $attributes ) .
422
+				' />';
423 423
 
424 424
 		if ( $echo ) {
425 425
 			echo $html;
@@ -648,7 +648,7 @@  discard block
 block discarded – undo
648 648
 					array(
649 649
 						'label' => _x( 'Permanently Delete', 'Setting: what to do when uninstalling plugin', 'gravityview' ),
650 650
 						'value' => 'delete',
651
-					    'tooltip' => sprintf( '<h6>%s</h6><p><span class="howto">%s</span></p><p>%s</p>', __( 'Delete all GravityView content and settings', 'gravityview' ), __( 'If you delete then re-install GravityView, it will be like installing GravityView for the first time.', 'gravityview' ), __( 'When GravityView is uninstalled and deleted, delete all Views, GravityView entry approvals, GravityView-generated entry notes (including approval and entry creator changes), and GravityView plugin settings. No Gravity Forms data will be touched.', 'gravityview' ) ),
651
+						'tooltip' => sprintf( '<h6>%s</h6><p><span class="howto">%s</span></p><p>%s</p>', __( 'Delete all GravityView content and settings', 'gravityview' ), __( 'If you delete then re-install GravityView, it will be like installing GravityView for the first time.', 'gravityview' ), __( 'When GravityView is uninstalled and deleted, delete all Views, GravityView entry approvals, GravityView-generated entry notes (including approval and entry creator changes), and GravityView plugin settings. No Gravity Forms data will be touched.', 'gravityview' ) ),
652 652
 					),
653 653
 				),
654 654
 				'description'   => sprintf( __( 'Should GravityView content and entry approval status be removed from the site when the GravityView plugin is deleted?', 'gravityview' ), __( 'Permanently Delete', 'gravityview' ) ),
@@ -674,36 +674,36 @@  discard block
 block discarded – undo
674 674
 		}
675 675
 
676 676
 
677
-        $sections = array(
678
-            array(
679
-                'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __('You are running GravityView version %s', 'gravityview'), GravityView_Plugin::version ) ),
680
-                'fields'      => $fields,
681
-            )
682
-        );
677
+		$sections = array(
678
+			array(
679
+				'description' =>      sprintf( '<span class="version-info description">%s</span>', sprintf( __('You are running GravityView version %s', 'gravityview'), GravityView_Plugin::version ) ),
680
+				'fields'      => $fields,
681
+			)
682
+		);
683 683
 
684
-        // custom 'update settings' button
685
-        $button = array(
686
-            'class' => 'button button-primary button-hero',
687
-            'type'     => 'save',
688
-        );
684
+		// custom 'update settings' button
685
+		$button = array(
686
+			'class' => 'button button-primary button-hero',
687
+			'type'     => 'save',
688
+		);
689 689
 
690 690
 		if( $disabled_attribute ) {
691 691
 			$button['disabled'] = $disabled_attribute;
692 692
 		}
693 693
 
694 694
 
695
-        /**
696
-         * @filter `gravityview/settings/extension/sections` Modify the GravityView settings page
697
-         * Extensions can tap in here to insert their own section and settings.
698
-         * <code>
699
-         *   $sections[] = array(
700
-         *      'title' => __( 'GravityView My Extension Settings', 'gravityview' ),
701
-         *      'fields' => $settings,
702
-         *   );
703
-         * </code>
704
-         * @param array $extension_settings Empty array, ready for extension settings!
705
-         */
706
-        $extension_sections = apply_filters( 'gravityview/settings/extension/sections', array() );
695
+		/**
696
+		 * @filter `gravityview/settings/extension/sections` Modify the GravityView settings page
697
+		 * Extensions can tap in here to insert their own section and settings.
698
+		 * <code>
699
+		 *   $sections[] = array(
700
+		 *      'title' => __( 'GravityView My Extension Settings', 'gravityview' ),
701
+		 *      'fields' => $settings,
702
+		 *   );
703
+		 * </code>
704
+		 * @param array $extension_settings Empty array, ready for extension settings!
705
+		 */
706
+		$extension_sections = apply_filters( 'gravityview/settings/extension/sections', array() );
707 707
 
708 708
 		// If there are extensions, add a section for them
709 709
 		if ( ! empty( $extension_sections ) ) {
@@ -716,13 +716,13 @@  discard block
 block discarded – undo
716 716
 				}
717 717
 			}
718 718
 
719
-            $k = count( $extension_sections ) - 1 ;
720
-            $extension_sections[ $k ]['fields'][] = $button;
719
+			$k = count( $extension_sections ) - 1 ;
720
+			$extension_sections[ $k ]['fields'][] = $button;
721 721
 			$sections = array_merge( $sections, $extension_sections );
722 722
 		} else {
723
-            // add the 'update settings' button to the general section
724
-            $sections[0]['fields'][] = $button;
725
-        }
723
+			// add the 'update settings' button to the general section
724
+			$sections[0]['fields'][] = $button;
725
+		}
726 726
 
727 727
 		return $sections;
728 728
 	}
Please login to merge, or discard this patch.
includes/class-gravityview-gfformsmodel.php 1 patch
Indentation   +175 added lines, -175 removed lines patch added patch discarded remove patch
@@ -7,181 +7,181 @@
 block discarded – undo
7 7
 
8 8
 class GravityView_GFFormsModel extends GFFormsModel {
9 9
 
10
-    /**
11
-     * Copied function from Gravity Forms plugin \GFFormsModel::copy_post_image since the method is private.
12
-     *
13
-     * @since 1.16.2
14
-     *
15
-     * @param string $url URL of the post image to update
16
-     * @param int $post_id ID of the post image to update
17
-     * @return array|bool Array with `file`, `url` and `type` keys. False: failed to copy file to final directory path.
18
-     */
19
-    public static function copy_post_image( $url, $post_id ) {
20
-
21
-        $reflection = new ReflectionMethod( 'GFFormsModel', 'copy_post_image' );
22
-
23
-        /**
24
-         * If the method changes to public, use Gravity Forms' method
25
-         * @todo: If/when the method is public, remove the unneeded copied code.
26
-         */
27
-        if( $reflection->isPublic() ) {
28
-            return parent::copy_post_image( $url, $post_id );
29
-        }
30
-
31
-        /**
32
-         * Original Gravity Forms code below:
33
-         * ==================================
34
-         */
35
-
36
-        $time = current_time( 'mysql' );
37
-
38
-        if ( $post = get_post( $post_id ) ) {
39
-            if ( substr( $post->post_date, 0, 4 ) > 0 ) {
40
-                $time = $post->post_date;
41
-            }
42
-        }
43
-
44
-        //making sure there is a valid upload folder
45
-        if ( ! ( ( $upload_dir = wp_upload_dir( $time ) ) && false === $upload_dir['error'] ) ) {
46
-            return false;
47
-        }
48
-
49
-        $form_id = get_post_meta( $post_id, '_gform-form-id', true );
50
-
51
-        /**
52
-         * Filter the media upload location.
53
-         *
54
-         * @param array $upload_dir The current upload directory’s path and url.
55
-         * @param int $form_id The ID of the form currently being processed.
56
-         * @param int $post_id The ID of the post created from the entry currently being processed.
57
-         */
58
-        $upload_dir = gf_apply_filters( 'gform_media_upload_path', $form_id, $upload_dir, $form_id, $post_id );
59
-
60
-        if ( ! file_exists( $upload_dir['path'] ) ) {
61
-            if ( ! wp_mkdir_p( $upload_dir['path'] ) ) {
62
-                return false;
63
-            }
64
-        }
65
-
66
-        $name     = basename( $url );
67
-        $filename = wp_unique_filename( $upload_dir['path'], $name );
68
-
69
-        // the destination path
70
-        $new_file = $upload_dir['path'] . "/$filename";
71
-
72
-        // the source path
73
-        $y                = substr( $time, 0, 4 );
74
-        $m                = substr( $time, 5, 2 );
75
-        $target_root      = RGFormsModel::get_upload_path( $form_id ) . "/$y/$m/";
76
-        $target_root_url  = RGFormsModel::get_upload_url( $form_id ) . "/$y/$m/";
77
-        $upload_root_info = array( 'path' => $target_root, 'url' => $target_root_url );
78
-        $upload_root_info = gf_apply_filters( 'gform_upload_path', $form_id, $upload_root_info, $form_id );
79
-        $path             = str_replace( $upload_root_info['url'], $upload_root_info['path'], $url );
80
-
81
-        // copy the file to the destination path
82
-        if ( ! copy( $path, $new_file ) ) {
83
-            return false;
84
-        }
85
-
86
-        // Set correct file permissions
87
-        $stat  = stat( dirname( $new_file ) );
88
-        $perms = $stat['mode'] & 0000666;
89
-        @ chmod( $new_file, $perms );
90
-
91
-        // Compute the URL
92
-        $url = $upload_dir['url'] . "/$filename";
93
-
94
-        if ( is_multisite() ) {
95
-            delete_transient( 'dirsize_cache' );
96
-        }
97
-
98
-        $type = wp_check_filetype( $new_file );
99
-
100
-        return array( 'file' => $new_file, 'url' => $url, 'type' => $type['type'] );
101
-
102
-    }
103
-
104
-    /**
105
-     * Copied function from Gravity Forms plugin \GFFormsModel::media_handle_upload since the method is private.
106
-     *
107
-     * @see GFFormsModel::media_handle_upload
108
-     * @see GravityView_Edit_Entry_Render::maybe_update_post_fields
109
-     * 
110
-     * @uses copy_post_image
111
-     * @uses wp_insert_attachment
112
-     * @uses wp_update_attachment_metadata
113
-     *
114
-     * @param string $url URL of the post image to update
115
-     * @param int $post_id ID of the post image to update
116
-     * @param array $post_data Array of data for the eventual attachment post type that is created using {@see wp_insert_attachment}. Supports `post_mime_type`, `guid`, `post_parent`, `post_title`, `post_content` keys.
117
-     * @return bool|int ID of attachment Post created. Returns false if file not created by copy_post_image
118
-     */
119
-    public static function media_handle_upload( $url, $post_id, $post_data = array() ) {
120
-
121
-        $reflection = new ReflectionMethod( 'GFFormsModel', 'media_handle_upload' );
122
-
123
-        /**
124
-         * If the method changes to public, use Gravity Forms' method
125
-         * @todo: If/when the method is public, remove the unneeded copied code.
126
-         */
127
-        if( $reflection->isPublic() ) {
128
-            return parent::media_handle_upload( $url, $post_id, $post_data );
129
-        }
130
-
131
-        /**
132
-         * Original Gravity Forms code below:
133
-         * ==================================
134
-         */
135
-
136
-        //WordPress Administration API required for the media_handle_upload() function
137
-        require_once( ABSPATH . 'wp-admin/includes/image.php' );
138
-
139
-        $name = basename( $url );
140
-
141
-        $file = self::copy_post_image( $url, $post_id );
142
-
143
-        if ( ! $file ) {
144
-            return false;
145
-        }
146
-
147
-        $name_parts = pathinfo( $name );
148
-        $name       = trim( substr( $name, 0, - ( 1 + strlen( $name_parts['extension'] ) ) ) );
149
-
150
-        $url     = $file['url'];
151
-        $type    = $file['type'];
152
-        $file    = $file['file'];
153
-        $title   = $name;
154
-        $content = '';
155
-
156
-        // use image exif/iptc data for title and caption defaults if possible
157
-        if ( $image_meta = @wp_read_image_metadata( $file ) ) {
158
-            if ( trim( $image_meta['title'] ) && ! is_numeric( sanitize_title( $image_meta['title'] ) ) ) {
159
-                $title = $image_meta['title'];
160
-            }
161
-            if ( trim( $image_meta['caption'] ) ) {
162
-                $content = $image_meta['caption'];
163
-            }
164
-        }
165
-
166
-        // Construct the attachment array
167
-        $attachment = array_merge(
168
-            array(
169
-                'post_mime_type' => $type,
170
-                'guid'           => $url,
171
-                'post_parent'    => $post_id,
172
-                'post_title'     => $title,
173
-                'post_content'   => $content,
174
-            ), $post_data
175
-        );
176
-
177
-        // Save the data
178
-        $id = wp_insert_attachment( $attachment, $file, $post_id );
179
-        if ( ! is_wp_error( $id ) ) {
180
-            wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) );
181
-        }
182
-
183
-        return $id;
184
-    }
10
+	/**
11
+	 * Copied function from Gravity Forms plugin \GFFormsModel::copy_post_image since the method is private.
12
+	 *
13
+	 * @since 1.16.2
14
+	 *
15
+	 * @param string $url URL of the post image to update
16
+	 * @param int $post_id ID of the post image to update
17
+	 * @return array|bool Array with `file`, `url` and `type` keys. False: failed to copy file to final directory path.
18
+	 */
19
+	public static function copy_post_image( $url, $post_id ) {
20
+
21
+		$reflection = new ReflectionMethod( 'GFFormsModel', 'copy_post_image' );
22
+
23
+		/**
24
+		 * If the method changes to public, use Gravity Forms' method
25
+		 * @todo: If/when the method is public, remove the unneeded copied code.
26
+		 */
27
+		if( $reflection->isPublic() ) {
28
+			return parent::copy_post_image( $url, $post_id );
29
+		}
30
+
31
+		/**
32
+		 * Original Gravity Forms code below:
33
+		 * ==================================
34
+		 */
35
+
36
+		$time = current_time( 'mysql' );
37
+
38
+		if ( $post = get_post( $post_id ) ) {
39
+			if ( substr( $post->post_date, 0, 4 ) > 0 ) {
40
+				$time = $post->post_date;
41
+			}
42
+		}
43
+
44
+		//making sure there is a valid upload folder
45
+		if ( ! ( ( $upload_dir = wp_upload_dir( $time ) ) && false === $upload_dir['error'] ) ) {
46
+			return false;
47
+		}
48
+
49
+		$form_id = get_post_meta( $post_id, '_gform-form-id', true );
50
+
51
+		/**
52
+		 * Filter the media upload location.
53
+		 *
54
+		 * @param array $upload_dir The current upload directory’s path and url.
55
+		 * @param int $form_id The ID of the form currently being processed.
56
+		 * @param int $post_id The ID of the post created from the entry currently being processed.
57
+		 */
58
+		$upload_dir = gf_apply_filters( 'gform_media_upload_path', $form_id, $upload_dir, $form_id, $post_id );
59
+
60
+		if ( ! file_exists( $upload_dir['path'] ) ) {
61
+			if ( ! wp_mkdir_p( $upload_dir['path'] ) ) {
62
+				return false;
63
+			}
64
+		}
65
+
66
+		$name     = basename( $url );
67
+		$filename = wp_unique_filename( $upload_dir['path'], $name );
68
+
69
+		// the destination path
70
+		$new_file = $upload_dir['path'] . "/$filename";
71
+
72
+		// the source path
73
+		$y                = substr( $time, 0, 4 );
74
+		$m                = substr( $time, 5, 2 );
75
+		$target_root      = RGFormsModel::get_upload_path( $form_id ) . "/$y/$m/";
76
+		$target_root_url  = RGFormsModel::get_upload_url( $form_id ) . "/$y/$m/";
77
+		$upload_root_info = array( 'path' => $target_root, 'url' => $target_root_url );
78
+		$upload_root_info = gf_apply_filters( 'gform_upload_path', $form_id, $upload_root_info, $form_id );
79
+		$path             = str_replace( $upload_root_info['url'], $upload_root_info['path'], $url );
80
+
81
+		// copy the file to the destination path
82
+		if ( ! copy( $path, $new_file ) ) {
83
+			return false;
84
+		}
85
+
86
+		// Set correct file permissions
87
+		$stat  = stat( dirname( $new_file ) );
88
+		$perms = $stat['mode'] & 0000666;
89
+		@ chmod( $new_file, $perms );
90
+
91
+		// Compute the URL
92
+		$url = $upload_dir['url'] . "/$filename";
93
+
94
+		if ( is_multisite() ) {
95
+			delete_transient( 'dirsize_cache' );
96
+		}
97
+
98
+		$type = wp_check_filetype( $new_file );
99
+
100
+		return array( 'file' => $new_file, 'url' => $url, 'type' => $type['type'] );
101
+
102
+	}
103
+
104
+	/**
105
+	 * Copied function from Gravity Forms plugin \GFFormsModel::media_handle_upload since the method is private.
106
+	 *
107
+	 * @see GFFormsModel::media_handle_upload
108
+	 * @see GravityView_Edit_Entry_Render::maybe_update_post_fields
109
+	 * 
110
+	 * @uses copy_post_image
111
+	 * @uses wp_insert_attachment
112
+	 * @uses wp_update_attachment_metadata
113
+	 *
114
+	 * @param string $url URL of the post image to update
115
+	 * @param int $post_id ID of the post image to update
116
+	 * @param array $post_data Array of data for the eventual attachment post type that is created using {@see wp_insert_attachment}. Supports `post_mime_type`, `guid`, `post_parent`, `post_title`, `post_content` keys.
117
+	 * @return bool|int ID of attachment Post created. Returns false if file not created by copy_post_image
118
+	 */
119
+	public static function media_handle_upload( $url, $post_id, $post_data = array() ) {
120
+
121
+		$reflection = new ReflectionMethod( 'GFFormsModel', 'media_handle_upload' );
122
+
123
+		/**
124
+		 * If the method changes to public, use Gravity Forms' method
125
+		 * @todo: If/when the method is public, remove the unneeded copied code.
126
+		 */
127
+		if( $reflection->isPublic() ) {
128
+			return parent::media_handle_upload( $url, $post_id, $post_data );
129
+		}
130
+
131
+		/**
132
+		 * Original Gravity Forms code below:
133
+		 * ==================================
134
+		 */
135
+
136
+		//WordPress Administration API required for the media_handle_upload() function
137
+		require_once( ABSPATH . 'wp-admin/includes/image.php' );
138
+
139
+		$name = basename( $url );
140
+
141
+		$file = self::copy_post_image( $url, $post_id );
142
+
143
+		if ( ! $file ) {
144
+			return false;
145
+		}
146
+
147
+		$name_parts = pathinfo( $name );
148
+		$name       = trim( substr( $name, 0, - ( 1 + strlen( $name_parts['extension'] ) ) ) );
149
+
150
+		$url     = $file['url'];
151
+		$type    = $file['type'];
152
+		$file    = $file['file'];
153
+		$title   = $name;
154
+		$content = '';
155
+
156
+		// use image exif/iptc data for title and caption defaults if possible
157
+		if ( $image_meta = @wp_read_image_metadata( $file ) ) {
158
+			if ( trim( $image_meta['title'] ) && ! is_numeric( sanitize_title( $image_meta['title'] ) ) ) {
159
+				$title = $image_meta['title'];
160
+			}
161
+			if ( trim( $image_meta['caption'] ) ) {
162
+				$content = $image_meta['caption'];
163
+			}
164
+		}
165
+
166
+		// Construct the attachment array
167
+		$attachment = array_merge(
168
+			array(
169
+				'post_mime_type' => $type,
170
+				'guid'           => $url,
171
+				'post_parent'    => $post_id,
172
+				'post_title'     => $title,
173
+				'post_content'   => $content,
174
+			), $post_data
175
+		);
176
+
177
+		// Save the data
178
+		$id = wp_insert_attachment( $attachment, $file, $post_id );
179
+		if ( ! is_wp_error( $id ) ) {
180
+			wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) );
181
+		}
182
+
183
+		return $id;
184
+	}
185 185
 
186 186
 
187 187
 }
188 188
\ No newline at end of file
Please login to merge, or discard this patch.
includes/extensions/edit-entry/class-edit-entry-user-registration.php 1 patch
Indentation   +243 added lines, -243 removed lines patch added patch discarded remove patch
@@ -11,7 +11,7 @@  discard block
 block discarded – undo
11 11
  */
12 12
 
13 13
 if ( ! defined( 'WPINC' ) ) {
14
-    die;
14
+	die;
15 15
 }
16 16
 
17 17
 /**
@@ -22,255 +22,255 @@  discard block
 block discarded – undo
22 22
 	/**
23 23
 	 * @var GravityView_Edit_Entry
24 24
 	 */
25
-    protected $loader;
25
+	protected $loader;
26 26
 
27
-    /**
28
-     * @var WP_User|null Temporary storage used by restore_user_details()
29
-     */
30
-    private $_user_before_update = null;
27
+	/**
28
+	 * @var WP_User|null Temporary storage used by restore_user_details()
29
+	 */
30
+	private $_user_before_update = null;
31 31
 
32
-    function __construct( GravityView_Edit_Entry $loader ) {
33
-        $this->loader = $loader;
34
-    }
32
+	function __construct( GravityView_Edit_Entry $loader ) {
33
+		$this->loader = $loader;
34
+	}
35 35
 
36 36
 	/**
37 37
 	 * @since 1.11
38 38
 	 */
39 39
 	public function load() {
40 40
 
41
-        /**
42
-	     * @filter `gravityview/edit_entry/user_registration/trigger_update` Choose whether to update user information via User Registration add-on when an entry is updated?
43
-	     * @since 1.11
44
-	     * @param boolean $boolean Whether to trigger update on user registration (default: true)
45
-	     */
46
-        if( apply_filters( 'gravityview/edit_entry/user_registration/trigger_update', true ) ) {
47
-            add_action( 'gravityview/edit_entry/after_update' , array( $this, 'update_user' ), 10, 2 );
48
-
49
-            // last resort in case the current user display name don't match any of the defaults
50
-            add_action( 'gform_user_updated', array( $this, 'restore_display_name' ), 10, 4 );
51
-        }
52
-    }
53
-
54
-    /**
55
-     * Update the WordPress user profile based on the GF User Registration create feed
56
-     *
57
-     * @since 1.11
58
-     *
59
-     * @param array $form Gravity Forms form array
60
-     * @param string $entry_id Gravity Forms entry ID
61
-     * @return void
62
-     */
63
-    public function update_user( $form = array(), $entry_id = 0 ) {
64
-
65
-        if( !class_exists( 'GFAPI' ) || !class_exists( 'GFUser' ) || empty( $entry_id ) ) {
66
-            return;
67
-        }
68
-
69
-        // support for GF User Registration 3.x
70
-        $gf_user_3 =  class_exists('GF_User_Registration') ? true : false;
71
-
72
-        if( $gf_user_3 ) {
73
-            $gf_user_registration = GF_User_Registration::get_instance();
74
-        }
75
-
76
-        $entry = GFAPI::get_entry( $entry_id );
77
-
78
-	    /**
79
-	     * @filter `gravityview/edit_entry/user_registration/entry` Modify entry details before updating the user via User Registration add-on
80
-	     * @since 1.11
81
-	     * @param array $entry Gravity Forms entry
82
-	     * @param array $form Gravity Forms form
83
-	     */
84
-        $entry = apply_filters( 'gravityview/edit_entry/user_registration/entry', $entry, $form );
85
-
86
-        /**
87
-         * @since 1.14
88
-         */
89
-        if( $gf_user_3 ) {
90
-            $config = $gf_user_registration->get_single_submission_feed( $entry, $form );
91
-        } else {
92
-            $config = GFUser::get_active_config( $form, $entry );
93
-        }
94
-
95
-        /**
96
-         * @filter `gravityview/edit_entry/user_registration/preserve_role` Keep the current user role or override with the role defined in the Create feed
97
-         * @since 1.15
98
-         * @param[in,out] boolean $preserve_role Preserve current user role Default: true
99
-         * @param[in] array $config Gravity Forms User Registration feed configuration for the form
100
-         * @param[in] array $form Gravity Forms form array
101
-         * @param[in] array $entry Gravity Forms entry being edited
102
-         */
103
-        $preserve_role = apply_filters( 'gravityview/edit_entry/user_registration/preserve_role', true, $config, $form, $entry );
104
-
105
-        if( $preserve_role ) {
106
-            $config['meta']['role'] = 'gfur_preserve_role';
107
-        }
108
-
109
-        /**
110
-         * Make sure the current display name is not changed with the update user method.
111
-         * @since 1.15
112
-         */
113
-        $config['meta']['displayname'] = $this->match_current_display_name( $entry['created_by'] );
114
-
115
-
116
-        /**
117
-         * @filter `gravityview/edit_entry/user_registration/config` Modify the User Registration Addon feed configuration
118
-         * @since 1.14
119
-         * @param[in,out] array $config Gravity Forms User Registration feed configuration for the form
120
-         * @param[in] array $form Gravity Forms form array
121
-         * @param[in] array $entry Gravity Forms entry being edited
122
-         */
123
-        $config = apply_filters( 'gravityview/edit_entry/user_registration/config', $config, $form, $entry );
124
-
125
-
126
-        $feed_pos = $gf_user_3 ? 'meta/feedType' : 'meta/feed_type';
127
-        $is_create_feed = ( $config && rgars( $config, $feed_pos ) === 'create' );
128
-
129
-        // Only update if it's a create feed
130
-        if( ! $is_create_feed ) {
131
-            return;
132
-        }
133
-
134
-        // The priority is set to 3 so that default priority (10) will still override it
135
-        add_filter( 'send_password_change_email', '__return_false', 3 );
136
-        add_filter( 'send_email_change_email', '__return_false', 3 );
137
-
138
-        // Trigger the User Registration update user method
139
-        if( $gf_user_3 ) {
140
-            $gf_user_registration->update_user( $entry, $form, $config );
141
-        } else {
142
-            GFUser::update_user( $entry, $form, $config );
143
-        }
144
-
145
-
146
-        remove_filter( 'send_password_change_email', '__return_false', 3 );
147
-        remove_filter( 'send_email_change_email', '__return_false', 3 );
148
-
149
-    }
150
-
151
-    /**
152
-     * Calculate the user display name format
153
-     *
154
-     * @since 1.15
155
-     *
156
-     * @param int $user_id WP User ID
157
-     * @return string Display name format as used inside Gravity Forms User Registration
158
-     */
159
-    public function match_current_display_name( $user_id ) {
160
-
161
-        $user = get_userdata( $user_id );
162
-
163
-        $names = $this->generate_display_names( $user );
164
-
165
-        $format = array_search( $user->display_name, $names, true );
166
-
167
-        // In case we can't find the current display name format, or it is the 'nickname' format (which Gravity Forms doesn't support)
168
-        //   trigger last resort method at the 'gform_user_updated' hook
169
-        if( false === $format || 'nickname' === $format ) {
170
-            $this->_user_before_update = $user;
171
-            $format = 'nickname';
172
-        }
173
-
174
-        return $format;
175
-
176
-    }
177
-
178
-    /**
179
-     * Generate an array of all the user display names possibilities
180
-     *
181
-     * @since 1.15
182
-     *
183
-     * @param object $profileuser WP_User object
184
-     * @return array List all the possible display names for a certain User object
185
-     */
186
-    public function generate_display_names( $profileuser ) {
187
-
188
-        $public_display = array();
189
-        $public_display['nickname']  = $profileuser->nickname;
190
-        $public_display['username']  = $profileuser->user_login;
191
-
192
-        if ( !empty($profileuser->first_name) )
193
-            $public_display['firstname'] = $profileuser->first_name;
194
-
195
-        if ( !empty($profileuser->last_name) )
196
-            $public_display['lastname'] = $profileuser->last_name;
197
-
198
-        if ( !empty($profileuser->first_name) && !empty($profileuser->last_name) ) {
199
-            $public_display['firstlast'] = $profileuser->first_name . ' ' . $profileuser->last_name;
200
-            $public_display['lastfirst'] = $profileuser->last_name . ' ' . $profileuser->first_name;
201
-        }
202
-
203
-        $public_display = array_map( 'trim', $public_display );
204
-        $public_display = array_unique( $public_display );
205
-
206
-        return $public_display;
207
-    }
208
-
209
-
210
-    /**
211
-     * Restore the Display Name and roles of a user after being updated by Gravity Forms User Registration Addon
212
-     *
213
-     * @see GFUser::update_user()
214
-     * @param int $user_id WP User ID that was updated by Gravity Forms User Registration Addon
215
-     * @param array $config Gravity Forms User Registration Addon form feed configuration
216
-     * @param array $entry The Gravity Forms entry that was just updated
217
-     * @param string $password User password
218
-     * @return void
219
-     */
220
-    public function restore_display_name( $user_id = 0, $config = array(), $entry = array(), $password = '' ) {
221
-
222
-        /**
223
-         * @filter `gravityview/edit_entry/restore_display_name` Whether display names should be restored to before updating an entry.
224
-         * Otherwise, display names will be reset to the format specified in Gravity Forms User Registration "Update" feed
225
-         * @since 1.14.4
226
-         * @param boolean $restore_display_name Restore Display Name? Default: true
227
-         */
228
-        $restore_display_name = apply_filters( 'gravityview/edit_entry/restore_display_name', true );
229
-
230
-        $is_update_feed = ( $config && rgars( $config, 'meta/feed_type') === 'update' );
231
-
232
-        /**
233
-         * Don't restore display name:
234
-         *   - either disabled,
235
-         *   - or it is an Update feed (we only care about Create feed)
236
-         *   - or we don't need as we found the correct format before updating user.
237
-         * @since 1.14.4
238
-         */
239
-        if( ! $restore_display_name || $is_update_feed || is_null( $this->_user_before_update ) ) {
240
-            return;
241
-        }
242
-
243
-        $user_after_update = get_userdata( $user_id );
244
-
245
-        $restored_user = $user_after_update;
246
-
247
-	    // Restore previous display_name
248
-        $restored_user->display_name = $this->_user_before_update->display_name;
249
-
250
-	    // Don't have WP update the password.
251
-	    unset( $restored_user->data->user_pass, $restored_user->user_pass );
252
-
253
-        /**
254
-         * Modify the user data after updated by Gravity Forms User Registration but before restored by GravityView
255
-         * @since 1.14
256
-         * @param WP_User $restored_user The user with restored details about to be updated by wp_update_user()
257
-         * @param WP_User $user_before_update The user before being updated by Gravity Forms User Registration
258
-         * @param WP_User $user_after_update The user after being updated by Gravity Forms User Registration
259
-         * @param array   $entry The Gravity Forms entry that was just updated
260
-         */
261
-        $restored_user = apply_filters( 'gravityview/edit_entry/user_registration/restored_user', $restored_user, $this->_user_before_update, $user_after_update, $entry );
262
-
263
-        $updated = wp_update_user( $restored_user );
264
-
265
-        if( is_wp_error( $updated ) ) {
266
-            do_action('gravityview_log_error', __METHOD__ . sprintf( ' - There was an error updating user #%d details', $user_id ), $updated );
267
-        } else {
268
-            do_action('gravityview_log_debug', __METHOD__ . sprintf( ' - User #%d details restored', $user_id ) );
269
-        }
270
-
271
-        $this->_user_before_update = null;
272
-
273
-        unset( $updated, $restored_user, $user_after_update );
274
-    }
41
+		/**
42
+		 * @filter `gravityview/edit_entry/user_registration/trigger_update` Choose whether to update user information via User Registration add-on when an entry is updated?
43
+		 * @since 1.11
44
+		 * @param boolean $boolean Whether to trigger update on user registration (default: true)
45
+		 */
46
+		if( apply_filters( 'gravityview/edit_entry/user_registration/trigger_update', true ) ) {
47
+			add_action( 'gravityview/edit_entry/after_update' , array( $this, 'update_user' ), 10, 2 );
48
+
49
+			// last resort in case the current user display name don't match any of the defaults
50
+			add_action( 'gform_user_updated', array( $this, 'restore_display_name' ), 10, 4 );
51
+		}
52
+	}
53
+
54
+	/**
55
+	 * Update the WordPress user profile based on the GF User Registration create feed
56
+	 *
57
+	 * @since 1.11
58
+	 *
59
+	 * @param array $form Gravity Forms form array
60
+	 * @param string $entry_id Gravity Forms entry ID
61
+	 * @return void
62
+	 */
63
+	public function update_user( $form = array(), $entry_id = 0 ) {
64
+
65
+		if( !class_exists( 'GFAPI' ) || !class_exists( 'GFUser' ) || empty( $entry_id ) ) {
66
+			return;
67
+		}
68
+
69
+		// support for GF User Registration 3.x
70
+		$gf_user_3 =  class_exists('GF_User_Registration') ? true : false;
71
+
72
+		if( $gf_user_3 ) {
73
+			$gf_user_registration = GF_User_Registration::get_instance();
74
+		}
75
+
76
+		$entry = GFAPI::get_entry( $entry_id );
77
+
78
+		/**
79
+		 * @filter `gravityview/edit_entry/user_registration/entry` Modify entry details before updating the user via User Registration add-on
80
+		 * @since 1.11
81
+		 * @param array $entry Gravity Forms entry
82
+		 * @param array $form Gravity Forms form
83
+		 */
84
+		$entry = apply_filters( 'gravityview/edit_entry/user_registration/entry', $entry, $form );
85
+
86
+		/**
87
+		 * @since 1.14
88
+		 */
89
+		if( $gf_user_3 ) {
90
+			$config = $gf_user_registration->get_single_submission_feed( $entry, $form );
91
+		} else {
92
+			$config = GFUser::get_active_config( $form, $entry );
93
+		}
94
+
95
+		/**
96
+		 * @filter `gravityview/edit_entry/user_registration/preserve_role` Keep the current user role or override with the role defined in the Create feed
97
+		 * @since 1.15
98
+		 * @param[in,out] boolean $preserve_role Preserve current user role Default: true
99
+		 * @param[in] array $config Gravity Forms User Registration feed configuration for the form
100
+		 * @param[in] array $form Gravity Forms form array
101
+		 * @param[in] array $entry Gravity Forms entry being edited
102
+		 */
103
+		$preserve_role = apply_filters( 'gravityview/edit_entry/user_registration/preserve_role', true, $config, $form, $entry );
104
+
105
+		if( $preserve_role ) {
106
+			$config['meta']['role'] = 'gfur_preserve_role';
107
+		}
108
+
109
+		/**
110
+		 * Make sure the current display name is not changed with the update user method.
111
+		 * @since 1.15
112
+		 */
113
+		$config['meta']['displayname'] = $this->match_current_display_name( $entry['created_by'] );
114
+
115
+
116
+		/**
117
+		 * @filter `gravityview/edit_entry/user_registration/config` Modify the User Registration Addon feed configuration
118
+		 * @since 1.14
119
+		 * @param[in,out] array $config Gravity Forms User Registration feed configuration for the form
120
+		 * @param[in] array $form Gravity Forms form array
121
+		 * @param[in] array $entry Gravity Forms entry being edited
122
+		 */
123
+		$config = apply_filters( 'gravityview/edit_entry/user_registration/config', $config, $form, $entry );
124
+
125
+
126
+		$feed_pos = $gf_user_3 ? 'meta/feedType' : 'meta/feed_type';
127
+		$is_create_feed = ( $config && rgars( $config, $feed_pos ) === 'create' );
128
+
129
+		// Only update if it's a create feed
130
+		if( ! $is_create_feed ) {
131
+			return;
132
+		}
133
+
134
+		// The priority is set to 3 so that default priority (10) will still override it
135
+		add_filter( 'send_password_change_email', '__return_false', 3 );
136
+		add_filter( 'send_email_change_email', '__return_false', 3 );
137
+
138
+		// Trigger the User Registration update user method
139
+		if( $gf_user_3 ) {
140
+			$gf_user_registration->update_user( $entry, $form, $config );
141
+		} else {
142
+			GFUser::update_user( $entry, $form, $config );
143
+		}
144
+
145
+
146
+		remove_filter( 'send_password_change_email', '__return_false', 3 );
147
+		remove_filter( 'send_email_change_email', '__return_false', 3 );
148
+
149
+	}
150
+
151
+	/**
152
+	 * Calculate the user display name format
153
+	 *
154
+	 * @since 1.15
155
+	 *
156
+	 * @param int $user_id WP User ID
157
+	 * @return string Display name format as used inside Gravity Forms User Registration
158
+	 */
159
+	public function match_current_display_name( $user_id ) {
160
+
161
+		$user = get_userdata( $user_id );
162
+
163
+		$names = $this->generate_display_names( $user );
164
+
165
+		$format = array_search( $user->display_name, $names, true );
166
+
167
+		// In case we can't find the current display name format, or it is the 'nickname' format (which Gravity Forms doesn't support)
168
+		//   trigger last resort method at the 'gform_user_updated' hook
169
+		if( false === $format || 'nickname' === $format ) {
170
+			$this->_user_before_update = $user;
171
+			$format = 'nickname';
172
+		}
173
+
174
+		return $format;
175
+
176
+	}
177
+
178
+	/**
179
+	 * Generate an array of all the user display names possibilities
180
+	 *
181
+	 * @since 1.15
182
+	 *
183
+	 * @param object $profileuser WP_User object
184
+	 * @return array List all the possible display names for a certain User object
185
+	 */
186
+	public function generate_display_names( $profileuser ) {
187
+
188
+		$public_display = array();
189
+		$public_display['nickname']  = $profileuser->nickname;
190
+		$public_display['username']  = $profileuser->user_login;
191
+
192
+		if ( !empty($profileuser->first_name) )
193
+			$public_display['firstname'] = $profileuser->first_name;
194
+
195
+		if ( !empty($profileuser->last_name) )
196
+			$public_display['lastname'] = $profileuser->last_name;
197
+
198
+		if ( !empty($profileuser->first_name) && !empty($profileuser->last_name) ) {
199
+			$public_display['firstlast'] = $profileuser->first_name . ' ' . $profileuser->last_name;
200
+			$public_display['lastfirst'] = $profileuser->last_name . ' ' . $profileuser->first_name;
201
+		}
202
+
203
+		$public_display = array_map( 'trim', $public_display );
204
+		$public_display = array_unique( $public_display );
205
+
206
+		return $public_display;
207
+	}
208
+
209
+
210
+	/**
211
+	 * Restore the Display Name and roles of a user after being updated by Gravity Forms User Registration Addon
212
+	 *
213
+	 * @see GFUser::update_user()
214
+	 * @param int $user_id WP User ID that was updated by Gravity Forms User Registration Addon
215
+	 * @param array $config Gravity Forms User Registration Addon form feed configuration
216
+	 * @param array $entry The Gravity Forms entry that was just updated
217
+	 * @param string $password User password
218
+	 * @return void
219
+	 */
220
+	public function restore_display_name( $user_id = 0, $config = array(), $entry = array(), $password = '' ) {
221
+
222
+		/**
223
+		 * @filter `gravityview/edit_entry/restore_display_name` Whether display names should be restored to before updating an entry.
224
+		 * Otherwise, display names will be reset to the format specified in Gravity Forms User Registration "Update" feed
225
+		 * @since 1.14.4
226
+		 * @param boolean $restore_display_name Restore Display Name? Default: true
227
+		 */
228
+		$restore_display_name = apply_filters( 'gravityview/edit_entry/restore_display_name', true );
229
+
230
+		$is_update_feed = ( $config && rgars( $config, 'meta/feed_type') === 'update' );
231
+
232
+		/**
233
+		 * Don't restore display name:
234
+		 *   - either disabled,
235
+		 *   - or it is an Update feed (we only care about Create feed)
236
+		 *   - or we don't need as we found the correct format before updating user.
237
+		 * @since 1.14.4
238
+		 */
239
+		if( ! $restore_display_name || $is_update_feed || is_null( $this->_user_before_update ) ) {
240
+			return;
241
+		}
242
+
243
+		$user_after_update = get_userdata( $user_id );
244
+
245
+		$restored_user = $user_after_update;
246
+
247
+		// Restore previous display_name
248
+		$restored_user->display_name = $this->_user_before_update->display_name;
249
+
250
+		// Don't have WP update the password.
251
+		unset( $restored_user->data->user_pass, $restored_user->user_pass );
252
+
253
+		/**
254
+		 * Modify the user data after updated by Gravity Forms User Registration but before restored by GravityView
255
+		 * @since 1.14
256
+		 * @param WP_User $restored_user The user with restored details about to be updated by wp_update_user()
257
+		 * @param WP_User $user_before_update The user before being updated by Gravity Forms User Registration
258
+		 * @param WP_User $user_after_update The user after being updated by Gravity Forms User Registration
259
+		 * @param array   $entry The Gravity Forms entry that was just updated
260
+		 */
261
+		$restored_user = apply_filters( 'gravityview/edit_entry/user_registration/restored_user', $restored_user, $this->_user_before_update, $user_after_update, $entry );
262
+
263
+		$updated = wp_update_user( $restored_user );
264
+
265
+		if( is_wp_error( $updated ) ) {
266
+			do_action('gravityview_log_error', __METHOD__ . sprintf( ' - There was an error updating user #%d details', $user_id ), $updated );
267
+		} else {
268
+			do_action('gravityview_log_debug', __METHOD__ . sprintf( ' - User #%d details restored', $user_id ) );
269
+		}
270
+
271
+		$this->_user_before_update = null;
272
+
273
+		unset( $updated, $restored_user, $user_after_update );
274
+	}
275 275
 
276 276
 } //end class
Please login to merge, or discard this patch.
includes/admin/metaboxes/views/data-source.php 1 patch
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@
 block discarded – undo
1 1
 <?php
2 2
 /**
3
- * @package GravityView
4
- * @subpackage Gravityview/admin/metaboxes/views
5
- * @since 1.8
6
- * @global WP_Post $post
7
- */
3
+		 * @package GravityView
4
+		 * @subpackage Gravityview/admin/metaboxes/views
5
+		 * @since 1.8
6
+		 * @global WP_Post $post
7
+		 */
8 8
 
9 9
 
10 10
 // Use nonce for verification
Please login to merge, or discard this patch.
includes/extensions/delete-entry/class-delete-entry.php 1 patch
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -228,7 +228,7 @@  discard block
 block discarded – undo
228 228
 
229 229
 		self::getInstance()->set_entry( $entry );
230 230
 
231
-        $base = GravityView_API::directory_link( $post_id, true );
231
+		$base = GravityView_API::directory_link( $post_id, true );
232 232
 
233 233
 		if( empty( $base ) ) {
234 234
 			do_action( 'gravityview_log_error', __METHOD__ . ' - Post ID does not exist: '.$post_id );
@@ -238,13 +238,13 @@  discard block
 block discarded – undo
238 238
 		// Use the slug instead of the ID for consistent security
239 239
 		$entry_slug = GravityView_API::get_entry_slug( $entry['id'], $entry );
240 240
 
241
-        $view_id = empty( $view_id ) ? gravityview_get_view_id() : $view_id;
241
+		$view_id = empty( $view_id ) ? gravityview_get_view_id() : $view_id;
242 242
 
243 243
 		$actionurl = add_query_arg( array(
244 244
 			'action'	=> 'delete',
245 245
 			'entry_id'		=> $entry_slug,
246 246
 			'gvid' => $view_id,
247
-            'view_id' => $view_id,
247
+			'view_id' => $view_id,
248 248
 		), $base );
249 249
 
250 250
 		$url = wp_nonce_url( $actionurl, 'delete_'.$entry_slug, 'delete' );
@@ -415,7 +415,7 @@  discard block
 block discarded – undo
415 415
 				 * @action `gravityview/delete-entry/deleted` Triggered when an entry is deleted
416 416
 				 * @since 1.16.4
417 417
 				 * @param  int $entry_id ID of the Gravity Forms entry
418
-				*/
418
+				 */
419 419
 				do_action( 'gravityview/delete-entry/deleted', $entry_id );
420 420
 			}
421 421
 
Please login to merge, or discard this patch.