Passed
Push — fix/bugherd-fixes ( 8123a6...95a54c )
by Virginia
03:56
created

lsx_blockusers_init()   A

Complexity

Conditions 6
Paths 2

Size

Total Lines 4
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 1 Features 0
Metric Value
cc 6
eloc 3
c 1
b 1
f 0
nc 2
nop 0
dl 0
loc 4
rs 9.2222
1
<?php
2
/**
3
 * LSX functions and definitions - Integrations - Extras
4
 *
5
 * @package    lsx
6
 * @subpackage extras
7
 */
8
9
if ( ! defined( 'ABSPATH' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
10
	exit;
11
}
12
13
/**
14
 * Enable shortcode for text widget.
15
 *
16
 * @package    lsx
17
 * @subpackage extras
18
 */
19
add_filter( 'widget_text', 'shortcode_unautop' );
20
add_filter( 'widget_text', 'do_shortcode' );
21
22
if ( ! function_exists( 'lsx_kses_allowed_html' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
23
24
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$allowedtags" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$context" missing
Loading history...
25
	 * Enable extra attributes (srcset, sizes) in img tag.
26
	 *
27
	 * @package    lsx
28
	 * @subpackage extras
29
	 */
30
	function lsx_kses_allowed_html( $allowedtags, $context ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
31
		$allowedtags['img']['srcset'] = true;
32
		$allowedtags['img']['sizes']  = true;
33
34
		$allowedtags['input']['name']  = true;
35
		$allowedtags['input']['type']  = true;
36
		$allowedtags['input']['value'] = true;
37
		$allowedtags['input']['class'] = true;
38
		$allowedtags['input']['id']    = true;
39
		$allowedtags['script']['type'] = true;
40
		return $allowedtags;
41
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
42
43
endif;
44
45
add_filter( 'wp_kses_allowed_html', 'lsx_kses_allowed_html', 10, 2 );
46
47
if ( ! function_exists( 'lsx_body_class' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
48
49
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$classes" missing
Loading history...
50
	 * Add and remove body_class() classes.
51
	 *
52
	 * @package    lsx
53
	 * @subpackage extras
54
	 */
55
	function lsx_body_class( $classes ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
56
		global $post;
57
58
		$header_layout = get_theme_mod( 'lsx_header_layout', 'inline' );
59
		$classes[]     = 'header-' . $header_layout;
60
61
		$mobile_header_layout = get_theme_mod( 'lsx_header_mobile_layout', 'navigation-bar' );
62
		$classes[]            = 'mobile-header-' . $mobile_header_layout;
63
64
		if ( isset( $post ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
65
			$classes[] = $post->post_name;
66
		}
67
68
		if ( class_exists( 'LSX_Banners' ) && empty( apply_filters( 'lsx_banner_plugin_disable', false ) ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
69
			$post_types = array( 'page', 'post' );
70
			$post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types );
71
72
			$img_group = get_post_meta( $post->ID, 'image_group', true );
73
74
			if ( is_singular( $post_types ) && ! empty( $img_group ) && is_array( $img_group ) && ! empty( $img_group['banner_image'] ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
75
				$classes[] = 'page-has-banner';
76
			}
77
78
			if ( is_singular( $post_types ) && empty( $img_group['banner_image'] ) && ( ! has_post_thumbnail( $post->ID ) ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
79
				$classes[] = 'page-has-no-banner';
80
			}
81
		}
82
83
		if ( function_exists( 'tour_operator' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
84
			$post_types = array( 'page', 'post' );
85
86
			$classes[] = 'to-active';
87
		}
88
89
		if ( has_nav_menu( 'top-menu' ) || has_nav_menu( 'top-menu-left' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
90
			$classes[] = 'has-top-menu';
91
		}
92
93
		$fixed_header = get_theme_mod( 'lsx_header_fixed', false );
94
95
		if ( false !== $fixed_header ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
96
			$classes[] = 'top-menu-fixed';
97
		}
98
99
		$search_form = get_theme_mod( 'lsx_header_search', false );
100
101
		if ( false !== $search_form ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
102
			$classes[] = 'has-header-search';
103
		}
104
105
		$register_enabled = get_option( 'users_can_register', false );
106
		if ( ( $register_enabled ) && is_page( 'my-account' ) && is_singular() ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
107
			$classes[] = 'register-enabled';
108
		}
109
110
		return $classes;
111
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
112
113
endif;
114
115
add_filter( 'body_class', 'lsx_body_class' );
116
117
if ( ! function_exists( 'lsx_embed_wrap' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
118
119
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$cache" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$url" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$attr" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$post_id" missing
Loading history...
120
	 * Wrap embedded media as suggested by Readability.
121
	 *
122
	 * @package    lsx
123
	 * @subpackage extras
124
	 *
125
	 * @link https://gist.github.com/965956
126
	 * @link http://www.readability.com/publishers/guidelines#publisher
127
	 */
128
	function lsx_embed_wrap( $cache, $url, $attr = '', $post_id = '' ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
129
		if ( false !== strpos( $cache, '<iframe' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
130
			return '<div class="entry-content-asset">' . $cache . '</div>';
131
		}
132
133
		return $cache;
134
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
135
136
endif;
137
138
add_filter( 'embed_oembed_html', 'lsx_embed_wrap', 10, 4 );
139
140
if ( ! function_exists( 'lsx_remove_self_closing_tags' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
141
142
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$input" missing
Loading history...
143
	 * Remove unnecessary self-closing tags.
144
	 *
145
	 * @package    lsx
146
	 * @subpackage extras
147
	 */
148
	function lsx_remove_self_closing_tags( $input ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
149
		return str_replace( ' />', '>', $input );
150
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
151
152
endif;
153
154
add_filter( 'get_avatar', 'lsx_remove_self_closing_tags' ); // <img />
155
add_filter( 'comment_id_fields', 'lsx_remove_self_closing_tags' ); // <input />
156
add_filter( 'post_thumbnail_html', 'lsx_remove_self_closing_tags' ); // <img />
157
158
if ( ! function_exists( 'lsx_is_element_empty' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
159
160
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$element" missing
Loading history...
161
	 * Checks if a Nav $element is empty or not.
162
	 *
163
	 * @package    lsx
164
	 * @subpackage extras
165
	 */
166
	function lsx_is_element_empty( $element ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
167
		$element = trim( $element );
168
		return empty( $element ) ? false : true;
169
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
170
171
endif;
172
173
if ( ! function_exists( 'lsx_get_thumbnail' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
174
175
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$size" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$image_src" missing
Loading history...
176
	 * return the responsive images.
0 ignored issues
show
Coding Style introduced by
Doc comment short description must start with a capital letter
Loading history...
177
	 *
178
	 * @package    lsx
179
	 * @subpackage extras
180
	 */
181
	function lsx_get_thumbnail( $size, $image_src = false ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
182
		global $wp_version;
183
184
		if ( false === $image_src ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
185
			$post_id           = get_the_ID();
186
			$post_thumbnail_id = get_post_thumbnail_id( $post_id );
0 ignored issues
show
Bug introduced by
It seems like $post_id can also be of type false; however, parameter $post of get_post_thumbnail_id() does only seem to accept WP_Post|integer, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

186
			$post_thumbnail_id = get_post_thumbnail_id( /** @scrutinizer ignore-type */ $post_id );
Loading history...
187
			if ( empty( $post_thumbnail_id ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
188
				$post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id );
189
			}
190
		} elseif ( false !== $image_src ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
191
			if ( is_numeric( $image_src ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
192
				$post_thumbnail_id = $image_src;
193
			} else {
194
				$post_thumbnail_id = lsx_get_attachment_id_from_src( $image_src );
195
				if ( empty( $post_thumbnail_id ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
196
					$post_thumbnail_id = apply_filters( 'lsx_get_thumbnail_post_placeholder_id', $post_thumbnail_id, $post_id );
197
				}
198
			}
199
		}
200
201
		$size      = apply_filters( 'lsx_thumbnail_size', $size );
202
		$img       = '';
203
		$lazy_img  = '';
204
		$image_url = '';
205
206
		if ( 'lsx-thumbnail-single' === $size || 'lsx-thumbnail-wide' === $size || 'lsx-thumbnail-square' === $size || 'thumbnail' === $size ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
207
			$srcset = false;
208
			if ( ( ( 'team' === get_post_type() ) || ( 'testimonial' === get_post_type() ) ) && is_search() ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
209
				$img = get_the_post_thumbnail_url( get_the_ID(), 'lsx-thumbnail-wide' );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $post of get_the_post_thumbnail_url() does only seem to accept WP_Post|integer, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

209
				$img = get_the_post_thumbnail_url( /** @scrutinizer ignore-type */ get_the_ID(), 'lsx-thumbnail-wide' );
Loading history...
210
			} else {
211
				$temp_img = wp_get_attachment_image_src( $post_thumbnail_id, $size );
212
				if ( ! empty( $temp_img ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
213
					$img = $temp_img[0];
214
				}
215
			}
216
		} else {
217
			$srcset = true;
218
			$img    = wp_get_attachment_image_srcset( $post_thumbnail_id, $size );
219
220
			$temp_lazy = wp_get_attachment_image_src( $post_thumbnail_id, $size );
221
			if ( ! empty( $temp_lazy ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
222
				$lazy_img = $temp_lazy[0];
223
			}
224
225
			if ( empty( $img ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
226
				$srcset = false;
227
				if ( ! empty( $lazy_img ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
228
					$img = $lazy_img;
229
				}
230
			}
231
		}
232
233
		if ( '' !== $img ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
Coding Style introduced by
Blank line found at start of control structure
Loading history...
234
235
			$image_url = $img;
236
237
			$img = '<img title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive" ';
238
239
			if ( version_compare( $wp_version, '5.5', '>=' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
240
				$img = '<img loading="lazy" title="' . the_title_attribute( 'echo=0' ) . '" alt="' . the_title_attribute( 'echo=0' ) . '" class="attachment-responsive wp-post-image lsx-responsive wp-lazy" ';
241
			}
242
243
			if ( $srcset ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
244
				$img .= 'srcset="' . esc_attr( $image_url ) . '" ';
245
			} else {
246
				$img .= 'src="' . esc_url( $image_url ) . '" ';
247
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
248
			$img .= '/>';
249
250
			if ( ! version_compare( $wp_version, '5.5', '>=' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
251
				$img = apply_filters( 'lsx_lazyload_filter_images', $img );
252
				$img = apply_filters( 'lsx_lazyload_slider_images', $img, $post_thumbnail_id, $size, $srcset, $image_url );
253
			}
254
		}
255
256
		return $img;
257
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
258
259
endif;
260
261
if ( ! function_exists( 'lsx_thumbnail' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
262
263
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$size" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$image_src" missing
Loading history...
264
	 * Output the Resonsive Images.
265
	 *
266
	 * @package    lsx
267
	 * @subpackage extras
268
	 */
269
	function lsx_thumbnail( $size = 'thumbnail', $image_src = false ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
270
		echo wp_kses_post( lsx_get_thumbnail( $size, $image_src ) );
271
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
272
273
endif;
274
275
if ( ! function_exists( 'lsx_get_attachment_id_from_src' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
276
277
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$image_src" missing
Loading history...
278
	 * Gets the attachments ID from the src.
279
	 *
280
	 * @package    lsx
281
	 * @subpackage extras
282
	 */
283
	function lsx_get_attachment_id_from_src( $image_src ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
284
		$post_id = wp_cache_get( $image_src, 'lsx_get_attachment_id_from_src' );
285
286
		if ( false === $post_id ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
287
			global $wpdb;
288
			$post_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE guid='%s' LIMIT 1", $image_src ) );
0 ignored issues
show
introduced by
Usage of a direct database call is discouraged.
Loading history...
introduced by
Simple placeholders should not be quoted in the query string in $wpdb->prepare(). Found: '%s'.
Loading history...
289
			wp_cache_set( $image_src, $post_id, 'lsx_get_attachment_id_from_src', 3600 );
290
		}
291
292
		return $post_id;
293
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
294
295
endif;
296
297
if ( ! function_exists( 'lsx_page_banner' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
298
299
	/**
300
	 * Add Featured Image as Banner on Single Pages.
301
	 *
302
	 * @package    lsx
303
	 * @subpackage extras
304
	 */
305
	function lsx_page_banner() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
306
		if ( true === apply_filters( 'lsx_page_banner_disable', false ) ) {
0 ignored issues
show
Unused Code introduced by
The call to __return_true() has too many arguments starting with false. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

306
		if ( true === /** @scrutinizer ignore-call */ apply_filters( 'lsx_page_banner_disable', false ) ) {

This check compares calls to functions or methods with their respective definitions. If the call has more arguments than are defined, it raises an issue.

If a function is defined several times with a different number of parameters, the check may pick up the wrong definition and report false positives. One codebase where this has been known to happen is Wordpress. Please note the @ignore annotation hint above.

Loading history...
introduced by
The condition true === apply_filters('...banner_disable', false) is always true.
Loading history...
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
307
			return;
308
		}
309
310
		$post_types = array( 'page', 'post' );
311
		$post_types = apply_filters( 'lsx_allowed_post_type_banners', $post_types );
312
313
		if ( is_singular( $post_types ) && has_post_thumbnail() ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
314
			$bg_image = '';
315
316
			if ( has_post_thumbnail() ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
317
				$temp_bg_image = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'full' );
318
				if ( ! empty( $temp_bg_image ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
319
					$bg_image = $temp_bg_image[0];
320
				}
321
			}
322
323
			if ( '' !== $bg_image ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
324
				?>
325
					<div class="page-banner-wrap">
326
						<div class="page-banner">
327
							<?php lsx_banner_inner_top(); ?>
328
329
							<div class="page-banner-image" style="background-image:url(<?php echo esc_attr( $bg_image ); ?>);"></div>
330
331
							<div class="container">
332
								<header class="page-header">
333
									<h1 class="page-title"><?php the_title(); ?></h1>
334
									<?php lsx_banner_content(); ?>
335
								</header>
336
							</div>
337
338
							<?php lsx_banner_inner_bottom(); ?>
339
						</div>
340
					</div>
341
				<?php
342
			endif;
343
		endif;
344
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
345
346
endif;
347
348
add_filter( 'lsx_banner_disable', 'lsx_disable_banner_for_blocks' );
349
add_filter( 'lsx_global_header_disable', 'lsx_disable_banner_for_blocks' );
350
351
352
if ( ! function_exists( 'lsx_disable_banner_for_blocks' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
353
354
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$disable" missing
Loading history...
355
	 * Disable the Banner if the page is using Blocks
356
	 *
357
	 * @package    lsx
358
	 * @subpackage extras
359
	 *
360
	 * @param  $disable boolean
0 ignored issues
show
Coding Style introduced by
Missing parameter name
Loading history...
361
	 * @return boolean
362
	 */
363
	function lsx_disable_banner_for_blocks( $disable ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
364
		$queried_object = get_queried_object_id();
365
		$show_on_front  = get_option( 'show_on_front' );
366
367
		if ( 'page' === $show_on_front && (int) get_option( 'page_for_posts' ) === $queried_object ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
368
			return $disable;
369
		}
370
371
		if ( function_exists( 'has_blocks' ) && has_blocks() && ( ! is_archive() ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
372
			$disable = true;
373
		}
374
375
		// Single projects will still have banners.
376
		if ( function_exists( 'has_blocks' ) && has_blocks() && ( is_singular( 'project' ) ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
377
			$disable = false;
378
		}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
379
		return $disable;
380
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
381
382
endif;
383
384
add_action( 'lsx_header_after', 'lsx_page_banner' );
385
386
if ( ! function_exists( 'lsx_form_submit_button' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
387
388
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$button" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$form" missing
Loading history...
389
	 * filter the Gravity Forms button type.
0 ignored issues
show
Coding Style introduced by
Doc comment short description must start with a capital letter
Loading history...
390
	 *
391
	 * @package    lsx
392
	 * @subpackage extras
393
	 *
394
	 * @param  $button String
0 ignored issues
show
Coding Style introduced by
Missing parameter name
Loading history...
395
	 * @param  $form   Object
0 ignored issues
show
Coding Style introduced by
Missing parameter name
Loading history...
396
	 * @return String
397
	 */
398
	function lsx_form_submit_button( $button, $form ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
399
		return "<button class='btn btn-primary' id='gform_submit_button_{$form["id"]}'><span>Submit</span></button>";
400
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
401
402
endif;
403
404
add_filter( 'gform_submit_button', 'lsx_form_submit_button', 10, 2 );
405
406
if ( ! function_exists( 'lsx_excerpt_more' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
407
408
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$more" missing
Loading history...
409
	 * Replaces the excerpt "more" text by a link.
410
	 *
411
	 * @package    lsx
412
	 * @subpackage extras
413
	 */
414
	function lsx_excerpt_more( $more ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
415
		return '...';
416
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
417
418
endif;
419
420
add_filter( 'excerpt_more', 'lsx_excerpt_more' );
421
422
if ( ! function_exists( 'lsx_the_excerpt_filter' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
423
424
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$excerpt" missing
Loading history...
425
	 * Add a continue reading link to the excerpt.
426
	 *
427
	 * @package    lsx
428
	 * @subpackage extras
429
	 */
430
	function lsx_the_excerpt_filter( $excerpt ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
Coding Style introduced by
Expected 0 blank lines after opening function brace; 1 found
Loading history...
431
432
		$post_formats = array(
433
			'aside'   => 'aside',
434
			'gallery' => 'gallery',
435
			'link'    => 'link',
436
			'image'   => 'image',
437
			'quote'   => 'quote',
438
			'status'  => 'status',
439
			'video'   => 'video',
440
			'audio'   => 'audio',
441
		);
442
443
		$show_full_content = has_post_format( apply_filters( 'lsx_the_excerpt_filter_post_types', $post_formats ) );
444
445
		if ( ! $show_full_content ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
446
			if ( '' !== $excerpt && ! stristr( $excerpt, 'moretag' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
447
				$pagination = wp_link_pages(
448
					array(
449
						'before'      => '<div class="lsx-postnav-wrapper"><div class="lsx-postnav">',
450
						'after'       => '</div></div>',
451
						'link_before' => '<span>',
452
						'link_after'  => '</span>',
453
						'echo'        => 0,
454
					)
455
				);
456
457
				if ( ! empty( $pagination ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
458
					$excerpt .= $pagination;
459
				} else {
460
					$excerpt_more = '<p><a class="moretag" href="' . esc_url( get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>';
0 ignored issues
show
Bug introduced by
It seems like get_permalink() can also be of type false; however, parameter $url of esc_url() does only seem to accept string, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

460
					$excerpt_more = '<p><a class="moretag" href="' . esc_url( /** @scrutinizer ignore-type */ get_permalink() ) . '">' . esc_html__( 'Read More', 'lsx' ) . '</a></p>';
Loading history...
461
					$excerpt .= apply_filters( 'excerpt_more_p', $excerpt_more );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 5 spaces but found 1 space

This check looks for multiple assignments in successive lines of code. It will report an issue if the operators are not in a straight line.

To visualize

$a = "a";
$ab = "ab";
$abc = "abc";

will produce issues in the first and second line, while this second example

$a   = "a";
$ab  = "ab";
$abc = "abc";

will produce no issues.

Loading history...
462
				}
463
			}
464
		}
465
466
		return $excerpt;
467
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
468
469
endif;
470
471
add_filter( 'the_excerpt', 'lsx_the_excerpt_filter', 1, 20 );
472
473
if ( ! function_exists( 'lsx_full_width_widget_classes' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
474
475
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$params" missing
Loading history...
476
	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
477
	 *
478
	 * @package    lsx
479
	 * @subpackage extras
480
	 */
481
	function lsx_full_width_widget_classes( $params ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
482
		if ( is_admin() ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
483
			return $params;
484
		}
485
486
		global $wp_registered_widgets;
487
488
		$widget_id   = $params[0]['widget_id'];
489
		$widget_name = $params[0]['widget_name'];
490
491
		if ( 'Text' === $widget_name ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
492
			$wp_registered_widgets[ $widget_id ]['original_callback'] = $wp_registered_widgets[ $widget_id ]['callback'];
493
			$wp_registered_widgets[ $widget_id ]['callback']          = 'lsx_full_width_widget_custom_callback';
494
		}
495
496
		return $params;
497
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
498
499
endif;
500
501
add_filter( 'dynamic_sidebar_params', 'lsx_full_width_widget_classes' );
502
503
if ( ! function_exists( 'lsx_full_width_widget_custom_callback' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
504
505
	/**
506
	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
507
	 *
508
	 * @package    lsx
509
	 * @subpackage extras
510
	 */
511
	function full_width_widget_custom_callback() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
512
		global $wp_registered_widgets;
513
514
		$original_callback_params = func_get_args();
515
		$widget_id                = $original_callback_params[0]['widget_id'];
516
517
		$original_callback                               = $wp_registered_widgets[ $widget_id ]['original_callback'];
518
		$wp_registered_widgets[ $widget_id ]['callback'] = $original_callback;
519
520
		$widget_id_base = $wp_registered_widgets[ $widget_id ]['callback'][0]->id_base;
521
522
		$widget_classname = '';
523
524
		if ( is_callable( $original_callback ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
525
			ob_start();
526
			call_user_func_array( $original_callback, $original_callback_params );
527
			$widget_output = ob_get_clean();
528
529
			echo wp_kses_post( apply_filters( 'lsx_widget_output', $widget_output, $widget_id_base, $widget_classname, $widget_id ) );
530
		}
531
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
532
533
endif;
534
535
if ( ! function_exists( 'lsx_full_width_widget_output' ) ) :
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
536
537
	/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$widget_output" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$widget_id_base" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$widget_id" missing
Loading history...
538
	 * Filter sidebar widget params, to add the widget_lsx_full_width_alt or widget_lsx_full_width classes to the text widget.
539
	 *
540
	 * @package    lsx
541
	 * @subpackage extras
542
	 */
543
	function lsx_full_width_widget_output( $widget_output, $widget_id_base, $widget_id ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
544
		if ( 'text' === $widget_id_base ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
545
			if ( false !== strpos( $widget_output, '<div class="lsx-full-width-alt">' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
546
				$widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width_alt"', $widget_output );
547
			} elseif ( false !== strpos( $widget_output, '<div class="lsx-full-width">' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
548
				$widget_output = str_replace( 'class="widget widget_text"', 'class="widget widget_text widget_lsx_full_width"', $widget_output );
549
			}
550
		}
551
552
		return $widget_output;
553
	}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
554
555
endif;
556
557
add_filter( 'lsx_widget_output', 'lsx_full_width_widget_output', 10, 3 );
558
559
/**
560
 * Check if the content has a restricted post format that needs to show a full excerpt.
561
 */
562
function lsx_post_format_force_content_on_list() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
563
	$post_formats = apply_filters( 'lsx_post_format_force_content_on_list',
0 ignored issues
show
Coding Style introduced by
The opening parenthesis of a multi-line function call should be the last content on the line.
Loading history...
564
		array(
565
			'video' => 'video',
566
			'audio' => 'audio',
567
			'quote' => 'quote',
568
			'link'  => 'link',
569
		)
570
	);
571
	$return       = false;
572
	if ( ! has_post_format( $post_formats ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
573
		$return = true;
574
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
575
	return $return;
576
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
577
578
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$classes" missing
Loading history...
579
 * Remove the Hentry Class Every
580
 */
581
function lsx_remove_hentry( $classes ) {
582
	if ( 'post' !== get_post_type() ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
583
		$classes = array_diff( $classes, array( 'hentry' ) );
584
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
585
	return $classes;
586
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
587
add_filter( 'post_class', 'lsx_remove_hentry' );
588
589
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$content" missing
Loading history...
590
 * Strip Excerpts.
591
 */
592
function lsx_strip_excerpt( $content ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
593
	if ( is_search() || is_archive() || ( is_blog_installed() && ! is_single() && ! is_page() ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
594
		$content = strip_shortcodes( $content );
595
		$content = str_replace( ']]>', ']]&gt;', $content );
596
		$content = strip_tags( $content );
0 ignored issues
show
introduced by
strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.
Loading history...
597
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
598
	return $content;
599
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
600
add_filter( 'the_content', 'lsx_strip_excerpt' );
601
602
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$is_enabled" missing
Loading history...
Coding Style Documentation introduced by
Doc comment for parameter "$post_type" missing
Loading history...
603
 * Disable Gutenberg for LSX Custom Post Types.
604
 */
605
function lsx_disable_gutenberg_product_type( $is_enabled, $post_type ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
606
	if ( 'testimonial' === $post_type || 'team' === $post_type || 'project' === $post_type ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
607
		return false;
608
	}
609
610
	return $is_enabled;
611
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
612
add_filter( 'gutenberg_add_edit_link_for_post_type', 'lsx_disable_gutenberg_product_type', 10, 2 );
613
614
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$crumbs" missing
Loading history...
615
 * Add the "Blog" link to the breadcrumbs
616
 *
617
 * @param $crumbs
0 ignored issues
show
Coding Style introduced by
Missing parameter name
Loading history...
618
 * @return array
619
 */
620
function lsx_breadcrumbs_blog_link( $crumbs ) {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
Coding Style introduced by
Expected 0 blank lines after opening function brace; 1 found
Loading history...
621
622
	$show_on_front = get_option( 'show_on_front' );
623
624
	if ( 'page' === $show_on_front && ( is_category() || is_tag() ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
Coding Style introduced by
Blank line found at start of control structure
Loading history...
625
626
		$blog_page = get_option( 'page_for_posts' );
627
		if ( false !== $blog_page && '' !== $blog_page ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
Coding Style introduced by
Blank line found at start of control structure
Loading history...
628
629
			$new_crumbs    = array();
630
			$new_crumbs[0] = $crumbs[0];
631
632
			if ( function_exists( 'woocommerce_breadcrumb' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
633
				$new_crumbs[1] = array(
634
					0 => get_the_title( $blog_page ),
635
					1 => get_permalink( $blog_page ),
636
				);
637
			} else {
638
				$new_crumbs[1] = array(
639
					'text' => get_the_title( $blog_page ),
640
					'url'  => get_permalink( $blog_page ),
641
				);
642
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
643
			$new_crumbs[2] = $crumbs[1];
644
			$crumbs        = $new_crumbs;
645
0 ignored issues
show
Coding Style introduced by
Blank line found at end of control structure
Loading history...
646
		}
647
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
648
	return $crumbs;
649
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
650
add_filter( 'wpseo_breadcrumb_links', 'lsx_breadcrumbs_blog_link', 30, 1 );
651
add_filter( 'woocommerce_get_breadcrumb', 'lsx_breadcrumbs_blog_link', 30, 1 );
652
653
/**
654
 * Cover template custom styles
655
 *
656
 * @return void
657
 */
658
function lsx_cover_template_custom_enqueue() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
Coding Style introduced by
Expected 0 blank lines after opening function brace; 1 found
Loading history...
659
660
	if ( ! is_page_template( 'page-templates/template-cover.php' ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
661
		return;
662
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
663
	$color_overlay_classes = '';
664
665
	$cover_text_color = get_theme_mod( 'lsx_cover_template_overlay_text_color' );
666
667
	$color_overlay_opacity  = get_theme_mod( 'lsx_cover_template_overlay_opacity' );
668
	$color_overlay_opacity  = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity;
669
	$color_overlay_opacity  = $color_overlay_opacity / 100;
670
	$color_overlay_classes .= $color_overlay_opacity;
671
672
	$custom_css       = ".page-template-template-cover .entry-header .entry-title, .post-template-template-cover .entry-header .entry-title, .post-template-template-cover #primary #main .entry-categories-inner a, .page-template-template-cover #primary #main .entry-header *, .post-template-template-cover #primary #main .entry-header * {color: {$cover_text_color};} .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .page-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay, .post-template-template-cover .cover-header .cover-header-inner-wrapper .cover-header-inner .cover-color-overlay::before {opacity: {$color_overlay_opacity};}";
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned correctly; expected 1 space but found 7 spaces

This check looks for improperly formatted assignments.

Every assignment must have exactly one space before and one space after the equals operator.

To illustrate:

$a = "a";
$ab = "ab";
$abc = "abc";

will have no issues, while

$a   = "a";
$ab  = "ab";
$abc = "abc";

will report issues in lines 1 and 2.

Loading history...
673
	wp_add_inline_style( 'lsx_main', $custom_css );
674
675
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
676
add_action( 'wp_enqueue_scripts', 'lsx_cover_template_custom_enqueue' );
677
678
/**
679
 * Determines if the request is an REST API request.
680
 *
681
 * @return bool True if it's a REST API request, false otherwise.
682
 */
683
function lsx_is_rest_api_request() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
684
	$rest_helper = LSX_Rest_Helper::get_instance();
685
	return $rest_helper->is_rest_api_request();
686
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
687
688
/**
689
 * Remove lazy loading on Custom logo.
690
 *
691
 * @param [type] $attributes
0 ignored issues
show
Documentation Bug introduced by
The doc comment [type] at position 0 could not be parsed: Unknown type name '[' at position 0 in [type].
Loading history...
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
692
 * @return void
0 ignored issues
show
Coding Style introduced by
Function return type is void, but function contains return statement
Loading history...
693
 */
694
function lsx_custom_logo_attributes( $attributes ) {
695
	$attributes['loading'] = 'eager';
696
	return $attributes;
697
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
698
add_filter( 'get_custom_logo_image_attributes', 'lsx_custom_logo_attributes' );
699
700
/**
701
 * Redirects non admin users to home.
702
 *
703
 * @return void
704
 */
705
function lsx_blockusers_init() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
706
	if ( is_admin() && ( current_user_can( 'teacher' ) || current_user_can( 'customer' ) ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
707
		wp_safe_redirect( home_url() );
708
		exit;
0 ignored issues
show
Best Practice introduced by
Using exit here is not recommended.

In general, usage of exit should be done with care and only when running in a scripting context like a CLI script.

Loading history...
709
	}
710
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
Coding Style introduced by
Expected 2 blank lines after function; 0 found
Loading history...
711
add_action( 'init', 'lsx_blockusers_init' );
712