Passed
Push — add/multiplan ( 15cba9...22afe1 )
by Virginia
04:24
created

lsx_health_plan_week_plan_block()   D

Complexity

Conditions 17
Paths 147

Size

Total Lines 78
Code Lines 59

Duplication

Lines 0
Ratio 0 %

Importance

Changes 6
Bugs 0 Features 0
Metric Value
cc 17
eloc 59
c 6
b 0
f 0
nc 147
nop 1
dl 0
loc 78
rs 4.825

How to fix   Long Method    Complexity   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
/**
3
 * LSX Health Plan Template Tags.
4
 *
5
 * @package lsx-health-plan
6
 */
7
8
/**
9
 * Outputs the warmup box on the single plan page.
10
*
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
11
* @return void
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
12
*/
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
13
function lsx_health_plan_warmup_box() {
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines before function; 1 found
Loading history...
14
	?>
15
	<div class="col-md-4" >
16
		<div class="lsx-health-plan-box">
17
			<h3 class="title warm-up-title title-lined"><?php esc_html_e( 'Your Warm-up', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'warm.svg' ); ?></h3>
18
			<div class="spacer"></div>
19
			<?php
20
			$intro_text = \lsx_health_plan\functions\get_option( 'warmup_intro', false );
21
			if ( false !== $intro_text ) {
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...
22
				?>
23
				<div class="excerpt">
24
					<p><?php echo wp_kses_post( $intro_text ); ?></p>
0 ignored issues
show
Bug introduced by
It seems like $intro_text can also be of type array; however, parameter $data of wp_kses_post() 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

24
					<p><?php echo wp_kses_post( /** @scrutinizer ignore-type */ $intro_text ); ?></p>
Loading history...
25
				</div>
26
				<?php
27
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
28
			$warm_up = \lsx_health_plan\functions\get_option( 'endpoint_warm_up', false );
29
			if ( false === $warm_up ) {
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...
30
				$warm_up = 'warm-up';
31
			}
32
			?>
33
			<a href="<?php the_permalink(); ?><?php echo esc_attr( $warm_up ); ?>/" class="btn"><?php esc_html_e( 'Start your warm-up', 'lsx-health-plan' ); ?></a>
34
		</div>
35
	</div>
36
<?php
37
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
38
39
/**
40
 * Outputs the workout box on the single plan page.
41
*
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
42
* @return void
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
43
*/
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
44
function lsx_health_plan_workout_box() {
45
	if ( ! post_type_exists( 'workout' ) ) {
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...
46
		return;
47
	}
48
	?>
49
	<div class="col-md-4" >
50
		<div class="lsx-health-plan-box">
51
			<h3 class="title work-out-title title-lined"><?php esc_html_e( 'Your Workout', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'work.svg' ); ?></h3>
52
			<div class="spacer"></div>
53
			<?php
54
			$intro_text = \lsx_health_plan\functions\get_option( 'workout_intro', false );
55
			if ( false !== $intro_text ) {
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...
56
				?>
57
				<div class="excerpt">
58
					<p><?php echo wp_kses_post( $intro_text ); ?></p>
0 ignored issues
show
Bug introduced by
It seems like $intro_text can also be of type array; however, parameter $data of wp_kses_post() 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

58
					<p><?php echo wp_kses_post( /** @scrutinizer ignore-type */ $intro_text ); ?></p>
Loading history...
59
				</div>
60
				<?php
61
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
62
			$workout = \lsx_health_plan\functions\get_option( 'endpoint_workout', false );
63
			if ( false === $workout ) {
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...
64
				$workout = 'workout';
65
			}
66
			?>
67
			<a href="<?php the_permalink(); ?><?php echo esc_attr( $workout ); ?>/" class="btn"><?php esc_html_e( 'Start your workout', 'lsx-health-plan' ); ?></a>
68
		</div>
69
	</div>
70
<?php
71
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
72
73
/**
74
 * Outputs the meal plan box on the single plan page.
75
*
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
76
* @return void
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
77
*/
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
78
function lsx_health_plan_meal_box() {
79
	if ( ! post_type_exists( 'meal' ) ) {
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...
80
		return;
81
	}
82
	?>
83
	<div class="col-md-4" >
84
		<div class="lsx-health-plan-box">
85
			<h3 class="title meal-plan-title title-lined"><?php esc_html_e( 'Your Meal Plan', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'meal.svg' ); ?></h3>
86
			<div class="spacer"></div>
87
			<?php
88
			$intro_text = \lsx_health_plan\functions\get_option( 'meal_plan_intro', false );
89
			if ( false !== $intro_text ) {
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
				?>
91
				<div class="excerpt">
92
					<p><?php echo wp_kses_post( $intro_text ); ?></p>
0 ignored issues
show
Bug introduced by
It seems like $intro_text can also be of type array; however, parameter $data of wp_kses_post() 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

92
					<p><?php echo wp_kses_post( /** @scrutinizer ignore-type */ $intro_text ); ?></p>
Loading history...
93
				</div>
94
				<?php
95
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
96
			$meal = \lsx_health_plan\functions\get_option( 'endpoint_meal', false );
97
			if ( false === $meal ) {
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...
98
				$meal = 'meal';
99
			}
100
			?>
101
			<a href="<?php the_permalink(); ?><?php echo esc_attr( $meal ); ?>/" class="btn"><?php esc_html_e( 'View your meal plan', 'lsx-health-plan' ); ?></a>
102
		</div>
103
	</div>
104
<?php
105
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
106
107
/**
108
 * Outputs the recipe box on the single plan page.
109
*
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
110
* @return void
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
111
*/
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
112
function lsx_health_plan_recipe_box() {
113
	if ( ! post_type_exists( 'recipe' ) ) {
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...
114
		return;
115
	}
116
	?>
117
	<div class="col-md-4" >
118
		<div class="lsx-health-plan-box">
119
			<h3 class="title recipes-title title-lined"><?php esc_html_e( 'Recipes', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'recipes.svg' ); ?></h3>
120
			<div class="spacer"></div>
121
			<?php
122
			$intro_text = \lsx_health_plan\functions\get_option( 'recipes_intro', false );
123
			if ( false !== $intro_text ) {
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...
124
				?>
125
				<div class="excerpt">
126
					<p><?php echo wp_kses_post( $intro_text ); ?></p>
0 ignored issues
show
Bug introduced by
It seems like $intro_text can also be of type array; however, parameter $data of wp_kses_post() 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

126
					<p><?php echo wp_kses_post( /** @scrutinizer ignore-type */ $intro_text ); ?></p>
Loading history...
127
				</div>
128
				<?php
129
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
130
			$recipes = \lsx_health_plan\functions\get_option( 'endpoint_recipe', false );
131
			if ( false === $recipes ) {
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...
132
				$recipes = 'recipes';
133
			}
134
			?>
135
			<a href="<?php the_permalink(); ?><?php echo esc_attr( $recipes ); ?>/" class="btn"><?php esc_html_e( 'View all recipes', 'lsx-health-plan' ); ?></a>
136
		</div>
137
	</div>
138
<?php
139
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
140
141
/**
142
 * Outputs the downloads box on the single plan page.
143
*
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
144
* @return void
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
145
*/
0 ignored issues
show
Coding Style introduced by
Expected 1 space(s) before asterisk; 0 found
Loading history...
146
function lsx_health_plan_downloads_box() {
147
	global $current_user;
148
	?>
149
	<div class="col-md-4 day-download-box" >
150
		<div class="lsx-health-plan-box">
151
			<h3 class="title downloads-title title-lined"><?php esc_html_e( 'Downloads', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'download.svg' ); ?></h3>
152
			<div class="spacer"></div>
153
			<div class="download-list">
154
				<ul>
155
					<?php
156
					$downloads = \lsx_health_plan\functions\get_downloads();
157
					if ( ! empty( $downloads ) ) {
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...
158
						foreach ( $downloads as $download ) {
0 ignored issues
show
Bug introduced by
The expression $downloads of type void is not traversable.
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...
159
							echo wp_kses_post( '<li><a href=""><i class="fa fa-file-pdf"></i>' . do_shortcode( '[download id="' . $download . '"]' ) . '</a></li>' );
160
						}
161
					}
162
					?>
163
				</ul>
164
			</div>
165
		</div>
166
	</div>
167
<?php
168
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
169
170
/**
171
 * outputs the dynamic classes for the nav tabs.
0 ignored issues
show
Coding Style introduced by
Doc comment short description must start with a capital letter
Loading history...
172
 *
173
 * @param string $tab
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
174
 * @return void
175
 */
176
function lsx_health_plan_nav_class( $tab = '' ) {
177
	$nav_classes = array();
178
	if ( function_exists( 'is_wc_endpoint_url' ) && 'edit-account' === $tab && is_wc_endpoint_url( 'edit-account' ) ) {
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...
179
		$nav_classes[] = 'active';
180
	} elseif ( lsx_health_plan_is_current_tab( $tab ) ) {
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...
181
		$nav_classes[] = 'active';
182
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
183
	if ( ! empty( $nav_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...
184
		echo wp_kses_post( implode( ' ', $nav_classes ) );
185
	}
186
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
187
188
/**
189
 * Outputs the my profile tabs
190
 *
191
 * @return void
192
 */
193
function lsx_health_plan_my_profile_tabs() {
194
	?>
195
	<div id="account-nav">
196
		<ul class="nav nav-pills">
197
			<li class="
198
			<?php
199
			if ( ( function_exists( 'is_wc_endpoint_url' ) && ! is_wc_endpoint_url( 'edit-account' ) ) || ! function_exists( 'is_wc_endpoint_url' ) ) {
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...
200
				echo esc_attr( 'active' );
201
			}
202
			?>
203
			"><a class="my-plan-tab" href="<?php the_permalink(); ?>"><?php esc_html_e( 'My Plans', 'lsx-health-plan' ); ?></a></li>
204
			<li class="
205
			<?php
206
			if ( function_exists( 'is_wc_endpoint_url' ) && is_wc_endpoint_url( 'edit-account' ) ) {
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
				echo esc_attr( 'active' );
208
			}
209
			?>
210
			"><a class="account-details-tab" href="<?php the_permalink(); ?>edit-account/"><?php esc_html_e( 'Account Details', 'lsx-health-plan' ); ?></a></li>
211
			<li class=""><a class="logout-tab" href="<?php echo esc_url( wp_logout_url( get_permalink() ) ); ?>"><?php esc_html_e( 'Logout', 'lsx-health-plan' ); ?></a></li>
0 ignored issues
show
Bug introduced by
It seems like get_permalink() can also be of type false; however, parameter $redirect of wp_logout_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

211
			<li class=""><a class="logout-tab" href="<?php echo esc_url( wp_logout_url( /** @scrutinizer ignore-type */ get_permalink() ) ); ?>"><?php esc_html_e( 'Logout', 'lsx-health-plan' ); ?></a></li>
Loading history...
212
		</ul>
213
	</div>
214
	<?php
215
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
216
217
/**
218
 * Outputs the my profile box
219
 *
220
 * @return void
221
 */
222
function lsx_health_plan_my_profile_box() {
223
	?>
224
	<div class="lsx-health-plan my-profile-block wp-block-cover alignfull">
225
		<div class="wp-block-cover__inner-container">
226
			<h2><?php esc_html_e( 'My Dashboard', 'lsx-health-plan' ); ?></h2>
227
			<section id="dashboard-card">
228
				<div class="profile-navigation">
229
					<div class="profile-photo">
230
					<?php
231
						global $current_user;
232
						get_current_user();
233
						echo get_avatar( $current_user->ID, 240 );
0 ignored issues
show
Bug introduced by
Are you sure get_avatar($current_user->ID, 240) of type false|string can be used in echo? ( Ignorable by Annotation )

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

233
						echo /** @scrutinizer ignore-type */ get_avatar( $current_user->ID, 240 );
Loading history...
234
						?>
235
					</div>
236
				</div>
237
				<div class="profile-details">
238
					<h1 class="title-lined has-text-color"><?php echo esc_html( $current_user->display_name ); ?></h1>
239
					<?php
240
					$disable_stats = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
241
					if ( 'on' !== $disable_stats ) {
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...
242
243
						$is_weight_disabled  = \lsx_health_plan\functions\get_option( 'disable_weight_checkbox', false );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 1 space but found 2 spaces

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...
244
						$is_height_disabled  = \lsx_health_plan\functions\get_option( 'disable_height_checkbox', false );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 1 space but found 2 spaces

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...
245
						$is_waist_disabled   = \lsx_health_plan\functions\get_option( 'disable_waist_checkbox', false );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 2 spaces but found 3 spaces

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...
246
						$is_bmi_disabled = \lsx_health_plan\functions\get_option( 'disable_bmi_checkbox', false );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 4 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...
247
248
						$weight = get_user_meta( get_current_user_id(), 'weight', true );
249
						$waist = get_user_meta( get_current_user_id(), 'waist', true );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 2 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...
250
						$height = get_user_meta( get_current_user_id(), 'height', true );
251
252
						$height_m = $height / 100;
253
254
						if ( 1 < $weight && 1 < $height_m ) {
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...
255
							$bmi = $weight / ( $height_m * $height_m );
256
							$bmi = number_format( $bmi, 1 );
257
						} else {
258
							$bmi = __( 'Add more data', 'lsx-health-plan' );
259
						}
260
261
						?>
262
263
						<div>
264
							<?php if ( 'on' !== $is_weight_disabled ) { ?>
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...
265
								<span><strong><?php esc_html_e( 'Weight:', 'lsx-health-plan' ); ?></strong>
266
								<?php
267
								if ( '' !== $weight ) {
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...
268
									echo wp_kses_post( $weight . ' kg' );
269
								} else {
270
									echo '/';
271
								}
272
								?>
273
								</span>
274
							<?php }
0 ignored issues
show
Coding Style introduced by
Opening PHP tag must be on a line by itself
Loading history...
Coding Style introduced by
No blank line found after control structure
Loading history...
275
							if ( 'on' !== $is_waist_disabled ) {
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
								<span><strong><?php esc_html_e( 'Waist:', 'lsx-health-plan' ); ?></strong>
278
								<?php
279
								if ( '' !== $waist ) {
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...
280
									echo wp_kses_post( $waist . ' cm' );
281
								} else {
282
									echo '/';
283
								}
284
								?>
285
								</span>
286
							<?php }
0 ignored issues
show
Coding Style introduced by
Opening PHP tag must be on a line by itself
Loading history...
Coding Style introduced by
No blank line found after control structure
Loading history...
287
							if ( 'on' !== $is_bmi_disabled ) {
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...
288
								?>
289
								<span><strong><?php esc_html_e( 'BMI:', 'lsx-health-plan' ); ?></strong>
290
								<?php
291
								if ( '' !== $bmi ) {
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...
292
									echo wp_kses_post( $bmi );
293
								} else {
294
									echo '/';
295
								}
296
								?>
297
								</span>
298
							<?php } ?>
299
						</div>
300
					<?php
301
					}
302
					?>
303
					<div class="edit-profile">
304
						<?php
305
						if ( function_exists( 'wc_get_page_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...
306
							$url_id = wc_get_page_id( 'myaccount' );
307
						} else {
308
							$url_id = '';
309
						}
310
						?>
311
						<a href="<?php echo esc_url( get_permalink( $url_id ) ); ?>edit-account/"><?php esc_html_e( 'Edit', 'lsx-health-plan' ); ?></a>
0 ignored issues
show
Bug introduced by
It seems like get_permalink($url_id) 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

311
						<a href="<?php echo esc_url( /** @scrutinizer ignore-type */ get_permalink( $url_id ) ); ?>edit-account/"><?php esc_html_e( 'Edit', 'lsx-health-plan' ); ?></a>
Loading history...
312
					</div>
313
				</div>
314
			</section>
315
		</div>
316
	</div>
317
	<?php
318
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
319
320
/**
321
 * Outputs the my profile list of plans box
322
 *
323
 * @return void
324
 */
325
function lsx_health_plan_all_plans_block() {
326
	global $post, $product;
327
328
	$args = array(
329
		'orderby'        => 'menu_order',
0 ignored issues
show
introduced by
Array double arrow not aligned correctly; expected 5 space(s) between "'orderby'" and double arrow, but found 8.
Loading history...
330
		'order'          => 'ASC',
0 ignored issues
show
introduced by
Array double arrow not aligned correctly; expected 7 space(s) between "'order'" and double arrow, but found 10.
Loading history...
331
		'post_type'      => 'plan',
0 ignored issues
show
introduced by
Array double arrow not aligned correctly; expected 3 space(s) between "'post_type'" and double arrow, but found 6.
Loading history...
332
		'nopagin'        => true,
0 ignored issues
show
introduced by
Array double arrow not aligned correctly; expected 5 space(s) between "'nopagin'" and double arrow, but found 8.
Loading history...
333
		'post_parent'    => 0,
0 ignored issues
show
introduced by
Array double arrow not aligned correctly; expected 1 space(s) between "'post_parent'" and double arrow, but found 4.
Loading history...
334
	);
335
336
	$product_ids = \lsx_health_plan\functions\woocommerce\get_membership_products();
337
	if ( ! empty( $product_ids ) ) {
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...
338
		$args['meta_query'] = array(
0 ignored issues
show
introduced by
Detected usage of meta_query, possible slow query.
Loading history...
339
			'relation' => 'OR',
340
			array(
341
				'key'     => '_plan_product_id',
342
				'value'   => $product_ids,
343
				'compare' => 'IN',
344
			),
345
			array(
346
				'key'     => '_plan_product_id',
347
				'compare' => 'NOT EXISTS',
348
			),
349
		);
350
	}
351
352
	$the_query = new WP_Query( $args );
353
	?>
354
	<div class="all-plans-block plan-grid block-all-plans-block">
355
		<div class="row">
356
			<?php
357
			if ( $the_query->have_posts() ) :
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...
358
				while ( $the_query->have_posts() ) :
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...
359
					$the_query->the_post();
360
					lsx_entry_before();
361
					$completed_class = '';
362
					$linked_product  = false;
363
					$restricted      = false;
364
					$product         = null;
365
					if ( \lsx_health_plan\functions\woocommerce\plan_has_products() ) {
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...
366
						$products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
367
						$linked_product = wc_get_product( $products[0] );
0 ignored issues
show
Bug introduced by
The function wc_get_product was not found. Maybe you did not declare it correctly or list all dependencies? ( Ignorable by Annotation )

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

367
						$linked_product = /** @scrutinizer ignore-call */ wc_get_product( $products[0] );
Loading history...
368
						$product        = $linked_product;
369
					}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
370
					if ( function_exists( 'wc_memberships_is_post_content_restricted' ) ) {
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...
371
						$restricted = wc_memberships_is_post_content_restricted( get_the_ID() ) && ! current_user_can( 'wc_memberships_view_restricted_post_content', get_the_ID() );
372
					}
373
374
					if ( lsx_health_plan_is_plan_complete() ) {
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...
375
						$completed_class = 'completed';
376
					}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
377
					$round_progress     = '';
378
					$completed_progress = '100';
379
					if ( false === $restricted ) {
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...
380
						$round_progress = round( \lsx_health_plan\functions\get_progress( get_the_ID() ), 0 );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $plan_id of lsx_health_plan\functions\get_progress() does only seem to accept 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

380
						$round_progress = round( \lsx_health_plan\functions\get_progress( /** @scrutinizer ignore-type */ get_the_ID() ), 0 );
Loading history...
381
					}
382
					?>
383
					<div class="col-xs-12 col-sm-6 col-md-4">
384
						<article class="lsx-slot lsx-hp-shadow <?php echo esc_html( 'progress-') . $round_progress; ?>">
0 ignored issues
show
Coding Style introduced by
Expected 1 spaces before closing parenthesis; 0 found
Loading history...
introduced by
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$round_progress'.
Loading history...
385
							<div class="plan-feature-img">
386
								<?php if ( (int)$completed_progress === (int)$round_progress ) { ?>
0 ignored issues
show
Coding Style introduced by
Expected 0 spaces after opening bracket; 1 found
Loading history...
Coding Style introduced by
Expected 1 space(s) after cast statement; 0 found
Loading history...
Coding Style introduced by
Expected 0 spaces before closing bracket; 1 found
Loading history...
387
									<span class="featured-plan"><?php lsx_get_svg_icon( 'icon-completed.svg' ); ?></span>
388
								<?php } ?>
389
								<a href="<?php echo esc_url( get_permalink() ); ?>">
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

389
								<a href="<?php echo esc_url( /** @scrutinizer ignore-type */ get_permalink() ); ?>">
Loading history...
390
								<?php
391
								$featured_image = get_the_post_thumbnail();
392
								if ( ! empty( $featured_image ) && '' !== $featured_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...
393
									the_post_thumbnail( 'lsx-thumbnail', array(
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...
Coding Style introduced by
For multi-line function calls, each argument should be on a separate line.

For a function calls that spawns multiple lines, the coding style suggests to split arguments to separate lines like this:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
);
Loading history...
394
										'class' => 'aligncenter',
395
									) );
0 ignored issues
show
Coding Style introduced by
For multi-line function calls, the closing parenthesis should be on a new line.

If a function call spawns multiple lines, the coding standard suggests to move the closing parenthesis to a new line:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
); // Closing parenthesis on a new line.
Loading history...
396
								} else {
397
									?>
398
									<img loading="lazy"  class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __FILE__ ) . '../assets/images/placeholder.jpg' ); ?>">
399
									<?php
400
								}
401
								?>
402
								</a>
403
							</div>
404
							<div class="content-box plan-content-box">
405
								<h3 class="plan id-<?php the_ID(); ?> <?php echo esc_attr( $completed_class ); ?>"><a href="<?php echo esc_url( get_permalink() ); ?>"><?php the_title(); ?></a></h3>
406
								<?php
407
									echo wp_kses_post( \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
0 ignored issues
show
Bug introduced by
hp_get_plan_type_meta($post) of type void is incompatible with the type string expected by parameter $data of wp_kses_post(). ( Ignorable by Annotation )

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

407
									echo wp_kses_post( /** @scrutinizer ignore-type */ \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
Loading history...
408
								?>
409
								<?php
410
								if ( false !== $linked_product && false !== $restricted ) {
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...
411
									echo wp_kses_post( $linked_product->get_price_html() );
412
								}
413
								?>
414
								<div class="excerpt">
415
									<?php
416
									if ( ! has_excerpt() ) {
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...
417
										$content = wp_trim_words( get_the_content(), 20 );
418
										$content = '<p>' . $content . '</pre>';
419
									} else {
420
										$content = apply_filters( 'the_excerpt', get_the_excerpt() );
421
									}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
422
									echo wp_kses_post( $content );
423
									?>
424
								</div>
425
								<?php
426
								if ( false === $restricted ) {
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...
427
									echo wp_kses_post( '<span class="progress"><progress class="bar" value="' . \lsx_health_plan\functions\get_progress( get_the_ID() ) . '" max="100"> ' . \lsx_health_plan\functions\get_progress( get_the_ID() ) . '% </progress><span>' . $round_progress . '%</span></span>' );
428
								}
429
								?>
430
							</div>
431
						</article>
432
					</div>
433
				<?php endwhile; ?>
434
			<?php endif; ?>
435
		</div>
436
		<?php wp_reset_postdata(); ?>
437
	</div>
438
439
<?php
440
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
441
442
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$args" missing
Loading history...
443
 * Outputs the my profile day view box
444
 *
445
 * @return void
446
 */
447
function lsx_health_plan_day_plan_block( $args = array() ) {
448
	$defaults = array(
449
		'plan' => '',
450
	);
451
	$args     = wp_parse_args( $args, $defaults );
452
453
	if ( isset( $args['plan'] ) && '' !== $args['plan'] && \lsx_health_plan\functions\plan\has_sections( $args['plan'] ) ) {
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...
454
		$sections = \lsx_health_plan\functions\plan\get_sections();
455
		?>
456
		<div class="daily-plan-block day-grid">
457
			<?php
458
			foreach ( $sections as $section_key => $section_values ) {
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...
459
				$defaults    = array(
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 5 spaces but found 4 spaces

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...
460
					'title' => __( 'Day', 'lsx-health-plan' ) . ' ' . ( $section_key + 1 ),
461
				);
462
				$section_args = wp_parse_args( $section_values, $defaults );
463
464
				$completed_class = '';
465
				if ( lsx_health_plan_is_day_complete() ) {
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...
466
					$completed_class = 'completed';
467
				}
468
				?>
469
				<a href="<?php echo esc_attr( \lsx_health_plan\functions\plan\get_permalink( $args['plan'], $section_args['title'] ) ); ?>" class="day id-<?php echo esc_attr( $section_key + 1 ); ?> <?php echo esc_attr( $completed_class ); ?>">
0 ignored issues
show
Bug introduced by
get_permalink($args['pla...$section_args['title']) of type array is incompatible with the type string expected by parameter $text of esc_attr(). ( Ignorable by Annotation )

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

469
				<a href="<?php echo esc_attr( /** @scrutinizer ignore-type */ \lsx_health_plan\functions\plan\get_permalink( $args['plan'], $section_args['title'] ) ); ?>" class="day id-<?php echo esc_attr( $section_key + 1 ); ?> <?php echo esc_attr( $completed_class ); ?>">
Loading history...
470
					<div class="plan-content"><?php echo esc_attr( $section_args['title'] ); ?></div>
471
				</a>
472
				<?php
473
			}
474
			?>
475
		</div>
476
		<?php
477
	}
478
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
479
480
/**
481
 * Outputs the my profile week view box
482
 *
483
 * @param  array $args An array of arguments.
484
 * @return void
485
 */
486
function lsx_health_plan_week_plan_block( $args = array() ) {
487
	$defaults = array(
488
		'show_downloads' => false,
489
		'plan'           => '',
490
	);
491
	$args     = wp_parse_args( $args, $defaults );
492
493
	if ( isset( $args['plan'] ) && '' !== $args['plan'] && \lsx_health_plan\functions\plan\has_sections( $args['plan'] ) ) {
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...
494
		$groups = \lsx_health_plan\functions\plan\get_sections( true );
495
496
		if ( ! empty( $groups ) ) {
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...
497
			$counter    = 1;
498
			$group_open = false;
499
500
			foreach ( $groups as $group_key => $sections ) {
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...
501
				$collapse_class = '';
502
				$group_title    = \lsx_health_plan\functions\plan\get_group_title( $sections );
503
504
				// Determine if the current week is complete.
505
				$day_ids = wp_list_pluck( $sections, 'title' );
506
				if ( false === $group_open ) {
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...
507
					if ( 1 === $counter && ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
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...
508
						$collapse_class = 'in';
509
						$group_open   = true;
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 5 spaces but found 3 spaces

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...
510
					} elseif ( ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
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...
511
						$collapse_class = 'in';
512
						$group_open   = true;
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 5 spaces but found 3 spaces

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...
513
					}
514
				}
515
516
				// Determine if there are any weekly downloads.
517
				$week_downloads_view = '';
518
				if ( isset( $args['show_downloads'] ) && false !== $args['show_downloads'] ) {
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...
519
					$weekly_downloads = \lsx_health_plan\functions\get_weekly_downloads( $group_key );
520
					if ( ! empty( $weekly_downloads ) ) {
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...
521
						$week_downloads_view = 'week-downloads-view-on';
522
					}
523
				}
524
				?>
525
				<div class="daily-plan-block week-grid">
526
					<a href="#group-<?php echo esc_attr( $group_key ); ?>" data-toggle="collapse" class="week-title"><?php echo esc_attr( $group_title ); ?></a>
0 ignored issues
show
Bug introduced by
$group_title of type array is incompatible with the type string expected by parameter $text of esc_attr(). ( Ignorable by Annotation )

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

526
					<a href="#group-<?php echo esc_attr( $group_key ); ?>" data-toggle="collapse" class="week-title"><?php echo esc_attr( /** @scrutinizer ignore-type */ $group_title ); ?></a>
Loading history...
527
					<div id="group-<?php echo esc_attr( $group_key ); ?>" class="week-row collapse <?php echo esc_attr( $collapse_class ); ?>">
528
						<div class="week-row-inner <?php echo esc_html( $week_downloads_view ); ?>">
529
							<div class="week-meals-recipes-box">
530
531
								<?php if ( ! empty( $week_downloads_view ) ) { ?>
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...
532
									<h3 class="title"><?php lsx_get_svg_icon( 'daily-plan.svg' ); ?><?php echo esc_html_e( 'Plan', 'lsx-health-plan' ); ?></h3>
533
								<?php } ?>
534
535
								<div class="week-meals-recipes-box-inner">
536
								<?php
537
538
								foreach ( $sections as $section_key => $section_values ) {
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...
539
540
									$defaults    = array(
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 5 spaces but found 4 spaces

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...
541
										'title' => __( 'Day', 'lsx-health-plan' ) . ' ' . ( $section_key + 1 ),
542
									);
543
									$section_args = wp_parse_args( $section_values, $defaults );
544
545
									$completed_class = '';
546
									if ( lsx_health_plan_is_day_complete( $args['plan'], $section_args['title'] ) ) {
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...
547
										$completed_class = 'completed';
548
									}
549
									?>
550
									<a href="<?php echo esc_attr( \lsx_health_plan\functions\plan\get_permalink( $args['plan'], $section_args['title'] ) ); ?>" class="day id-<?php echo esc_attr( $section_key + 1 ); ?> <?php echo esc_attr( $completed_class ); ?>">
551
										<div class="plan-content"><?php echo esc_attr( $section_args['title'] ); ?></div>
552
									</a>
553
									<?php
554
								}
555
								?>
556
								</div>
557
							</div>
558
							<?php
559
							if ( ! empty( $week_downloads_view ) ) {
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...
560
								lsx_health_plan_weekly_downloads( $weekly_downloads );
561
							}
562
							?>
563
						</div>
564
					</div>
565
				</div>
566
				<?php
567
			}
568
		}
569
	}
570
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
571
572
/**
573
 * Outputs the weekly downloads box.
574
 *
575
 * @param array $weekly_downloads An array of the download ids.
576
 * @return void
577
 */
578
function lsx_health_plan_weekly_downloads( $weekly_downloads = array() ) {
579
	if ( ! empty( $weekly_downloads ) ) {
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...
580
		?>
581
		<div class="week-download-box">
582
			<h3 class="title"><?php lsx_get_svg_icon( 'download.svg' ); ?><?php echo esc_html_e( 'Downloads', 'lsx-health-plan' ); ?></h3>
583
			<ul class="week-download-box-list">
584
				<?php
585
				foreach ( $weekly_downloads as $weekly_download ) {
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...
586
					?>
587
					<li><?php echo wp_kses_post( do_shortcode( '[download id="' . $weekly_download . '"]' ) ); ?></li>
588
					<?php
589
				}
590
				?>
591
			</ul>
592
		</div>
593
		<?php
594
	}
595
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
596
597
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$args" missing
Loading history...
598
 * Outputs the featured items of any type shortcode (intended for exercises)
599
 *
600
 * @return void
601
 */
602
function lsx_health_plan_items( $args = array() ) {
603
	global $shortcode_args;
604
	$shortcode_args = $args;
605
	include LSX_HEALTH_PLAN_PATH . '/templates/partials/shortcode-loop.php';
606
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
607
608
/**
609
 * Outputs the featured video shortcode
610
 *
611
 * @return void
612
 */
613
function lsx_health_plan_featured_video_block() {
614
	if ( ! post_type_exists( 'video' ) ) {
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...
615
		return;
616
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
617
	include LSX_HEALTH_PLAN_PATH . '/templates/featured-videos.php';
618
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
619
620
/**
621
 * Outputs the featured recipes shortcode
622
 *
623
 * @return void
624
 */
625
function lsx_health_plan_featured_recipes_block() {
626
	if ( ! post_type_exists( 'recipe' ) ) {
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...
627
		return;
628
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
629
	include LSX_HEALTH_PLAN_PATH . '/templates/featured-recipes.php';
630
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
631
632
/**
633
 * Outputs the featured tips shortcode
634
 *
635
 * @return void
636
 */
637
function lsx_health_plan_featured_tips_block() {
638
	include LSX_HEALTH_PLAN_PATH . '/templates/featured-tips.php';
639
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
640
641
/**
642
 * Outputs the Health Plan Buttons
643
 *
644
 * @param string $button
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Superfluous parameter comment
Loading history...
645
 * @return void
646
 */
647
function lsx_health_plan_day_button() {
648
	if ( lsx_health_plan_is_day_complete() ) {
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...
649
		lsx_health_plan_unlock_button();
650
	} else {
651
		lsx_health_plan_complete_button();
652
	}
653
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
654
655
/**
656
 * Outputs the health plan complete button.
657
 *
658
 * @return void
659
 */
660
function lsx_health_plan_complete_button() {
661
	?>
662
	<div class="single-plan-inner-buttons">
663
		<form action="<?php the_permalink(); ?>" method="post" class="form-complete-day complete-plan-btn">
664
			<?php wp_nonce_field( 'complete', 'lsx-health-plan-actions' ); ?>
665
			<input type="hidden" name="lsx-health-plan-id" value="<?php echo esc_attr( \lsx_health_plan\functions\plan\generate_section_id() ); ?>" />
666
			<button class="btn cta-btn" type="submit"><?php esc_html_e( 'Complete Day', 'lsx-health-plan' ); ?></button>
667
		</form>
668
		<?php lsx_health_plan_back_to_plan_button(); ?>
669
	</div>
670
	<?php
671
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
672
673
/**
674
 * Outputs the health plan unlock button.
675
 *
676
 * @return void
677
 */
678
function lsx_health_plan_unlock_button() {
679
	?>
680
	<div class="single-plan-inner-buttons">
681
		<form action="<?php the_permalink(); ?>" method="post" class="form-complete-day complete-plan-btn">
682
			<?php wp_nonce_field( 'unlock', 'lsx-health-plan-actions' ); ?>
683
			<input type="hidden" name="lsx-health-plan-id" value="<?php echo esc_attr( \lsx_health_plan\functions\plan\generate_section_id() ); ?>" />
684
			<button class="btn secondary-btn" type="submit"><?php esc_html_e( 'Im not done!', 'lsx-health-plan' ); ?></button>
685
		</form>
686
		<?php lsx_health_plan_back_to_plan_button(); ?>
687
	</div>
688
	<?php
689
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
690
691
/**
692
 * Outputs the Single Plan Endpoint Tabs
693
 *
694
 * @param string $button
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Superfluous parameter comment
Loading history...
695
 * @return void
696
 */
697
function lsx_health_plan_single_nav() {
698
	$tab_template_path = apply_filters( 'lsx_health_plan_single_nav_path', LSX_HEALTH_PLAN_PATH . '/templates/single-plan-tabs.php' );
699
	if ( '' !== $tab_template_path ) {
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...
700
		require $tab_template_path;
701
	}
702
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
703
704
/**
705
 * Outputs the Single Plan Tab based on the endpoint
706
 *
707
 * @param string $button
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Superfluous parameter comment
Loading history...
708
 * @return void
709
 */
710
function lsx_health_plan_single_tabs() {
711
	$endpoint = get_query_var( 'endpoint' );
712
	switch ( $endpoint ) {
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...
713
		case 'meal':
714
			$tab_template_path = LSX_HEALTH_PLAN_PATH . '/templates/tab-content-meal.php';
715
			break;
716
717
		case 'recipes':
718
			$tab_template_path = LSX_HEALTH_PLAN_PATH . '/templates/tab-content-recipes.php';
719
			break;
720
721
		case 'workout':
722
			$tab_template_path = LSX_HEALTH_PLAN_PATH . '/templates/tab-content-workout.php';
723
			break;
724
725
		case 'warm-up':
726
			$tab_template_path = LSX_HEALTH_PLAN_PATH . '/templates/tab-content-warm-up.php';
727
			break;
728
729
		default:
730
			$tab_template_path = LSX_HEALTH_PLAN_PATH . '/templates/tab-content-plan.php';
731
			break;
732
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
733
	$tab_template_path = apply_filters( 'lsx_health_plan_single_tab_path', $tab_template_path );
734
	if ( '' !== $tab_template_path ) {
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...
735
		include $tab_template_path;
736
	}
737
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
738
739
/**
740
 * Outputs the recipe info on a table.
741
 *
742
 * @return void
743
 */
744
function lsx_health_plan_recipe_data() {
745
	include LSX_HEALTH_PLAN_PATH . '/templates/table-recipe-data.php';
746
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
747
748
/**
749
 * Outputs the recipe type.
750
 *
751
 * @return recipe_type
0 ignored issues
show
Bug introduced by
The type recipe_type was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
752
 */
753
function lsx_health_plan_recipe_type() {
754
	$term_obj_list = get_the_terms( get_the_ID(), 'recipe-type' );
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_terms() 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

754
	$term_obj_list = get_the_terms( /** @scrutinizer ignore-type */ get_the_ID(), 'recipe-type' );
Loading history...
755
	$recipe_type   = $term_obj_list[0]->name;
756
	if ( ! empty( $recipe_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...
757
		return $recipe_type;
758
	}
759
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
760
761
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$echo" missing
Loading history...
762
 * Outputs the modal button and registers the video modal to show.
763
 *
764
 * @param int $m
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 3 spaces after parameter type; 1 found
Loading history...
765
 * @param array $group
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
766
 * @return void
0 ignored issues
show
Coding Style introduced by
Function return type is void, but function contains return statement
Loading history...
767
 */
768
function lsx_health_plan_workout_video_play_button( $m, $group, $echo = true ) {
769
	$workout_video = '';
770
	$giphy         = '';
771
	$youtube       = '';
772
	if ( isset( $group['connected_videos'] ) && '' !== $group['connected_videos'] ) {
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...
773
		$workout_video = esc_html( $group['connected_videos'] );
774
		$giphy         = get_post_meta( $workout_video, 'video_giphy_source', true );
0 ignored issues
show
Bug introduced by
$workout_video of type string is incompatible with the type integer expected by parameter $post_id of get_post_meta(). ( Ignorable by Annotation )

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

774
		$giphy         = get_post_meta( /** @scrutinizer ignore-type */ $workout_video, 'video_giphy_source', true );
Loading history...
775
		$youtube       = esc_url( get_post_meta( $workout_video, 'video_youtube_source', 1 ) );
776
		$content       = get_post_field( 'post_content', $workout_video );
0 ignored issues
show
Bug introduced by
$workout_video of type string is incompatible with the type WP_Post|integer expected by parameter $post of get_post_field(). ( Ignorable by Annotation )

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

776
		$content       = get_post_field( 'post_content', /** @scrutinizer ignore-type */ $workout_video );
Loading history...
777
		$play_button   = '<button data-toggle="modal" data-target="#workout-video-modal-' . $m . '"><span class="fa fa-play-circle"></span></button>';
778
779
		$modal_body = '';
780
		if ( ! empty( $giphy ) ) {
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...
781
			$giphy      = \lsx_health_plan\functions\get_video_url( $giphy );
782
			$modal_body = $giphy; // WPCS: XSS OK.
783
		} elseif ( ! empty( $youtube ) ) {
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...
784
			$modal_body = wp_oembed_get( $youtube, array( // WPCS: XSS OK.
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...
Coding Style introduced by
For multi-line function calls, each argument should be on a separate line.

For a function calls that spawns multiple lines, the coding style suggests to split arguments to separate lines like this:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
);
Loading history...
785
				'width' => 480,
786
			) );
0 ignored issues
show
Coding Style introduced by
For multi-line function calls, the closing parenthesis should be on a new line.

If a function call spawns multiple lines, the coding standard suggests to move the closing parenthesis to a new line:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
); // Closing parenthesis on a new line.
Loading history...
787
		}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
788
		$modal_body .= '<h5 class="modal-title title-lined">' . $group['name'] . '</h5>';
789
		$modal_body .= $content;
790
		\lsx_health_plan\functions\register_modal( 'workout-video-modal-' . $m, '', $modal_body );
791
792
		if ( true === $echo ) {
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...
793
			echo wp_kses_post( $play_button );
794
		} else {
795
			return $play_button;
796
		}
797
	}
798
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
799
800
/**
801
 * Outputs the recipe description if it is included.
802
 *
803
 * @return void
804
 */
805
function lsx_health_plan_recipe_archive_description() {
806
	$description = '';
807
	if ( is_post_type_archive( 'recipe' ) ) {
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...
808
		$description = \lsx_health_plan\functions\get_option( 'recipe_archive_description', '' );
809
	} elseif ( is_post_type_archive( 'exercise' ) ) {
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...
810
		$description = \lsx_health_plan\functions\get_option( 'exercise_archive_description', '' );
811
	} elseif ( is_tax() ) {
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...
812
		$description = get_the_archive_description();
813
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
814
	if ( '' !== $description ) {
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...
815
		?>
816
		<div class="lsx-hp-archive-description row">
817
			<div class="col-xs-12 description-wrapper"><?php echo wp_kses_post( wpautop( $description ) ); ?></div>
818
		</div>
819
		<?php
820
	}
821
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
822
823
/**
824
 * Outputs the Single Plan Workout main content.
825
 *
826
 * @return void
0 ignored issues
show
Coding Style introduced by
Function return type is void, but function contains return statement
Loading history...
827
 */
828
function lsx_health_plan_workout_main_content() {
829
	// Getting translated endpoint.
830
	$workout = \lsx_health_plan\functions\get_option( 'endpoint_workout', 'workout' );
831
832
	$connected_members = get_post_meta( get_the_ID(), ( $workout . '_connected_team_member' ), true );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $post_id of get_post_meta() does only seem to accept 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

832
	$connected_members = get_post_meta( /** @scrutinizer ignore-type */ get_the_ID(), ( $workout . '_connected_team_member' ), true );
Loading history...
Bug introduced by
Are you sure $workout of type array|mixed can be used in concatenation? ( Ignorable by Annotation )

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

832
	$connected_members = get_post_meta( get_the_ID(), ( /** @scrutinizer ignore-type */ $workout . '_connected_team_member' ), true );
Loading history...
833
	$small_description = get_post_meta( get_the_ID(), ( $workout . '_short_description' ), true );
834
835
	$content = '';
836
	if ( $small_description || $connected_members || lsx_health_plan_has_tips() ) {
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...
837
		$content .= '<div class="set-box set content-box entry-content">';
838
		$content .= '<div class="the-content">';
839
		$content .= lsx_hp_member_connected( $connected_members, $workout );
840
		$content .= '<span>' . $small_description . '</span>';
841
		$content .= '</div>';
842
		$content .= do_shortcode( '[lsx_health_plan_featured_tips_block]' );
843
		$content .= '</div>';
844
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
845
	return $content;
846
}
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...
847
848
/**
849
 * Outputs the Single Plan Workout main content.
850
 *
851
 * @return void
0 ignored issues
show
Coding Style introduced by
Function return type is void, but function contains return statement
Loading history...
852
 */
853
function lsx_health_plan_meal_main_content() {
854
	// Getting translated endpoint.
855
	$meal = \lsx_health_plan\functions\get_option( 'endpoint_meal', 'meal' );
856
857
	$connected_members = get_post_meta( get_the_ID(), ( $meal . '_connected_team_member' ), true );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $post_id of get_post_meta() does only seem to accept 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

857
	$connected_members = get_post_meta( /** @scrutinizer ignore-type */ get_the_ID(), ( $meal . '_connected_team_member' ), true );
Loading history...
Bug introduced by
Are you sure $meal of type array|mixed can be used in concatenation? ( Ignorable by Annotation )

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

857
	$connected_members = get_post_meta( get_the_ID(), ( /** @scrutinizer ignore-type */ $meal . '_connected_team_member' ), true );
Loading history...
858
	$small_description = get_post_meta( get_the_ID(), ( $meal . '_short_description' ), true );
859
860
	$content_meal = '';
861
	if ( $small_description || $connected_members || lsx_health_plan_has_tips() ) {
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...
862
		$content_meal .= '<div class="set-box set content-box entry-content">';
863
		$content_meal .= '<div class="the-content">';
864
		$content_meal .= lsx_hp_member_connected( $connected_members, $meal );
865
		$content_meal .= '<span>' . $small_description . '</span>';
866
		$content_meal .= '</div>';
867
		$content_meal .= do_shortcode( '[lsx_health_plan_featured_tips_block]' );
868
		$content_meal .= '</div>';
869
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
870
	return $content_meal;
871
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
872
873
874
/**
875
 * Outputs the Single Plan Workout Tab based on the layout selected.
876
 *
877
 * @param  string $index
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
878
 * @return void
879
 */
880
function lsx_health_plan_workout_tab_content( $index = 1 ) {
881
	global $group_name,$shortcode_args;
882
	$group_name = 'workout_section_' . $index;
883
	if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', 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...
884
		$layout = strtolower( \lsx_health_plan\functions\get_option( 'workout_tab_layout', 'table' ) );
0 ignored issues
show
Bug introduced by
It seems like get_option('workout_tab_layout', 'table') can also be of type array; however, parameter $str of strtolower() 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

884
		$layout = strtolower( /** @scrutinizer ignore-type */ \lsx_health_plan\functions\get_option( 'workout_tab_layout', 'table' ) );
Loading history...
885
886
		// Check for shortcode overrides.
887
		if ( null !== $shortcode_args && isset( $shortcode_args['layout'] ) ) {
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...
888
			$layout = $shortcode_args['layout'];
889
		}
890
	} else {
891
		$layout = 'table';
892
	}
893
894
	switch ( $layout ) {
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...
895
		case 'list':
896
			$tab_template_path = LSX_HEALTH_PLAN_PATH . 'templates/partials/workout-list.php';
897
			break;
898
899
		case 'grid':
900
			$tab_template_path = LSX_HEALTH_PLAN_PATH . 'templates/partials/workout-grid.php';
901
			break;
902
903
		case 'table':
904
			$tab_template_path = LSX_HEALTH_PLAN_PATH . 'templates/partials/workout-table.php';
905
			break;
906
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
907
	$tab_template_path = apply_filters( 'lsx_health_plan_workout_tab_content_path', $tab_template_path );
908
	if ( '' !== $tab_template_path ) {
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...
909
		include $tab_template_path;
910
	}
911
}
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...
912
913
/**
914
 * This will detect and include the Workout sets loop.
915
 *
916
 * @return void
917
 */
918
function lsx_health_plan_workout_sets() {
919
	if ( is_singular( 'workout' ) ) {
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...
920
		global $connected_workouts;
921
		$connected_workouts = array( get_the_ID() );
922
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
923
	if ( is_singular( 'plan' ) ) {
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...
924
925
		global $connected_workouts;
926
927
		$section_key  = get_query_var( 'section' );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned correctly; expected 1 space but found 2 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...
928
		if ( '' !== $section && \lsx_health_plan\functions\plan\has_sections() ) {
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...
929
			$section_info = \lsx_health_plan\functions\plan\get_section_info( $section_key );
930
			if ( isset( $section_info['connected_workouts'] ) && '' !== $section_info['connected_workouts'] ) {
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...
931
932
				$connected_workouts = \lsx_health_plan\functions\prep_array( $section_info['connected_workouts'] );
933
			}
934
		}
935
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
936
	$template_path = LSX_HEALTH_PLAN_PATH . 'templates/partials/workout-sets.php';
937
	$template_path = apply_filters( 'lsx_health_plan_workout_set_template_path', $template_path );
938
	if ( '' !== $template_path && ! empty( $template_path ) ) {
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...
939
		include $template_path;
940
	}
941
}
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...
942
943
/**
944
 * Outputs the recipes connected to the meal plan.
945
 *
946
 * @param array $args
0 ignored issues
show
Coding Style Documentation introduced by
Missing parameter comment
Loading history...
947
 * @return void
948
 */
949
function lsx_hp_meal_plan_recipes( $args = array() ) {
950
	$defaults = array(
951
		'meal_id'   => false,
952
		'meal_time' => '',
953
		'modal'     => true,
954
	);
955
	$args     = wp_parse_args( $args, $defaults );
956
	// Looking for recipes.
957
	$connected_recipes = get_post_meta( $args['meal_id'], $args['meal_time'] . '_recipes', true );
958
	if ( ! empty( $connected_recipes ) ) {
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...
959
		$query_args    = array(
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 1 space but found 4 spaces

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...
960
			'orderby'   => 'date',
961
			'order'     => 'DESC',
962
			'post_type' => 'recipe',
963
			'post__in'  => $connected_recipes,
964
		);
965
		$recipes = new WP_Query( $query_args );
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 4 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...
966
		?>
967
		<div class="recipes">
968
			<div class="row eating-row">
969
			<?php
970
			if ( $recipes->have_posts() ) {
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...
971
				while ( $recipes->have_posts() ) {
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...
972
					$recipes->the_post();
973
					if ( false !== $args['modal'] ) {
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...
974
						\lsx_health_plan\functions\recipes\register_recipe_modal();
975
					}
976
					?>
977
					<div class="recipe-column">
978
						<a data-toggle="modal" data-target="#recipe-modal-<?php echo esc_attr( get_the_ID() ); ?>" href="#recipe-modal-<?php echo esc_attr( get_the_ID() ); ?>" class="recipe-box box-shadow">
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $text of esc_attr() 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

978
						<a data-toggle="modal" data-target="#recipe-modal-<?php echo esc_attr( /** @scrutinizer ignore-type */ get_the_ID() ); ?>" href="#recipe-modal-<?php echo esc_attr( get_the_ID() ); ?>" class="recipe-box box-shadow">
Loading history...
979
							<div class="recipe-feature-img">
980
								<?php
981
								$featured_image = get_the_post_thumbnail();
982
								if ( ! empty( $featured_image ) && '' !== $featured_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...
983
									the_post_thumbnail( 'lsx-thumbnail-square', array(
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...
Coding Style introduced by
For multi-line function calls, each argument should be on a separate line.

For a function calls that spawns multiple lines, the coding style suggests to split arguments to separate lines like this:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
);
Loading history...
984
										'class' => 'aligncenter',
985
									) );
0 ignored issues
show
Coding Style introduced by
For multi-line function calls, the closing parenthesis should be on a new line.

If a function call spawns multiple lines, the coding standard suggests to move the closing parenthesis to a new line:

someFunctionCall(
    $firstArgument,
    $secondArgument,
    $thirdArgument
); // Closing parenthesis on a new line.
Loading history...
986
								} else {
987
									?>
988
									<img loading="lazy" class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __DIR__ ) . 'assets/images/placeholder.jpg' ); ?>">
989
									<?php
990
								}
991
								?>
992
							</div>
993
							<div class="recipe-content">
994
								<h3 class="recipe-title"><?php the_title(); ?></h3>
995
								<?php lsx_health_plan_recipe_data(); ?>
996
							</div>
997
						</a>
998
					</div>
999
				<?php
1000
				}
1001
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1002
			wp_reset_postdata();
1003
			?>
1004
			</div>
1005
		</div>
1006
		<?php
1007
0 ignored issues
show
Coding Style introduced by
Blank line found at end of control structure
Loading history...
1008
	}
1009
}
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...
1010
1011
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$args" missing
Loading history...
1012
 * Output the connected.
1013
 */
1014
function lsx_hp_recipe_plan_meta( $args = array() ) {
1015
	$defaults = array();
0 ignored issues
show
Coding Style introduced by
Equals sign not aligned with surrounding assignments; expected 8 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...
1016
	$top_level_plans = array();
1017
	// Get meals this exercise is connected to.
1018
	$plans = get_post_meta( get_the_ID(), 'connected_plans', true );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $post_id of get_post_meta() does only seem to accept 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

1018
	$plans = get_post_meta( /** @scrutinizer ignore-type */ get_the_ID(), 'connected_plans', true );
Loading history...
1019
	if ( ! empty( $plans ) ) {
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...
1020
		$plan       = end( $plans );
0 ignored issues
show
Bug introduced by
It seems like $plans can also be of type string; however, parameter $array of end() does only seem to accept array, 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

1020
		$plan       = end( /** @scrutinizer ignore-type */ $plans );
Loading history...
1021
		$has_parent = wp_get_post_parent_id( $plan );
1022
		if ( 0 === $has_parent ) {
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...
1023
			$top_level_plans[] = $plan;
1024
		} elseif ( false !== $top_level_plans ) {
0 ignored issues
show
introduced by
The condition false !== $top_level_plans 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...
1025
			$top_level_plans[] = $has_parent;
1026
		}
1027
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1028
	if ( ! empty( $top_level_plans ) && ( '' !== $top_level_plans ) ) {
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...
1029
		$top_level_plans = array_unique( $top_level_plans );
1030
		$top_level_plan  = end( $top_level_plans );
1031
		?>
1032
			<span class="recipe-type recipe-parent"><?php echo esc_html( get_the_title( $top_level_plan ) ); ?></span>
1033
		<?php
1034
	}
1035
}
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...
1036
1037
/**
1038
 * Output the connected.
1039
 */
1040
function lsx_hp_exercise_plan_meta() {
0 ignored issues
show
Coding Style introduced by
Expected 0 blank lines after opening function brace; 1 found
Loading history...
1041
1042
	$top_level_plans = array();
1043
1044
	// Get workouts this exercise is connected to.
1045
	$workouts = get_post_meta( get_the_ID(), 'connected_workouts', true );
0 ignored issues
show
Bug introduced by
It seems like get_the_ID() can also be of type false; however, parameter $post_id of get_post_meta() does only seem to accept 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

1045
	$workouts = get_post_meta( /** @scrutinizer ignore-type */ get_the_ID(), 'connected_workouts', true );
Loading history...
1046
1047
	if ( '' !== $workouts && ! is_array( $workouts ) ) {
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...
1048
		$workouts = array( $workouts );
1049
	}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1050
	if ( ! empty( $workouts ) ) {
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...
1051
		foreach ( $workouts as $workout ) {
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...
1052
			// Get the plans this workout is connected to.
1053
			$plans = get_post_meta( $workout, 'connected_plans', true );
1054
1055
			if ( '' !== $plans && ! is_array( $plans ) ) {
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...
1056
				$plans = array( $plans );
1057
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1058
			if ( ! empty( $plans ) ) {
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...
1059
				foreach ( $plans as $plan ) {
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...
1060
					$has_parent = wp_get_post_parent_id( $plan );
1061
					if ( 0 === $has_parent ) {
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...
1062
						$top_level_plans = $plan;
1063
					} else {
1064
						$top_level_plans = $has_parent;
1065
					}
1066
				}
1067
			}
1068
		}
1069
	}
1070
1071
	if ( ! empty( $top_level_plans ) && ( '' !== $top_level_plans ) ) {
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...
1072
		$top_level_plans = array_unique( $top_level_plans );
1073
		$top_level_plan  = end( $top_level_plans );
1074
		?>
1075
			<span class="recipe-type recipe-parent"><?php echo esc_html( get_the_title( $top_level_plan ) ); ?></span>
1076
		<?php
1077
	}
1078
}
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...
1079
1080
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$post_type_text" missing
Loading history...
1081
 * Template for related content box for all singles.
1082
 *
1083
 * @param [type] $related_content
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...
1084
 * @return void
1085
 */
1086
function lsx_hp_single_related( $related_content, $post_type_text ) {
1087
	?>
1088
	<section id="lsx-hp-related">
1089
		<div class="row lsx-related-posts lsx-related-posts-title">
1090
			<div class="col-xs-12">
1091
				<h2 class="lsx-related-posts-headline"><?php echo esc_html( $post_type_text ); ?></h2>
1092
			</div>
1093
		</div>
1094
		<div class="row lsx-related-posts lsx-related-posts-content">
1095
			<div class="col-xs-12">
1096
				<div class="lsx-related-posts-wrapper">
1097
					<?php
1098
					$i = 0;
1099
					foreach ( $related_content as $article ) {
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...
1100
						$post_title      = get_the_title( $article );
1101
						$post_categories = wp_get_post_categories( $article );
1102
						$post_link       = get_permalink( $article );
1103
1104
						$cats = array();
1105
						?>
1106
						<article id="post-<?php echo esc_html( $article ); ?>" class="lsx-slot post">
1107
							<div class="entry-layout lsx-hp-shadow">
1108
								<div class="entry-layout-content">
1109
									<header class="entry-header">
1110
										<div class="entry-image">
1111
											<a href="<?php echo esc_url( $post_link ); ?>" class="thumbnail">
0 ignored issues
show
Bug introduced by
It seems like $post_link 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

1111
											<a href="<?php echo esc_url( /** @scrutinizer ignore-type */ $post_link ); ?>" class="thumbnail">
Loading history...
1112
											<?php
1113
											$featured_image = get_the_post_thumbnail( $article, 'lsx-thumbnail-wide' );
1114
											if ( ! empty( $featured_image ) && '' !== $featured_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...
1115
												echo wp_kses_post( $featured_image );
1116
											} else {
1117
												?>
1118
												<img loading="lazy" class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __FILE__ ) . '../assets/images/placeholder.jpg' ); ?>">
1119
												<?php
1120
											}
1121
											?>
1122
											</a>
1123
										</div>
1124
										<div class="entry-meta">
1125
										<?php
1126
										foreach ( $post_categories as $c ) {
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...
1127
											$cat = get_category( $c );
1128
											/* Translators: %s: category name */
1129
											$cats[] = '<a href="' . esc_url( get_category_link( $cat->term_id ) ) . '" title="' . sprintf( esc_html__( 'Posts in %s', 'lsx-blog-customizer' ), $cat->name ) . '">' . $cat->name . '</a>';
0 ignored issues
show
Bug introduced by
The property name does not seem to exist on WP_Error.
Loading history...
Bug introduced by
The property term_id does not seem to exist on WP_Error.
Loading history...
1130
										}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1131
										if ( ! empty( $cats ) ) { ?>
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
Closing PHP tag must be on a line by itself
Loading history...
1132
											<div class="post-categories"><span></span><?php echo wp_kses_post( implode( ', ', $cats ) ); ?></div>
1133
										<?php } ?>
1134
										</div>
1135
										<h2 class="entry-title">
1136
											<a href="<?php echo esc_url( $post_link ); ?>">
1137
												<?php echo esc_html( $post_title ); ?>
1138
											</a>
1139
										</h2>
1140
									</header>
1141
								</div>
1142
							</div>
1143
						</article>
1144
1145
					<?php
1146
					if (++$i === 3) break;
0 ignored issues
show
introduced by
Use Yoda Condition checks, you must.
Loading history...
1147
					} ?>
0 ignored issues
show
Coding Style introduced by
Closing PHP tag must be on a line by itself
Loading history...
1148
				</div>
1149
			</div>
1150
		</div>
1151
	</section>
1152
	<?php
1153
}
0 ignored issues
show
Coding Style introduced by
Expected 2 blank lines after function; 1 found
Loading history...
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
1154
1155
/**
0 ignored issues
show
Coding Style Documentation introduced by
Doc comment for parameter "$post_type" missing
Loading history...
1156
 * Template for connected members.
1157
 *
1158
 * @param [type] $connected_members
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...
1159
 * @return void
0 ignored issues
show
Coding Style introduced by
Function return type is void, but function contains return statement
Loading history...
1160
 */
1161
function lsx_hp_member_connected( $connected_members, $post_type ) {
1162
	if ( ! empty( $connected_members ) ) {
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...
1163
		$content = '<div id="hp-connected-members" class="hp-connected-members connected-' . $post_type . '">';
1164
		foreach ( $connected_members as $member ) {
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...
1165
			$post_link   = get_permalink( $member );
1166
			$member_name = get_the_title( $member );
1167
			$member_name = '<span class="lsx-team-name">' . $member_name . '</span>';
1168
1169
			$member_link = '<a href="' . $post_link . '" >' . $member_name . '</a>';
0 ignored issues
show
Bug introduced by
Are you sure $post_link of type false|string can be used in concatenation? ( Ignorable by Annotation )

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

1169
			$member_link = '<a href="' . /** @scrutinizer ignore-type */ $post_link . '" >' . $member_name . '</a>';
Loading history...
1170
1171
			$roles = '';
1172
			$terms = get_the_terms( $member, 'team_role' );
1173
1174
			if ( $terms && ! is_wp_error( $terms ) ) {
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...
1175
				$roles = array();
1176
1177
				foreach ( $terms as $term ) {
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...
1178
					$roles[] = $term->name;
1179
				}
1180
1181
				$roles = join( ', ', $roles );
1182
			}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1183
			$member_roles = '' !== $roles ? "<small class='lsx-team-roles'>$roles</small>" : '';
1184
1185
			$content .= '<p>' . $member_roles . ': ' . $member_link . '</p>';
1186
		}
0 ignored issues
show
Coding Style introduced by
No blank line found after control structure
Loading history...
1187
		$content .= '</div>';
1188
		return $content;
1189
	}
1190
}
0 ignored issues
show
Coding Style introduced by
Expected 1 blank line before closing function brace; 0 found
Loading history...
1191