Passed
Push — add/multiplan ( 15cba9...22afe1 )
by Virginia
04:24
created
includes/template-tags.php 1 patch
Indentation   +618 added lines, -618 removed lines patch added patch discarded remove patch
@@ -11,25 +11,25 @@  discard block
 block discarded – undo
11 11
 * @return void
12 12
 */
13 13
 function lsx_health_plan_warmup_box() {
14
-	?>
14
+     ?>
15 15
 	<div class="col-md-4" >
16 16
 		<div class="lsx-health-plan-box">
17 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 18
 			<div class="spacer"></div>
19 19
 			<?php
20
-			$intro_text = \lsx_health_plan\functions\get_option( 'warmup_intro', false );
21
-			if ( false !== $intro_text ) {
22
-				?>
20
+               $intro_text = \lsx_health_plan\functions\get_option( 'warmup_intro', false );
21
+               if ( false !== $intro_text ) {
22
+                    ?>
23 23
 				<div class="excerpt">
24 24
 					<p><?php echo wp_kses_post( $intro_text ); ?></p>
25 25
 				</div>
26 26
 				<?php
27
-			}
28
-			$warm_up = \lsx_health_plan\functions\get_option( 'endpoint_warm_up', false );
29
-			if ( false === $warm_up ) {
30
-				$warm_up = 'warm-up';
31
-			}
32
-			?>
27
+               }
28
+               $warm_up = \lsx_health_plan\functions\get_option( 'endpoint_warm_up', false );
29
+               if ( false === $warm_up ) {
30
+                    $warm_up = 'warm-up';
31
+               }
32
+               ?>
33 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 34
 		</div>
35 35
 	</div>
@@ -42,28 +42,28 @@  discard block
 block discarded – undo
42 42
 * @return void
43 43
 */
44 44
 function lsx_health_plan_workout_box() {
45
-	if ( ! post_type_exists( 'workout' ) ) {
46
-		return;
47
-	}
48
-	?>
45
+     if ( ! post_type_exists( 'workout' ) ) {
46
+          return;
47
+     }
48
+     ?>
49 49
 	<div class="col-md-4" >
50 50
 		<div class="lsx-health-plan-box">
51 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 52
 			<div class="spacer"></div>
53 53
 			<?php
54
-			$intro_text = \lsx_health_plan\functions\get_option( 'workout_intro', false );
55
-			if ( false !== $intro_text ) {
56
-				?>
54
+               $intro_text = \lsx_health_plan\functions\get_option( 'workout_intro', false );
55
+               if ( false !== $intro_text ) {
56
+                    ?>
57 57
 				<div class="excerpt">
58 58
 					<p><?php echo wp_kses_post( $intro_text ); ?></p>
59 59
 				</div>
60 60
 				<?php
61
-			}
62
-			$workout = \lsx_health_plan\functions\get_option( 'endpoint_workout', false );
63
-			if ( false === $workout ) {
64
-				$workout = 'workout';
65
-			}
66
-			?>
61
+               }
62
+               $workout = \lsx_health_plan\functions\get_option( 'endpoint_workout', false );
63
+               if ( false === $workout ) {
64
+                    $workout = 'workout';
65
+               }
66
+               ?>
67 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 68
 		</div>
69 69
 	</div>
@@ -76,28 +76,28 @@  discard block
 block discarded – undo
76 76
 * @return void
77 77
 */
78 78
 function lsx_health_plan_meal_box() {
79
-	if ( ! post_type_exists( 'meal' ) ) {
80
-		return;
81
-	}
82
-	?>
79
+     if ( ! post_type_exists( 'meal' ) ) {
80
+          return;
81
+     }
82
+     ?>
83 83
 	<div class="col-md-4" >
84 84
 		<div class="lsx-health-plan-box">
85 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 86
 			<div class="spacer"></div>
87 87
 			<?php
88
-			$intro_text = \lsx_health_plan\functions\get_option( 'meal_plan_intro', false );
89
-			if ( false !== $intro_text ) {
90
-				?>
88
+               $intro_text = \lsx_health_plan\functions\get_option( 'meal_plan_intro', false );
89
+               if ( false !== $intro_text ) {
90
+                    ?>
91 91
 				<div class="excerpt">
92 92
 					<p><?php echo wp_kses_post( $intro_text ); ?></p>
93 93
 				</div>
94 94
 				<?php
95
-			}
96
-			$meal = \lsx_health_plan\functions\get_option( 'endpoint_meal', false );
97
-			if ( false === $meal ) {
98
-				$meal = 'meal';
99
-			}
100
-			?>
95
+               }
96
+               $meal = \lsx_health_plan\functions\get_option( 'endpoint_meal', false );
97
+               if ( false === $meal ) {
98
+                    $meal = 'meal';
99
+               }
100
+               ?>
101 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 102
 		</div>
103 103
 	</div>
@@ -110,28 +110,28 @@  discard block
 block discarded – undo
110 110
 * @return void
111 111
 */
112 112
 function lsx_health_plan_recipe_box() {
113
-	if ( ! post_type_exists( 'recipe' ) ) {
114
-		return;
115
-	}
116
-	?>
113
+     if ( ! post_type_exists( 'recipe' ) ) {
114
+          return;
115
+     }
116
+     ?>
117 117
 	<div class="col-md-4" >
118 118
 		<div class="lsx-health-plan-box">
119 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 120
 			<div class="spacer"></div>
121 121
 			<?php
122
-			$intro_text = \lsx_health_plan\functions\get_option( 'recipes_intro', false );
123
-			if ( false !== $intro_text ) {
124
-				?>
122
+               $intro_text = \lsx_health_plan\functions\get_option( 'recipes_intro', false );
123
+               if ( false !== $intro_text ) {
124
+                    ?>
125 125
 				<div class="excerpt">
126 126
 					<p><?php echo wp_kses_post( $intro_text ); ?></p>
127 127
 				</div>
128 128
 				<?php
129
-			}
130
-			$recipes = \lsx_health_plan\functions\get_option( 'endpoint_recipe', false );
131
-			if ( false === $recipes ) {
132
-				$recipes = 'recipes';
133
-			}
134
-			?>
129
+               }
130
+               $recipes = \lsx_health_plan\functions\get_option( 'endpoint_recipe', false );
131
+               if ( false === $recipes ) {
132
+                    $recipes = 'recipes';
133
+               }
134
+               ?>
135 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 136
 		</div>
137 137
 	</div>
@@ -144,8 +144,8 @@  discard block
 block discarded – undo
144 144
 * @return void
145 145
 */
146 146
 function lsx_health_plan_downloads_box() {
147
-	global $current_user;
148
-	?>
147
+     global $current_user;
148
+     ?>
149 149
 	<div class="col-md-4 day-download-box" >
150 150
 		<div class="lsx-health-plan-box">
151 151
 			<h3 class="title downloads-title title-lined"><?php esc_html_e( 'Downloads', 'lsx-health-plan' ); ?><?php lsx_get_svg_icon( 'download.svg' ); ?></h3>
@@ -153,13 +153,13 @@  discard block
 block discarded – undo
153 153
 			<div class="download-list">
154 154
 				<ul>
155 155
 					<?php
156
-					$downloads = \lsx_health_plan\functions\get_downloads();
157
-					if ( ! empty( $downloads ) ) {
158
-						foreach ( $downloads as $download ) {
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
-					?>
156
+                         $downloads = \lsx_health_plan\functions\get_downloads();
157
+                         if ( ! empty( $downloads ) ) {
158
+                              foreach ( $downloads as $download ) {
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 163
 				</ul>
164 164
 			</div>
165 165
 		</div>
@@ -174,15 +174,15 @@  discard block
 block discarded – undo
174 174
  * @return void
175 175
  */
176 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' ) ) {
179
-		$nav_classes[] = 'active';
180
-	} elseif ( lsx_health_plan_is_current_tab( $tab ) ) {
181
-		$nav_classes[] = 'active';
182
-	}
183
-	if ( ! empty( $nav_classes ) ) {
184
-		echo wp_kses_post( implode( ' ', $nav_classes ) );
185
-	}
177
+     $nav_classes = array();
178
+     if ( function_exists( 'is_wc_endpoint_url' ) && 'edit-account' === $tab && is_wc_endpoint_url( 'edit-account' ) ) {
179
+          $nav_classes[] = 'active';
180
+     } elseif ( lsx_health_plan_is_current_tab( $tab ) ) {
181
+          $nav_classes[] = 'active';
182
+     }
183
+     if ( ! empty( $nav_classes ) ) {
184
+          echo wp_kses_post( implode( ' ', $nav_classes ) );
185
+     }
186 186
 }
187 187
 
188 188
 /**
@@ -191,22 +191,22 @@  discard block
 block discarded – undo
191 191
  * @return void
192 192
  */
193 193
 function lsx_health_plan_my_profile_tabs() {
194
-	?>
194
+     ?>
195 195
 	<div id="account-nav">
196 196
 		<ul class="nav nav-pills">
197 197
 			<li class="
198 198
 			<?php
199
-			if ( ( function_exists( 'is_wc_endpoint_url' ) && ! is_wc_endpoint_url( 'edit-account' ) ) || ! function_exists( 'is_wc_endpoint_url' ) ) {
200
-				echo esc_attr( 'active' );
201
-			}
202
-			?>
199
+               if ( ( function_exists( 'is_wc_endpoint_url' ) && ! is_wc_endpoint_url( 'edit-account' ) ) || ! function_exists( 'is_wc_endpoint_url' ) ) {
200
+                    echo esc_attr( 'active' );
201
+               }
202
+               ?>
203 203
 			"><a class="my-plan-tab" href="<?php the_permalink(); ?>"><?php esc_html_e( 'My Plans', 'lsx-health-plan' ); ?></a></li>
204 204
 			<li class="
205 205
 			<?php
206
-			if ( function_exists( 'is_wc_endpoint_url' ) && is_wc_endpoint_url( 'edit-account' ) ) {
207
-				echo esc_attr( 'active' );
208
-			}
209
-			?>
206
+               if ( function_exists( 'is_wc_endpoint_url' ) && is_wc_endpoint_url( 'edit-account' ) ) {
207
+                    echo esc_attr( 'active' );
208
+               }
209
+               ?>
210 210
 			"><a class="account-details-tab" href="<?php the_permalink(); ?>edit-account/"><?php esc_html_e( 'Account Details', 'lsx-health-plan' ); ?></a></li>
211 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>
212 212
 		</ul>
@@ -220,7 +220,7 @@  discard block
 block discarded – undo
220 220
  * @return void
221 221
  */
222 222
 function lsx_health_plan_my_profile_box() {
223
-	?>
223
+     ?>
224 224
 	<div class="lsx-health-plan my-profile-block wp-block-cover alignfull">
225 225
 		<div class="wp-block-cover__inner-container">
226 226
 			<h2><?php esc_html_e( 'My Dashboard', 'lsx-health-plan' ); ?></h2>
@@ -228,86 +228,86 @@  discard block
 block discarded – undo
228 228
 				<div class="profile-navigation">
229 229
 					<div class="profile-photo">
230 230
 					<?php
231
-						global $current_user;
232
-						get_current_user();
233
-						echo get_avatar( $current_user->ID, 240 );
234
-						?>
231
+                              global $current_user;
232
+                              get_current_user();
233
+                              echo get_avatar( $current_user->ID, 240 );
234
+                              ?>
235 235
 					</div>
236 236
 				</div>
237 237
 				<div class="profile-details">
238 238
 					<h1 class="title-lined has-text-color"><?php echo esc_html( $current_user->display_name ); ?></h1>
239 239
 					<?php
240
-					$disable_stats = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
241
-					if ( 'on' !== $disable_stats ) {
240
+                         $disable_stats = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
241
+                         if ( 'on' !== $disable_stats ) {
242 242
 
243
-						$is_weight_disabled  = \lsx_health_plan\functions\get_option( 'disable_weight_checkbox', false );
244
-						$is_height_disabled  = \lsx_health_plan\functions\get_option( 'disable_height_checkbox', false );
245
-						$is_waist_disabled   = \lsx_health_plan\functions\get_option( 'disable_waist_checkbox', false );
246
-						$is_bmi_disabled = \lsx_health_plan\functions\get_option( 'disable_bmi_checkbox', false );
243
+                              $is_weight_disabled  = \lsx_health_plan\functions\get_option( 'disable_weight_checkbox', false );
244
+                              $is_height_disabled  = \lsx_health_plan\functions\get_option( 'disable_height_checkbox', false );
245
+                              $is_waist_disabled   = \lsx_health_plan\functions\get_option( 'disable_waist_checkbox', false );
246
+                              $is_bmi_disabled = \lsx_health_plan\functions\get_option( 'disable_bmi_checkbox', false );
247 247
 
248
-						$weight = get_user_meta( get_current_user_id(), 'weight', true );
249
-						$waist = get_user_meta( get_current_user_id(), 'waist', true );
250
-						$height = get_user_meta( get_current_user_id(), 'height', true );
248
+                              $weight = get_user_meta( get_current_user_id(), 'weight', true );
249
+                              $waist = get_user_meta( get_current_user_id(), 'waist', true );
250
+                              $height = get_user_meta( get_current_user_id(), 'height', true );
251 251
 
252
-						$height_m = $height / 100;
252
+                              $height_m = $height / 100;
253 253
 
254
-						if ( 1 < $weight && 1 < $height_m ) {
255
-							$bmi = $weight / ( $height_m * $height_m );
256
-							$bmi = number_format( $bmi, 1 );
257
-						} else {
258
-							$bmi = __( 'Add more data', 'lsx-health-plan' );
259
-						}
254
+                              if ( 1 < $weight && 1 < $height_m ) {
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 260
 
261
-						?>
261
+                              ?>
262 262
 
263 263
 						<div>
264 264
 							<?php if ( 'on' !== $is_weight_disabled ) { ?>
265 265
 								<span><strong><?php esc_html_e( 'Weight:', 'lsx-health-plan' ); ?></strong>
266 266
 								<?php
267
-								if ( '' !== $weight ) {
268
-									echo wp_kses_post( $weight . ' kg' );
269
-								} else {
270
-									echo '/';
271
-								}
272
-								?>
267
+                                        if ( '' !== $weight ) {
268
+                                             echo wp_kses_post( $weight . ' kg' );
269
+                                        } else {
270
+                                             echo '/';
271
+                                        }
272
+                                        ?>
273 273
 								</span>
274 274
 							<?php }
275
-							if ( 'on' !== $is_waist_disabled ) {
276
-								?>
275
+                                   if ( 'on' !== $is_waist_disabled ) {
276
+                                        ?>
277 277
 								<span><strong><?php esc_html_e( 'Waist:', 'lsx-health-plan' ); ?></strong>
278 278
 								<?php
279
-								if ( '' !== $waist ) {
280
-									echo wp_kses_post( $waist . ' cm' );
281
-								} else {
282
-									echo '/';
283
-								}
284
-								?>
279
+                                        if ( '' !== $waist ) {
280
+                                             echo wp_kses_post( $waist . ' cm' );
281
+                                        } else {
282
+                                             echo '/';
283
+                                        }
284
+                                        ?>
285 285
 								</span>
286 286
 							<?php }
287
-							if ( 'on' !== $is_bmi_disabled ) {
288
-								?>
287
+                                   if ( 'on' !== $is_bmi_disabled ) {
288
+                                        ?>
289 289
 								<span><strong><?php esc_html_e( 'BMI:', 'lsx-health-plan' ); ?></strong>
290 290
 								<?php
291
-								if ( '' !== $bmi ) {
292
-									echo wp_kses_post( $bmi );
293
-								} else {
294
-									echo '/';
295
-								}
296
-								?>
291
+                                        if ( '' !== $bmi ) {
292
+                                             echo wp_kses_post( $bmi );
293
+                                        } else {
294
+                                             echo '/';
295
+                                        }
296
+                                        ?>
297 297
 								</span>
298 298
 							<?php } ?>
299 299
 						</div>
300 300
 					<?php
301
-					}
302
-					?>
301
+                         }
302
+                         ?>
303 303
 					<div class="edit-profile">
304 304
 						<?php
305
-						if ( function_exists( 'wc_get_page_id' ) ) {
306
-							$url_id = wc_get_page_id( 'myaccount' );
307
-						} else {
308
-							$url_id = '';
309
-						}
310
-						?>
305
+                              if ( function_exists( 'wc_get_page_id' ) ) {
306
+                                   $url_id = wc_get_page_id( 'myaccount' );
307
+                              } else {
308
+                                   $url_id = '';
309
+                              }
310
+                              ?>
311 311
 						<a href="<?php echo esc_url( get_permalink( $url_id ) ); ?>edit-account/"><?php esc_html_e( 'Edit', 'lsx-health-plan' ); ?></a>
312 312
 					</div>
313 313
 				</div>
@@ -323,63 +323,63 @@  discard block
 block discarded – undo
323 323
  * @return void
324 324
  */
325 325
 function lsx_health_plan_all_plans_block() {
326
-	global $post, $product;
327
-
328
-	$args = array(
329
-		'orderby'        => 'menu_order',
330
-		'order'          => 'ASC',
331
-		'post_type'      => 'plan',
332
-		'nopagin'        => true,
333
-		'post_parent'    => 0,
334
-	);
335
-
336
-	$product_ids = \lsx_health_plan\functions\woocommerce\get_membership_products();
337
-	if ( ! empty( $product_ids ) ) {
338
-		$args['meta_query'] = array(
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
-	?>
326
+     global $post, $product;
327
+
328
+     $args = array(
329
+          'orderby'        => 'menu_order',
330
+          'order'          => 'ASC',
331
+          'post_type'      => 'plan',
332
+          'nopagin'        => true,
333
+          'post_parent'    => 0,
334
+     );
335
+
336
+     $product_ids = \lsx_health_plan\functions\woocommerce\get_membership_products();
337
+     if ( ! empty( $product_ids ) ) {
338
+          $args['meta_query'] = array(
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 354
 	<div class="all-plans-block plan-grid block-all-plans-block">
355 355
 		<div class="row">
356 356
 			<?php
357
-			if ( $the_query->have_posts() ) :
358
-				while ( $the_query->have_posts() ) :
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() ) {
366
-						$products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
367
-						$linked_product = wc_get_product( $products[0] );
368
-						$product        = $linked_product;
369
-					}
370
-					if ( function_exists( 'wc_memberships_is_post_content_restricted' ) ) {
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() ) {
375
-						$completed_class = 'completed';
376
-					}
377
-					$round_progress     = '';
378
-					$completed_progress = '100';
379
-					if ( false === $restricted ) {
380
-						$round_progress = round( \lsx_health_plan\functions\get_progress( get_the_ID() ), 0 );
381
-					}
382
-					?>
357
+               if ( $the_query->have_posts() ) :
358
+                    while ( $the_query->have_posts() ) :
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() ) {
366
+                              $products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
367
+                              $linked_product = wc_get_product( $products[0] );
368
+                              $product        = $linked_product;
369
+                         }
370
+                         if ( function_exists( 'wc_memberships_is_post_content_restricted' ) ) {
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() ) {
375
+                              $completed_class = 'completed';
376
+                         }
377
+                         $round_progress     = '';
378
+                         $completed_progress = '100';
379
+                         if ( false === $restricted ) {
380
+                              $round_progress = round( \lsx_health_plan\functions\get_progress( get_the_ID() ), 0 );
381
+                         }
382
+                         ?>
383 383
 					<div class="col-xs-12 col-sm-6 col-md-4">
384 384
 						<article class="lsx-slot lsx-hp-shadow <?php echo esc_html( 'progress-') . $round_progress; ?>">
385 385
 							<div class="plan-feature-img">
@@ -388,45 +388,45 @@  discard block
 block discarded – undo
388 388
 								<?php } ?>
389 389
 								<a href="<?php echo esc_url( get_permalink() ); ?>">
390 390
 								<?php
391
-								$featured_image = get_the_post_thumbnail();
392
-								if ( ! empty( $featured_image ) && '' !== $featured_image ) {
393
-									the_post_thumbnail( 'lsx-thumbnail', array(
394
-										'class' => 'aligncenter',
395
-									) );
396
-								} else {
397
-									?>
391
+                                        $featured_image = get_the_post_thumbnail();
392
+                                        if ( ! empty( $featured_image ) && '' !== $featured_image ) {
393
+                                             the_post_thumbnail( 'lsx-thumbnail', array(
394
+                                                  'class' => 'aligncenter',
395
+                                             ) );
396
+                                        } else {
397
+                                             ?>
398 398
 									<img loading="lazy"  class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __FILE__ ) . '../assets/images/placeholder.jpg' ); ?>">
399 399
 									<?php
400
-								}
401
-								?>
400
+                                        }
401
+                                        ?>
402 402
 								</a>
403 403
 							</div>
404 404
 							<div class="content-box plan-content-box">
405 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 406
 								<?php
407
-									echo wp_kses_post( \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
408
-								?>
407
+                                             echo wp_kses_post( \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
408
+                                        ?>
409 409
 								<?php
410
-								if ( false !== $linked_product && false !== $restricted ) {
411
-									echo wp_kses_post( $linked_product->get_price_html() );
412
-								}
413
-								?>
410
+                                        if ( false !== $linked_product && false !== $restricted ) {
411
+                                             echo wp_kses_post( $linked_product->get_price_html() );
412
+                                        }
413
+                                        ?>
414 414
 								<div class="excerpt">
415 415
 									<?php
416
-									if ( ! has_excerpt() ) {
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
-									}
422
-									echo wp_kses_post( $content );
423
-									?>
416
+                                             if ( ! has_excerpt() ) {
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
+                                             }
422
+                                             echo wp_kses_post( $content );
423
+                                             ?>
424 424
 								</div>
425 425
 								<?php
426
-								if ( false === $restricted ) {
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
-								?>
426
+                                        if ( false === $restricted ) {
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 430
 							</div>
431 431
 						</article>
432 432
 					</div>
@@ -445,36 +445,36 @@  discard block
 block discarded – undo
445 445
  * @return void
446 446
  */
447 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'] ) ) {
454
-		$sections = \lsx_health_plan\functions\plan\get_sections();
455
-		?>
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'] ) ) {
454
+          $sections = \lsx_health_plan\functions\plan\get_sections();
455
+          ?>
456 456
 		<div class="daily-plan-block day-grid">
457 457
 			<?php
458
-			foreach ( $sections as $section_key => $section_values ) {
459
-				$defaults    = array(
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() ) {
466
-					$completed_class = 'completed';
467
-				}
468
-				?>
458
+               foreach ( $sections as $section_key => $section_values ) {
459
+                    $defaults    = array(
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() ) {
466
+                         $completed_class = 'completed';
467
+                    }
468
+                    ?>
469 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 ); ?>">
470 470
 					<div class="plan-content"><?php echo esc_attr( $section_args['title'] ); ?></div>
471 471
 				</a>
472 472
 				<?php
473
-			}
474
-			?>
473
+               }
474
+               ?>
475 475
 		</div>
476 476
 		<?php
477
-	}
477
+     }
478 478
 }
479 479
 
480 480
 /**
@@ -484,44 +484,44 @@  discard block
 block discarded – undo
484 484
  * @return void
485 485
  */
486 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'] ) ) {
494
-		$groups = \lsx_health_plan\functions\plan\get_sections( true );
495
-
496
-		if ( ! empty( $groups ) ) {
497
-			$counter    = 1;
498
-			$group_open = false;
499
-
500
-			foreach ( $groups as $group_key => $sections ) {
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 ) {
507
-					if ( 1 === $counter && ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
508
-						$collapse_class = 'in';
509
-						$group_open   = true;
510
-					} elseif ( ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
511
-						$collapse_class = 'in';
512
-						$group_open   = true;
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'] ) {
519
-					$weekly_downloads = \lsx_health_plan\functions\get_weekly_downloads( $group_key );
520
-					if ( ! empty( $weekly_downloads ) ) {
521
-						$week_downloads_view = 'week-downloads-view-on';
522
-					}
523
-				}
524
-				?>
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'] ) ) {
494
+          $groups = \lsx_health_plan\functions\plan\get_sections( true );
495
+
496
+          if ( ! empty( $groups ) ) {
497
+               $counter    = 1;
498
+               $group_open = false;
499
+
500
+               foreach ( $groups as $group_key => $sections ) {
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 ) {
507
+                         if ( 1 === $counter && ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
508
+                              $collapse_class = 'in';
509
+                              $group_open   = true;
510
+                         } elseif ( ! \lsx_health_plan\functions\is_week_complete( false, $day_ids, $group_title ) ) {
511
+                              $collapse_class = 'in';
512
+                              $group_open   = true;
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'] ) {
519
+                         $weekly_downloads = \lsx_health_plan\functions\get_weekly_downloads( $group_key );
520
+                         if ( ! empty( $weekly_downloads ) ) {
521
+                              $week_downloads_view = 'week-downloads-view-on';
522
+                         }
523
+                    }
524
+                    ?>
525 525
 				<div class="daily-plan-block week-grid">
526 526
 					<a href="#group-<?php echo esc_attr( $group_key ); ?>" data-toggle="collapse" class="week-title"><?php echo esc_attr( $group_title ); ?></a>
527 527
 					<div id="group-<?php echo esc_attr( $group_key ); ?>" class="week-row collapse <?php echo esc_attr( $collapse_class ); ?>">
@@ -535,38 +535,38 @@  discard block
 block discarded – undo
535 535
 								<div class="week-meals-recipes-box-inner">
536 536
 								<?php
537 537
 
538
-								foreach ( $sections as $section_key => $section_values ) {
538
+                                        foreach ( $sections as $section_key => $section_values ) {
539 539
 
540
-									$defaults    = array(
541
-										'title' => __( 'Day', 'lsx-health-plan' ) . ' ' . ( $section_key + 1 ),
542
-									);
543
-									$section_args = wp_parse_args( $section_values, $defaults );
540
+                                             $defaults    = array(
541
+                                                  'title' => __( 'Day', 'lsx-health-plan' ) . ' ' . ( $section_key + 1 ),
542
+                                             );
543
+                                             $section_args = wp_parse_args( $section_values, $defaults );
544 544
 
545
-									$completed_class = '';
546
-									if ( lsx_health_plan_is_day_complete( $args['plan'], $section_args['title'] ) ) {
547
-										$completed_class = 'completed';
548
-									}
549
-									?>
545
+                                             $completed_class = '';
546
+                                             if ( lsx_health_plan_is_day_complete( $args['plan'], $section_args['title'] ) ) {
547
+                                                  $completed_class = 'completed';
548
+                                             }
549
+                                             ?>
550 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 551
 										<div class="plan-content"><?php echo esc_attr( $section_args['title'] ); ?></div>
552 552
 									</a>
553 553
 									<?php
554
-								}
555
-								?>
554
+                                        }
555
+                                        ?>
556 556
 								</div>
557 557
 							</div>
558 558
 							<?php
559
-							if ( ! empty( $week_downloads_view ) ) {
560
-								lsx_health_plan_weekly_downloads( $weekly_downloads );
561
-							}
562
-							?>
559
+                                   if ( ! empty( $week_downloads_view ) ) {
560
+                                        lsx_health_plan_weekly_downloads( $weekly_downloads );
561
+                                   }
562
+                                   ?>
563 563
 						</div>
564 564
 					</div>
565 565
 				</div>
566 566
 				<?php
567
-			}
568
-		}
569
-	}
567
+               }
568
+          }
569
+     }
570 570
 }
571 571
 
572 572
 /**
@@ -576,22 +576,22 @@  discard block
 block discarded – undo
576 576
  * @return void
577 577
  */
578 578
 function lsx_health_plan_weekly_downloads( $weekly_downloads = array() ) {
579
-	if ( ! empty( $weekly_downloads ) ) {
580
-		?>
579
+     if ( ! empty( $weekly_downloads ) ) {
580
+          ?>
581 581
 		<div class="week-download-box">
582 582
 			<h3 class="title"><?php lsx_get_svg_icon( 'download.svg' ); ?><?php echo esc_html_e( 'Downloads', 'lsx-health-plan' ); ?></h3>
583 583
 			<ul class="week-download-box-list">
584 584
 				<?php
585
-				foreach ( $weekly_downloads as $weekly_download ) {
586
-					?>
585
+                    foreach ( $weekly_downloads as $weekly_download ) {
586
+                         ?>
587 587
 					<li><?php echo wp_kses_post( do_shortcode( '[download id="' . $weekly_download . '"]' ) ); ?></li>
588 588
 					<?php
589
-				}
590
-				?>
589
+                    }
590
+                    ?>
591 591
 			</ul>
592 592
 		</div>
593 593
 		<?php
594
-	}
594
+     }
595 595
 }
596 596
 
597 597
 /**
@@ -600,9 +600,9 @@  discard block
 block discarded – undo
600 600
  * @return void
601 601
  */
602 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';
603
+     global $shortcode_args;
604
+     $shortcode_args = $args;
605
+     include LSX_HEALTH_PLAN_PATH . '/templates/partials/shortcode-loop.php';
606 606
 }
607 607
 
608 608
 /**
@@ -611,10 +611,10 @@  discard block
 block discarded – undo
611 611
  * @return void
612 612
  */
613 613
 function lsx_health_plan_featured_video_block() {
614
-	if ( ! post_type_exists( 'video' ) ) {
615
-		return;
616
-	}
617
-	include LSX_HEALTH_PLAN_PATH . '/templates/featured-videos.php';
614
+     if ( ! post_type_exists( 'video' ) ) {
615
+          return;
616
+     }
617
+     include LSX_HEALTH_PLAN_PATH . '/templates/featured-videos.php';
618 618
 }
619 619
 
620 620
 /**
@@ -623,10 +623,10 @@  discard block
 block discarded – undo
623 623
  * @return void
624 624
  */
625 625
 function lsx_health_plan_featured_recipes_block() {
626
-	if ( ! post_type_exists( 'recipe' ) ) {
627
-		return;
628
-	}
629
-	include LSX_HEALTH_PLAN_PATH . '/templates/featured-recipes.php';
626
+     if ( ! post_type_exists( 'recipe' ) ) {
627
+          return;
628
+     }
629
+     include LSX_HEALTH_PLAN_PATH . '/templates/featured-recipes.php';
630 630
 }
631 631
 
632 632
 /**
@@ -635,7 +635,7 @@  discard block
 block discarded – undo
635 635
  * @return void
636 636
  */
637 637
 function lsx_health_plan_featured_tips_block() {
638
-	include LSX_HEALTH_PLAN_PATH . '/templates/featured-tips.php';
638
+     include LSX_HEALTH_PLAN_PATH . '/templates/featured-tips.php';
639 639
 }
640 640
 
641 641
 /**
@@ -645,11 +645,11 @@  discard block
 block discarded – undo
645 645
  * @return void
646 646
  */
647 647
 function lsx_health_plan_day_button() {
648
-	if ( lsx_health_plan_is_day_complete() ) {
649
-		lsx_health_plan_unlock_button();
650
-	} else {
651
-		lsx_health_plan_complete_button();
652
-	}
648
+     if ( lsx_health_plan_is_day_complete() ) {
649
+          lsx_health_plan_unlock_button();
650
+     } else {
651
+          lsx_health_plan_complete_button();
652
+     }
653 653
 }
654 654
 
655 655
 /**
@@ -658,7 +658,7 @@  discard block
 block discarded – undo
658 658
  * @return void
659 659
  */
660 660
 function lsx_health_plan_complete_button() {
661
-	?>
661
+     ?>
662 662
 	<div class="single-plan-inner-buttons">
663 663
 		<form action="<?php the_permalink(); ?>" method="post" class="form-complete-day complete-plan-btn">
664 664
 			<?php wp_nonce_field( 'complete', 'lsx-health-plan-actions' ); ?>
@@ -676,7 +676,7 @@  discard block
 block discarded – undo
676 676
  * @return void
677 677
  */
678 678
 function lsx_health_plan_unlock_button() {
679
-	?>
679
+     ?>
680 680
 	<div class="single-plan-inner-buttons">
681 681
 		<form action="<?php the_permalink(); ?>" method="post" class="form-complete-day complete-plan-btn">
682 682
 			<?php wp_nonce_field( 'unlock', 'lsx-health-plan-actions' ); ?>
@@ -695,10 +695,10 @@  discard block
 block discarded – undo
695 695
  * @return void
696 696
  */
697 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 ) {
700
-		require $tab_template_path;
701
-	}
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 ) {
700
+          require $tab_template_path;
701
+     }
702 702
 }
703 703
 
704 704
 /**
@@ -708,32 +708,32 @@  discard block
 block discarded – undo
708 708
  * @return void
709 709
  */
710 710
 function lsx_health_plan_single_tabs() {
711
-	$endpoint = get_query_var( 'endpoint' );
712
-	switch ( $endpoint ) {
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
-	}
733
-	$tab_template_path = apply_filters( 'lsx_health_plan_single_tab_path', $tab_template_path );
734
-	if ( '' !== $tab_template_path ) {
735
-		include $tab_template_path;
736
-	}
711
+     $endpoint = get_query_var( 'endpoint' );
712
+     switch ( $endpoint ) {
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
+     }
733
+     $tab_template_path = apply_filters( 'lsx_health_plan_single_tab_path', $tab_template_path );
734
+     if ( '' !== $tab_template_path ) {
735
+          include $tab_template_path;
736
+     }
737 737
 }
738 738
 
739 739
 /**
@@ -742,7 +742,7 @@  discard block
 block discarded – undo
742 742
  * @return void
743 743
  */
744 744
 function lsx_health_plan_recipe_data() {
745
-	include LSX_HEALTH_PLAN_PATH . '/templates/table-recipe-data.php';
745
+     include LSX_HEALTH_PLAN_PATH . '/templates/table-recipe-data.php';
746 746
 }
747 747
 
748 748
 /**
@@ -751,11 +751,11 @@  discard block
 block discarded – undo
751 751
  * @return recipe_type
752 752
  */
753 753
 function lsx_health_plan_recipe_type() {
754
-	$term_obj_list = get_the_terms( get_the_ID(), 'recipe-type' );
755
-	$recipe_type   = $term_obj_list[0]->name;
756
-	if ( ! empty( $recipe_type ) ) {
757
-		return $recipe_type;
758
-	}
754
+     $term_obj_list = get_the_terms( get_the_ID(), 'recipe-type' );
755
+     $recipe_type   = $term_obj_list[0]->name;
756
+     if ( ! empty( $recipe_type ) ) {
757
+          return $recipe_type;
758
+     }
759 759
 }
760 760
 
761 761
 /**
@@ -766,35 +766,35 @@  discard block
 block discarded – undo
766 766
  * @return void
767 767
  */
768 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'] ) {
773
-		$workout_video = esc_html( $group['connected_videos'] );
774
-		$giphy         = get_post_meta( $workout_video, 'video_giphy_source', true );
775
-		$youtube       = esc_url( get_post_meta( $workout_video, 'video_youtube_source', 1 ) );
776
-		$content       = get_post_field( 'post_content', $workout_video );
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 ) ) {
781
-			$giphy      = \lsx_health_plan\functions\get_video_url( $giphy );
782
-			$modal_body = $giphy; // WPCS: XSS OK.
783
-		} elseif ( ! empty( $youtube ) ) {
784
-			$modal_body = wp_oembed_get( $youtube, array( // WPCS: XSS OK.
785
-				'width' => 480,
786
-			) );
787
-		}
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 ) {
793
-			echo wp_kses_post( $play_button );
794
-		} else {
795
-			return $play_button;
796
-		}
797
-	}
769
+     $workout_video = '';
770
+     $giphy         = '';
771
+     $youtube       = '';
772
+     if ( isset( $group['connected_videos'] ) && '' !== $group['connected_videos'] ) {
773
+          $workout_video = esc_html( $group['connected_videos'] );
774
+          $giphy         = get_post_meta( $workout_video, 'video_giphy_source', true );
775
+          $youtube       = esc_url( get_post_meta( $workout_video, 'video_youtube_source', 1 ) );
776
+          $content       = get_post_field( 'post_content', $workout_video );
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 ) ) {
781
+               $giphy      = \lsx_health_plan\functions\get_video_url( $giphy );
782
+               $modal_body = $giphy; // WPCS: XSS OK.
783
+          } elseif ( ! empty( $youtube ) ) {
784
+               $modal_body = wp_oembed_get( $youtube, array( // WPCS: XSS OK.
785
+                    'width' => 480,
786
+               ) );
787
+          }
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 ) {
793
+               echo wp_kses_post( $play_button );
794
+          } else {
795
+               return $play_button;
796
+          }
797
+     }
798 798
 }
799 799
 
800 800
 /**
@@ -803,21 +803,21 @@  discard block
 block discarded – undo
803 803
  * @return void
804 804
  */
805 805
 function lsx_health_plan_recipe_archive_description() {
806
-	$description = '';
807
-	if ( is_post_type_archive( 'recipe' ) ) {
808
-		$description = \lsx_health_plan\functions\get_option( 'recipe_archive_description', '' );
809
-	} elseif ( is_post_type_archive( 'exercise' ) ) {
810
-		$description = \lsx_health_plan\functions\get_option( 'exercise_archive_description', '' );
811
-	} elseif ( is_tax() ) {
812
-		$description = get_the_archive_description();
813
-	}
814
-	if ( '' !== $description ) {
815
-		?>
806
+     $description = '';
807
+     if ( is_post_type_archive( 'recipe' ) ) {
808
+          $description = \lsx_health_plan\functions\get_option( 'recipe_archive_description', '' );
809
+     } elseif ( is_post_type_archive( 'exercise' ) ) {
810
+          $description = \lsx_health_plan\functions\get_option( 'exercise_archive_description', '' );
811
+     } elseif ( is_tax() ) {
812
+          $description = get_the_archive_description();
813
+     }
814
+     if ( '' !== $description ) {
815
+          ?>
816 816
 		<div class="lsx-hp-archive-description row">
817 817
 			<div class="col-xs-12 description-wrapper"><?php echo wp_kses_post( wpautop( $description ) ); ?></div>
818 818
 		</div>
819 819
 		<?php
820
-	}
820
+     }
821 821
 }
822 822
 
823 823
 /**
@@ -826,23 +826,23 @@  discard block
 block discarded – undo
826 826
  * @return void
827 827
  */
828 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 );
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() ) {
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
-	}
845
-	return $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 );
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() ) {
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
+     }
845
+     return $content;
846 846
 }
847 847
 
848 848
 /**
@@ -851,23 +851,23 @@  discard block
 block discarded – undo
851 851
  * @return void
852 852
  */
853 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 );
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() ) {
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
-	}
870
-	return $content_meal;
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 );
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() ) {
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
+     }
870
+     return $content_meal;
871 871
 }
872 872
 
873 873
 
@@ -878,36 +878,36 @@  discard block
 block discarded – undo
878 878
  * @return void
879 879
  */
880 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 ) ) {
884
-		$layout = strtolower( \lsx_health_plan\functions\get_option( 'workout_tab_layout', 'table' ) );
885
-
886
-		// Check for shortcode overrides.
887
-		if ( null !== $shortcode_args && isset( $shortcode_args['layout'] ) ) {
888
-			$layout = $shortcode_args['layout'];
889
-		}
890
-	} else {
891
-		$layout = 'table';
892
-	}
893
-
894
-	switch ( $layout ) {
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
-	}
907
-	$tab_template_path = apply_filters( 'lsx_health_plan_workout_tab_content_path', $tab_template_path );
908
-	if ( '' !== $tab_template_path ) {
909
-		include $tab_template_path;
910
-	}
881
+     global $group_name,$shortcode_args;
882
+     $group_name = 'workout_section_' . $index;
883
+     if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
884
+          $layout = strtolower( \lsx_health_plan\functions\get_option( 'workout_tab_layout', 'table' ) );
885
+
886
+          // Check for shortcode overrides.
887
+          if ( null !== $shortcode_args && isset( $shortcode_args['layout'] ) ) {
888
+               $layout = $shortcode_args['layout'];
889
+          }
890
+     } else {
891
+          $layout = 'table';
892
+     }
893
+
894
+     switch ( $layout ) {
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
+     }
907
+     $tab_template_path = apply_filters( 'lsx_health_plan_workout_tab_content_path', $tab_template_path );
908
+     if ( '' !== $tab_template_path ) {
909
+          include $tab_template_path;
910
+     }
911 911
 }
912 912
 
913 913
 /**
@@ -916,28 +916,28 @@  discard block
 block discarded – undo
916 916
  * @return void
917 917
  */
918 918
 function lsx_health_plan_workout_sets() {
919
-	if ( is_singular( 'workout' ) ) {
920
-		global $connected_workouts;
921
-		$connected_workouts = array( get_the_ID() );
922
-	}
923
-	if ( is_singular( 'plan' ) ) {
924
-
925
-		global $connected_workouts;
926
-
927
-		$section_key  = get_query_var( 'section' );
928
-		if ( '' !== $section && \lsx_health_plan\functions\plan\has_sections() ) {
929
-			$section_info = \lsx_health_plan\functions\plan\get_section_info( $section_key );
930
-			if ( isset( $section_info['connected_workouts'] ) && '' !== $section_info['connected_workouts'] ) {
931
-
932
-				$connected_workouts = \lsx_health_plan\functions\prep_array( $section_info['connected_workouts'] );
933
-			}
934
-		}
935
-	}
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 ) ) {
939
-		include $template_path;
940
-	}
919
+     if ( is_singular( 'workout' ) ) {
920
+          global $connected_workouts;
921
+          $connected_workouts = array( get_the_ID() );
922
+     }
923
+     if ( is_singular( 'plan' ) ) {
924
+
925
+          global $connected_workouts;
926
+
927
+          $section_key  = get_query_var( 'section' );
928
+          if ( '' !== $section && \lsx_health_plan\functions\plan\has_sections() ) {
929
+               $section_info = \lsx_health_plan\functions\plan\get_section_info( $section_key );
930
+               if ( isset( $section_info['connected_workouts'] ) && '' !== $section_info['connected_workouts'] ) {
931
+
932
+                    $connected_workouts = \lsx_health_plan\functions\prep_array( $section_info['connected_workouts'] );
933
+               }
934
+          }
935
+     }
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 ) ) {
939
+          include $template_path;
940
+     }
941 941
 }
942 942
 
943 943
 /**
@@ -947,48 +947,48 @@  discard block
 block discarded – undo
947 947
  * @return void
948 948
  */
949 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 ) ) {
959
-		$query_args    = array(
960
-			'orderby'   => 'date',
961
-			'order'     => 'DESC',
962
-			'post_type' => 'recipe',
963
-			'post__in'  => $connected_recipes,
964
-		);
965
-		$recipes = new WP_Query( $query_args );
966
-		?>
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 ) ) {
959
+          $query_args    = array(
960
+               'orderby'   => 'date',
961
+               'order'     => 'DESC',
962
+               'post_type' => 'recipe',
963
+               'post__in'  => $connected_recipes,
964
+          );
965
+          $recipes = new WP_Query( $query_args );
966
+          ?>
967 967
 		<div class="recipes">
968 968
 			<div class="row eating-row">
969 969
 			<?php
970
-			if ( $recipes->have_posts() ) {
971
-				while ( $recipes->have_posts() ) {
972
-					$recipes->the_post();
973
-					if ( false !== $args['modal'] ) {
974
-						\lsx_health_plan\functions\recipes\register_recipe_modal();
975
-					}
976
-					?>
970
+               if ( $recipes->have_posts() ) {
971
+                    while ( $recipes->have_posts() ) {
972
+                         $recipes->the_post();
973
+                         if ( false !== $args['modal'] ) {
974
+                              \lsx_health_plan\functions\recipes\register_recipe_modal();
975
+                         }
976
+                         ?>
977 977
 					<div class="recipe-column">
978 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">
979 979
 							<div class="recipe-feature-img">
980 980
 								<?php
981
-								$featured_image = get_the_post_thumbnail();
982
-								if ( ! empty( $featured_image ) && '' !== $featured_image ) {
983
-									the_post_thumbnail( 'lsx-thumbnail-square', array(
984
-										'class' => 'aligncenter',
985
-									) );
986
-								} else {
987
-									?>
981
+                                        $featured_image = get_the_post_thumbnail();
982
+                                        if ( ! empty( $featured_image ) && '' !== $featured_image ) {
983
+                                             the_post_thumbnail( 'lsx-thumbnail-square', array(
984
+                                                  'class' => 'aligncenter',
985
+                                             ) );
986
+                                        } else {
987
+                                             ?>
988 988
 									<img loading="lazy" class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __DIR__ ) . 'assets/images/placeholder.jpg' ); ?>">
989 989
 									<?php
990
-								}
991
-								?>
990
+                                        }
991
+                                        ?>
992 992
 							</div>
993 993
 							<div class="recipe-content">
994 994
 								<h3 class="recipe-title"><?php the_title(); ?></h3>
@@ -997,41 +997,41 @@  discard block
 block discarded – undo
997 997
 						</a>
998 998
 					</div>
999 999
 				<?php
1000
-				}
1001
-			}
1002
-			wp_reset_postdata();
1003
-			?>
1000
+                    }
1001
+               }
1002
+               wp_reset_postdata();
1003
+               ?>
1004 1004
 			</div>
1005 1005
 		</div>
1006 1006
 		<?php
1007 1007
 
1008
-	}
1008
+     }
1009 1009
 }
1010 1010
 
1011 1011
 /**
1012 1012
  * Output the connected.
1013 1013
  */
1014 1014
 function lsx_hp_recipe_plan_meta( $args = array() ) {
1015
-	$defaults = array();
1016
-	$top_level_plans = array();
1017
-	// Get meals this exercise is connected to.
1018
-	$plans = get_post_meta( get_the_ID(), 'connected_plans', true );
1019
-	if ( ! empty( $plans ) ) {
1020
-		$plan       = end( $plans );
1021
-		$has_parent = wp_get_post_parent_id( $plan );
1022
-		if ( 0 === $has_parent ) {
1023
-			$top_level_plans[] = $plan;
1024
-		} elseif ( false !== $top_level_plans ) {
1025
-			$top_level_plans[] = $has_parent;
1026
-		}
1027
-	}
1028
-	if ( ! empty( $top_level_plans ) && ( '' !== $top_level_plans ) ) {
1029
-		$top_level_plans = array_unique( $top_level_plans );
1030
-		$top_level_plan  = end( $top_level_plans );
1031
-		?>
1015
+     $defaults = array();
1016
+     $top_level_plans = array();
1017
+     // Get meals this exercise is connected to.
1018
+     $plans = get_post_meta( get_the_ID(), 'connected_plans', true );
1019
+     if ( ! empty( $plans ) ) {
1020
+          $plan       = end( $plans );
1021
+          $has_parent = wp_get_post_parent_id( $plan );
1022
+          if ( 0 === $has_parent ) {
1023
+               $top_level_plans[] = $plan;
1024
+          } elseif ( false !== $top_level_plans ) {
1025
+               $top_level_plans[] = $has_parent;
1026
+          }
1027
+     }
1028
+     if ( ! empty( $top_level_plans ) && ( '' !== $top_level_plans ) ) {
1029
+          $top_level_plans = array_unique( $top_level_plans );
1030
+          $top_level_plan  = end( $top_level_plans );
1031
+          ?>
1032 1032
 			<span class="recipe-type recipe-parent"><?php echo esc_html( get_the_title( $top_level_plan ) ); ?></span>
1033 1033
 		<?php
1034
-	}
1034
+     }
1035 1035
 }
1036 1036
 
1037 1037
 /**
@@ -1039,42 +1039,42 @@  discard block
 block discarded – undo
1039 1039
  */
1040 1040
 function lsx_hp_exercise_plan_meta() {
1041 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 );
1046
-
1047
-	if ( '' !== $workouts && ! is_array( $workouts ) ) {
1048
-		$workouts = array( $workouts );
1049
-	}
1050
-	if ( ! empty( $workouts ) ) {
1051
-		foreach ( $workouts as $workout ) {
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 ) ) {
1056
-				$plans = array( $plans );
1057
-			}
1058
-			if ( ! empty( $plans ) ) {
1059
-				foreach ( $plans as $plan ) {
1060
-					$has_parent = wp_get_post_parent_id( $plan );
1061
-					if ( 0 === $has_parent ) {
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 ) ) {
1072
-		$top_level_plans = array_unique( $top_level_plans );
1073
-		$top_level_plan  = end( $top_level_plans );
1074
-		?>
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 );
1046
+
1047
+     if ( '' !== $workouts && ! is_array( $workouts ) ) {
1048
+          $workouts = array( $workouts );
1049
+     }
1050
+     if ( ! empty( $workouts ) ) {
1051
+          foreach ( $workouts as $workout ) {
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 ) ) {
1056
+                    $plans = array( $plans );
1057
+               }
1058
+               if ( ! empty( $plans ) ) {
1059
+                    foreach ( $plans as $plan ) {
1060
+                         $has_parent = wp_get_post_parent_id( $plan );
1061
+                         if ( 0 === $has_parent ) {
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 ) ) {
1072
+          $top_level_plans = array_unique( $top_level_plans );
1073
+          $top_level_plan  = end( $top_level_plans );
1074
+          ?>
1075 1075
 			<span class="recipe-type recipe-parent"><?php echo esc_html( get_the_title( $top_level_plan ) ); ?></span>
1076 1076
 		<?php
1077
-	}
1077
+     }
1078 1078
 }
1079 1079
 
1080 1080
 /**
@@ -1084,7 +1084,7 @@  discard block
 block discarded – undo
1084 1084
  * @return void
1085 1085
  */
1086 1086
 function lsx_hp_single_related( $related_content, $post_type_text ) {
1087
-	?>
1087
+     ?>
1088 1088
 	<section id="lsx-hp-related">
1089 1089
 		<div class="row lsx-related-posts lsx-related-posts-title">
1090 1090
 			<div class="col-xs-12">
@@ -1095,14 +1095,14 @@  discard block
 block discarded – undo
1095 1095
 			<div class="col-xs-12">
1096 1096
 				<div class="lsx-related-posts-wrapper">
1097 1097
 					<?php
1098
-					$i = 0;
1099
-					foreach ( $related_content as $article ) {
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
-						?>
1098
+                         $i = 0;
1099
+                         foreach ( $related_content as $article ) {
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 1106
 						<article id="post-<?php echo esc_html( $article ); ?>" class="lsx-slot post">
1107 1107
 							<div class="entry-layout lsx-hp-shadow">
1108 1108
 								<div class="entry-layout-content">
@@ -1110,25 +1110,25 @@  discard block
 block discarded – undo
1110 1110
 										<div class="entry-image">
1111 1111
 											<a href="<?php echo esc_url( $post_link ); ?>" class="thumbnail">
1112 1112
 											<?php
1113
-											$featured_image = get_the_post_thumbnail( $article, 'lsx-thumbnail-wide' );
1114
-											if ( ! empty( $featured_image ) && '' !== $featured_image ) {
1115
-												echo wp_kses_post( $featured_image );
1116
-											} else {
1117
-												?>
1113
+                                                       $featured_image = get_the_post_thumbnail( $article, 'lsx-thumbnail-wide' );
1114
+                                                       if ( ! empty( $featured_image ) && '' !== $featured_image ) {
1115
+                                                            echo wp_kses_post( $featured_image );
1116
+                                                       } else {
1117
+                                                            ?>
1118 1118
 												<img loading="lazy" class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __FILE__ ) . '../assets/images/placeholder.jpg' ); ?>">
1119 1119
 												<?php
1120
-											}
1121
-											?>
1120
+                                                       }
1121
+                                                       ?>
1122 1122
 											</a>
1123 1123
 										</div>
1124 1124
 										<div class="entry-meta">
1125 1125
 										<?php
1126
-										foreach ( $post_categories as $c ) {
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>';
1130
-										}
1131
-										if ( ! empty( $cats ) ) { ?>
1126
+                                                  foreach ( $post_categories as $c ) {
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>';
1130
+                                                  }
1131
+                                                  if ( ! empty( $cats ) ) { ?>
1132 1132
 											<div class="post-categories"><span></span><?php echo wp_kses_post( implode( ', ', $cats ) ); ?></div>
1133 1133
 										<?php } ?>
1134 1134
 										</div>
@@ -1143,8 +1143,8 @@  discard block
 block discarded – undo
1143 1143
 						</article>
1144 1144
 
1145 1145
 					<?php
1146
-					if (++$i === 3) break;
1147
-					} ?>
1146
+                         if (++$i === 3) break;
1147
+                         } ?>
1148 1148
 				</div>
1149 1149
 			</div>
1150 1150
 		</div>
@@ -1159,32 +1159,32 @@  discard block
 block discarded – undo
1159 1159
  * @return void
1160 1160
  */
1161 1161
 function lsx_hp_member_connected( $connected_members, $post_type ) {
1162
-	if ( ! empty( $connected_members ) ) {
1163
-		$content = '<div id="hp-connected-members" class="hp-connected-members connected-' . $post_type . '">';
1164
-		foreach ( $connected_members as $member ) {
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>';
1170
-
1171
-			$roles = '';
1172
-			$terms = get_the_terms( $member, 'team_role' );
1173
-
1174
-			if ( $terms && ! is_wp_error( $terms ) ) {
1175
-				$roles = array();
1176
-
1177
-				foreach ( $terms as $term ) {
1178
-					$roles[] = $term->name;
1179
-				}
1180
-
1181
-				$roles = join( ', ', $roles );
1182
-			}
1183
-			$member_roles = '' !== $roles ? "<small class='lsx-team-roles'>$roles</small>" : '';
1184
-
1185
-			$content .= '<p>' . $member_roles . ': ' . $member_link . '</p>';
1186
-		}
1187
-		$content .= '</div>';
1188
-		return $content;
1189
-	}
1162
+     if ( ! empty( $connected_members ) ) {
1163
+          $content = '<div id="hp-connected-members" class="hp-connected-members connected-' . $post_type . '">';
1164
+          foreach ( $connected_members as $member ) {
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>';
1170
+
1171
+               $roles = '';
1172
+               $terms = get_the_terms( $member, 'team_role' );
1173
+
1174
+               if ( $terms && ! is_wp_error( $terms ) ) {
1175
+                    $roles = array();
1176
+
1177
+                    foreach ( $terms as $term ) {
1178
+                         $roles[] = $term->name;
1179
+                    }
1180
+
1181
+                    $roles = join( ', ', $roles );
1182
+               }
1183
+               $member_roles = '' !== $roles ? "<small class='lsx-team-roles'>$roles</small>" : '';
1184
+
1185
+               $content .= '<p>' . $member_roles . ': ' . $member_link . '</p>';
1186
+          }
1187
+          $content .= '</div>';
1188
+          return $content;
1189
+     }
1190 1190
 }
Please login to merge, or discard this patch.
classes/admin/settings/class-workout.php 1 patch
Indentation   +234 added lines, -234 removed lines patch added patch discarded remove patch
@@ -12,245 +12,245 @@
 block discarded – undo
12 12
  */
13 13
 class Workout {
14 14
 
15
-	/**
16
-	 * Holds class instance
17
-	 *
18
-	 * @since 1.0.0
19
-	 *
20
-	 * @var      object \lsx_health_plan\classes\admin\Workout()
21
-	 */
22
-	protected static $instance = null;
15
+     /**
16
+      * Holds class instance
17
+      *
18
+      * @since 1.0.0
19
+      *
20
+      * @var      object \lsx_health_plan\classes\admin\Workout()
21
+      */
22
+     protected static $instance = null;
23 23
 
24
-	/**
25
-	 * Constructor
26
-	 */
27
-	public function __construct() {
28
-		add_action( 'lsx_hp_settings_page_workout_top', array( $this, 'settings' ), 1, 1 );
29
-	}
24
+     /**
25
+      * Constructor
26
+      */
27
+     public function __construct() {
28
+          add_action( 'lsx_hp_settings_page_workout_top', array( $this, 'settings' ), 1, 1 );
29
+     }
30 30
 
31
-	/**
32
-	 * Return an instance of this class.
33
-	 *
34
-	 * @since 1.0.0
35
-	 *
36
-	 * @return    object \lsx_health_plan\classes\admin\Workout()    A single instance of this class.
37
-	 */
38
-	public static function get_instance() {
39
-		// If the single instance hasn't been set, set it now.
40
-		if ( null === self::$instance ) {
41
-			self::$instance = new self();
42
-		}
43
-		return self::$instance;
44
-	}
31
+     /**
32
+      * Return an instance of this class.
33
+      *
34
+      * @since 1.0.0
35
+      *
36
+      * @return    object \lsx_health_plan\classes\admin\Workout()    A single instance of this class.
37
+      */
38
+     public static function get_instance() {
39
+          // If the single instance hasn't been set, set it now.
40
+          if ( null === self::$instance ) {
41
+               self::$instance = new self();
42
+          }
43
+          return self::$instance;
44
+     }
45 45
 
46
-	/**
47
-	 * Registers the general settings.
48
-	 *
49
-	 * @param object $cmb new_cmb2_box().
50
-	 * @return void
51
-	 */
52
-	public function settings( $cmb ) {
53
-		$cmb->add_field(
54
-			array(
55
-				'name'        => __( 'Disable Workouts', 'lsx-health-plan' ),
56
-				'id'          => 'workout_disabled',
57
-				'type'        => 'checkbox',
58
-				'value'       => 1,
59
-				'default'     => 0,
60
-				'description' => __( 'Disable workout post type if you are wanting a minimal site.', 'lsx-health-plan' ),
61
-			)
62
-		);
63
-		$cmb->add_field(
64
-			array(
65
-				'name'    => __( 'Your Warm-up Intro', 'lsx-health-plan' ),
66
-				'id'      => 'warmup_intro',
67
-				'type'    => 'textarea_small',
68
-				'value'   => '',
69
-				'default' => __( "Don't forget your warm-up! It's a vital part of your daily workout routine.", 'lsx-health-plan' ),
70
-			)
71
-		);
72
-		if ( post_type_exists( 'workout' ) ) {
73
-			$cmb->add_field(
74
-				array(
75
-					'name'    => __( 'Your Workout Intro', 'lsx-health-plan' ),
76
-					'id'      => 'workout_intro',
77
-					'type'    => 'textarea_small',
78
-					'value'   => '',
79
-					'default' => __( "Let's do this! Smash your daily workout and reach your fitness goals.", 'lsx-health-plan' ),
80
-				)
81
-			);
82
-		}
83
-		$cmb->add_field(
84
-			array(
85
-				'before_row'  => '<h4><b><u>Layout Options</u></b></h4>',
86
-				'id'          => 'workout_tab_layout',
87
-				'type'        => 'select',
88
-				'name'        => __( 'Workout Tab Layout', 'lsx-health-plan' ),
89
-				'description' => __( 'Choose the layout for the workouts.', 'lsx-health-plan' ),
90
-				'options'     => array(
91
-					'table' => __( 'Table', 'lsx-health-plan' ),
92
-					'list'  => __( 'List', 'lsx-health-plan' ),
93
-					'grid'  => __( 'Grid', 'lsx-health-plan' ),
94
-				),
95
-			)
96
-		);
97
-		$cmb->add_field(
98
-			array(
99
-				'id'          => 'workout_tab_link',
100
-				'type'        => 'select',
101
-				'name'        => __( 'Workout Tab Link', 'lsx-health-plan' ),
102
-				'description' => __( 'Choose to show the excerpt, full content or nothing.', 'lsx-health-plan' ),
103
-				'options'     => array(
104
-					''       => __( 'None', 'lsx-health-plan' ),
105
-					'single' => __( 'Single', 'lsx-health-plan' ),
106
-					'modal'  => __( 'Modal', 'lsx-health-plan' ),
107
-				),
108
-				'default' => '',
109
-			)
110
-		);
111
-		$cmb->add_field(
112
-			array(
113
-				'id'          => 'workout_tab_modal_content',
114
-				'type'        => 'select',
115
-				'name'        => __( 'Modal Content', 'lsx-health-plan' ),
116
-				'description' => __( 'Choose to show the excerpt, full content or nothing. For the modal content only', 'lsx-health-plan' ),
117
-				'options'     => array(
118
-					''        => __( 'None', 'lsx-health-plan' ),
119
-					'excerpt' => __( 'Excerpt', 'lsx-health-plan' ),
120
-					'full'    => __( 'Full Content', 'lsx-health-plan' ),
121
-				),
122
-				'default' => '',
123
-			)
124
-		);
125
-		$cmb->add_field(
126
-			array(
127
-				'id'          => 'workout_tab_columns',
128
-				'type'        => 'select',
129
-				'name'        => __( 'Grid Columns', 'lsx-health-plan' ),
130
-				'description' => __( 'If you are displaying a grid, set the amount of columns you want to use.', 'lsx-health-plan' ),
131
-				'options'     => array(
132
-					'12' => __( '1', 'lsx-health-plan' ),
133
-					'6'  => __( '2', 'lsx-health-plan' ),
134
-					'4'  => __( '3', 'lsx-health-plan' ),
135
-					'3'  => __( '4', 'lsx-health-plan' ),
136
-					'2'  => __( '6', 'lsx-health-plan' ),
137
-				),
138
-				'default' => '4',
139
-			)
140
-		);
141
-		$cmb->add_field(
142
-			array(
143
-				'id'          => 'workout_tab_content',
144
-				'type'        => 'select',
145
-				'name'        => __( 'Grid Content', 'lsx-health-plan' ),
146
-				'description' => __( 'Choose to show the excerpt, full content or nothing. For the grid layout only', 'lsx-health-plan' ),
147
-				'options'     => array(
148
-					''        => __( 'None', 'lsx-health-plan' ),
149
-					'excerpt' => __( 'Excerpt', 'lsx-health-plan' ),
150
-					'full'    => __( 'Full Content', 'lsx-health-plan' ),
151
-				),
152
-				'default'     => '',
153
-			)
154
-		);
46
+     /**
47
+      * Registers the general settings.
48
+      *
49
+      * @param object $cmb new_cmb2_box().
50
+      * @return void
51
+      */
52
+     public function settings( $cmb ) {
53
+          $cmb->add_field(
54
+               array(
55
+                    'name'        => __( 'Disable Workouts', 'lsx-health-plan' ),
56
+                    'id'          => 'workout_disabled',
57
+                    'type'        => 'checkbox',
58
+                    'value'       => 1,
59
+                    'default'     => 0,
60
+                    'description' => __( 'Disable workout post type if you are wanting a minimal site.', 'lsx-health-plan' ),
61
+               )
62
+          );
63
+          $cmb->add_field(
64
+               array(
65
+                    'name'    => __( 'Your Warm-up Intro', 'lsx-health-plan' ),
66
+                    'id'      => 'warmup_intro',
67
+                    'type'    => 'textarea_small',
68
+                    'value'   => '',
69
+                    'default' => __( "Don't forget your warm-up! It's a vital part of your daily workout routine.", 'lsx-health-plan' ),
70
+               )
71
+          );
72
+          if ( post_type_exists( 'workout' ) ) {
73
+               $cmb->add_field(
74
+                    array(
75
+                         'name'    => __( 'Your Workout Intro', 'lsx-health-plan' ),
76
+                         'id'      => 'workout_intro',
77
+                         'type'    => 'textarea_small',
78
+                         'value'   => '',
79
+                         'default' => __( "Let's do this! Smash your daily workout and reach your fitness goals.", 'lsx-health-plan' ),
80
+                    )
81
+               );
82
+          }
83
+          $cmb->add_field(
84
+               array(
85
+                    'before_row'  => '<h4><b><u>Layout Options</u></b></h4>',
86
+                    'id'          => 'workout_tab_layout',
87
+                    'type'        => 'select',
88
+                    'name'        => __( 'Workout Tab Layout', 'lsx-health-plan' ),
89
+                    'description' => __( 'Choose the layout for the workouts.', 'lsx-health-plan' ),
90
+                    'options'     => array(
91
+                         'table' => __( 'Table', 'lsx-health-plan' ),
92
+                         'list'  => __( 'List', 'lsx-health-plan' ),
93
+                         'grid'  => __( 'Grid', 'lsx-health-plan' ),
94
+                    ),
95
+               )
96
+          );
97
+          $cmb->add_field(
98
+               array(
99
+                    'id'          => 'workout_tab_link',
100
+                    'type'        => 'select',
101
+                    'name'        => __( 'Workout Tab Link', 'lsx-health-plan' ),
102
+                    'description' => __( 'Choose to show the excerpt, full content or nothing.', 'lsx-health-plan' ),
103
+                    'options'     => array(
104
+                         ''       => __( 'None', 'lsx-health-plan' ),
105
+                         'single' => __( 'Single', 'lsx-health-plan' ),
106
+                         'modal'  => __( 'Modal', 'lsx-health-plan' ),
107
+                    ),
108
+                    'default' => '',
109
+               )
110
+          );
111
+          $cmb->add_field(
112
+               array(
113
+                    'id'          => 'workout_tab_modal_content',
114
+                    'type'        => 'select',
115
+                    'name'        => __( 'Modal Content', 'lsx-health-plan' ),
116
+                    'description' => __( 'Choose to show the excerpt, full content or nothing. For the modal content only', 'lsx-health-plan' ),
117
+                    'options'     => array(
118
+                         ''        => __( 'None', 'lsx-health-plan' ),
119
+                         'excerpt' => __( 'Excerpt', 'lsx-health-plan' ),
120
+                         'full'    => __( 'Full Content', 'lsx-health-plan' ),
121
+                    ),
122
+                    'default' => '',
123
+               )
124
+          );
125
+          $cmb->add_field(
126
+               array(
127
+                    'id'          => 'workout_tab_columns',
128
+                    'type'        => 'select',
129
+                    'name'        => __( 'Grid Columns', 'lsx-health-plan' ),
130
+                    'description' => __( 'If you are displaying a grid, set the amount of columns you want to use.', 'lsx-health-plan' ),
131
+                    'options'     => array(
132
+                         '12' => __( '1', 'lsx-health-plan' ),
133
+                         '6'  => __( '2', 'lsx-health-plan' ),
134
+                         '4'  => __( '3', 'lsx-health-plan' ),
135
+                         '3'  => __( '4', 'lsx-health-plan' ),
136
+                         '2'  => __( '6', 'lsx-health-plan' ),
137
+                    ),
138
+                    'default' => '4',
139
+               )
140
+          );
141
+          $cmb->add_field(
142
+               array(
143
+                    'id'          => 'workout_tab_content',
144
+                    'type'        => 'select',
145
+                    'name'        => __( 'Grid Content', 'lsx-health-plan' ),
146
+                    'description' => __( 'Choose to show the excerpt, full content or nothing. For the grid layout only', 'lsx-health-plan' ),
147
+                    'options'     => array(
148
+                         ''        => __( 'None', 'lsx-health-plan' ),
149
+                         'excerpt' => __( 'Excerpt', 'lsx-health-plan' ),
150
+                         'full'    => __( 'Full Content', 'lsx-health-plan' ),
151
+                    ),
152
+                    'default'     => '',
153
+               )
154
+          );
155 155
 
156
-		$cmb->add_field(
157
-			array(
158
-				'before_row' => '<h4><b><u>URL Slug Options</u></b></h4><p style="font-style: italic;">If you need to translate the custom slug for this custom post type, do so below.</p>',
159
-				'name'       =>  __( 'Single Workout Slug', 'lsx-health-plan' ),
160
-				'id'         => 'endpoint_workout',
161
-				'type'       => 'input',
162
-				'value'      => '',
163
-				'default'    => 'workout',
164
-			)
165
-		);
166
-		$cmb->add_field(
167
-			array(
168
-				'name'    =>  __( 'Workouts Archive Slug', 'lsx-health-plan' ),
169
-				'id'      => 'endpoint_workout_archive',
170
-				'type'    => 'input',
171
-				'value'   => '',
172
-				'default' => 'workouts',
173
-			)
174
-		);
175
-		$cmb->add_field(
176
-			array(
177
-				'name'    =>  __( 'Warm Up Slug', 'lsx-health-plan' ),
178
-				'id'      => 'endpoint_warm_up',
179
-				'type'    => 'input',
180
-				'value'   => '',
181
-				'default' => 'warm-up',
182
-			)
183
-		);
156
+          $cmb->add_field(
157
+               array(
158
+                    'before_row' => '<h4><b><u>URL Slug Options</u></b></h4><p style="font-style: italic;">If you need to translate the custom slug for this custom post type, do so below.</p>',
159
+                    'name'       =>  __( 'Single Workout Slug', 'lsx-health-plan' ),
160
+                    'id'         => 'endpoint_workout',
161
+                    'type'       => 'input',
162
+                    'value'      => '',
163
+                    'default'    => 'workout',
164
+               )
165
+          );
166
+          $cmb->add_field(
167
+               array(
168
+                    'name'    =>  __( 'Workouts Archive Slug', 'lsx-health-plan' ),
169
+                    'id'      => 'endpoint_workout_archive',
170
+                    'type'    => 'input',
171
+                    'value'   => '',
172
+                    'default' => 'workouts',
173
+               )
174
+          );
175
+          $cmb->add_field(
176
+               array(
177
+                    'name'    =>  __( 'Warm Up Slug', 'lsx-health-plan' ),
178
+                    'id'      => 'endpoint_warm_up',
179
+                    'type'    => 'input',
180
+                    'value'   => '',
181
+                    'default' => 'warm-up',
182
+               )
183
+          );
184 184
 		
185 185
 		
186
-		$cmb->add_field(
187
-			array(
188
-				'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
189
-				'name'        => __( 'Warm Up', 'lsx-health-plan' ),
190
-				'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
191
-				'limit'       => 1,
192
-				'id'          => 'plan_warmup',
193
-				'type'        => 'post_search_ajax',
194
-				'query_args'  => array(
195
-					'post_type'      => 'post',
196
-					'post_status'    => array( 'publish' ),
197
-					'posts_per_page' => -1,
198
-				),
199
-			)
200
-		);
201
-		$cmb->add_field(
202
-			array(
203
-				'name'        => __( 'Workout', 'lsx-health-plan' ),
204
-				'description' => __( 'Set a default workout routine.', 'lsx-health-plan' ),
205
-				'limit'       => 1,
206
-				'id'          => 'connected_workouts',
207
-				'type'        => 'post_search_ajax',
208
-				'query_args'  => array(
209
-					'post_type'      => 'workout',
210
-					'post_status'    => array( 'publish' ),
211
-					'posts_per_page' => -1,
212
-				),
213
-			)
214
-		);
215
-		if ( function_exists( 'download_monitor' ) ) {
216
-			$page_url    = 'https://wordpress.org/plugins/download-monitor/';
217
-			$plugin_name = 'Download Monitor';
218
-			$description = sprintf(
219
-				/* translators: %s: The subscription info */
220
-				__( 'If you are using <a target="_blank" href="%1$s">%2$s</a> you can set a default download file for your meal here.', 'lsx-search' ),
221
-				$page_url,
222
-				$plugin_name
223
-			);
224
-			$cmb->add_field(
225
-				array(
226
-					'name'        => __( 'Default Warm Up PDF', 'lsx-health-plan' ),
227
-					'description' => $description,
228
-					'id'          => 'download_page',
229
-					'type'        => 'post_search_ajax',
230
-					'limit'       => 1,
231
-					'query_args'  => array(
232
-						'post_type'      => array( 'dlm_download' ),
233
-						'post_status'    => array( 'publish' ),
234
-						'posts_per_page' => -1,
235
-					),
236
-				)
237
-			);
238
-			$cmb->add_field(
239
-				array(
240
-					'name'        => __( 'Default Workout PDF', 'lsx-health-plan' ),
241
-					'description' => $description,
242
-					'id'          => 'download_workout',
243
-					'type'        => 'post_search_ajax',
244
-					'limit'       => 1,
245
-					'query_args'  => array(
246
-						'post_type'      => array( 'dlm_download' ),
247
-						'post_status'    => array( 'publish' ),
248
-						'posts_per_page' => -1,
249
-					),
250
-					'after_row'   => __( '<p style="font-style: italic;">If you have changed any URL slugs, please remember re-save your permalinks in Settings > Permalinks.</p>', 'lsx-health-plan' ),
251
-				)
252
-			);
253
-		}
254
-	}
186
+          $cmb->add_field(
187
+               array(
188
+                    'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
189
+                    'name'        => __( 'Warm Up', 'lsx-health-plan' ),
190
+                    'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
191
+                    'limit'       => 1,
192
+                    'id'          => 'plan_warmup',
193
+                    'type'        => 'post_search_ajax',
194
+                    'query_args'  => array(
195
+                         'post_type'      => 'post',
196
+                         'post_status'    => array( 'publish' ),
197
+                         'posts_per_page' => -1,
198
+                    ),
199
+               )
200
+          );
201
+          $cmb->add_field(
202
+               array(
203
+                    'name'        => __( 'Workout', 'lsx-health-plan' ),
204
+                    'description' => __( 'Set a default workout routine.', 'lsx-health-plan' ),
205
+                    'limit'       => 1,
206
+                    'id'          => 'connected_workouts',
207
+                    'type'        => 'post_search_ajax',
208
+                    'query_args'  => array(
209
+                         'post_type'      => 'workout',
210
+                         'post_status'    => array( 'publish' ),
211
+                         'posts_per_page' => -1,
212
+                    ),
213
+               )
214
+          );
215
+          if ( function_exists( 'download_monitor' ) ) {
216
+               $page_url    = 'https://wordpress.org/plugins/download-monitor/';
217
+               $plugin_name = 'Download Monitor';
218
+               $description = sprintf(
219
+                    /* translators: %s: The subscription info */
220
+                    __( 'If you are using <a target="_blank" href="%1$s">%2$s</a> you can set a default download file for your meal here.', 'lsx-search' ),
221
+                    $page_url,
222
+                    $plugin_name
223
+               );
224
+               $cmb->add_field(
225
+                    array(
226
+                         'name'        => __( 'Default Warm Up PDF', 'lsx-health-plan' ),
227
+                         'description' => $description,
228
+                         'id'          => 'download_page',
229
+                         'type'        => 'post_search_ajax',
230
+                         'limit'       => 1,
231
+                         'query_args'  => array(
232
+                              'post_type'      => array( 'dlm_download' ),
233
+                              'post_status'    => array( 'publish' ),
234
+                              'posts_per_page' => -1,
235
+                         ),
236
+                    )
237
+               );
238
+               $cmb->add_field(
239
+                    array(
240
+                         'name'        => __( 'Default Workout PDF', 'lsx-health-plan' ),
241
+                         'description' => $description,
242
+                         'id'          => 'download_workout',
243
+                         'type'        => 'post_search_ajax',
244
+                         'limit'       => 1,
245
+                         'query_args'  => array(
246
+                              'post_type'      => array( 'dlm_download' ),
247
+                              'post_status'    => array( 'publish' ),
248
+                              'posts_per_page' => -1,
249
+                         ),
250
+                         'after_row'   => __( '<p style="font-style: italic;">If you have changed any URL slugs, please remember re-save your permalinks in Settings > Permalinks.</p>', 'lsx-health-plan' ),
251
+                    )
252
+               );
253
+          }
254
+     }
255 255
 }
256 256
 Workout::get_instance();
Please login to merge, or discard this patch.
classes/post-types/class-plan.php 1 patch
Indentation   +522 added lines, -522 removed lines patch added patch discarded remove patch
@@ -10,207 +10,207 @@  discard block
 block discarded – undo
10 10
  */
11 11
 class Plan {
12 12
 
13
-	/**
14
-	 * Holds class instance
15
-	 *
16
-	 * @since 1.0.0
17
-	 *
18
-	 * @var      object \lsx_health_plan\classes\Plan()
19
-	 */
20
-	protected static $instance = null;
21
-
22
-	/**
23
-	 * Holds post_type slug used as an index
24
-	 *
25
-	 * @since 1.0.0
26
-	 *
27
-	 * @var      string
28
-	 */
29
-	public $slug = 'plan';
30
-
31
-	/**
32
-	 * Constructor
33
-	 */
34
-	public function __construct() {
35
-
36
-		add_action( 'init', array( $this, 'register_post_type' ) );
37
-		add_action( 'init', array( $this, 'plan_type_taxonomy_setup' ) );
38
-		add_action( 'init', array( $this, 'week_taxonomy_setup' ) );
39
-
40
-		// Icons for the plan types.
41
-		add_action( 'create_term', array( $this, 'save_meta' ), 10, 2 );
42
-		add_action( 'edit_term', array( $this, 'save_meta' ), 10, 2 );
43
-		$prefix_taxonomy = 'plan-type';
44
-		add_action( sprintf( '%s_edit_form_fields', $prefix_taxonomy ), array( $this, 'add_thumbnail_form_field' ), 3, 1 );
45
-
46
-		// Register the Metaboxes.
47
-		add_action( 'cmb2_admin_init', array( $this, 'featured_metabox' ), 5 );
48
-		add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ), 5 );
49
-		add_action( 'cmb2_admin_init', array( $this, 'plan_connections' ), 5 );
50
-		add_action( 'cmb2_admin_init', array( $this, 'sections_metabox_loop' ), 1 );
51
-
52
-		add_filter( 'get_the_archive_title', array( $this, 'get_the_archive_title' ), 100 );
53
-		//add_filter( 'lsx_global_header_title', array( $this, 'hp_recipe_header_title' ), 200, 1 );
54
-
55
-		// Template Redirects.
56
-		add_filter( 'lsx_health_plan_archive_template', array( $this, 'enable_post_type' ), 10, 1 );
57
-		add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
58
-
59
-		// Plan Archive Actions.
60
-		add_action( 'pre_get_posts', array( $this, 'set_parent_only' ), 10, 1 );
61
-		add_filter( 'get_the_archive_title', array( $this, 'get_the_archive_title' ), 100 );
62
-		add_action( 'lsx_content_top', 'lsx_hp_plan_archive_filters', 10, 1 );
63
-		add_filter( 'lsx_hp_disable_plan_archive_filters', '\lsx_health_plan\functions\plan\is_search_enabled', 10, 1 );
64
-		add_filter( 'lsx_hp_disable_plan_archive_filters', '\lsx_health_plan\functions\plan\is_filters_disabled', 10, 1 );
65
-
66
-		//Breadcrumbs
67
-		add_filter( 'woocommerce_get_breadcrumb', array( $this, 'plan_breadcrumb_filter' ), 30, 1 );
13
+     /**
14
+      * Holds class instance
15
+      *
16
+      * @since 1.0.0
17
+      *
18
+      * @var      object \lsx_health_plan\classes\Plan()
19
+      */
20
+     protected static $instance = null;
21
+
22
+     /**
23
+      * Holds post_type slug used as an index
24
+      *
25
+      * @since 1.0.0
26
+      *
27
+      * @var      string
28
+      */
29
+     public $slug = 'plan';
30
+
31
+     /**
32
+      * Constructor
33
+      */
34
+     public function __construct() {
35
+
36
+          add_action( 'init', array( $this, 'register_post_type' ) );
37
+          add_action( 'init', array( $this, 'plan_type_taxonomy_setup' ) );
38
+          add_action( 'init', array( $this, 'week_taxonomy_setup' ) );
39
+
40
+          // Icons for the plan types.
41
+          add_action( 'create_term', array( $this, 'save_meta' ), 10, 2 );
42
+          add_action( 'edit_term', array( $this, 'save_meta' ), 10, 2 );
43
+          $prefix_taxonomy = 'plan-type';
44
+          add_action( sprintf( '%s_edit_form_fields', $prefix_taxonomy ), array( $this, 'add_thumbnail_form_field' ), 3, 1 );
45
+
46
+          // Register the Metaboxes.
47
+          add_action( 'cmb2_admin_init', array( $this, 'featured_metabox' ), 5 );
48
+          add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ), 5 );
49
+          add_action( 'cmb2_admin_init', array( $this, 'plan_connections' ), 5 );
50
+          add_action( 'cmb2_admin_init', array( $this, 'sections_metabox_loop' ), 1 );
51
+
52
+          add_filter( 'get_the_archive_title', array( $this, 'get_the_archive_title' ), 100 );
53
+          //add_filter( 'lsx_global_header_title', array( $this, 'hp_recipe_header_title' ), 200, 1 );
54
+
55
+          // Template Redirects.
56
+          add_filter( 'lsx_health_plan_archive_template', array( $this, 'enable_post_type' ), 10, 1 );
57
+          add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
58
+
59
+          // Plan Archive Actions.
60
+          add_action( 'pre_get_posts', array( $this, 'set_parent_only' ), 10, 1 );
61
+          add_filter( 'get_the_archive_title', array( $this, 'get_the_archive_title' ), 100 );
62
+          add_action( 'lsx_content_top', 'lsx_hp_plan_archive_filters', 10, 1 );
63
+          add_filter( 'lsx_hp_disable_plan_archive_filters', '\lsx_health_plan\functions\plan\is_search_enabled', 10, 1 );
64
+          add_filter( 'lsx_hp_disable_plan_archive_filters', '\lsx_health_plan\functions\plan\is_filters_disabled', 10, 1 );
65
+
66
+          //Breadcrumbs
67
+          add_filter( 'woocommerce_get_breadcrumb', array( $this, 'plan_breadcrumb_filter' ), 30, 1 );
68 68
 		
69
-	}
70
-
71
-	/**
72
-	 * Return an instance of this class.
73
-	 *
74
-	 * @since 1.0.0
75
-	 *
76
-	 * @return    object \lsx_health_plan\classes\Meal_Plan()    A single instance of this class.
77
-	 */
78
-	public static function get_instance() {
79
-		// If the single instance hasn't been set, set it now.
80
-		if ( null === self::$instance ) {
81
-			self::$instance = new self();
82
-		}
83
-		return self::$instance;
84
-	}
85
-	/**
86
-	 * Register the post type.
87
-	 */
88
-	public function register_post_type() {
89
-		$labels = array(
90
-			'name'               => esc_html__( 'Plans', 'lsx-health-plan' ),
91
-			'singular_name'      => esc_html__( 'Plan', 'lsx-health-plan' ),
92
-			'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
93
-			'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
94
-			'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
95
-			'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
96
-			'all_items'          => esc_html__( 'All Plans', 'lsx-health-plan' ),
97
-			'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
98
-			'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
99
-			'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
100
-			'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
101
-			'parent_item_colon'  => '',
102
-			'menu_name'          => esc_html__( 'Plans', 'lsx-health-plan' ),
103
-		);
104
-		$args   = array(
105
-			'labels'             => $labels,
106
-			'public'             => true,
107
-			'publicly_queryable' => true,
108
-			'show_ui'            => true,
109
-			'show_in_menu'       => true,
110
-			'show_in_rest'       => true,
111
-			'menu_icon'          => 'dashicons-welcome-write-blog',
112
-			'query_var'          => true,
113
-			'rewrite'            => array(
114
-				'slug' => \lsx_health_plan\functions\get_option( 'plan_single_slug', 'plan' ),
115
-			),
116
-			'capability_type'    => 'page',
117
-			'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plans' ),
118
-			'hierarchical'       => false,
119
-			'menu_position'      => null,
120
-			'supports'           => array(
121
-				'title',
122
-				'editor',
123
-				'thumbnail',
124
-				'page-attributes',
125
-				'custom-fields',
126
-			),
127
-		);
128
-		register_post_type( 'plan', $args );
129
-	}
130
-
131
-	/**
132
-	 * Register the Type taxonomy.
133
-	 */
134
-	public function plan_type_taxonomy_setup() {
135
-		$labels = array(
136
-			'name'              => esc_html_x( 'Plan Type', 'taxonomy general name', 'lsx-health-plan' ),
137
-			'singular_name'     => esc_html_x( 'Plan Type', 'taxonomy singular name', 'lsx-health-plan' ),
138
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
139
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
140
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
141
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
142
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
143
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
144
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
145
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
146
-			'menu_name'         => esc_html__( 'Plan Types', 'lsx-health-plan' ),
147
-		);
148
-
149
-		$args = array(
150
-			'hierarchical'      => true,
151
-			'labels'            => $labels,
152
-			'show_ui'           => true,
153
-			'show_admin_column' => true,
154
-			'query_var'         => true,
155
-			'rewrite'           => array(
156
-				'slug' => 'plan-type',
157
-			),
158
-		);
159
-
160
-		register_taxonomy( 'plan-type', array( 'plan' ), $args );
161
-	}
162
-
163
-	/**
164
-	 * Register the Week taxonomy.
165
-	 */
166
-	public function week_taxonomy_setup() {
167
-		$labels = array(
168
-			'name'              => esc_html_x( 'Week', 'taxonomy general name', 'lsx-health-plan' ),
169
-			'singular_name'     => esc_html_x( 'Week', 'taxonomy singular name', 'lsx-health-plan' ),
170
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
171
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
172
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
173
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
174
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
175
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
176
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
177
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
178
-			'menu_name'         => esc_html__( 'Weeks', 'lsx-health-plan' ),
179
-		);
180
-
181
-		$args = array(
182
-			'hierarchical'      => true,
183
-			'labels'            => $labels,
184
-			'show_ui'           => true,
185
-			'show_admin_column' => true,
186
-			'query_var'         => true,
187
-			'show_in_rest'      => true,
188
-			'rewrite'           => array(
189
-				'slug' => 'week',
190
-			),
191
-		);
192
-
193
-		register_taxonomy( 'week', array( 'plan' ), $args );
194
-	}
195
-
196
-	/**
197
-	 * Output the form field for this metadata when adding a new term
198
-	 *
199
-	 * @since 0.1.0
200
-	 */
201
-	public function add_thumbnail_form_field( $term = false ) {
202
-		if ( is_object( $term ) ) {
203
-			$value         = get_term_meta( $term->term_id, 'thumbnail', true );
204
-			$image_preview = wp_get_attachment_image_src( $value, 'thumbnail' );
205
-
206
-			if ( is_array( $image_preview ) ) {
207
-				$image_preview = '<img style="height: 50px; width: 50px;" src="' . esc_url( $image_preview[0] ) . '" width="' . $image_preview[1] . '" height="' . $image_preview[2] . '" class="alignnone size-thumbnail d wp-image-' . $value . '" />';
208
-			}
209
-		} else {
210
-			$image_preview = false;
211
-			$value         = false;
212
-		}
213
-		?>
69
+     }
70
+
71
+     /**
72
+      * Return an instance of this class.
73
+      *
74
+      * @since 1.0.0
75
+      *
76
+      * @return    object \lsx_health_plan\classes\Meal_Plan()    A single instance of this class.
77
+      */
78
+     public static function get_instance() {
79
+          // If the single instance hasn't been set, set it now.
80
+          if ( null === self::$instance ) {
81
+               self::$instance = new self();
82
+          }
83
+          return self::$instance;
84
+     }
85
+     /**
86
+      * Register the post type.
87
+      */
88
+     public function register_post_type() {
89
+          $labels = array(
90
+               'name'               => esc_html__( 'Plans', 'lsx-health-plan' ),
91
+               'singular_name'      => esc_html__( 'Plan', 'lsx-health-plan' ),
92
+               'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
93
+               'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
94
+               'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
95
+               'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
96
+               'all_items'          => esc_html__( 'All Plans', 'lsx-health-plan' ),
97
+               'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
98
+               'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
99
+               'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
100
+               'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
101
+               'parent_item_colon'  => '',
102
+               'menu_name'          => esc_html__( 'Plans', 'lsx-health-plan' ),
103
+          );
104
+          $args   = array(
105
+               'labels'             => $labels,
106
+               'public'             => true,
107
+               'publicly_queryable' => true,
108
+               'show_ui'            => true,
109
+               'show_in_menu'       => true,
110
+               'show_in_rest'       => true,
111
+               'menu_icon'          => 'dashicons-welcome-write-blog',
112
+               'query_var'          => true,
113
+               'rewrite'            => array(
114
+                    'slug' => \lsx_health_plan\functions\get_option( 'plan_single_slug', 'plan' ),
115
+               ),
116
+               'capability_type'    => 'page',
117
+               'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plans' ),
118
+               'hierarchical'       => false,
119
+               'menu_position'      => null,
120
+               'supports'           => array(
121
+                    'title',
122
+                    'editor',
123
+                    'thumbnail',
124
+                    'page-attributes',
125
+                    'custom-fields',
126
+               ),
127
+          );
128
+          register_post_type( 'plan', $args );
129
+     }
130
+
131
+     /**
132
+      * Register the Type taxonomy.
133
+      */
134
+     public function plan_type_taxonomy_setup() {
135
+          $labels = array(
136
+               'name'              => esc_html_x( 'Plan Type', 'taxonomy general name', 'lsx-health-plan' ),
137
+               'singular_name'     => esc_html_x( 'Plan Type', 'taxonomy singular name', 'lsx-health-plan' ),
138
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
139
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
140
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
141
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
142
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
143
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
144
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
145
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
146
+               'menu_name'         => esc_html__( 'Plan Types', 'lsx-health-plan' ),
147
+          );
148
+
149
+          $args = array(
150
+               'hierarchical'      => true,
151
+               'labels'            => $labels,
152
+               'show_ui'           => true,
153
+               'show_admin_column' => true,
154
+               'query_var'         => true,
155
+               'rewrite'           => array(
156
+                    'slug' => 'plan-type',
157
+               ),
158
+          );
159
+
160
+          register_taxonomy( 'plan-type', array( 'plan' ), $args );
161
+     }
162
+
163
+     /**
164
+      * Register the Week taxonomy.
165
+      */
166
+     public function week_taxonomy_setup() {
167
+          $labels = array(
168
+               'name'              => esc_html_x( 'Week', 'taxonomy general name', 'lsx-health-plan' ),
169
+               'singular_name'     => esc_html_x( 'Week', 'taxonomy singular name', 'lsx-health-plan' ),
170
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
171
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
172
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
173
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
174
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
175
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
176
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
177
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
178
+               'menu_name'         => esc_html__( 'Weeks', 'lsx-health-plan' ),
179
+          );
180
+
181
+          $args = array(
182
+               'hierarchical'      => true,
183
+               'labels'            => $labels,
184
+               'show_ui'           => true,
185
+               'show_admin_column' => true,
186
+               'query_var'         => true,
187
+               'show_in_rest'      => true,
188
+               'rewrite'           => array(
189
+                    'slug' => 'week',
190
+               ),
191
+          );
192
+
193
+          register_taxonomy( 'week', array( 'plan' ), $args );
194
+     }
195
+
196
+     /**
197
+      * Output the form field for this metadata when adding a new term
198
+      *
199
+      * @since 0.1.0
200
+      */
201
+     public function add_thumbnail_form_field( $term = false ) {
202
+          if ( is_object( $term ) ) {
203
+               $value         = get_term_meta( $term->term_id, 'thumbnail', true );
204
+               $image_preview = wp_get_attachment_image_src( $value, 'thumbnail' );
205
+
206
+               if ( is_array( $image_preview ) ) {
207
+                    $image_preview = '<img style="height: 50px; width: 50px;" src="' . esc_url( $image_preview[0] ) . '" width="' . $image_preview[1] . '" height="' . $image_preview[2] . '" class="alignnone size-thumbnail d wp-image-' . $value . '" />';
208
+               }
209
+          } else {
210
+               $image_preview = false;
211
+               $value         = false;
212
+          }
213
+          ?>
214 214
 		<tr class="form-field form-required term-thumbnail-wrap">
215 215
 			<th scope="row"><label for="thumbnail"><?php esc_html_e( 'Icon Image', 'lsx-health-plan' ); ?></label></th>
216 216
 			<td>
@@ -224,331 +224,331 @@  discard block
 block discarded – undo
224 224
 			</td>
225 225
 		</tr>
226 226
 		<?php
227
-	}
228
-
229
-	/**
230
-	 * Saves the Taxonomy term icon image
231
-	 *
232
-	 * @since 0.1.0
233
-	 *
234
-	 * @param  int    $term_id
235
-	 * @param  string $taxonomy
236
-	 */
237
-	public function save_meta( $term_id = 0, $taxonomy = '' ) {
238
-		if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
239
-			return;
240
-		}
241
-
242
-		if ( ! isset( $_POST['thumbnail'] ) ) {
243
-			return;
244
-		}
245
-
246
-		if ( check_admin_referer( 'lsx_hp_term_thumbnail_nonce', 'lsx_hp_term_thumbnail_nonce' ) ) {
247
-			if ( ! isset( $_POST['thumbnail'] ) ) {
248
-				return;
249
-			}
250
-
251
-			$thumbnail_meta = sanitize_text_field( $_POST['thumbnail'] );
252
-			$thumbnail_meta = ! empty( $thumbnail_meta ) ? $thumbnail_meta : '';
253
-
254
-			if ( empty( $thumbnail_meta ) ) {
255
-				delete_term_meta( $term_id, 'thumbnail' );
256
-			} else {
257
-				update_term_meta( $term_id, 'thumbnail', $thumbnail_meta );
258
-			}
259
-		}
260
-	}
261
-
262
-	/**
263
-	 * Define the metabox and field configurations.
264
-	 */
265
-	public function details_metaboxes() {
266
-		$cmb = new_cmb2_box( array(
267
-			'id'           => $this->slug . '_details_metabox',
268
-			'title'        => __( 'Details', 'lsx-health-plan' ),
269
-			'object_types' => array( $this->slug ), // Post type
270
-			'context'      => 'normal',
271
-			'priority'     => 'high',
272
-			'show_names'   => true,
273
-		) );
274
-
275
-		$cmb->add_field( array(
276
-			'name' => __( 'Plan Short Description', 'lsx-health-plan' ),
277
-			'id'   => $this->slug . '_short_description',
278
-			'type' => 'textarea_small',
279
-			'desc' => __( 'Add a small description for this plan (optional)', 'lsx-health-plan' ),
280
-		) );
281
-
282
-		$warmup_type = 'page';
283
-		if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
284
-			$warmup_type = array( 'page', 'workout' );
285
-		}
286
-		$cmb->add_field( array(
287
-			'name'       => __( 'Warmup', 'lsx-health-plan' ),
288
-			'desc'       => __( 'Connect the warm up page that applies to this day plan using the field provided.', 'lsx-health-plan' ),
289
-			'id'         => $this->slug . '_warmup',
290
-			'type'       => 'post_search_ajax',
291
-			// Optional :
292
-			'limit'      => 3,  // Limit selection to X items only (default 1)
293
-			'sortable'   => true, // Allow selected items to be sortable (default false)
294
-			'query_args' => array(
295
-				'post_type'      => $warmup_type,
296
-				'post_status'    => array( 'publish' ),
297
-				'posts_per_page' => -1,
298
-			),
299
-		) );
300
-	}
301
-
302
-	/**
303
-	 * Adds the post type to the different arrays.
304
-	 *
305
-	 * @param array $post_types
306
-	 * @return array
307
-	 */
308
-	public function enable_post_type( $post_types = array() ) {
309
-		$post_types[] = $this->slug;
310
-		return $post_types;
311
-	}
312
-
313
-	/**
314
-	 * Registers the workout connections on the plan post type.
315
-	 *
316
-	 * @return void
317
-	 */
318
-	public function plan_connections() {
319
-		$cmb = new_cmb2_box(
320
-			array(
321
-				'id'           => $this->slug . '_connections_metabox',
322
-				'title'        => __( 'Plans', 'lsx-health-plan' ),
323
-				'object_types' => array( 'workout', 'meal', 'tip', 'recipe' ),
324
-				'context'      => 'normal',
325
-				'priority'     => 'high',
326
-				'show_names'   => true,
327
-			)
328
-		);
329
-		$cmb->add_field(
330
-			array(
331
-				'name'       => __( 'Plan', 'lsx-health-plan' ),
332
-				'id'         => 'connected_plans',
333
-				'desc'       => __( 'Connect this to the day plan it applies to, using the field provided.', 'lsx-health-plan' ),
334
-				'type'       => 'post_search_ajax',
335
-				'limit'      => 15,
336
-				'sortable'   => true,
337
-				'query_args' => array(
338
-					'post_type'      => array( 'plan' ),
339
-					'post_status'    => array( 'publish' ),
340
-					'posts_per_page' => -1,
341
-				),
342
-			)
343
-		);
344
-	}
345
-
346
-	/**
347
-	 * Remove the "Archives:" from the post type.
348
-	 *
349
-	 * @param string $title the term title.
350
-	 * @return string
351
-	 */
352
-	public function get_the_archive_title( $title ) {
353
-		if ( is_post_type_archive( 'plan' ) ) {
354
-			$title = __( 'Our health plans', 'lsx-health-plan' );
355
-		}
356
-		return $title;
357
-	}
358
-
359
-	/**
360
-	 * Set the post type archive to show the parent plans only.
361
-	 *
362
-	 * @param object $wp_query
363
-	 * @return array
364
-	 */
365
-	public function set_parent_only( $wp_query ) {
366
-		if ( ! is_admin() && $wp_query->is_main_query() && ( $wp_query->is_post_type_archive( 'plan' ) || $wp_query->is_tax( 'plan-type' ) ) ) {
367
-			$wp_query->set( 'post_parent', '0' );
368
-		}
369
-	}
370
-
371
-	/**
372
-	 * Define the metabox and field configurations.
373
-	 */
374
-	public function featured_metabox() {
375
-		$cmb = new_cmb2_box(
376
-			array(
377
-				'id'           => $this->slug . '_featured_metabox_plan',
378
-				'title'        => __( 'Featured Plan', 'lsx-health-plan' ),
379
-				'object_types' => array( $this->slug ), // Post type
380
-				'context'      => 'side',
381
-				'priority'     => 'high',
382
-				'show_names'   => true,
383
-			)
384
-		);
385
-		$cmb->add_field(
386
-			array(
387
-				'name'       => __( 'Featured Plan', 'lsx-health-plan' ),
388
-				'desc'       => __( 'Enable a featured plan' ),
389
-				'id'         => $this->slug . '_featured_plan',
390
-				'type'       => 'checkbox',
391
-				'show_on_cb' => 'cmb2_hide_if_no_cats',
392
-			)
393
-		);
394
-	}
395
-
396
-	/**
397
-	 * Define the metabox and field configurations.
398
-	 */
399
-	public function sections_metabox_loop() {
400
-		$cmb = new_cmb2_box(
401
-			array(
402
-				'id'           => $this->slug . '_sections_metabox',
403
-				'title'        => __( 'Sections', 'lsx-health-plan' ),
404
-				'object_types' => array( $this->slug ), // Post type.
405
-				'context'      => 'normal',
406
-				'priority'     => 'low',
407
-				'show_names'   => true,
408
-			)
409
-		);
410
-
411
-		/*
227
+     }
228
+
229
+     /**
230
+      * Saves the Taxonomy term icon image
231
+      *
232
+      * @since 0.1.0
233
+      *
234
+      * @param  int    $term_id
235
+      * @param  string $taxonomy
236
+      */
237
+     public function save_meta( $term_id = 0, $taxonomy = '' ) {
238
+          if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
239
+               return;
240
+          }
241
+
242
+          if ( ! isset( $_POST['thumbnail'] ) ) {
243
+               return;
244
+          }
245
+
246
+          if ( check_admin_referer( 'lsx_hp_term_thumbnail_nonce', 'lsx_hp_term_thumbnail_nonce' ) ) {
247
+               if ( ! isset( $_POST['thumbnail'] ) ) {
248
+                    return;
249
+               }
250
+
251
+               $thumbnail_meta = sanitize_text_field( $_POST['thumbnail'] );
252
+               $thumbnail_meta = ! empty( $thumbnail_meta ) ? $thumbnail_meta : '';
253
+
254
+               if ( empty( $thumbnail_meta ) ) {
255
+                    delete_term_meta( $term_id, 'thumbnail' );
256
+               } else {
257
+                    update_term_meta( $term_id, 'thumbnail', $thumbnail_meta );
258
+               }
259
+          }
260
+     }
261
+
262
+     /**
263
+      * Define the metabox and field configurations.
264
+      */
265
+     public function details_metaboxes() {
266
+          $cmb = new_cmb2_box( array(
267
+               'id'           => $this->slug . '_details_metabox',
268
+               'title'        => __( 'Details', 'lsx-health-plan' ),
269
+               'object_types' => array( $this->slug ), // Post type
270
+               'context'      => 'normal',
271
+               'priority'     => 'high',
272
+               'show_names'   => true,
273
+          ) );
274
+
275
+          $cmb->add_field( array(
276
+               'name' => __( 'Plan Short Description', 'lsx-health-plan' ),
277
+               'id'   => $this->slug . '_short_description',
278
+               'type' => 'textarea_small',
279
+               'desc' => __( 'Add a small description for this plan (optional)', 'lsx-health-plan' ),
280
+          ) );
281
+
282
+          $warmup_type = 'page';
283
+          if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
284
+               $warmup_type = array( 'page', 'workout' );
285
+          }
286
+          $cmb->add_field( array(
287
+               'name'       => __( 'Warmup', 'lsx-health-plan' ),
288
+               'desc'       => __( 'Connect the warm up page that applies to this day plan using the field provided.', 'lsx-health-plan' ),
289
+               'id'         => $this->slug . '_warmup',
290
+               'type'       => 'post_search_ajax',
291
+               // Optional :
292
+               'limit'      => 3,  // Limit selection to X items only (default 1)
293
+               'sortable'   => true, // Allow selected items to be sortable (default false)
294
+               'query_args' => array(
295
+                    'post_type'      => $warmup_type,
296
+                    'post_status'    => array( 'publish' ),
297
+                    'posts_per_page' => -1,
298
+               ),
299
+          ) );
300
+     }
301
+
302
+     /**
303
+      * Adds the post type to the different arrays.
304
+      *
305
+      * @param array $post_types
306
+      * @return array
307
+      */
308
+     public function enable_post_type( $post_types = array() ) {
309
+          $post_types[] = $this->slug;
310
+          return $post_types;
311
+     }
312
+
313
+     /**
314
+      * Registers the workout connections on the plan post type.
315
+      *
316
+      * @return void
317
+      */
318
+     public function plan_connections() {
319
+          $cmb = new_cmb2_box(
320
+               array(
321
+                    'id'           => $this->slug . '_connections_metabox',
322
+                    'title'        => __( 'Plans', 'lsx-health-plan' ),
323
+                    'object_types' => array( 'workout', 'meal', 'tip', 'recipe' ),
324
+                    'context'      => 'normal',
325
+                    'priority'     => 'high',
326
+                    'show_names'   => true,
327
+               )
328
+          );
329
+          $cmb->add_field(
330
+               array(
331
+                    'name'       => __( 'Plan', 'lsx-health-plan' ),
332
+                    'id'         => 'connected_plans',
333
+                    'desc'       => __( 'Connect this to the day plan it applies to, using the field provided.', 'lsx-health-plan' ),
334
+                    'type'       => 'post_search_ajax',
335
+                    'limit'      => 15,
336
+                    'sortable'   => true,
337
+                    'query_args' => array(
338
+                         'post_type'      => array( 'plan' ),
339
+                         'post_status'    => array( 'publish' ),
340
+                         'posts_per_page' => -1,
341
+                    ),
342
+               )
343
+          );
344
+     }
345
+
346
+     /**
347
+      * Remove the "Archives:" from the post type.
348
+      *
349
+      * @param string $title the term title.
350
+      * @return string
351
+      */
352
+     public function get_the_archive_title( $title ) {
353
+          if ( is_post_type_archive( 'plan' ) ) {
354
+               $title = __( 'Our health plans', 'lsx-health-plan' );
355
+          }
356
+          return $title;
357
+     }
358
+
359
+     /**
360
+      * Set the post type archive to show the parent plans only.
361
+      *
362
+      * @param object $wp_query
363
+      * @return array
364
+      */
365
+     public function set_parent_only( $wp_query ) {
366
+          if ( ! is_admin() && $wp_query->is_main_query() && ( $wp_query->is_post_type_archive( 'plan' ) || $wp_query->is_tax( 'plan-type' ) ) ) {
367
+               $wp_query->set( 'post_parent', '0' );
368
+          }
369
+     }
370
+
371
+     /**
372
+      * Define the metabox and field configurations.
373
+      */
374
+     public function featured_metabox() {
375
+          $cmb = new_cmb2_box(
376
+               array(
377
+                    'id'           => $this->slug . '_featured_metabox_plan',
378
+                    'title'        => __( 'Featured Plan', 'lsx-health-plan' ),
379
+                    'object_types' => array( $this->slug ), // Post type
380
+                    'context'      => 'side',
381
+                    'priority'     => 'high',
382
+                    'show_names'   => true,
383
+               )
384
+          );
385
+          $cmb->add_field(
386
+               array(
387
+                    'name'       => __( 'Featured Plan', 'lsx-health-plan' ),
388
+                    'desc'       => __( 'Enable a featured plan' ),
389
+                    'id'         => $this->slug . '_featured_plan',
390
+                    'type'       => 'checkbox',
391
+                    'show_on_cb' => 'cmb2_hide_if_no_cats',
392
+               )
393
+          );
394
+     }
395
+
396
+     /**
397
+      * Define the metabox and field configurations.
398
+      */
399
+     public function sections_metabox_loop() {
400
+          $cmb = new_cmb2_box(
401
+               array(
402
+                    'id'           => $this->slug . '_sections_metabox',
403
+                    'title'        => __( 'Sections', 'lsx-health-plan' ),
404
+                    'object_types' => array( $this->slug ), // Post type.
405
+                    'context'      => 'normal',
406
+                    'priority'     => 'low',
407
+                    'show_names'   => true,
408
+               )
409
+          );
410
+
411
+          /*
412 412
 		This is where the repeatable group is defined, each field has the same ID as the legacy field.
413 413
 		There is a function which runs and adds to looped fields to individual fields for WP Query compatability.
414 414
 		*/
415
-		$group = $cmb->add_field(
416
-			array(
417
-				'id'      => $this->slug . '_sections',
418
-				'type'    => 'group',
419
-				'options' => array(
420
-					'group_title'   => __( 'Section', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
421
-					'add_button'    => __( 'Add section', 'lsx-health-plan' ),
422
-					'remove_button' => __( 'Remove section', 'lsx-health-plan' ),
423
-					'sortable'      => true,
424
-					'closed'        => true, // true to have the groups closed by default
425
-				),
426
-				'classes' => 'lsx-admin-row',
415
+          $group = $cmb->add_field(
416
+               array(
417
+                    'id'      => $this->slug . '_sections',
418
+                    'type'    => 'group',
419
+                    'options' => array(
420
+                         'group_title'   => __( 'Section', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
421
+                         'add_button'    => __( 'Add section', 'lsx-health-plan' ),
422
+                         'remove_button' => __( 'Remove section', 'lsx-health-plan' ),
423
+                         'sortable'      => true,
424
+                         'closed'        => true, // true to have the groups closed by default
425
+                    ),
426
+                    'classes' => 'lsx-admin-row',
427 427
 				
428
-			)
429
-		);
430
-
431
-		$cmb->add_group_field(
432
-			$group,
433
-			array(
434
-				'name'       => __( 'Title', 'lsx-health-plan' ),
435
-				'id'         => 'title',
436
-				'type'       => 'text',
437
-				'desc'       => __( 'e.g Day 1 / Week 1', 'lsx-health-plan' ),
438
-				'classes'    => 'lsx-field-col  lsx-field-col-50',
439
-			)
440
-		);
441
-
442
-		$cmb->add_group_field(
443
-			$group,
444
-			array(
445
-				'name'       => __( 'Group', 'lsx-health-plan' ),
446
-				'id'         => 'group',
447
-				'type'       => 'text',
448
-				'desc'       => __( 'e.g Week 1 / January', 'lsx-health-plan' ),
449
-				'classes'    => 'lsx-field-col  lsx-field-col-50',
450
-			)
451
-		);
452
-
453
-		$cmb->add_group_field(
454
-			$group,
455
-			array(
456
-				'name' => __( 'Overview', 'lsx-health-plan' ),
457
-				'id'   => 'description',
458
-				'type' => 'wysiwyg',
459
-			)
460
-		);
461
-
462
-		if ( post_type_exists( 'workout' ) ) {
463
-			$cmb->add_group_field(
464
-				$group,
465
-				array(
466
-					'name'       => __( 'Workouts', 'lsx-health-plan' ),
467
-					'id'         => 'connected_workouts',
468
-					'desc'       => __( 'Connect the workout(s) that apply to this section.', 'lsx-health-plan' ),
469
-					'type'       => 'post_search_ajax',
470
-					'limit'      => 15,
471
-					'sortable'   => true,
472
-					'query_args' => array(
473
-						'post_type'      => array( 'workout' ),
474
-						'post_status'    => array( 'publish' ),
475
-						'posts_per_page' => -1,
476
-					),
477
-					'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
478
-				)
479
-			);
480
-		}
481
-
482
-		if ( post_type_exists( 'meal' ) ) {
483
-			$cmb->add_group_field(
484
-				$group,
485
-				array(
486
-					'name'       => __( 'Meals', 'lsx-health-plan' ),
487
-					'desc'       => __( 'Connect the meal(s) that apply to this section.', 'lsx-health-plan' ),
488
-					'id'         => 'connected_meals',
489
-					'type'       => 'post_search_ajax',
490
-					// Optional :
491
-					'limit'      => 15, // Limit selection to X items only (default 1)
492
-					'sortable'   => true, // Allow selected items to be sortable (default false)
493
-					'query_args' => array(
494
-						'post_type'      => array( 'meal' ),
495
-						'post_status'    => array( 'publish' ),
496
-						'posts_per_page' => -1,
497
-					),
498
-					'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
499
-				)
500
-			);
501
-		}
502
-		if ( post_type_exists( 'tip' ) ) {
503
-			$cmb->add_group_field(
504
-				$group,
505
-				array(
506
-					'name'       => __( 'Tips', 'lsx-health-plan' ),
507
-					'id'         => 'connected_tips',
508
-					'desc'       => __( 'Connect the tip(s) that apply to this section.', 'lsx-health-plan' ),
509
-					'type'       => 'post_search_ajax',
510
-					// Optional :
511
-					'limit'      => 15,  // Limit selection to X items only (default 1)
512
-					'sortable'   => true,  // Allow selected items to be sortable (default false)
513
-					'query_args' => array(
514
-						'post_type'      => array( 'tip' ),
515
-						'post_status'    => array( 'publish' ),
516
-						'posts_per_page' => -1,
517
-					),
518
-					'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
519
-				)
520
-			);
521
-		}
522
-	}
523
-
524
-	/**
525
-	 * Holds the array for the single plan breadcrumbs.
526
-	 *
527
-	 * @var array $crumbs
528
-	 * @return array
529
-	 */
530
-	public function plan_breadcrumb_filter( $crumbs ) {
531
-		if ( is_singular( 'plan' ) ) {
532
-			$plan          = \lsx_health_plan\functions\get_option( 'endpoint_plan', 'plan' );
533
-			$plans         = \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plan' );	
534
-			$plan_name     = get_the_title();
535
-			$url           = get_post_type_archive_link( $plan );
536
-			$term_obj_list = get_the_terms( get_the_ID(), 'plan-type' );
537
-			$plan_type     = $term_obj_list[0]->name;
538
-			$plan_type_url = get_term_link( $term_obj_list[0]->term_id );
428
+               )
429
+          );
430
+
431
+          $cmb->add_group_field(
432
+               $group,
433
+               array(
434
+                    'name'       => __( 'Title', 'lsx-health-plan' ),
435
+                    'id'         => 'title',
436
+                    'type'       => 'text',
437
+                    'desc'       => __( 'e.g Day 1 / Week 1', 'lsx-health-plan' ),
438
+                    'classes'    => 'lsx-field-col  lsx-field-col-50',
439
+               )
440
+          );
441
+
442
+          $cmb->add_group_field(
443
+               $group,
444
+               array(
445
+                    'name'       => __( 'Group', 'lsx-health-plan' ),
446
+                    'id'         => 'group',
447
+                    'type'       => 'text',
448
+                    'desc'       => __( 'e.g Week 1 / January', 'lsx-health-plan' ),
449
+                    'classes'    => 'lsx-field-col  lsx-field-col-50',
450
+               )
451
+          );
452
+
453
+          $cmb->add_group_field(
454
+               $group,
455
+               array(
456
+                    'name' => __( 'Overview', 'lsx-health-plan' ),
457
+                    'id'   => 'description',
458
+                    'type' => 'wysiwyg',
459
+               )
460
+          );
461
+
462
+          if ( post_type_exists( 'workout' ) ) {
463
+               $cmb->add_group_field(
464
+                    $group,
465
+                    array(
466
+                         'name'       => __( 'Workouts', 'lsx-health-plan' ),
467
+                         'id'         => 'connected_workouts',
468
+                         'desc'       => __( 'Connect the workout(s) that apply to this section.', 'lsx-health-plan' ),
469
+                         'type'       => 'post_search_ajax',
470
+                         'limit'      => 15,
471
+                         'sortable'   => true,
472
+                         'query_args' => array(
473
+                              'post_type'      => array( 'workout' ),
474
+                              'post_status'    => array( 'publish' ),
475
+                              'posts_per_page' => -1,
476
+                         ),
477
+                         'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
478
+                    )
479
+               );
480
+          }
481
+
482
+          if ( post_type_exists( 'meal' ) ) {
483
+               $cmb->add_group_field(
484
+                    $group,
485
+                    array(
486
+                         'name'       => __( 'Meals', 'lsx-health-plan' ),
487
+                         'desc'       => __( 'Connect the meal(s) that apply to this section.', 'lsx-health-plan' ),
488
+                         'id'         => 'connected_meals',
489
+                         'type'       => 'post_search_ajax',
490
+                         // Optional :
491
+                         'limit'      => 15, // Limit selection to X items only (default 1)
492
+                         'sortable'   => true, // Allow selected items to be sortable (default false)
493
+                         'query_args' => array(
494
+                              'post_type'      => array( 'meal' ),
495
+                              'post_status'    => array( 'publish' ),
496
+                              'posts_per_page' => -1,
497
+                         ),
498
+                         'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
499
+                    )
500
+               );
501
+          }
502
+          if ( post_type_exists( 'tip' ) ) {
503
+               $cmb->add_group_field(
504
+                    $group,
505
+                    array(
506
+                         'name'       => __( 'Tips', 'lsx-health-plan' ),
507
+                         'id'         => 'connected_tips',
508
+                         'desc'       => __( 'Connect the tip(s) that apply to this section.', 'lsx-health-plan' ),
509
+                         'type'       => 'post_search_ajax',
510
+                         // Optional :
511
+                         'limit'      => 15,  // Limit selection to X items only (default 1)
512
+                         'sortable'   => true,  // Allow selected items to be sortable (default false)
513
+                         'query_args' => array(
514
+                              'post_type'      => array( 'tip' ),
515
+                              'post_status'    => array( 'publish' ),
516
+                              'posts_per_page' => -1,
517
+                         ),
518
+                         'classes'    => 'lsx-field-col lsx-field-add-field  lsx-field-col-50',
519
+                    )
520
+               );
521
+          }
522
+     }
523
+
524
+     /**
525
+      * Holds the array for the single plan breadcrumbs.
526
+      *
527
+      * @var array $crumbs
528
+      * @return array
529
+      */
530
+     public function plan_breadcrumb_filter( $crumbs ) {
531
+          if ( is_singular( 'plan' ) ) {
532
+               $plan          = \lsx_health_plan\functions\get_option( 'endpoint_plan', 'plan' );
533
+               $plans         = \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plan' );	
534
+               $plan_name     = get_the_title();
535
+               $url           = get_post_type_archive_link( $plan );
536
+               $term_obj_list = get_the_terms( get_the_ID(), 'plan-type' );
537
+               $plan_type     = $term_obj_list[0]->name;
538
+               $plan_type_url = get_term_link( $term_obj_list[0]->term_id );
539 539
 		
540
-			$crumbs[1] = array(
541
-				0 => $plans,
542
-				1 => $url,
543
-			);
544
-			$crumbs[2] = array(
545
-				0 => $plan_type,
546
-				1 => $plan_type_url,
547
-			);
548
-			$crumbs[3] = array(
549
-				0 => $plan_name,
550
-			);
551
-		}
552
-		return $crumbs;
553
-	}
540
+               $crumbs[1] = array(
541
+                    0 => $plans,
542
+                    1 => $url,
543
+               );
544
+               $crumbs[2] = array(
545
+                    0 => $plan_type,
546
+                    1 => $plan_type_url,
547
+               );
548
+               $crumbs[3] = array(
549
+                    0 => $plan_name,
550
+               );
551
+          }
552
+          return $crumbs;
553
+     }
554 554
 }
Please login to merge, or discard this patch.