Completed
Push — master ( 2ddace...f4e16f )
by Zack
07:25 queued 01:59
created

GravityView_Admin::connected_form_warning()   B

Complexity

Conditions 5
Paths 7

Size

Total Lines 27
Code Lines 18

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 5
eloc 18
nc 7
nop 1
dl 0
loc 27
rs 8.439
c 0
b 0
f 0
1
<?php
0 ignored issues
show
Coding Style Compatibility introduced by
For compatibility and reusability of your code, PSR1 recommends that a file should introduce either new symbols (like classes, functions, etc.) or have side-effects (like outputting something, or including other files), but not both at the same time. The first symbol is defined on line 3 and the first side effect is on line 366.

The PSR-1: Basic Coding Standard recommends that a file should either introduce new symbols, that is classes, functions, constants or similar, or have side effects. Side effects are anything that executes logic, like for example printing output, changing ini settings or writing to a file.

The idea behind this recommendation is that merely auto-loading a class should not change the state of an application. It also promotes a cleaner style of programming and makes your code less prone to errors, because the logic is not spread out all over the place.

To learn more about the PSR-1, please see the PHP-FIG site on the PSR-1.

Loading history...
2
3
class GravityView_Admin {
4
5
	function __construct() {
0 ignored issues
show
Best Practice introduced by
It is generally recommended to explicitly declare the visibility for methods.

Adding explicit visibility (private, protected, or public) is generally recommend to communicate to other developers how, and from where this method is intended to be used.

Loading history...
6
7
		if( ! is_admin() ) { return; }
8
9
		// If Gravity Forms isn't active or compatibile, stop loading
10
		if( false === GravityView_Compatibility::is_valid() ) {
11
			return;
12
		}
13
14
		$this->include_required_files();
15
		$this->add_hooks();
16
	}
17
18
	/**
19
	 * @since 1.15
20
	 * @return void
21
	 */
22
	private function include_required_files() {
23
24
		// Migrate Class
25
		require_once( GRAVITYVIEW_DIR . 'includes/class-gravityview-migrate.php' );
26
27
		// Don't load tooltips if on Gravity Forms, otherwise it overrides translations
28
		if( class_exists( 'GFCommon' ) && class_exists( 'GFForms' ) && !GFForms::is_gravity_page() ) {
0 ignored issues
show
introduced by
Expected 1 space after "!"; 0 found
Loading history...
29
			require_once( GFCommon::get_base_path() . '/tooltips.php' );
30
		}
31
32
		require_once( GRAVITYVIEW_DIR . 'includes/admin/metaboxes/class-gravityview-admin-metaboxes.php' );
33
		require_once( GRAVITYVIEW_DIR . 'includes/admin/entry-list.php' );
34
		require_once( GRAVITYVIEW_DIR . 'includes/class-gravityview-change-entry-creator.php' );
35
36
		/** @since 1.15 **/
37
		require_once( GRAVITYVIEW_DIR . 'includes/admin/class-gravityview-support-port.php' );
38
39
		/** @since 1.6 */
40
		require_once( GRAVITYVIEW_DIR . 'includes/class-gravityview-admin-duplicate-view.php' );
41
42
		/** @since 1.17 */
43
		require_once( GRAVITYVIEW_DIR . 'includes/admin/class-gravityview-admin-no-conflict.php' );
44
	}
45
46
	/**
47
	 * @since 1.7.5
48
	 * @return void
49
	 */
50
	private function add_hooks() {
51
52
		// Filter Admin messages
53
		add_filter( 'post_updated_messages', array( $this, 'post_updated_messages' ) );
54
		add_filter( 'bulk_post_updated_messages', array( $this, 'post_updated_messages' ) );
55
56
		add_filter( 'plugin_action_links_'. plugin_basename( GRAVITYVIEW_FILE ) , array( $this, 'plugin_action_links' ) );
57
58
		add_action( 'plugins_loaded', array( $this, 'backend_actions' ), 100 );
59
60
	}
61
62
	/**
63
	 * Get text for no views found.
64
	 *
65
	 * @since 1.18 Moved to GravityView_Admin
66
	 *
67
	 * @return string HTML message with no container tags.
68
	 */
69
	public static function no_views_text() {
70
		
71
		if ( isset( $_REQUEST['post_status'] ) && 'trash' === $_REQUEST['post_status'] ) {
0 ignored issues
show
introduced by
Detected access of super global var $_REQUEST, probably need manual inspection.
Loading history...
introduced by
Detected usage of a non-sanitized input variable: $_REQUEST
Loading history...
72
			return __( 'No Views found in Trash', 'gravityview' );
73
		} elseif( ! empty( $_GET['s'] ) ) {
0 ignored issues
show
introduced by
Detected access of super global var $_GET, probably need manual inspection.
Loading history...
74
			return __( 'No Views found.', 'gravityview' );
75
		}
76
77
		// Floaty the Astronaut says "oi"
78
		$image = self::get_floaty();
79
80
		if ( GVCommon::has_cap( 'edit_gravityviews' ) ) {
81
			$output = sprintf( esc_attr__( "%sYou don't have any active views. Let&rsquo;s go %screate one%s!%s\n\nIf you feel like you're lost in space and need help getting started, check out the %sGetting Started%s page.", 'gravityview' ), '<h3>', '<a href="' . admin_url( 'post-new.php?post_type=gravityview' ) . '">', '</a>', '</h3>', '<a href="' . admin_url( 'edit.php?post_type=gravityview&page=gv-getting-started' ) . '">', '</a>' );
82
		} else {
83
			$output = esc_attr__( 'There are no active Views', 'gravityview' );
84
		}
85
86
		return $image . wpautop( $output );
87
	}
88
89
	/**
90
	 * Display error HTML in Edit View when the form is in the trash or no longer exists in Gravity Forms
91
	 *
92
	 * @since 1.19
93
	 *
94
	 * @param int $form_id Gravity Forms
95
	 *
96
	 * @return void
97
	 */
98
	public static function connected_form_warning( $form_id = 0 ) {
99
100
		if ( ! is_int( $form_id ) ) {
101
			return;
102
		}
103
104
		$form_info = GFFormsModel::get_form( $form_id, true );
105
106
		$error = '';
107
		if ( $form_info->is_trash ) {
108
			$error = esc_html__( 'The connected form is in the trash.', 'gravityview' );
109
			$error .= ' ' . gravityview_get_link( admin_url( 'admin.php?page=gf_edit_forms&filter=trash' ), esc_html__( 'Restore the form from the trash', 'gravityview' ) );
110
			$error .= ' ' . esc_html__( 'or select another form.', 'gravityview' );
111
		} elseif ( empty( $form_info ) ) {
112
			$error = esc_html__( 'The form connected to this View no longer exists.', 'gravityview' );
113
			$error .= ' ' . esc_html__( 'Select another form as the data source for this View.', 'gravityview' );
114
		}
115
116
		if( $error ) {
117
			?>
118
			<div class="wp-dialog notice-warning inline error wp-clearfix">
119
				<?php echo gravityview_get_floaty(); ?>
0 ignored issues
show
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'gravityview_get_floaty'
Loading history...
120
				<h3><?php echo $error; ?></h3>
0 ignored issues
show
introduced by
Expected next thing to be a escaping function, not '$error'
Loading history...
121
			</div>
122
			<?php
123
		}
124
	}
125
126
	/**
127
	 * Function to launch admin objects
128
	 *
129
	 * @access public
130
	 * @return void
131
	 */
132
	public function backend_actions() {
133
134
		/** @define "GRAVITYVIEW_DIR" "../" */
135
		include_once( GRAVITYVIEW_DIR .'includes/admin/class.field.type.php' );
136
		include_once( GRAVITYVIEW_DIR .'includes/admin/class.render.settings.php' );
137
		include_once( GRAVITYVIEW_DIR .'includes/admin/class-gravityview-admin-view-item.php' );
138
		include_once( GRAVITYVIEW_DIR .'includes/admin/class-gravityview-admin-view-field.php' );
139
		include_once( GRAVITYVIEW_DIR .'includes/admin/class-gravityview-admin-view-widget.php' );
140
		include_once( GRAVITYVIEW_DIR .'includes/class-admin-views.php' );
141
		include_once( GRAVITYVIEW_DIR .'includes/class-admin-welcome.php' );
142
		include_once( GRAVITYVIEW_DIR .'includes/class-admin-add-shortcode.php' );
143
		include_once( GRAVITYVIEW_DIR .'includes/class-admin-approve-entries.php' );
144
145
		/**
146
		 * @action `gravityview_include_backend_actions` Triggered after all GravityView admin files are loaded
147
		 *
148
		 * Nice place to insert extensions' backend stuff
149
		 */
150
		do_action('gravityview_include_backend_actions');
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
151
	}
152
153
	/**
154
	 * Modify plugin action links at plugins screen
155
	 *
156
	 * @since 1.15 Added check for `gravityview_view_settings` and `gravityview_support_port` capabilities
157
	 * @access public
158
	 * @static
159
	 * @param array $links Array of action links under GravityView on the plugin page
160
	 * @return array Action links with Settings and Support included, if the user has the appropriate caps
161
	 */
162
	public static function plugin_action_links( $links ) {
163
164
		$actions = array();
165
166
		if( GVCommon::has_cap( 'gravityview_view_settings' ) ) {
167
			$actions[] = sprintf( '<a href="%s">%s</a>', admin_url( 'edit.php?post_type=gravityview&page=gravityview_settings' ), esc_html__( 'Settings', 'gravityview' ) );
168
		}
169
170
		if( GVCommon::has_cap( 'gravityview_support_port' ) ) {
171
			$actions[] = '<a href="http://docs.gravityview.co">' . esc_html__( 'Support', 'gravityview' ) . '</a>';
172
		}
173
174
		return array_merge( $actions, $links );
175
	}
176
177
	/**
178
	 * Get an image of our intrepid explorer friend
179
	 * @return string HTML image tag with floaty's cute mug on it
180
	 */
181
	public static function get_floaty() {
182
		return gravityview_get_floaty();
183
	}
184
185
	/**
186
	 * Filter Admin messages
187
	 *
188
	 * @param  array      $messages Existing messages
189
	 * @return array                Messages with GravityView views!
190
	 */
191
	function post_updated_messages( $messages, $bulk_counts = NULL ) {
0 ignored issues
show
Best Practice introduced by
It is generally recommended to explicitly declare the visibility for methods.

Adding explicit visibility (private, protected, or public) is generally recommend to communicate to other developers how, and from where this method is intended to be used.

Loading history...
Coding Style introduced by
TRUE, FALSE and NULL must be lowercase; expected null, but found NULL.
Loading history...
192
		global $post;
0 ignored issues
show
Compatibility Best Practice introduced by
Use of global functionality is not recommended; it makes your code harder to test, and less reusable.

Instead of relying on global state, we recommend one of these alternatives:

1. Pass all data via parameters

function myFunction($a, $b) {
    // Do something
}

2. Create a class that maintains your state

class MyClass {
    private $a;
    private $b;

    public function __construct($a, $b) {
        $this->a = $a;
        $this->b = $b;
    }

    public function myFunction() {
        // Do something
    }
}
Loading history...
193
194
		$post_id = get_the_ID();
195
196
		// By default, there will only be one item being modified.
197
		// When in the `bulk_post_updated_messages` filter, there will be passed a number
198
		// of modified items that will override this array.
199
		$bulk_counts = is_null( $bulk_counts ) ? array( 'updated' => 1 , 'locked' => 1 , 'deleted' => 1 , 'trashed' => 1, 'untrashed' => 1 ) : $bulk_counts;
0 ignored issues
show
introduced by
Expected 0 spaces between "1" and comma; 1 found
Loading history...
200
201
		// If we're starting fresh, a new form was created.
202
		// We should let the user know this is the case.
203
		$start_fresh = get_post_meta( $post_id, '_gravityview_start_fresh', true );
204
205
		$new_form_text = '';
206
207
		if( !empty( $start_fresh ) ) {
0 ignored issues
show
introduced by
Expected 1 space after "!"; 0 found
Loading history...
208
209
			// Get the form that was created
210
			$connected_form = gravityview_get_form_id( $post_id );
211
212
			if( !empty( $connected_form ) ) {
0 ignored issues
show
introduced by
Expected 1 space after "!"; 0 found
Loading history...
213
				$form = gravityview_get_form( $connected_form );
214
				$form_name = esc_attr( $form['title'] );
215
				$image = self::get_floaty();
216
				$new_form_text .= '<h3>'.$image.sprintf( __( 'A new form was created for this View: "%s"', 'gravityview' ), $form_name ).'</h3>';
217
				$new_form_text .=  sprintf( __( '%sThere are no entries for the new form, so the View will also be empty.%s To start collecting entries, you can add submissions through %sthe preview form%s and also embed the form on a post or page using this code: %s
0 ignored issues
show
introduced by
Expected 1 space after ".="; 2 found
Loading history...
218
219
					You can %sedit the form%s in Gravity Forms and the updated fields will be available here. Don&rsquo;t forget to %scustomize the form settings%s.
220
					', 'gravityview' ), '<strong>', '</strong>', '<a href="'.site_url( '?gf_page=preview&amp;id='.$connected_form ).'">', '</a>', '<code>[gravityform id="'.$connected_form.'" name="'.$form_name.'"]</code>', '<a href="'.admin_url( 'admin.php?page=gf_edit_forms&amp;id='.$connected_form ).'">', '</a>', '<a href="'.admin_url( 'admin.php?page=gf_edit_forms&amp;view=settings&amp;id='.$connected_form ).'">', '</a>');
0 ignored issues
show
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'site_url'
Loading history...
introduced by
Expected next thing to be a escaping function, not '$connected_form'
Loading history...
introduced by
Expected next thing to be a escaping function, not '$form_name'
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'admin_url'
Loading history...
221
				$new_form_text = wpautop( $new_form_text );
222
223
				delete_post_meta( $post_id, '_gravityview_start_fresh' );
224
			}
225
		}
226
227
		$messages['gravityview'] = array(
228
			0  => '', // Unused. Messages start at index 1.
229
			/* translators: %s and %s are HTML tags linking to the View on the website */
230
			1  => sprintf(__( 'View updated. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>'),
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
231
			/* translators: %s and %s are HTML tags linking to the View on the website */
232
			2  => sprintf(__( 'View updated. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>'),
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
233
			3  => __( 'View deleted.', 'gravityview' ),
234
			/* translators: %s and %s are HTML tags linking to the View on the website */
235
			4  => sprintf(__( 'View updated. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>'),
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
236
			/* translators: %s: date and time of the revision */
237
			5  => isset( $_GET['revision'] ) ? sprintf( __( 'View restored to revision from %s', 'gravityview' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
0 ignored issues
show
introduced by
Detected access of super global var $_GET, probably need manual inspection.
Loading history...
introduced by
Detected usage of a non-sanitized input variable: $_GET
Loading history...
238
			/* translators: %s and %s are HTML tags linking to the View on the website */
239
			6  => sprintf(__( 'View published. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>') . $new_form_text,
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
introduced by
Expected next thing to be a escaping function, not '$new_form_text'
Loading history...
240
			/* translators: %s and %s are HTML tags linking to the View on the website */
241
			7  => sprintf(__( 'View saved. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>') . $new_form_text,
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
introduced by
Expected next thing to be a escaping function, not '$new_form_text'
Loading history...
242
			8  => __( 'View submitted.', 'gravityview' ),
243
			9  => sprintf(
244
		        /* translators: Date and time the View is scheduled to be published */
245
				__( 'View scheduled for: %1$s.', 'gravityview' ),
246
				// translators: Publish box date format, see http://php.net/date
247
				date_i18n( __( 'M j, Y @ G:i', 'gravityview' ), strtotime( ( isset( $post->post_date ) ? $post->post_date : NULL )  ) )
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces before closing bracket; 2 found
Loading history...
Coding Style introduced by
TRUE, FALSE and NULL must be lowercase; expected null, but found NULL.
Loading history...
248
			) . $new_form_text,
0 ignored issues
show
introduced by
Expected next thing to be a escaping function, not '$new_form_text'
Loading history...
249
			/* translators: %s and %s are HTML tags linking to the View on the website */
250
			10  => sprintf(__( 'View draft updated. %sView on website.%s', 'gravityview' ), '<a href="'.get_permalink( $post_id ).'">', '</a>') . $new_form_text,
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected a sanitizing function (see Codex for 'Data Validation'), but instead saw 'get_permalink'
Loading history...
introduced by
Expected next thing to be a escaping function, not '$new_form_text'
Loading history...
251
252
			/**
253
			 * These apply to `bulk_post_updated_messages`
254
			 * @file wp-admin/edit.php
255
			 */
256
			'updated'   => _n( '%s View updated.', '%s Views updated.', $bulk_counts['updated'], 'gravityview' ),
257
			'locked'    => _n( '%s View not updated, somebody is editing it.', '%s Views not updated, somebody is editing them.', $bulk_counts['locked'], 'gravityview' ),
258
			'deleted'   => _n( '%s View permanently deleted.', '%s Views permanently deleted.', $bulk_counts['deleted'], 'gravityview' ),
259
			'trashed'   => _n( '%s View moved to the Trash.', '%s Views moved to the Trash.', $bulk_counts['trashed'], 'gravityview' ),
260
			'untrashed' => _n( '%s View restored from the Trash.', '%s Views restored from the Trash.', $bulk_counts['untrashed'], 'gravityview' ),
261
		);
262
263
		return $messages;
264
	}
265
266
267
	/**
268
	 * Get admin notices
269
	 * @deprecated since 1.12
270
	 * @return array
271
	 */
272
	public static function get_notices() {
273
		return GravityView_Admin_Notices::get_notices();
274
	}
275
276
	/**
277
	 * Add a notice to be displayed in the admin.
278
	 * @deprecated since 1.12
279
	 * @param array $notice Array with `class` and `message` keys. The message is not escaped.
280
	 */
281
	public static function add_notice( $notice = array() ) {
282
		GravityView_Admin_Notices::add_notice( $notice );
283
	}
284
285
	/**
286
	 * Check if Gravity Forms plugin is active and show notice if not.
287
	 *
288
	 * @deprecated since 1.12
289
	 * @see GravityView_Compatibility::get_plugin_status()
290
	 * @return boolean True: checks have been passed; GV is fine to run; False: checks have failed, don't continue loading
291
	 */
292
	public static function check_gravityforms() {
293
		return GravityView_Compatibility::check_gravityforms();
294
	}
295
296
	/**
297
	 * Check if specified plugin is active, inactive or not installed
298
	 *
299
	 * @deprecated since 1.12
300
	 * @see GravityView_Compatibility::get_plugin_status()
301
302
	 * @return boolean|string True: plugin is active; False: plugin file doesn't exist at path; 'inactive' it's inactive
303
	 */
304
	static function get_plugin_status( $location = '' ) {
0 ignored issues
show
Best Practice introduced by
It is generally recommended to explicitly declare the visibility for methods.

Adding explicit visibility (private, protected, or public) is generally recommend to communicate to other developers how, and from where this method is intended to be used.

Loading history...
305
		return GravityView_Compatibility::get_plugin_status( $location );
306
	}
307
308
	/**
309
	 * Is the current admin page a GravityView-related page?
310
	 *
311
	 * @todo Convert to use WP_Screen
312
	 * @param string $hook
313
	 * @param null|string $page Optional. String return value of page to compare against.
314
	 *
315
	 * @return bool|string|void If `false`, not a GravityView page. `true` if $page is passed and is the same as current page. Otherwise, the name of the page (`single`, `settings`, or `views`)
316
	 */
317
	static function is_admin_page( $hook = '', $page = NULL ) {
0 ignored issues
show
Best Practice introduced by
It is generally recommended to explicitly declare the visibility for methods.

Adding explicit visibility (private, protected, or public) is generally recommend to communicate to other developers how, and from where this method is intended to be used.

Loading history...
Coding Style introduced by
TRUE, FALSE and NULL must be lowercase; expected null, but found NULL.
Loading history...
318
		global $current_screen, $plugin_page, $pagenow, $post;
0 ignored issues
show
Compatibility Best Practice introduced by
Use of global functionality is not recommended; it makes your code harder to test, and less reusable.

Instead of relying on global state, we recommend one of these alternatives:

1. Pass all data via parameters

function myFunction($a, $b) {
    // Do something
}

2. Create a class that maintains your state

class MyClass {
    private $a;
    private $b;

    public function __construct($a, $b) {
        $this->a = $a;
        $this->b = $b;
    }

    public function myFunction() {
        // Do something
    }
}
Loading history...
319
320
		if( ! is_admin() ) { return false; }
321
322
		$is_page = false;
323
324
		$is_gv_screen = (!empty($current_screen) && isset($current_screen->post_type) && $current_screen->post_type === 'gravityview');
0 ignored issues
show
introduced by
Expected 1 space before "!"; 0 found
Loading history...
introduced by
Expected 1 space after "!"; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
325
326
		$is_gv_post_type_get = (isset($_GET['post_type']) && $_GET['post_type'] === 'gravityview');
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Detected access of super global var $_GET, probably need manual inspection.
Loading history...
introduced by
Detected usage of a non-sanitized input variable: $_GET
Loading history...
327
328
		$is_gv_settings_get = isset( $_GET['page'] ) && $_GET['page'] === 'gravityview_settings';
0 ignored issues
show
introduced by
Detected access of super global var $_GET, probably need manual inspection.
Loading history...
introduced by
Detected usage of a non-sanitized input variable: $_GET
Loading history...
329
330
		if( empty( $post ) && $pagenow === 'post.php' && !empty( $_GET['post'] ) ) {
0 ignored issues
show
introduced by
Found "=== '". Use Yoda Condition checks, you must
Loading history...
introduced by
Expected 1 space after "!"; 0 found
Loading history...
331
			$gv_post = get_post( intval( $_GET['post'] ) );
0 ignored issues
show
introduced by
Detected access of super global var $_GET, probably need manual inspection.
Loading history...
332
			$is_gv_post_type = (!empty($gv_post) && !empty($gv_post->post_type) && $gv_post->post_type === 'gravityview');
0 ignored issues
show
introduced by
Expected 1 space before "!"; 0 found
Loading history...
introduced by
Expected 1 space after "!"; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
333
		} else {
334
			$is_gv_post_type = (!empty($post) && !empty($post->post_type) && $post->post_type === 'gravityview');
0 ignored issues
show
introduced by
Expected 1 space before "!"; 0 found
Loading history...
introduced by
Expected 1 space after "!"; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
335
		}
336
337
		if( $is_gv_screen || $is_gv_post_type || $is_gv_post_type || $is_gv_post_type_get || $is_gv_settings_get ) {
338
339
			// $_GET `post_type` variable
0 ignored issues
show
Unused Code Comprehensibility introduced by
38% of this comment could be valid code. Did you maybe forget this after debugging?

Sometimes obsolete code just ends up commented out instead of removed. In this case it is better to remove the code once you have checked you do not need it.

The code might also have been commented out for debugging purposes. In this case it is vital that someone uncomments it again or your project may behave in very unexpected ways in production.

This check looks for comments that seem to be mostly valid code and reports them.

Loading history...
340
			if(in_array($pagenow, array( 'post.php' , 'post-new.php' )) ) {
0 ignored issues
show
introduced by
No space after opening parenthesis is prohibited
Loading history...
Coding Style introduced by
Expected 1 spaces after opening bracket; 0 found
Loading history...
Coding Style introduced by
Expected 1 spaces before closing bracket; 0 found
Loading history...
introduced by
Expected 0 spaces between "'post.php'" and comma; 1 found
Loading history...
341
				$is_page = 'single';
342
			} else if ( in_array( $plugin_page, array( 'gravityview_settings', 'gravityview_page_gravityview_settings' ) ) || ( !empty( $_GET['page'] ) && $_GET['page'] === 'gravityview_settings' ) ) {
0 ignored issues
show
introduced by
Found "=== '". Use Yoda Condition checks, you must
Loading history...
introduced by
Expected 1 space after "!"; 0 found
Loading history...
343
				$is_page = 'settings';
344
			} else {
345
				$is_page = 'views';
346
			}
347
		}
348
349
		/**
350
		 * @filter `gravityview_is_admin_page` Is the current admin page a GravityView-related page?
351
		 * @param[in,out] string|bool $is_page If false, no. If string, the name of the page (`single`, `settings`, or `views`)
352
		 * @param[in] string $hook The name of the page to check against. Is passed to the method.
353
		 */
354
		$is_page = apply_filters( 'gravityview_is_admin_page', $is_page, $hook );
355
356
		// If the current page is the same as the compared page
357
		if( !empty( $page ) ) {
0 ignored issues
show
introduced by
Expected 1 space after "!"; 0 found
Loading history...
358
			return $is_page === $page;
359
		}
360
361
		return $is_page;
362
	}
363
364
}
365
366
new GravityView_Admin;
367
368
/**
369
 * Alias for GravityView_Admin::is_admin_page()
370
 *
371
 * @see GravityView_Admin::is_admin_page
372
 *
373
 * @param string $hook
374
 * @param null|string $page Optional. String return value of page to compare against.
375
 *
376
 * @return bool|string|void If `false`, not a GravityView page. `true` if $page is passed and is the same as current page. Otherwise, the name of the page (`single`, `settings`, or `views`)
377
 */
378
function gravityview_is_admin_page($hook = '', $page = NULL) {
0 ignored issues
show
Coding Style introduced by
TRUE, FALSE and NULL must be lowercase; expected null, but found NULL.
Loading history...
379
	return GravityView_Admin::is_admin_page( $hook, $page );
380
}
381