Passed
Push — master ( 0bf605...89fb2a )
by Virginia
06:10 queued 11s
created
classes/admin/settings/class-meal.php 1 patch
Indentation   +134 added lines, -134 removed lines patch added patch discarded remove patch
@@ -12,146 +12,146 @@
 block discarded – undo
12 12
  */
13 13
 class Meal {
14 14
 
15
-	/**
16
-	 * Holds class instance
17
-	 *
18
-	 * @since 1.0.0
19
-	 *
20
-	 * @var      object \lsx_health_plan\classes\admin\Meal()
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\Meal()
21
+      */
22
+     protected static $instance = null;
23 23
 
24
-	/**
25
-	 * Constructor
26
-	 */
27
-	public function __construct() {
28
-		add_action( 'lsx_hp_settings_page_meal_top', array( $this, 'settings' ), 1, 1 );
29
-	}
24
+     /**
25
+      * Constructor
26
+      */
27
+     public function __construct() {
28
+          add_action( 'lsx_hp_settings_page_meal_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\Meal()    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\Meal()    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 Meals', 'lsx-health-plan' ),
56
-				'id'          => 'meal_disabled',
57
-				'type'        => 'checkbox',
58
-				'value'       => 1,
59
-				'default'     => 0,
60
-				'description' => __( 'Disable meal post type if you are wanting a minimal site.', 'lsx-health-plan' ),
61
-			)
62
-		);
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 Meals', 'lsx-health-plan' ),
56
+                    'id'          => 'meal_disabled',
57
+                    'type'        => 'checkbox',
58
+                    'value'       => 1,
59
+                    'default'     => 0,
60
+                    'description' => __( 'Disable meal post type if you are wanting a minimal site.', 'lsx-health-plan' ),
61
+               )
62
+          );
63 63
 
64
-		$cmb->add_field(
65
-			array(
66
-				'id'          => 'meal_archive_description',
67
-				'type'        => 'wysiwyg',
68
-				'name'        => __( 'Archive Description', 'lsx-health-plan' ),
69
-				'description' => __( 'This will show up on the post type archive.', 'lsx-health-plan' ),
70
-				'options'     => array(
71
-					'textarea_rows' => get_option('default_post_edit_rows', 6),
72
-				),
73
-			)
74
-		);
64
+          $cmb->add_field(
65
+               array(
66
+                    'id'          => 'meal_archive_description',
67
+                    'type'        => 'wysiwyg',
68
+                    'name'        => __( 'Archive Description', 'lsx-health-plan' ),
69
+                    'description' => __( 'This will show up on the post type archive.', 'lsx-health-plan' ),
70
+                    'options'     => array(
71
+                         'textarea_rows' => get_option('default_post_edit_rows', 6),
72
+                    ),
73
+               )
74
+          );
75 75
 
76
-		$cmb->add_field(
77
-			array(
78
-				'name'    => __( 'Your Meal Plan Intro', 'lsx-health-plan' ),
79
-				'id'      => 'meal_plan_intro',
80
-				'type'    => 'textarea_small',
81
-				'value'   => '',
82
-				'default' => __( 'Get the right mix of nutrients to keep muscles strong & healthy.', 'lsx-health-plan' ),
83
-			)
84
-		);
76
+          $cmb->add_field(
77
+               array(
78
+                    'name'    => __( 'Your Meal Plan Intro', 'lsx-health-plan' ),
79
+                    'id'      => 'meal_plan_intro',
80
+                    'type'    => 'textarea_small',
81
+                    'value'   => '',
82
+                    'default' => __( 'Get the right mix of nutrients to keep muscles strong & healthy.', 'lsx-health-plan' ),
83
+               )
84
+          );
85 85
 
86
-		$cmb->add_field(
87
-			array(
88
-				'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>',
89
-				'name'       =>  __( 'Meal Slug', 'lsx-health-plan' ),
90
-				'id'         => 'endpoint_meal',
91
-				'type'       => 'input',
92
-				'value'      => '',
93
-				'default'    => 'meal',
94
-			)
95
-		);
96
-		$cmb->add_field(
97
-			array(
98
-				'name'    =>  __( 'Meals Archive Slug', 'lsx-health-plan' ),
99
-				'id'      => 'endpoint_meal_archive',
100
-				'type'    => 'input',
101
-				'value'   => '',
102
-				'default' => 'meals',
103
-			)
104
-		);
105
-		$cmb->add_field(
106
-			array(
107
-				'name'    =>  __( 'Single Meal Slug', 'lsx-health-plan' ),
108
-				'id'      => 'meal_single_slug',
109
-				'type'    => 'input',
110
-				'value'   => '',
111
-				'default' => 'meal',
112
-			)
113
-		);
86
+          $cmb->add_field(
87
+               array(
88
+                    '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>',
89
+                    'name'       =>  __( 'Meal Slug', 'lsx-health-plan' ),
90
+                    'id'         => 'endpoint_meal',
91
+                    'type'       => 'input',
92
+                    'value'      => '',
93
+                    'default'    => 'meal',
94
+               )
95
+          );
96
+          $cmb->add_field(
97
+               array(
98
+                    'name'    =>  __( 'Meals Archive Slug', 'lsx-health-plan' ),
99
+                    'id'      => 'endpoint_meal_archive',
100
+                    'type'    => 'input',
101
+                    'value'   => '',
102
+                    'default' => 'meals',
103
+               )
104
+          );
105
+          $cmb->add_field(
106
+               array(
107
+                    'name'    =>  __( 'Single Meal Slug', 'lsx-health-plan' ),
108
+                    'id'      => 'meal_single_slug',
109
+                    'type'    => 'input',
110
+                    'value'   => '',
111
+                    'default' => 'meal',
112
+               )
113
+          );
114 114
 
115
-		$cmb->add_field(
116
-			array(
117
-				'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
118
-				'name'        => __( 'Default Meal Plan', 'lsx-health-plan' ),
119
-				'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
120
-				'limit'       => 1,
121
-				'id'          => 'connected_meals',
122
-				'type'        => 'post_search_ajax',
123
-				'query_args'  => array(
124
-					'post_type'      => 'meal',
125
-					'post_status'    => array( 'publish' ),
126
-					'posts_per_page' => -1,
127
-				),
128
-			)
129
-		);
130
-		if ( function_exists( 'download_monitor' ) ) {
131
-			$page_url    = 'https://wordpress.org/plugins/download-monitor/';
132
-			$plugin_name = 'Download Monitor';
133
-			$description = sprintf(
134
-				/* translators: %s: The subscription info */
135
-				__( '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' ),
136
-				$page_url,
137
-				$plugin_name
138
-			);
139
-			$cmb->add_field(
140
-				array(
141
-					'name'        => __( 'Default Meal Plan PDF', 'lsx-health-plan' ),
142
-					'description' => $description,
143
-					'id'          => 'download_meal',
144
-					'type'        => 'post_search_ajax',
145
-					'limit'       => 1,
146
-					'query_args'  => array(
147
-						'post_type'      => array( 'dlm_download' ),
148
-						'post_status'    => array( 'publish' ),
149
-						'posts_per_page' => -1,
150
-					),
151
-					'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' ),
152
-				)
153
-			);
154
-		}
155
-	}
115
+          $cmb->add_field(
116
+               array(
117
+                    'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
118
+                    'name'        => __( 'Default Meal Plan', 'lsx-health-plan' ),
119
+                    'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
120
+                    'limit'       => 1,
121
+                    'id'          => 'connected_meals',
122
+                    'type'        => 'post_search_ajax',
123
+                    'query_args'  => array(
124
+                         'post_type'      => 'meal',
125
+                         'post_status'    => array( 'publish' ),
126
+                         'posts_per_page' => -1,
127
+                    ),
128
+               )
129
+          );
130
+          if ( function_exists( 'download_monitor' ) ) {
131
+               $page_url    = 'https://wordpress.org/plugins/download-monitor/';
132
+               $plugin_name = 'Download Monitor';
133
+               $description = sprintf(
134
+                    /* translators: %s: The subscription info */
135
+                    __( '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' ),
136
+                    $page_url,
137
+                    $plugin_name
138
+               );
139
+               $cmb->add_field(
140
+                    array(
141
+                         'name'        => __( 'Default Meal Plan PDF', 'lsx-health-plan' ),
142
+                         'description' => $description,
143
+                         'id'          => 'download_meal',
144
+                         'type'        => 'post_search_ajax',
145
+                         'limit'       => 1,
146
+                         'query_args'  => array(
147
+                              'post_type'      => array( 'dlm_download' ),
148
+                              'post_status'    => array( 'publish' ),
149
+                              'posts_per_page' => -1,
150
+                         ),
151
+                         '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' ),
152
+                    )
153
+               );
154
+          }
155
+     }
156 156
 }
157 157
 Meal::get_instance();
Please login to merge, or discard this patch.
classes/admin/settings/class-my-plans.php 1 patch
Indentation   +154 added lines, -154 removed lines patch added patch discarded remove patch
@@ -12,167 +12,167 @@
 block discarded – undo
12 12
  */
13 13
 class Plan {
14 14
 
15
-	/**
16
-	 * Holds class instance
17
-	 *
18
-	 * @since 1.0.0
19
-	 *
20
-	 * @var      object \lsx_health_plan\classes\admin\My_Plans()
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\My_Plans()
21
+      */
22
+     protected static $instance = null;
23 23
 
24
-	/**
25
-	 * Constructor
26
-	 */
27
-	public function __construct() {
28
-		add_action( 'lsx_hp_settings_page_my-plans_top', array( $this, 'settings' ), 1, 1 );
29
-	}
24
+     /**
25
+      * Constructor
26
+      */
27
+     public function __construct() {
28
+          add_action( 'lsx_hp_settings_page_my-plans_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\My_Plans()    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\My_Plans()    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'        => __( 'Plan Filters', 'lsx-health-plan' ),
56
-				'id'          => 'plan_filters_disabled',
57
-				'type'        => 'checkbox',
58
-				'value'       => 1,
59
-				'default'     => 0,
60
-				'description' => __( 'Toggle the display of the tab filters on the post type archive.', 'lsx-health-plan' ),
61
-			)
62
-		);
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'        => __( 'Plan Filters', 'lsx-health-plan' ),
56
+                    'id'          => 'plan_filters_disabled',
57
+                    'type'        => 'checkbox',
58
+                    'value'       => 1,
59
+                    'default'     => 0,
60
+                    'description' => __( 'Toggle the display of the tab filters on the post type archive.', 'lsx-health-plan' ),
61
+               )
62
+          );
63 63
 
64
-		$cmb->add_field(
65
-			array(
66
-				'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>',
67
-				'name'        =>  __( 'My Plan Slug', 'lsx-health-plan' ),
68
-				'description' => __( 'This will be the slug url for redirecting users after login, use the login page slug.', 'lsx-health-plan' ),
69
-				'id'          => 'my_plan_slug',
70
-				'type'        => 'select',
71
-				'default'     => 'my-plan',
72
-				'options'     => $this->get_page_options(),
73
-			)
74
-		);
64
+          $cmb->add_field(
65
+               array(
66
+                    '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>',
67
+                    'name'        =>  __( 'My Plan Slug', 'lsx-health-plan' ),
68
+                    'description' => __( 'This will be the slug url for redirecting users after login, use the login page slug.', 'lsx-health-plan' ),
69
+                    'id'          => 'my_plan_slug',
70
+                    'type'        => 'select',
71
+                    'default'     => 'my-plan',
72
+                    'options'     => $this->get_page_options(),
73
+               )
74
+          );
75 75
 
76
-		$cmb->add_field(
77
-			array(
78
-				'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
79
-				'name'        => __( 'Recipe', 'lsx-health-plan' ),
80
-				'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
81
-				'limit'       => 1,
82
-				'id'          => 'connected_recipes',
83
-				'type'        => 'post_search_ajax',
84
-			)
85
-		);
76
+          $cmb->add_field(
77
+               array(
78
+                    'before_row'  => '<h4><b><u>Default Options</u></b></h4>',
79
+                    'name'        => __( 'Recipe', 'lsx-health-plan' ),
80
+                    'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
81
+                    'limit'       => 1,
82
+                    'id'          => 'connected_recipes',
83
+                    'type'        => 'post_search_ajax',
84
+               )
85
+          );
86 86
 
87
-		$cmb->add_field(
88
-			array(
89
-				'name'    =>  __( 'Single Plan Slug', 'lsx-health-plan' ),
90
-				'id'      => 'plan_single_slug',
91
-				'type'    => 'input',
92
-				'value'   => '',
93
-				'default' => 'plan',
94
-			)
95
-		);
96
-		$cmb->add_field(
97
-			array(
98
-				'name'    =>  __( 'Plans Archive Slug', 'lsx-health-plan' ),
99
-				'id'      => 'endpoint_plan_archive',
100
-				'type'    => 'input',
101
-				'value'   => '',
102
-				'default' => 'plans',
103
-			)
104
-		);
87
+          $cmb->add_field(
88
+               array(
89
+                    'name'    =>  __( 'Single Plan Slug', 'lsx-health-plan' ),
90
+                    'id'      => 'plan_single_slug',
91
+                    'type'    => 'input',
92
+                    'value'   => '',
93
+                    'default' => 'plan',
94
+               )
95
+          );
96
+          $cmb->add_field(
97
+               array(
98
+                    'name'    =>  __( 'Plans Archive Slug', 'lsx-health-plan' ),
99
+                    'id'      => 'endpoint_plan_archive',
100
+                    'type'    => 'input',
101
+                    'value'   => '',
102
+                    'default' => 'plans',
103
+               )
104
+          );
105 105
 
106
-		$cmb->add_field(
107
-			array(
108
-				'before_row' => '<h4><b><u>My Stats Options</u></b></h4>',
109
-				'name'       => __( 'Disable All Stats', 'lsx-health-plan' ),
110
-				'desc'       => 'Disable All Stats',
111
-				'id'         => 'disable_all_stats',
112
-				'type'       => 'checkbox',
113
-				'value'      => 1,
114
-				'default'    => 0,
115
-			)
116
-		);
117
-		$cmb->add_field(
118
-			array(
119
-				'name'    => __( 'Disable Weight', 'lsx-health-plan' ),
120
-				'id'      => 'disable_weight_checkbox',
121
-				'type'    => 'checkbox',
122
-				'value'   => 1,
123
-				'default' => 0,
124
-			)
125
-		);
126
-		$cmb->add_field(
127
-			array(
128
-				'name'    => __( 'Disable Height', 'lsx-health-plan' ),
129
-				'id'      => 'disable_height_checkbox',
130
-				'type'    => 'checkbox',
131
-				'value'   => 1,
132
-				'default' => 0,
133
-			)
134
-		);
135
-		$cmb->add_field(
136
-			array(
137
-				'name'    => __( 'Disable Waist', 'lsx-health-plan' ),
138
-				'id'      => 'disable_waist_checkbox',
139
-				'type'    => 'checkbox',
140
-				'value'   => 1,
141
-				'default' => 0,
142
-			)
143
-		);
144
-		$cmb->add_field(
145
-			array(
146
-				'name'      => __( 'Disable BMI', 'lsx-health-plan' ),
147
-				'id'        => 'disable_bmi_checkbox',
148
-				'type'      => 'checkbox',
149
-				'value'     => 1,
150
-				'default'   => 0,
151
-				'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' ),
152
-			)
153
-		);
154
-	}
106
+          $cmb->add_field(
107
+               array(
108
+                    'before_row' => '<h4><b><u>My Stats Options</u></b></h4>',
109
+                    'name'       => __( 'Disable All Stats', 'lsx-health-plan' ),
110
+                    'desc'       => 'Disable All Stats',
111
+                    'id'         => 'disable_all_stats',
112
+                    'type'       => 'checkbox',
113
+                    'value'      => 1,
114
+                    'default'    => 0,
115
+               )
116
+          );
117
+          $cmb->add_field(
118
+               array(
119
+                    'name'    => __( 'Disable Weight', 'lsx-health-plan' ),
120
+                    'id'      => 'disable_weight_checkbox',
121
+                    'type'    => 'checkbox',
122
+                    'value'   => 1,
123
+                    'default' => 0,
124
+               )
125
+          );
126
+          $cmb->add_field(
127
+               array(
128
+                    'name'    => __( 'Disable Height', 'lsx-health-plan' ),
129
+                    'id'      => 'disable_height_checkbox',
130
+                    'type'    => 'checkbox',
131
+                    'value'   => 1,
132
+                    'default' => 0,
133
+               )
134
+          );
135
+          $cmb->add_field(
136
+               array(
137
+                    'name'    => __( 'Disable Waist', 'lsx-health-plan' ),
138
+                    'id'      => 'disable_waist_checkbox',
139
+                    'type'    => 'checkbox',
140
+                    'value'   => 1,
141
+                    'default' => 0,
142
+               )
143
+          );
144
+          $cmb->add_field(
145
+               array(
146
+                    'name'      => __( 'Disable BMI', 'lsx-health-plan' ),
147
+                    'id'        => 'disable_bmi_checkbox',
148
+                    'type'      => 'checkbox',
149
+                    'value'     => 1,
150
+                    'default'   => 0,
151
+                    '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' ),
152
+               )
153
+          );
154
+     }
155 155
 
156
-	public function get_page_options() {
157
-		$query_args = array(
158
-			'post_type'      => 'page',
159
-			'post_status'    => array( 'publish' ),
160
-			'posts_per_page' => -1,
161
-			'orderby'        => 'title',
162
-			'fields'         => array( 'ids' ),
163
-		);
164
-		$options = array(
165
-			'' => __( 'Select a page', 'lsx-health-plan' ),
166
-		);
167
-		$page_query = new \WP_Query( $query_args );
168
-		if ( $page_query->have_posts() ) {
169
-			foreach ( $page_query->posts as $pid ) {
170
-				$title       = get_the_title( $pid );
171
-				$key         = sanitize_title( $title );
172
-				$options[ $key ] = $title;
173
-			}
174
-		}
175
-		return $options;
176
-	}
156
+     public function get_page_options() {
157
+          $query_args = array(
158
+               'post_type'      => 'page',
159
+               'post_status'    => array( 'publish' ),
160
+               'posts_per_page' => -1,
161
+               'orderby'        => 'title',
162
+               'fields'         => array( 'ids' ),
163
+          );
164
+          $options = array(
165
+               '' => __( 'Select a page', 'lsx-health-plan' ),
166
+          );
167
+          $page_query = new \WP_Query( $query_args );
168
+          if ( $page_query->have_posts() ) {
169
+               foreach ( $page_query->posts as $pid ) {
170
+                    $title       = get_the_title( $pid );
171
+                    $key         = sanitize_title( $title );
172
+                    $options[ $key ] = $title;
173
+               }
174
+          }
175
+          return $options;
176
+     }
177 177
 }
178 178
 Plan::get_instance();
Please login to merge, or discard this patch.
includes/conditionals.php 1 patch
Indentation   +107 added lines, -107 removed lines patch added patch discarded remove patch
@@ -12,10 +12,10 @@  discard block
 block discarded – undo
12 12
  * @return boolean
13 13
  */
14 14
 function lsx_health_plan_has_warmup( $post_id = '' ) {
15
-	if ( '' === $post_id ) {
16
-		$post_id = get_the_ID();
17
-	}
18
-	return \lsx_health_plan\functions\has_attached_post( $post_id, 'plan_warmup' );
15
+     if ( '' === $post_id ) {
16
+          $post_id = get_the_ID();
17
+     }
18
+     return \lsx_health_plan\functions\has_attached_post( $post_id, 'plan_warmup' );
19 19
 }
20 20
 
21 21
 /**
@@ -25,25 +25,25 @@  discard block
 block discarded – undo
25 25
  * @return boolean
26 26
  */
27 27
 function lsx_health_plan_has_workout( $post_id = '' ) {
28
-	if ( ! post_type_exists( 'workout' ) ) {
29
-		return false;
30
-	}
31
-	if ( '' === $post_id ) {
32
-		$post_id = get_the_ID();
33
-	}
34
-	$has_workouts = false;
35
-
36
-	$section_key = get_query_var( 'section', false );
37
-	if ( false !== $section_key ) {
38
-		$section_info = \lsx_health_plan\functions\plan\get_section_info( $section_key );
39
-		if ( isset( $section_info['connected_workouts'] ) && ! empty( $section_info['connected_workouts'] ) ) {
40
-			$has_workouts = true;
41
-		}
42
-	} elseif ( \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_workouts' ) ) {
43
-		$has_workouts = true;
44
-	}
45
-
46
-	return $has_workouts;
28
+     if ( ! post_type_exists( 'workout' ) ) {
29
+          return false;
30
+     }
31
+     if ( '' === $post_id ) {
32
+          $post_id = get_the_ID();
33
+     }
34
+     $has_workouts = false;
35
+
36
+     $section_key = get_query_var( 'section', false );
37
+     if ( false !== $section_key ) {
38
+          $section_info = \lsx_health_plan\functions\plan\get_section_info( $section_key );
39
+          if ( isset( $section_info['connected_workouts'] ) && ! empty( $section_info['connected_workouts'] ) ) {
40
+               $has_workouts = true;
41
+          }
42
+     } elseif ( \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_workouts' ) ) {
43
+          $has_workouts = true;
44
+     }
45
+
46
+     return $has_workouts;
47 47
 }
48 48
 
49 49
 /**
@@ -53,14 +53,14 @@  discard block
 block discarded – undo
53 53
  * @return boolean
54 54
  */
55 55
 function lsx_health_plan_has_meal( $post_id = '' ) {
56
-	if ( ! post_type_exists( 'meal' ) ) {
57
-		return false;
58
-	}
59
-	if ( '' === $post_id ) {
60
-		$post_id = get_the_ID();
61
-	}
62
-
63
-	return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_meals' );
56
+     if ( ! post_type_exists( 'meal' ) ) {
57
+          return false;
58
+     }
59
+     if ( '' === $post_id ) {
60
+          $post_id = get_the_ID();
61
+     }
62
+
63
+     return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_meals' );
64 64
 }
65 65
 
66 66
 /**
@@ -70,13 +70,13 @@  discard block
 block discarded – undo
70 70
  * @return boolean
71 71
  */
72 72
 function lsx_health_plan_has_recipe( $post_id = '' ) {
73
-	if ( ! post_type_exists( 'recipe' ) ) {
74
-		return false;
75
-	}
76
-	if ( '' === $post_id ) {
77
-		$post_id = get_the_ID();
78
-	}
79
-	return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_recipes' );
73
+     if ( ! post_type_exists( 'recipe' ) ) {
74
+          return false;
75
+     }
76
+     if ( '' === $post_id ) {
77
+          $post_id = get_the_ID();
78
+     }
79
+     return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_recipes' );
80 80
 }
81 81
 
82 82
 /**
@@ -86,15 +86,15 @@  discard block
 block discarded – undo
86 86
  * @return boolean
87 87
  */
88 88
 function lsx_health_plan_has_downloads( $post_id = '' ) {
89
-	$has_downloads = false;
90
-	if ( '' === $post_id ) {
91
-		$post_id = get_the_ID();
92
-	}
93
-	$downloads = \lsx_health_plan\functions\get_downloads( 'all', $post_id );
94
-	if ( ! empty( $downloads ) ) {
95
-		$has_downloads = true;
96
-	}
97
-	return $has_downloads;
89
+     $has_downloads = false;
90
+     if ( '' === $post_id ) {
91
+          $post_id = get_the_ID();
92
+     }
93
+     $downloads = \lsx_health_plan\functions\get_downloads( 'all', $post_id );
94
+     if ( ! empty( $downloads ) ) {
95
+          $has_downloads = true;
96
+     }
97
+     return $has_downloads;
98 98
 }
99 99
 
100 100
 /**
@@ -104,13 +104,13 @@  discard block
 block discarded – undo
104 104
  * @return boolean
105 105
  */
106 106
 function lsx_health_plan_has_tip( $post_id = '' ) {
107
-	if ( ! post_type_exists( 'tip' ) ) {
108
-		return false;
109
-	}
110
-	if ( '' === $post_id ) {
111
-		$post_id = get_the_ID();
112
-	}
113
-	return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_tips' );
107
+     if ( ! post_type_exists( 'tip' ) ) {
108
+          return false;
109
+     }
110
+     if ( '' === $post_id ) {
111
+          $post_id = get_the_ID();
112
+     }
113
+     return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_tips' );
114 114
 }
115 115
 
116 116
 /**
@@ -120,13 +120,13 @@  discard block
 block discarded – undo
120 120
  * @return boolean
121 121
  */
122 122
 function lsx_health_plan_has_video( $post_id = '' ) {
123
-	if ( ! post_type_exists( 'video' ) ) {
124
-		return false;
125
-	}
126
-	if ( '' === $post_id ) {
127
-		$post_id = get_the_ID();
128
-	}
129
-	return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_videos' );
123
+     if ( ! post_type_exists( 'video' ) ) {
124
+          return false;
125
+     }
126
+     if ( '' === $post_id ) {
127
+          $post_id = get_the_ID();
128
+     }
129
+     return \lsx_health_plan\functions\has_attached_post( $post_id, 'connected_videos' );
130 130
 }
131 131
 
132 132
 /**
@@ -135,8 +135,8 @@  discard block
 block discarded – undo
135 135
  * @return boolean
136 136
  */
137 137
 function lsx_health_plan_user_has_purchase() {
138
-	$valid_order = false;
139
-	return $valid_order;
138
+     $valid_order = false;
139
+     return $valid_order;
140 140
 }
141 141
 
142 142
 /**
@@ -146,18 +146,18 @@  discard block
 block discarded – undo
146 146
  * @return boolean
147 147
  */
148 148
 function lsx_health_plan_is_current_tab( $needle = '' ) {
149
-	$is_tab = false;
150
-	$plan_slug = \lsx_health_plan\functions\get_option( 'my_plan_slug', false );
151
-	if ( false === $plan_slug ) {
152
-		$plan_slug = 'my-plan';
153
-	}
154
-	if ( is_singular( 'plan' ) || is_page( $plan_slug ) ) {
155
-		$endpoint = get_query_var( 'endpoint' );
156
-		if ( false !== $endpoint && $needle === $endpoint ) {
157
-			$is_tab = true;
158
-		}
159
-	}
160
-	return $is_tab;
149
+     $is_tab = false;
150
+     $plan_slug = \lsx_health_plan\functions\get_option( 'my_plan_slug', false );
151
+     if ( false === $plan_slug ) {
152
+          $plan_slug = 'my-plan';
153
+     }
154
+     if ( is_singular( 'plan' ) || is_page( $plan_slug ) ) {
155
+          $endpoint = get_query_var( 'endpoint' );
156
+          if ( false !== $endpoint && $needle === $endpoint ) {
157
+               $is_tab = true;
158
+          }
159
+     }
160
+     return $is_tab;
161 161
 }
162 162
 
163 163
 /**
@@ -167,22 +167,22 @@  discard block
 block discarded – undo
167 167
  * @return boolean
168 168
  */
169 169
 function lsx_health_plan_is_day_complete( $post_id = '', $section_key = '' ) {
170
-	$is_complete = false;
171
-	if ( '' === $post_id ) {
172
-		$post_id = get_the_ID();
173
-	}
174
-	$key             = \lsx_health_plan\functions\plan\generate_section_id( $section_key );
175
-	$is_day_complete = get_user_meta( get_current_user_id(), 'day_' . $key . '_complete', true );
176
-	if ( false !== $is_day_complete && '' !== $is_day_complete ) {
177
-		$is_complete = true;
178
-	}
179
-
180
-	return $is_complete;
170
+     $is_complete = false;
171
+     if ( '' === $post_id ) {
172
+          $post_id = get_the_ID();
173
+     }
174
+     $key             = \lsx_health_plan\functions\plan\generate_section_id( $section_key );
175
+     $is_day_complete = get_user_meta( get_current_user_id(), 'day_' . $key . '_complete', true );
176
+     if ( false !== $is_day_complete && '' !== $is_day_complete ) {
177
+          $is_complete = true;
178
+     }
179
+
180
+     return $is_complete;
181 181
 }
182 182
 
183 183
 function lsx_health_plan_is_plan_complete() {
184
-	$complete = false;
185
-	return $complete;
184
+     $complete = false;
185
+     return $complete;
186 186
 }
187 187
 
188 188
 /**
@@ -192,14 +192,14 @@  discard block
 block discarded – undo
192 192
  * @return boolean
193 193
  */
194 194
 function lsx_health_plan_week_has_downloads( $week = '' ) {
195
-	$has_downloads = false;
196
-	if ( '' !== $week ) {
197
-		$downloads = \lsx_health_plan\functions\get_weekly_downloads( $week );
198
-		if ( ! empty( $downloads ) ) {
199
-			$has_downloads = true;
200
-		}
201
-	}
202
-	return $has_downloads;
195
+     $has_downloads = false;
196
+     if ( '' !== $week ) {
197
+          $downloads = \lsx_health_plan\functions\get_weekly_downloads( $week );
198
+          if ( ! empty( $downloads ) ) {
199
+               $has_downloads = true;
200
+          }
201
+     }
202
+     return $has_downloads;
203 203
 }
204 204
 
205 205
 /**
@@ -209,15 +209,15 @@  discard block
 block discarded – undo
209 209
  * @return boolean
210 210
  */
211 211
 function lsx_health_plan_has_tips( $post_id = '' ) {
212
-	$has_tips = false;
213
-	if ( '' === $post_id ) {
214
-		$post_id = get_the_ID();
215
-	}
216
-	$post_type      = get_post_type( $post_id );
217
-	$connected_tips = get_post_meta( get_the_ID(), $post_type . '_connected_tips', true );
218
-	$connected_tips = \lsx_health_plan\functions\check_posts_exist( $connected_tips );
219
-	if ( ! empty( $connected_tips ) ) {
220
-		$has_tips = true;
221
-	}
222
-	return $has_tips;
212
+     $has_tips = false;
213
+     if ( '' === $post_id ) {
214
+          $post_id = get_the_ID();
215
+     }
216
+     $post_type      = get_post_type( $post_id );
217
+     $connected_tips = get_post_meta( get_the_ID(), $post_type . '_connected_tips', true );
218
+     $connected_tips = \lsx_health_plan\functions\check_posts_exist( $connected_tips );
219
+     if ( ! empty( $connected_tips ) ) {
220
+          $has_tips = true;
221
+     }
222
+     return $has_tips;
223 223
 }
Please login to merge, or discard this patch.
classes/post-types/class-exercise.php 1 patch
Indentation   +423 added lines, -423 removed lines patch added patch discarded remove patch
@@ -8,428 +8,428 @@
 block discarded – undo
8 8
  */
9 9
 class Exercise {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Exercise()
17
-	 */
18
-	protected static $instance = null;
19
-
20
-	/**
21
-	 * Holds post_type slug used as an index
22
-	 *
23
-	 * @since 1.0.0
24
-	 *
25
-	 * @var      string
26
-	 */
27
-	public $slug = 'exercise';
28
-
29
-	/**
30
-	 * Constructor
31
-	 */
32
-	public function __construct() {
33
-
34
-		if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
35
-			// Post Type and Taxonomies.
36
-			add_action( 'init', array( $this, 'register_post_type' ) );
37
-			add_action( 'init', array( $this, 'exercise_type_taxonomy_setup' ) );
38
-			add_action( 'init', array( $this, 'equipment_taxonomy_setup' ) );
39
-			add_action( 'init', array( $this, 'muscle_group_taxonomy_setup' ) );
40
-			add_action( 'admin_menu', array( $this, 'register_menus' ) );
41
-
42
-			// Custom Fields.
43
-			add_action( 'cmb2_admin_init', array( $this, 'exercise_details' ), 8 );
44
-			add_action( 'cmb2_admin_init', array( $this, 'gallery_metabox' ), 9 );
45
-			add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
46
-
47
-			// Template Redirects.
48
-			add_filter( 'lsx_health_plan_archive_template', array( $this, 'enable_post_type' ), 10, 1 );
49
-			add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
50
-
51
-			//Breadcrumbs
52
-			add_filter( 'woocommerce_get_breadcrumb', array( $this, 'exercise_breadcrumb_filter' ), 30, 1 );
53
-
54
-		}
55
-
56
-	}
57
-
58
-
59
-	/**
60
-	 * Return an instance of this class.
61
-	 *
62
-	 * @since 1.0.0
63
-	 *
64
-	 * @return    object \lsx_health_plan\classes\Exercise()    A single instance of this class.
65
-	 */
66
-	public static function get_instance() {
67
-		// If the single instance hasn't been set, set it now.
68
-		if ( null === self::$instance ) {
69
-			self::$instance = new self();
70
-		}
71
-		return self::$instance;
72
-	}
73
-	/**
74
-	 * Register the post type.
75
-	 */
76
-	public function register_post_type() {
77
-		$labels = array(
78
-			'name'               => esc_html__( 'Exercises', 'lsx-health-plan' ),
79
-			'singular_name'      => esc_html__( 'Exercise', 'lsx-health-plan' ),
80
-			'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
81
-			'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
82
-			'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
83
-			'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
84
-			'all_items'          => esc_html__( 'All Exercises', 'lsx-health-plan' ),
85
-			'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
86
-			'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
87
-			'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
88
-			'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
89
-			'parent_item_colon'  => '',
90
-			'menu_name'          => esc_html__( 'Exercises', 'lsx-health-plan' ),
91
-		);
92
-		$args   = array(
93
-			'labels'             => $labels,
94
-			'public'             => true,
95
-			'publicly_queryable' => true,
96
-			'show_ui'            => true,
97
-			'show_in_menu'       => 'edit.php?post_type=workout-pseudo',
98
-			'show_in_rest'       => true,
99
-			'menu_icon'          => 'dashicons-universal-access',
100
-			'query_var'          => true,
101
-			'rewrite'            => array(
102
-				'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_single', 'exercise' ),
103
-			),
104
-			'capability_type'    => 'page',
105
-			'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_exercise_archive', 'exercises' ),
106
-			'hierarchical'       => false,
107
-			'menu_position'      => null,
108
-			'supports'           => array(
109
-				'title',
110
-				'thumbnail',
111
-				'editor',
112
-				'excerpt',
113
-				'custom-fields',
114
-			),
115
-		);
116
-		register_post_type( 'exercise', $args );
117
-	}
118
-
119
-	/**
120
-	 * Register the Exercise taxonomy.
121
-	 *
122
-	 * @return void
123
-	 */
124
-	public function exercise_type_taxonomy_setup() {
125
-		$labels = array(
126
-			'name'              => esc_html_x( 'Exercise Type', 'taxonomy general name', 'lsx-health-plan' ),
127
-			'singular_name'     => esc_html_x( 'Exercise Type', 'taxonomy singular name', 'lsx-health-plan' ),
128
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
129
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
130
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
131
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
132
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
133
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
134
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
135
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
136
-			'menu_name'         => esc_html__( 'Exercise Types', 'lsx-health-plan' ),
137
-		);
138
-
139
-		$args = array(
140
-			'hierarchical'      => true,
141
-			'labels'            => $labels,
142
-			'show_ui'           => true,
143
-			'show_admin_column' => true,
144
-			'query_var'         => true,
145
-			'rewrite'           => array(
146
-				'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_type', 'exercise-type' ),
147
-			),
148
-			'show_in_rest'      => true,
149
-		);
150
-
151
-		register_taxonomy( 'exercise-type', array( 'exercise' ), $args );
152
-	}
153
-
154
-	/**
155
-	 * Register the Exercise taxonomy.
156
-	 *
157
-	 * @return void
158
-	 */
159
-	public function equipment_taxonomy_setup() {
160
-		$labels = array(
161
-			'name'              => esc_html_x( 'Equipment', 'taxonomy general name', 'lsx-health-plan' ),
162
-			'singular_name'     => esc_html_x( 'Equipment', 'taxonomy singular name', 'lsx-health-plan' ),
163
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
164
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
165
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
166
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
167
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
168
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
169
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
170
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
171
-			'menu_name'         => esc_html__( 'Equipment', 'lsx-health-plan' ),
172
-		);
173
-
174
-		$args = array(
175
-			'hierarchical'      => true,
176
-			'labels'            => $labels,
177
-			'show_ui'           => true,
178
-			'show_admin_column' => true,
179
-			'query_var'         => true,
180
-			'rewrite'           => array(
181
-				'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_equipment', 'equipment' ),
182
-			),
183
-			'show_in_rest'      => true,
184
-		);
185
-
186
-		register_taxonomy( 'equipment', array( 'exercise' ), $args );
187
-	}
188
-
189
-	/**
190
-	 * Register the Muscle Group taxonomy.
191
-	 *
192
-	 * @return void
193
-	 */
194
-	public function muscle_group_taxonomy_setup() {
195
-		$labels = array(
196
-			'name'              => esc_html_x( 'Muscle Groups', 'taxonomy general name', 'lsx-health-plan' ),
197
-			'singular_name'     => esc_html_x( 'Muscle Group', 'taxonomy singular name', 'lsx-health-plan' ),
198
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
199
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
200
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
201
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
202
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
203
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
204
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
205
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
206
-			'menu_name'         => esc_html__( 'Muscle Groups', 'lsx-health-plan' ),
207
-		);
208
-
209
-		$args = array(
210
-			'hierarchical'      => true,
211
-			'labels'            => $labels,
212
-			'show_ui'           => true,
213
-			'show_admin_column' => true,
214
-			'query_var'         => true,
215
-			'rewrite'           => array(
216
-				'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_musclegroup', 'muscle-group' ),
217
-			),
218
-			'show_in_rest'      => true,
219
-		);
220
-
221
-		register_taxonomy( 'muscle-group', array( 'exercise' ), $args );
222
-	}
223
-
224
-	/**
225
-	 * Registers the Recipes under the Meals Post type menu.
226
-	 *
227
-	 * @return void
228
-	 */
229
-	public function register_menus() {
230
-		add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Exercises', 'lsx-health-plan' ), esc_html__( 'Exercises', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=exercise' );
231
-		add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Exercise Types', 'lsx-health-plan' ), esc_html__( 'Exercise Types', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=exercise-type&post_type=exercise' );
232
-		add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Equipment', 'lsx-health-plan' ), esc_html__( 'Equipment', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=equipment&post_type=exercise' );
233
-		add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Muscle Groups', 'lsx-health-plan' ), esc_html__( 'Muscle Groups', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=muscle-group&post_type=exercise' );
234
-	}
235
-
236
-	/**
237
-	 * Adds the post type to the different arrays.
238
-	 *
239
-	 * @param array $post_types
240
-	 * @return array
241
-	 */
242
-	public function enable_post_type( $post_types = array() ) {
243
-		$post_types[] = $this->slug;
244
-		return $post_types;
245
-	}
246
-
247
-	/**
248
-	 * Enables the Bi Directional relationships
249
-	 *
250
-	 * @param array $connections
251
-	 * @return void
252
-	 */
253
-	public function enable_connections( $connections = array() ) {
254
-		$connections['exercise']['connected_workouts'] = 'connected_exercises';
255
-		$connections['workout']['connected_exercises'] = 'connected_workouts';
256
-		return $connections;
257
-	}
258
-
259
-	/**
260
-	 * Define the metabox and field configurations.
261
-	 */
262
-	public function gallery_metabox() {
263
-		$cmb = new_cmb2_box(
264
-			array(
265
-				'id'           => $this->slug . '_gallery_details_metabox',
266
-				'title'        => __( 'Exercise Gallery', 'lsx-health-plan' ),
267
-				'object_types' => array( $this->slug ),
268
-				'context'      => 'normal',
269
-				'priority'     => 'low',
270
-				'show_names'   => true,
271
-			)
272
-		);
273
-
274
-		$cmb->add_field(
275
-			array(
276
-				'name'    => __( 'Layout', 'lsx-health-plan' ),
277
-				'id'      => $this->slug . '_gallery_layout',
278
-				'type'    => 'radio',
279
-				'options' => array(
280
-					'slider' => __( 'Slider', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
281
-					'grid'   => __( 'Grid', 'lsx-health-plan' ),
282
-				),
283
-				'default' => 'grid',
284
-			)
285
-		);
286
-
287
-		$cmb->add_field(
288
-			array(
289
-				'name'    => __( 'Grid Columns', 'lsx-health-plan' ),
290
-				'id'      => $this->slug . '_gallery_columns',
291
-				'type'    => 'select',
292
-				'options' => array(
293
-					'3' => __( '2 Columns', 'lsx-health-plan' ),
294
-					'4' => __( '3 Columns', 'lsx-health-plan' ),
295
-				),
296
-				'default' => '1',
297
-			)
298
-		);
299
-
300
-		// Repeatable group.
301
-		$gallery_group = $cmb->add_field(
302
-			array(
303
-				'id'      => $this->slug . '_gallery',
304
-				'type'    => 'group',
305
-				'options' => array(
306
-					'group_title'   => __( 'Gallery', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
307
-					'add_button'    => __( 'Add Item', 'lsx-health-plan' ),
308
-					'remove_button' => __( 'Remove Item', 'lsx-health-plan' ),
309
-					'sortable'      => true,
310
-				),
311
-				'classes' => 'lsx-admin-row',
312
-			)
313
-		);
314
-
315
-		// Title.
316
-		$cmb->add_group_field(
317
-			$gallery_group,
318
-			array(
319
-				'name'       => __( 'Image', 'lsx-health-plan' ),
320
-				'id'         => $this->slug . '_gallery_image',
321
-				'type'       => 'file',
322
-				'text'       => array(
323
-					'add_upload_file_text' => __( 'Add File', 'lsx-health-plan' ),
324
-				),
325
-				'desc'       => __( 'Upload an image a minimum of 800px x 600px in size.', 'lsx-health-plan' ),
326
-				'query_args' => array(
327
-					'type' => array(
328
-						'image/gif',
329
-						'image/jpeg',
330
-						'image/png',
331
-					),
332
-				),
333
-				'preview_size' => 'lsx-thumbnail-wide',
334
-			)
335
-		);
336
-
337
-		// Title.
338
-		$cmb->add_group_field(
339
-			$gallery_group,
340
-			array(
341
-				'name'         => __( 'oEmbed', 'lsx-health-plan' ),
342
-				'id'           => $this->slug . '_gallery_embed',
343
-				'type'         => 'text',
344
-				'desc'         => __( 'Drop in the embed url for your video from YouTube, Vimeo or DailyMotion, e.g: "https://www.youtube.com/watch?v=9xwazD5SyVg". A full list of supports formats can be found at <a href="https://make.wordpress.org/support/user-manual/content/media/adding-media-to-your-pages-and-posts/embedding-media-from-other-sites/">WordPress</a>', 'lsx-health-plan' ),
345
-			)
346
-		);
347
-
348
-		$cmb->add_group_field(
349
-			$gallery_group,
350
-			array(
351
-				'name'         => __( 'External Media', 'lsx-health-plan' ),
352
-				'id'           => $this->slug . '_gallery_external',
353
-				'type'         => 'textarea_code',
354
-				'desc'         => __( 'Drop in the iFrame embed code from Giphy in this field, i.e: &lt;iframe src="https://giphy.com/embed/3o7527Rn1HxXWqgxuo" width="480" height="270" frameborder="0" class="giphy-embed" allowfullscreen&gt;&lt;/iframe&gt;', 'lsx-health-plan' ),
355
-			)
356
-		);
357
-	}
358
-
359
-	/**
360
-	 * Registers the general settings for the exercise.
361
-	 *
362
-	 * @return void
363
-	 */
364
-	public function exercise_details() {
365
-		$cmb = new_cmb2_box(
366
-			array(
367
-				'id'           => $this->slug . '_general_details_metabox',
368
-				'title'        => __( 'Details', 'lsx-health-plan' ),
369
-				'object_types' => array( $this->slug ),
370
-				'context'      => 'normal',
371
-				'priority'     => 'high',
372
-				'show_names'   => true,
373
-			)
374
-		);
375
-
376
-		$cmb->add_field(
377
-			array(
378
-				'name'    => __( 'Side', 'lsx-health-plan' ),
379
-				'id'      => $this->slug . '_side',
380
-				'type'    => 'select',
381
-				'options' => array(
382
-					''      => __( 'Select', 'lsx-health-plan' ),
383
-					'left'  => __( 'Left', 'lsx-health-plan' ),
384
-					'right' => __( 'Right', 'lsx-health-plan' ),
385
-				),
386
-				'desc'    => __( 'Select which side this exercise uses. ', 'lsx-health-plan' ),
387
-			)
388
-		);
389
-	}
390
-
391
-	/**
392
-	 * Holds the array for the single exercise breadcrumbs.
393
-	 *
394
-	 * @var array $crumbs
395
-	 * @return array
396
-	 */
397
-	public function exercise_breadcrumb_filter( $crumbs ) {
398
-		$exercise  = \lsx_health_plan\functions\get_option( 'endpoint_exercise', 'exercise' );
399
-		$exercises = \lsx_health_plan\functions\get_option( 'endpoint_exercise_archive', 'exercise' );
400
-		$url       = get_post_type_archive_link( $exercise );
401
-
402
-		if ( is_singular( 'exercise' ) ) {
403
-			$exercise_name     = get_the_title();	
404
-			$term_obj_list     = get_the_terms( get_the_ID(), 'exercise-type' );
405
-			$exercise_type     = $term_obj_list[0]->name;
406
-			$exercise_type_url = get_term_link( $term_obj_list[0]->term_id );
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Exercise()
17
+      */
18
+     protected static $instance = null;
19
+
20
+     /**
21
+      * Holds post_type slug used as an index
22
+      *
23
+      * @since 1.0.0
24
+      *
25
+      * @var      string
26
+      */
27
+     public $slug = 'exercise';
28
+
29
+     /**
30
+      * Constructor
31
+      */
32
+     public function __construct() {
33
+
34
+          if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
35
+               // Post Type and Taxonomies.
36
+               add_action( 'init', array( $this, 'register_post_type' ) );
37
+               add_action( 'init', array( $this, 'exercise_type_taxonomy_setup' ) );
38
+               add_action( 'init', array( $this, 'equipment_taxonomy_setup' ) );
39
+               add_action( 'init', array( $this, 'muscle_group_taxonomy_setup' ) );
40
+               add_action( 'admin_menu', array( $this, 'register_menus' ) );
41
+
42
+               // Custom Fields.
43
+               add_action( 'cmb2_admin_init', array( $this, 'exercise_details' ), 8 );
44
+               add_action( 'cmb2_admin_init', array( $this, 'gallery_metabox' ), 9 );
45
+               add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
46
+
47
+               // Template Redirects.
48
+               add_filter( 'lsx_health_plan_archive_template', array( $this, 'enable_post_type' ), 10, 1 );
49
+               add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
50
+
51
+               //Breadcrumbs
52
+               add_filter( 'woocommerce_get_breadcrumb', array( $this, 'exercise_breadcrumb_filter' ), 30, 1 );
53
+
54
+          }
55
+
56
+     }
57
+
58
+
59
+     /**
60
+      * Return an instance of this class.
61
+      *
62
+      * @since 1.0.0
63
+      *
64
+      * @return    object \lsx_health_plan\classes\Exercise()    A single instance of this class.
65
+      */
66
+     public static function get_instance() {
67
+          // If the single instance hasn't been set, set it now.
68
+          if ( null === self::$instance ) {
69
+               self::$instance = new self();
70
+          }
71
+          return self::$instance;
72
+     }
73
+     /**
74
+      * Register the post type.
75
+      */
76
+     public function register_post_type() {
77
+          $labels = array(
78
+               'name'               => esc_html__( 'Exercises', 'lsx-health-plan' ),
79
+               'singular_name'      => esc_html__( 'Exercise', 'lsx-health-plan' ),
80
+               'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
81
+               'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
82
+               'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
83
+               'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
84
+               'all_items'          => esc_html__( 'All Exercises', 'lsx-health-plan' ),
85
+               'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
86
+               'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
87
+               'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
88
+               'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
89
+               'parent_item_colon'  => '',
90
+               'menu_name'          => esc_html__( 'Exercises', 'lsx-health-plan' ),
91
+          );
92
+          $args   = array(
93
+               'labels'             => $labels,
94
+               'public'             => true,
95
+               'publicly_queryable' => true,
96
+               'show_ui'            => true,
97
+               'show_in_menu'       => 'edit.php?post_type=workout-pseudo',
98
+               'show_in_rest'       => true,
99
+               'menu_icon'          => 'dashicons-universal-access',
100
+               'query_var'          => true,
101
+               'rewrite'            => array(
102
+                    'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_single', 'exercise' ),
103
+               ),
104
+               'capability_type'    => 'page',
105
+               'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_exercise_archive', 'exercises' ),
106
+               'hierarchical'       => false,
107
+               'menu_position'      => null,
108
+               'supports'           => array(
109
+                    'title',
110
+                    'thumbnail',
111
+                    'editor',
112
+                    'excerpt',
113
+                    'custom-fields',
114
+               ),
115
+          );
116
+          register_post_type( 'exercise', $args );
117
+     }
118
+
119
+     /**
120
+      * Register the Exercise taxonomy.
121
+      *
122
+      * @return void
123
+      */
124
+     public function exercise_type_taxonomy_setup() {
125
+          $labels = array(
126
+               'name'              => esc_html_x( 'Exercise Type', 'taxonomy general name', 'lsx-health-plan' ),
127
+               'singular_name'     => esc_html_x( 'Exercise Type', 'taxonomy singular name', 'lsx-health-plan' ),
128
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
129
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
130
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
131
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
132
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
133
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
134
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
135
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
136
+               'menu_name'         => esc_html__( 'Exercise Types', 'lsx-health-plan' ),
137
+          );
138
+
139
+          $args = array(
140
+               'hierarchical'      => true,
141
+               'labels'            => $labels,
142
+               'show_ui'           => true,
143
+               'show_admin_column' => true,
144
+               'query_var'         => true,
145
+               'rewrite'           => array(
146
+                    'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_type', 'exercise-type' ),
147
+               ),
148
+               'show_in_rest'      => true,
149
+          );
150
+
151
+          register_taxonomy( 'exercise-type', array( 'exercise' ), $args );
152
+     }
153
+
154
+     /**
155
+      * Register the Exercise taxonomy.
156
+      *
157
+      * @return void
158
+      */
159
+     public function equipment_taxonomy_setup() {
160
+          $labels = array(
161
+               'name'              => esc_html_x( 'Equipment', 'taxonomy general name', 'lsx-health-plan' ),
162
+               'singular_name'     => esc_html_x( 'Equipment', 'taxonomy singular name', 'lsx-health-plan' ),
163
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
164
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
165
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
166
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
167
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
168
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
169
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
170
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
171
+               'menu_name'         => esc_html__( 'Equipment', 'lsx-health-plan' ),
172
+          );
173
+
174
+          $args = array(
175
+               'hierarchical'      => true,
176
+               'labels'            => $labels,
177
+               'show_ui'           => true,
178
+               'show_admin_column' => true,
179
+               'query_var'         => true,
180
+               'rewrite'           => array(
181
+                    'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_equipment', 'equipment' ),
182
+               ),
183
+               'show_in_rest'      => true,
184
+          );
185
+
186
+          register_taxonomy( 'equipment', array( 'exercise' ), $args );
187
+     }
188
+
189
+     /**
190
+      * Register the Muscle Group taxonomy.
191
+      *
192
+      * @return void
193
+      */
194
+     public function muscle_group_taxonomy_setup() {
195
+          $labels = array(
196
+               'name'              => esc_html_x( 'Muscle Groups', 'taxonomy general name', 'lsx-health-plan' ),
197
+               'singular_name'     => esc_html_x( 'Muscle Group', 'taxonomy singular name', 'lsx-health-plan' ),
198
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
199
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
200
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
201
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
202
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
203
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
204
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
205
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
206
+               'menu_name'         => esc_html__( 'Muscle Groups', 'lsx-health-plan' ),
207
+          );
208
+
209
+          $args = array(
210
+               'hierarchical'      => true,
211
+               'labels'            => $labels,
212
+               'show_ui'           => true,
213
+               'show_admin_column' => true,
214
+               'query_var'         => true,
215
+               'rewrite'           => array(
216
+                    'slug' => \lsx_health_plan\functions\get_option( 'endpoint_exercise_musclegroup', 'muscle-group' ),
217
+               ),
218
+               'show_in_rest'      => true,
219
+          );
220
+
221
+          register_taxonomy( 'muscle-group', array( 'exercise' ), $args );
222
+     }
223
+
224
+     /**
225
+      * Registers the Recipes under the Meals Post type menu.
226
+      *
227
+      * @return void
228
+      */
229
+     public function register_menus() {
230
+          add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Exercises', 'lsx-health-plan' ), esc_html__( 'Exercises', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=exercise' );
231
+          add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Exercise Types', 'lsx-health-plan' ), esc_html__( 'Exercise Types', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=exercise-type&post_type=exercise' );
232
+          add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Equipment', 'lsx-health-plan' ), esc_html__( 'Equipment', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=equipment&post_type=exercise' );
233
+          add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Muscle Groups', 'lsx-health-plan' ), esc_html__( 'Muscle Groups', 'lsx-health-plan' ), 'edit_posts', 'edit-tags.php?taxonomy=muscle-group&post_type=exercise' );
234
+     }
235
+
236
+     /**
237
+      * Adds the post type to the different arrays.
238
+      *
239
+      * @param array $post_types
240
+      * @return array
241
+      */
242
+     public function enable_post_type( $post_types = array() ) {
243
+          $post_types[] = $this->slug;
244
+          return $post_types;
245
+     }
246
+
247
+     /**
248
+      * Enables the Bi Directional relationships
249
+      *
250
+      * @param array $connections
251
+      * @return void
252
+      */
253
+     public function enable_connections( $connections = array() ) {
254
+          $connections['exercise']['connected_workouts'] = 'connected_exercises';
255
+          $connections['workout']['connected_exercises'] = 'connected_workouts';
256
+          return $connections;
257
+     }
258
+
259
+     /**
260
+      * Define the metabox and field configurations.
261
+      */
262
+     public function gallery_metabox() {
263
+          $cmb = new_cmb2_box(
264
+               array(
265
+                    'id'           => $this->slug . '_gallery_details_metabox',
266
+                    'title'        => __( 'Exercise Gallery', 'lsx-health-plan' ),
267
+                    'object_types' => array( $this->slug ),
268
+                    'context'      => 'normal',
269
+                    'priority'     => 'low',
270
+                    'show_names'   => true,
271
+               )
272
+          );
273
+
274
+          $cmb->add_field(
275
+               array(
276
+                    'name'    => __( 'Layout', 'lsx-health-plan' ),
277
+                    'id'      => $this->slug . '_gallery_layout',
278
+                    'type'    => 'radio',
279
+                    'options' => array(
280
+                         'slider' => __( 'Slider', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
281
+                         'grid'   => __( 'Grid', 'lsx-health-plan' ),
282
+                    ),
283
+                    'default' => 'grid',
284
+               )
285
+          );
286
+
287
+          $cmb->add_field(
288
+               array(
289
+                    'name'    => __( 'Grid Columns', 'lsx-health-plan' ),
290
+                    'id'      => $this->slug . '_gallery_columns',
291
+                    'type'    => 'select',
292
+                    'options' => array(
293
+                         '3' => __( '2 Columns', 'lsx-health-plan' ),
294
+                         '4' => __( '3 Columns', 'lsx-health-plan' ),
295
+                    ),
296
+                    'default' => '1',
297
+               )
298
+          );
299
+
300
+          // Repeatable group.
301
+          $gallery_group = $cmb->add_field(
302
+               array(
303
+                    'id'      => $this->slug . '_gallery',
304
+                    'type'    => 'group',
305
+                    'options' => array(
306
+                         'group_title'   => __( 'Gallery', 'lsx-health-plan' ) . ' {#}', // {#} gets replaced by row number
307
+                         'add_button'    => __( 'Add Item', 'lsx-health-plan' ),
308
+                         'remove_button' => __( 'Remove Item', 'lsx-health-plan' ),
309
+                         'sortable'      => true,
310
+                    ),
311
+                    'classes' => 'lsx-admin-row',
312
+               )
313
+          );
314
+
315
+          // Title.
316
+          $cmb->add_group_field(
317
+               $gallery_group,
318
+               array(
319
+                    'name'       => __( 'Image', 'lsx-health-plan' ),
320
+                    'id'         => $this->slug . '_gallery_image',
321
+                    'type'       => 'file',
322
+                    'text'       => array(
323
+                         'add_upload_file_text' => __( 'Add File', 'lsx-health-plan' ),
324
+                    ),
325
+                    'desc'       => __( 'Upload an image a minimum of 800px x 600px in size.', 'lsx-health-plan' ),
326
+                    'query_args' => array(
327
+                         'type' => array(
328
+                              'image/gif',
329
+                              'image/jpeg',
330
+                              'image/png',
331
+                         ),
332
+                    ),
333
+                    'preview_size' => 'lsx-thumbnail-wide',
334
+               )
335
+          );
336
+
337
+          // Title.
338
+          $cmb->add_group_field(
339
+               $gallery_group,
340
+               array(
341
+                    'name'         => __( 'oEmbed', 'lsx-health-plan' ),
342
+                    'id'           => $this->slug . '_gallery_embed',
343
+                    'type'         => 'text',
344
+                    'desc'         => __( 'Drop in the embed url for your video from YouTube, Vimeo or DailyMotion, e.g: "https://www.youtube.com/watch?v=9xwazD5SyVg". A full list of supports formats can be found at <a href="https://make.wordpress.org/support/user-manual/content/media/adding-media-to-your-pages-and-posts/embedding-media-from-other-sites/">WordPress</a>', 'lsx-health-plan' ),
345
+               )
346
+          );
347
+
348
+          $cmb->add_group_field(
349
+               $gallery_group,
350
+               array(
351
+                    'name'         => __( 'External Media', 'lsx-health-plan' ),
352
+                    'id'           => $this->slug . '_gallery_external',
353
+                    'type'         => 'textarea_code',
354
+                    'desc'         => __( 'Drop in the iFrame embed code from Giphy in this field, i.e: &lt;iframe src="https://giphy.com/embed/3o7527Rn1HxXWqgxuo" width="480" height="270" frameborder="0" class="giphy-embed" allowfullscreen&gt;&lt;/iframe&gt;', 'lsx-health-plan' ),
355
+               )
356
+          );
357
+     }
358
+
359
+     /**
360
+      * Registers the general settings for the exercise.
361
+      *
362
+      * @return void
363
+      */
364
+     public function exercise_details() {
365
+          $cmb = new_cmb2_box(
366
+               array(
367
+                    'id'           => $this->slug . '_general_details_metabox',
368
+                    'title'        => __( 'Details', 'lsx-health-plan' ),
369
+                    'object_types' => array( $this->slug ),
370
+                    'context'      => 'normal',
371
+                    'priority'     => 'high',
372
+                    'show_names'   => true,
373
+               )
374
+          );
375
+
376
+          $cmb->add_field(
377
+               array(
378
+                    'name'    => __( 'Side', 'lsx-health-plan' ),
379
+                    'id'      => $this->slug . '_side',
380
+                    'type'    => 'select',
381
+                    'options' => array(
382
+                         ''      => __( 'Select', 'lsx-health-plan' ),
383
+                         'left'  => __( 'Left', 'lsx-health-plan' ),
384
+                         'right' => __( 'Right', 'lsx-health-plan' ),
385
+                    ),
386
+                    'desc'    => __( 'Select which side this exercise uses. ', 'lsx-health-plan' ),
387
+               )
388
+          );
389
+     }
390
+
391
+     /**
392
+      * Holds the array for the single exercise breadcrumbs.
393
+      *
394
+      * @var array $crumbs
395
+      * @return array
396
+      */
397
+     public function exercise_breadcrumb_filter( $crumbs ) {
398
+          $exercise  = \lsx_health_plan\functions\get_option( 'endpoint_exercise', 'exercise' );
399
+          $exercises = \lsx_health_plan\functions\get_option( 'endpoint_exercise_archive', 'exercise' );
400
+          $url       = get_post_type_archive_link( $exercise );
401
+
402
+          if ( is_singular( 'exercise' ) ) {
403
+               $exercise_name     = get_the_title();	
404
+               $term_obj_list     = get_the_terms( get_the_ID(), 'exercise-type' );
405
+               $exercise_type     = $term_obj_list[0]->name;
406
+               $exercise_type_url = get_term_link( $term_obj_list[0]->term_id );
407 407
 		
408
-			$crumbs[1] = array(
409
-				0 => $exercises,
410
-				1 => $url,
411
-			);
412
-			$crumbs[2] = array(
413
-				0 => $exercise_type,
414
-				1 => $exercise_type_url,
415
-			);
416
-			$crumbs[3] = array(
417
-				0 => $exercise_name,
418
-			);
419
-		}
420
-		if ( is_tax( 'exercise-type' ) || is_tax( 'muscle-group' ) || is_tax( 'equipment' ) ) {
421
-			$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); 
422
-
423
-			$single_term_title = str_replace( '-', ' ', $term->taxonomy ) . ': ' . $term->name;
424
-
425
-			$crumbs[1] = array(
426
-				0 => $exercises,
427
-				1 => $url,
428
-			);
429
-			$crumbs[2] = array(
430
-				0 => $single_term_title,
431
-			);
432
-		}
433
-		return $crumbs;
434
-	}
408
+               $crumbs[1] = array(
409
+                    0 => $exercises,
410
+                    1 => $url,
411
+               );
412
+               $crumbs[2] = array(
413
+                    0 => $exercise_type,
414
+                    1 => $exercise_type_url,
415
+               );
416
+               $crumbs[3] = array(
417
+                    0 => $exercise_name,
418
+               );
419
+          }
420
+          if ( is_tax( 'exercise-type' ) || is_tax( 'muscle-group' ) || is_tax( 'equipment' ) ) {
421
+               $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); 
422
+
423
+               $single_term_title = str_replace( '-', ' ', $term->taxonomy ) . ': ' . $term->name;
424
+
425
+               $crumbs[1] = array(
426
+                    0 => $exercises,
427
+                    1 => $url,
428
+               );
429
+               $crumbs[2] = array(
430
+                    0 => $single_term_title,
431
+               );
432
+          }
433
+          return $crumbs;
434
+     }
435 435
 }
Please login to merge, or discard this patch.
classes/frontend/class-gallery.php 1 patch
Indentation   +232 added lines, -232 removed lines patch added patch discarded remove patch
@@ -8,263 +8,263 @@
 block discarded – undo
8 8
  */
9 9
 class Gallery {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @var object \lsx_health_plan\classes\lib\Gallery()
15
-	 */
16
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @var object \lsx_health_plan\classes\lib\Gallery()
15
+      */
16
+     protected static $instance = null;
17 17
 
18
-	/**
19
-	 * The current item ID.
20
-	 *
21
-	 * @var boolean | int
22
-	 */
23
-	public $item_id = false;
18
+     /**
19
+      * The current item ID.
20
+      *
21
+      * @var boolean | int
22
+      */
23
+     public $item_id = false;
24 24
 
25
-	/**
26
-	 * The current item post_type used in the custom field retrival..
27
-	 *
28
-	 * @var boolean | int
29
-	 */
30
-	public $post_type = false;
25
+     /**
26
+      * The current item post_type used in the custom field retrival..
27
+      *
28
+      * @var boolean | int
29
+      */
30
+     public $post_type = false;
31 31
 
32
-	/**
33
-	 * Holds the the default parameters for the gallery output.
34
-	 *
35
-	 * @var array
36
-	 */
37
-	public $defaults = array();
32
+     /**
33
+      * Holds the the default parameters for the gallery output.
34
+      *
35
+      * @var array
36
+      */
37
+     public $defaults = array();
38 38
 
39
-	/**
40
-	 * If the current post has a gallery.
41
-	 *
42
-	 * @var boolean
43
-	 */
44
-	public $has_gallery = false;
39
+     /**
40
+      * If the current post has a gallery.
41
+      *
42
+      * @var boolean
43
+      */
44
+     public $has_gallery = false;
45 45
 
46
-	/**
47
-	 * Holds the array of gallery images.
48
-	 *
49
-	 * @var array
50
-	 */
51
-	public $gallery = array();
46
+     /**
47
+      * Holds the array of gallery images.
48
+      *
49
+      * @var array
50
+      */
51
+     public $gallery = array();
52 52
 
53
-	/**
54
-	 * Holds the html for the current gallery being output.
55
-	 *
56
-	 * @var array
57
-	 */
58
-	public $html = array();
53
+     /**
54
+      * Holds the html for the current gallery being output.
55
+      *
56
+      * @var array
57
+      */
58
+     public $html = array();
59 59
 
60
-	/**
61
-	 * Holds the parameters for the current gallery being output.
62
-	 *
63
-	 * @var array
64
-	 */
65
-	public $args = array();
60
+     /**
61
+      * Holds the parameters for the current gallery being output.
62
+      *
63
+      * @var array
64
+      */
65
+     public $args = array();
66 66
 
67
-	/**
68
-	 * Constructor
69
-	 */
70
-	public function __construct() {
71
-	}
67
+     /**
68
+      * Constructor
69
+      */
70
+     public function __construct() {
71
+     }
72 72
 
73
-	/**
74
-	 * Return an instance of this class.
75
-	 *
76
-	 * @since 1.0.0
77
-	 *
78
-	 * @return    object \lsx_health_plan\classes\lib\Gallery()    A single instance of this class.
79
-	 */
80
-	public static function get_instance() {
81
-		// If the single instance hasn't been set, set it now.
82
-		if ( null === self::$instance ) {
83
-			self::$instance = new self();
84
-		}
85
-		return self::$instance;
86
-	}
73
+     /**
74
+      * Return an instance of this class.
75
+      *
76
+      * @since 1.0.0
77
+      *
78
+      * @return    object \lsx_health_plan\classes\lib\Gallery()    A single instance of this class.
79
+      */
80
+     public static function get_instance() {
81
+          // If the single instance hasn't been set, set it now.
82
+          if ( null === self::$instance ) {
83
+               self::$instance = new self();
84
+          }
85
+          return self::$instance;
86
+     }
87 87
 
88
-	/**
89
-	 * Check if the item has a gallery of images returns true or false.
90
-	 *
91
-	 * @param  string $item_id
92
-	 * @param  string $post_type
93
-	 * @return boolean
94
-	 */
95
-	public function has_gallery( $item_id = '', $post_type = '' ) {
96
-		if ( '' === $item_id ) {
97
-			$this->item_id = get_the_ID();
98
-		} else {
99
-			$this->item_id = $item_id;
100
-		}
101
-		$this->has_gallery = false;
102
-		if ( '' === $post_type ) {
103
-			$this->post_type = get_post_type( $this->item_id );
104
-		}
105
-		$gallery = get_post_meta( $this->item_id, $this->post_type . '_gallery', true );
88
+     /**
89
+      * Check if the item has a gallery of images returns true or false.
90
+      *
91
+      * @param  string $item_id
92
+      * @param  string $post_type
93
+      * @return boolean
94
+      */
95
+     public function has_gallery( $item_id = '', $post_type = '' ) {
96
+          if ( '' === $item_id ) {
97
+               $this->item_id = get_the_ID();
98
+          } else {
99
+               $this->item_id = $item_id;
100
+          }
101
+          $this->has_gallery = false;
102
+          if ( '' === $post_type ) {
103
+               $this->post_type = get_post_type( $this->item_id );
104
+          }
105
+          $gallery = get_post_meta( $this->item_id, $this->post_type . '_gallery', true );
106 106
 
107
-		if ( ! empty( $gallery ) && ( '' !== $gallery ) ) {
108
-			$this->gallery     = $gallery;
109
-			$this->has_gallery = true;
110
-			wp_enqueue_script( 'slick', LSX_HEALTH_PLAN_URL . 'assets/js/src/slick.min.js', array( 'jquery' ), LSX_HEALTH_PLAN_VER, true );
111
-			wp_enqueue_script( 'lsx-health-plan-slider', LSX_HEALTH_PLAN_URL . 'assets/js/src/lsx-health-plan-slider.js', array( 'slick' ), LSX_HEALTH_PLAN_VER, true );
112
-		}
113
-		return $this->has_gallery;
114
-	}
107
+          if ( ! empty( $gallery ) && ( '' !== $gallery ) ) {
108
+               $this->gallery     = $gallery;
109
+               $this->has_gallery = true;
110
+               wp_enqueue_script( 'slick', LSX_HEALTH_PLAN_URL . 'assets/js/src/slick.min.js', array( 'jquery' ), LSX_HEALTH_PLAN_VER, true );
111
+               wp_enqueue_script( 'lsx-health-plan-slider', LSX_HEALTH_PLAN_URL . 'assets/js/src/lsx-health-plan-slider.js', array( 'slick' ), LSX_HEALTH_PLAN_VER, true );
112
+          }
113
+          return $this->has_gallery;
114
+     }
115 115
 
116
-	/**
117
-	 * Returns the defaults for the gallery, after grabbing the setting from the item.
118
-	 *
119
-	 * @param  string $item_id
120
-	 * @param  string $post_type
121
-	 * @return array
122
-	 */
123
-	public function get_defaults( $item_id = '', $post_type = '' ) {
124
-		if ( '' === $item_id ) {
125
-			$item_id = $this->item_id;
126
-		}
127
-		if ( '' === $post_type ) {
128
-			$post_type = $this->post_type;
129
-		}
130
-		$this->defaults = array(
131
-			'columns'   => '3',
132
-			'layout'    => 'slider',
133
-			'interval'  => false,
134
-			'css_class' => false,
135
-		);
136
-		foreach ( $this->defaults as $key => $default ) {
137
-			$override = get_post_meta( $item_id, $this->post_type . '_gallery_' . $key, true );
138
-			if ( '' !== $override && false !== $override && ! empty( $override ) ) {
139
-				$this->defaults[ $key ] = $override;
140
-			}
141
-		}
142
-		return $this->defaults;
143
-	}
116
+     /**
117
+      * Returns the defaults for the gallery, after grabbing the setting from the item.
118
+      *
119
+      * @param  string $item_id
120
+      * @param  string $post_type
121
+      * @return array
122
+      */
123
+     public function get_defaults( $item_id = '', $post_type = '' ) {
124
+          if ( '' === $item_id ) {
125
+               $item_id = $this->item_id;
126
+          }
127
+          if ( '' === $post_type ) {
128
+               $post_type = $this->post_type;
129
+          }
130
+          $this->defaults = array(
131
+               'columns'   => '3',
132
+               'layout'    => 'slider',
133
+               'interval'  => false,
134
+               'css_class' => false,
135
+          );
136
+          foreach ( $this->defaults as $key => $default ) {
137
+               $override = get_post_meta( $item_id, $this->post_type . '_gallery_' . $key, true );
138
+               if ( '' !== $override && false !== $override && ! empty( $override ) ) {
139
+                    $this->defaults[ $key ] = $override;
140
+               }
141
+          }
142
+          return $this->defaults;
143
+     }
144 144
 
145
-	/**
146
-	 * Gets and returns the gallery html.
147
-	 *
148
-	 * @param string $item_id
149
-	 * @param string $post_type
150
-	 * @return void
151
-	 */
152
-	public function get_gallery( $item_id = '', $post_type = '', $args = array() ) {
153
-		$return     = '';
154
-		$this->html = array();
155
-		$this->args = wp_parse_args( $args, $this->get_defaults( $item_id, $post_type ) );
156
-		if ( ! empty( $this->gallery ) ) {
157
-			$this->args['count'] = 1;
158
-			if ( '' !== $post_type ) {
159
-				$this->args['post_type'] = $post_type;
160
-			} else {
161
-				$this->args['post_type'] = $this->post_type;
162
-			}
145
+     /**
146
+      * Gets and returns the gallery html.
147
+      *
148
+      * @param string $item_id
149
+      * @param string $post_type
150
+      * @return void
151
+      */
152
+     public function get_gallery( $item_id = '', $post_type = '', $args = array() ) {
153
+          $return     = '';
154
+          $this->html = array();
155
+          $this->args = wp_parse_args( $args, $this->get_defaults( $item_id, $post_type ) );
156
+          if ( ! empty( $this->gallery ) ) {
157
+               $this->args['count'] = 1;
158
+               if ( '' !== $post_type ) {
159
+                    $this->args['post_type'] = $post_type;
160
+               } else {
161
+                    $this->args['post_type'] = $this->post_type;
162
+               }
163 163
 
164
-			// output the opening boostrap row divs.
165
-			$this->before_loop();
164
+               // output the opening boostrap row divs.
165
+               $this->before_loop();
166 166
 
167
-			foreach ( $this->gallery as $key => $gallery ) {
167
+               foreach ( $this->gallery as $key => $gallery ) {
168 168
 
169
-				$this->loop_start();
169
+                    $this->loop_start();
170 170
 
171
-				if ( isset( $gallery['exercise_gallery_image_id'] ) && ! empty( $gallery['exercise_gallery_image_id'] ) ) {
172
-					$size         = apply_filters( 'lsx_hp_exercise_gallery_size', 'full' );
173
-					$thumbnail    = wp_get_attachment_image( $gallery['exercise_gallery_image_id'], $size );
174
-					$this->html[] = $thumbnail;
175
-				} elseif ( isset( $gallery['exercise_gallery_external'] ) && ! empty( $gallery['exercise_gallery_external'] ) ) {
176
-					$this->html[] = $gallery['exercise_gallery_external']; // WPCS: XSS OK.
177
-				} elseif ( isset( $gallery['exercise_gallery_embed'] ) && ! empty( $gallery['exercise_gallery_embed'] ) ) {
178
-					$embed_args = array(
179
-						'width' => '530',
180
-					);
181
-					$embed        = wp_oembed_get( $gallery['exercise_gallery_embed'], $embed_args );
182
-					$this->html[] = str_replace( 'width="530"', 'width="100%"', $embed ); // WPCS: XSS OK.
183
-				}
171
+                    if ( isset( $gallery['exercise_gallery_image_id'] ) && ! empty( $gallery['exercise_gallery_image_id'] ) ) {
172
+                         $size         = apply_filters( 'lsx_hp_exercise_gallery_size', 'full' );
173
+                         $thumbnail    = wp_get_attachment_image( $gallery['exercise_gallery_image_id'], $size );
174
+                         $this->html[] = $thumbnail;
175
+                    } elseif ( isset( $gallery['exercise_gallery_external'] ) && ! empty( $gallery['exercise_gallery_external'] ) ) {
176
+                         $this->html[] = $gallery['exercise_gallery_external']; // WPCS: XSS OK.
177
+                    } elseif ( isset( $gallery['exercise_gallery_embed'] ) && ! empty( $gallery['exercise_gallery_embed'] ) ) {
178
+                         $embed_args = array(
179
+                              'width' => '530',
180
+                         );
181
+                         $embed        = wp_oembed_get( $gallery['exercise_gallery_embed'], $embed_args );
182
+                         $this->html[] = str_replace( 'width="530"', 'width="100%"', $embed ); // WPCS: XSS OK.
183
+                    }
184 184
 
185
-				$this->loop_end();
185
+                    $this->loop_end();
186 186
 
187
-				$this->args['count']++;
188
-			}
187
+                    $this->args['count']++;
188
+               }
189 189
 
190
-			// output the closing boostrap row divs.
191
-			$this->after_loop();
192
-		}
190
+               // output the closing boostrap row divs.
191
+               $this->after_loop();
192
+          }
193 193
 
194
-		// Join the html output if its not empty.
195
-		if ( ! empty( $this->html ) ) {
196
-			$return = implode( '', $this->html );
197
-		}
198
-		return $return;
199
-	}
194
+          // Join the html output if its not empty.
195
+          if ( ! empty( $this->html ) ) {
196
+               $return = implode( '', $this->html );
197
+          }
198
+          return $return;
199
+     }
200 200
 
201
-	/**
202
-	 * Outputs the CSS class for the panels
203
-	 *
204
-	 * @param string $columns
205
-	 * @return string
206
-	 */
207
-	public function column_class() {
208
-		$cols  = 'col-xs-12 col-sm-';
209
-		$cols .= '5' === $this->args['columns'] ? '15' : 12 / $this->args['columns'];
210
-		return $cols;
211
-	}
201
+     /**
202
+      * Outputs the CSS class for the panels
203
+      *
204
+      * @param string $columns
205
+      * @return string
206
+      */
207
+     public function column_class() {
208
+          $cols  = 'col-xs-12 col-sm-';
209
+          $cols .= '5' === $this->args['columns'] ? '15' : 12 / $this->args['columns'];
210
+          return $cols;
211
+     }
212 212
 
213
-	/**
214
-	 * Runs just after the if and before the while statement in $this->output()
215
-	 */
216
-	public function before_loop() {
217
-		if ( 'slider' === $this->args['layout'] ) {
218
-			$this->carousel_id = wp_rand( 20, 20000 );
219
-			$this->html[]      = "<div class='lsx-hp-widget-items slick-slider slick-dotted slick-has-arrows {$this->args['css_class']} ' data-interval='{$this->args['interval']}' data-slick='{ \"slidesToShow\": {$this->args['columns']}, \"slidesToScroll\": {$this->args['columns']} }'>";
220
-		} else {
221
-			$this->html[] = "<div class='lsx-hp-widget-items widget-item-grid-layout'>";
222
-		}
223
-	}
213
+     /**
214
+      * Runs just after the if and before the while statement in $this->output()
215
+      */
216
+     public function before_loop() {
217
+          if ( 'slider' === $this->args['layout'] ) {
218
+               $this->carousel_id = wp_rand( 20, 20000 );
219
+               $this->html[]      = "<div class='lsx-hp-widget-items slick-slider slick-dotted slick-has-arrows {$this->args['css_class']} ' data-interval='{$this->args['interval']}' data-slick='{ \"slidesToShow\": {$this->args['columns']}, \"slidesToScroll\": {$this->args['columns']} }'>";
220
+          } else {
221
+               $this->html[] = "<div class='lsx-hp-widget-items widget-item-grid-layout'>";
222
+          }
223
+     }
224 224
 
225
-	/**
226
-	 * Runs at the very end of the loop before it runs again.
227
-	 */
228
-	public function loop_start() {
229
-		// Get the call for the active slide.
230
-		if ( 'slider' === $this->args['layout'] ) {
231
-			$this->html[] = "<div class='lsx-hp-widget-item-wrap lsx-{$this->args['post_type']}'>";
232
-		} else {
233
-			if ( 1 === $this->args['count'] ) {
234
-				$this->html[] = "<div class='row'>";
235
-			}
236
-			$this->html[] = '<div class="' . $this->column_class() . '">';
237
-		}
238
-	}
225
+     /**
226
+      * Runs at the very end of the loop before it runs again.
227
+      */
228
+     public function loop_start() {
229
+          // Get the call for the active slide.
230
+          if ( 'slider' === $this->args['layout'] ) {
231
+               $this->html[] = "<div class='lsx-hp-widget-item-wrap lsx-{$this->args['post_type']}'>";
232
+          } else {
233
+               if ( 1 === $this->args['count'] ) {
234
+                    $this->html[] = "<div class='row'>";
235
+               }
236
+               $this->html[] = '<div class="' . $this->column_class() . '">';
237
+          }
238
+     }
239 239
 
240
-	/**
241
-	 * Runs at the very end of the loop before it runs again.
242
-	 */
243
-	public function loop_end() {
244
-		if ( 'slider' !== $this->args['layout'] ) {
245
-			$this->html[] = '</div>';
246
-		}
247
-		// Close the current slide panel.
248
-		if ( 'slider' === $this->args['layout'] ) {
249
-			$this->html[] = '</div>';
250
-		} elseif ( 0 === $this->args['count'] % $this->args['columns'] || count( $this->gallery ) === $this->args['count'] ) {
251
-			$this->html[] = '</div>';
240
+     /**
241
+      * Runs at the very end of the loop before it runs again.
242
+      */
243
+     public function loop_end() {
244
+          if ( 'slider' !== $this->args['layout'] ) {
245
+               $this->html[] = '</div>';
246
+          }
247
+          // Close the current slide panel.
248
+          if ( 'slider' === $this->args['layout'] ) {
249
+               $this->html[] = '</div>';
250
+          } elseif ( 0 === $this->args['count'] % $this->args['columns'] || count( $this->gallery ) === $this->args['count'] ) {
251
+               $this->html[] = '</div>';
252 252
 
253
-			if ( $this->args['count'] < count( $this->gallery ) ) {
254
-				$this->html[] = "<div class='row'>";
255
-			}
256
-		}
257
-	}
253
+               if ( $this->args['count'] < count( $this->gallery ) ) {
254
+                    $this->html[] = "<div class='row'>";
255
+               }
256
+          }
257
+     }
258 258
 
259
-	/**
260
-	 * Runs just after the if and before the while statement in $this->output()
261
-	 */
262
-	public function after_loop() {
263
-		// Slider output Closing.
264
-		if ( 'slider' === $this->args['layout'] ) {
265
-			$this->html[] = '</div>';
266
-		} else {
267
-			$this->html[] = '</div>';
268
-		}
269
-	}
259
+     /**
260
+      * Runs just after the if and before the while statement in $this->output()
261
+      */
262
+     public function after_loop() {
263
+          // Slider output Closing.
264
+          if ( 'slider' === $this->args['layout'] ) {
265
+               $this->html[] = '</div>';
266
+          } else {
267
+               $this->html[] = '</div>';
268
+          }
269
+     }
270 270
 }
Please login to merge, or discard this patch.
classes/class-frontend.php 1 patch
Indentation   +120 added lines, -120 removed lines patch added patch discarded remove patch
@@ -8,124 +8,124 @@
 block discarded – undo
8 8
  */
9 9
 class Frontend {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Frontend()
17
-	 */
18
-	protected static $instance = null;
19
-
20
-	/**
21
-	 * @var object \lsx_health_plan\classes\frontend\Endpoints();
22
-	 */
23
-	public $endpoints;
24
-
25
-	/**
26
-	 * @var object \lsx_health_plan\classes\frontend\Modals();
27
-	 */
28
-	public $modals;
29
-
30
-	/**
31
-	 * @var object \lsx_health_plan\classes\frontend\Gallery();
32
-	 */
33
-	public $gallery;
34
-
35
-	/**
36
-	 * @var object \lsx_health_plan\classes\frontend\Plan_Status();
37
-	 */
38
-	public $plan_status;
39
-
40
-	/**
41
-	 * @var object \lsx_health_plan\classes\frontend\Plan_Query();
42
-	 */
43
-	public $plan_query;
44
-
45
-	/**
46
-	 * @var object \lsx_health_plan\classes\frontend\General();
47
-	 */
48
-	public $general;
49
-
50
-	/**
51
-	 * @var object \lsx_health_plan\classes\frontend\Template_Redirects();
52
-	 */
53
-	public $template_redirects;
54
-
55
-	/**
56
-	 * Constructor
57
-	 */
58
-	public function __construct() {
59
-		if ( ! is_admin() ) {
60
-			$this->load_classes();
61
-			add_action( 'template_redirect', array( $this, 'redirect' ) );
62
-		}	
63
-	}
64
-
65
-	/**
66
-	 * Return an instance of this class.
67
-	 *
68
-	 * @since 1.0.0
69
-	 *
70
-	 * @return    object \lsx_health_plan\classes\Frontend()    A single instance of this class.
71
-	 */
72
-	public static function get_instance() {
73
-		// If the single instance hasn't been set, set it now.
74
-		if ( null === self::$instance ) {
75
-			self::$instance = new self();
76
-		}
77
-		return self::$instance;
78
-	}
79
-
80
-	/**
81
-	 * Loads the variable classes and the static classes.
82
-	 */
83
-	private function load_classes() {
84
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-endpoints.php';
85
-		$this->endpoints = frontend\Endpoints::get_instance();
86
-
87
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-modals.php';
88
-		$this->modals = Modals::get_instance();
89
-
90
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-gallery.php';
91
-		$this->gallery = frontend\Gallery::get_instance();
92
-
93
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-plan-status.php';
94
-		$this->plan_status = frontend\Plan_Status::get_instance();
95
-
96
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-plan-query.php';
97
-		$this->plan_query = frontend\Plan_Query::get_instance();
98
-
99
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-general.php';
100
-		$this->general = frontend\General::get_instance();
101
-
102
-		require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-template-redirects.php';
103
-		$this->template_redirects = frontend\Template_Redirects::get_instance();
104
-	}
105
-
106
-	/**
107
-	 * Redirect the user from the cart or checkout page if they have purchased the product already.
108
-	 *
109
-	 * @return void
110
-	 */
111
-	public function redirect() {
112
-		if ( ! is_user_logged_in() || ! function_exists( 'wc_get_page_id' ) || is_home() ) {
113
-			return;
114
-		}
115
-	}
116
-	/**
117
-	 * Remove the "Archives:" from the post type recipes.
118
-	 *
119
-	 * @param string $title the term title.
120
-	 * @return string
121
-	 */
122
-	public function get_the_archive_title( $title ) {
123
-		if ( is_tax() ) {
124
-			$queried_object = get_queried_object();
125
-			if ( isset( $queried_object->name ) ) {
126
-				$title = $queried_object->name;
127
-			}
128
-		}
129
-		return $title;
130
-	}
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Frontend()
17
+      */
18
+     protected static $instance = null;
19
+
20
+     /**
21
+      * @var object \lsx_health_plan\classes\frontend\Endpoints();
22
+      */
23
+     public $endpoints;
24
+
25
+     /**
26
+      * @var object \lsx_health_plan\classes\frontend\Modals();
27
+      */
28
+     public $modals;
29
+
30
+     /**
31
+      * @var object \lsx_health_plan\classes\frontend\Gallery();
32
+      */
33
+     public $gallery;
34
+
35
+     /**
36
+      * @var object \lsx_health_plan\classes\frontend\Plan_Status();
37
+      */
38
+     public $plan_status;
39
+
40
+     /**
41
+      * @var object \lsx_health_plan\classes\frontend\Plan_Query();
42
+      */
43
+     public $plan_query;
44
+
45
+     /**
46
+      * @var object \lsx_health_plan\classes\frontend\General();
47
+      */
48
+     public $general;
49
+
50
+     /**
51
+      * @var object \lsx_health_plan\classes\frontend\Template_Redirects();
52
+      */
53
+     public $template_redirects;
54
+
55
+     /**
56
+      * Constructor
57
+      */
58
+     public function __construct() {
59
+          if ( ! is_admin() ) {
60
+               $this->load_classes();
61
+               add_action( 'template_redirect', array( $this, 'redirect' ) );
62
+          }	
63
+     }
64
+
65
+     /**
66
+      * Return an instance of this class.
67
+      *
68
+      * @since 1.0.0
69
+      *
70
+      * @return    object \lsx_health_plan\classes\Frontend()    A single instance of this class.
71
+      */
72
+     public static function get_instance() {
73
+          // If the single instance hasn't been set, set it now.
74
+          if ( null === self::$instance ) {
75
+               self::$instance = new self();
76
+          }
77
+          return self::$instance;
78
+     }
79
+
80
+     /**
81
+      * Loads the variable classes and the static classes.
82
+      */
83
+     private function load_classes() {
84
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-endpoints.php';
85
+          $this->endpoints = frontend\Endpoints::get_instance();
86
+
87
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-modals.php';
88
+          $this->modals = Modals::get_instance();
89
+
90
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-gallery.php';
91
+          $this->gallery = frontend\Gallery::get_instance();
92
+
93
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-plan-status.php';
94
+          $this->plan_status = frontend\Plan_Status::get_instance();
95
+
96
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-plan-query.php';
97
+          $this->plan_query = frontend\Plan_Query::get_instance();
98
+
99
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-general.php';
100
+          $this->general = frontend\General::get_instance();
101
+
102
+          require_once LSX_HEALTH_PLAN_PATH . 'classes/frontend/class-template-redirects.php';
103
+          $this->template_redirects = frontend\Template_Redirects::get_instance();
104
+     }
105
+
106
+     /**
107
+      * Redirect the user from the cart or checkout page if they have purchased the product already.
108
+      *
109
+      * @return void
110
+      */
111
+     public function redirect() {
112
+          if ( ! is_user_logged_in() || ! function_exists( 'wc_get_page_id' ) || is_home() ) {
113
+               return;
114
+          }
115
+     }
116
+     /**
117
+      * Remove the "Archives:" from the post type recipes.
118
+      *
119
+      * @param string $title the term title.
120
+      * @return string
121
+      */
122
+     public function get_the_archive_title( $title ) {
123
+          if ( is_tax() ) {
124
+               $queried_object = get_queried_object();
125
+               if ( isset( $queried_object->name ) ) {
126
+                    $title = $queried_object->name;
127
+               }
128
+          }
129
+          return $title;
130
+     }
131 131
 }
Please login to merge, or discard this patch.
includes/template-tags/plan.php 1 patch
Indentation   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -11,8 +11,8 @@  discard block
 block discarded – undo
11 11
  * @return void
12 12
  */
13 13
 function lsx_hp_plan_archive_filters() {
14
-	if ( is_post_type_archive( 'plan' ) && function_exists( 'wc_get_page_id' ) && false === apply_filters( 'lsx_hp_disable_plan_archive_filters', false ) ) {
15
-		?>
14
+     if ( is_post_type_archive( 'plan' ) && function_exists( 'wc_get_page_id' ) && false === apply_filters( 'lsx_hp_disable_plan_archive_filters', false ) ) {
15
+          ?>
16 16
 		<div id="type-nav">
17 17
 			<ul class="nav nav-pills lsx-type-nav-filter">
18 18
 				<li class="active"><a href="<?php echo empty( $group_selected ) ? '#' : esc_url( get_post_type_archive_link( 'plan' ) ); ?>" data-filter="*"><?php esc_html_e( 'All', 'lsx-health-plan' ); ?></a></li>
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
 			</ul>
23 23
 		</div>
24 24
 		<?php
25
-	}
25
+     }
26 26
 }
27 27
 
28 28
 /**
@@ -31,27 +31,27 @@  discard block
 block discarded – undo
31 31
  * @return string
32 32
  */
33 33
 function lsx_hp_plan_get_classes() {
34
-	$classes = 'filter-free';
35
-	if ( function_exists( 'lsx_health_plan\functions\woocommerce\plan_has_products' ) && \lsx_health_plan\functions\woocommerce\plan_has_products() ) {
36
-		$products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
37
-		$linked_product = wc_get_product( $products[0] );
38
-		$price          = $linked_product->get_price( 'raw' );
39
-		if ( empty( $price ) ) {
40
-			$classes = 'filter-free';
41
-		} else {
42
-			$classes = 'filter-paid';
43
-		}
34
+     $classes = 'filter-free';
35
+     if ( function_exists( 'lsx_health_plan\functions\woocommerce\plan_has_products' ) && \lsx_health_plan\functions\woocommerce\plan_has_products() ) {
36
+          $products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
37
+          $linked_product = wc_get_product( $products[0] );
38
+          $price          = $linked_product->get_price( 'raw' );
39
+          if ( empty( $price ) ) {
40
+               $classes = 'filter-free';
41
+          } else {
42
+               $classes = 'filter-paid';
43
+          }
44 44
 
45
-		$featured = get_post_meta( get_the_ID(), 'plan_featured_plan', true );
46
-		if ( false !== $featured && '' !== $featured ) {
47
-			$classes .= ' filter-featured';
48
-		}
49
-	}
50
-	return $classes;
45
+          $featured = get_post_meta( get_the_ID(), 'plan_featured_plan', true );
46
+          if ( false !== $featured && '' !== $featured ) {
47
+               $classes .= ' filter-featured';
48
+          }
49
+     }
50
+     return $classes;
51 51
 }
52 52
 
53 53
 function lsx_health_plan_back_to_plan_button() {
54
-	?>
54
+     ?>
55 55
 	<div  class="back-plan-btn">
56 56
 		<a class="btn" href="<?php the_permalink(); ?>"><?php esc_html_e( 'Back To Plan', 'lsx-health-plan' ); ?></a>
57 57
 	</div>
Please login to merge, or discard this patch.
templates/content-archive-plan.php 1 patch
Indentation   +79 added lines, -79 removed lines patch added patch discarded remove patch
@@ -18,51 +18,51 @@  discard block
 block discarded – undo
18 18
 $linked_product  = false;
19 19
 $restricted      = '';
20 20
 if ( function_exists( 'lsx_health_plan\functions\woocommerce\plan_has_products' ) && \lsx_health_plan\functions\woocommerce\plan_has_products() ) {
21
-	$products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
22
-	$linked_product = wc_get_product( $products[0] );
23
-	$product        = $linked_product;
21
+     $products       = \lsx_health_plan\functions\woocommerce\get_plan_products();
22
+     $linked_product = wc_get_product( $products[0] );
23
+     $product        = $linked_product;
24 24
 
25
-	if ( function_exists( 'wc_memberships_is_post_content_restricted' ) && wc_memberships_is_post_content_restricted( get_the_ID() ) ) {
26
-		$restricted = ! current_user_can( 'wc_memberships_view_restricted_post_content', get_the_ID() );
27
-	}
25
+     if ( function_exists( 'wc_memberships_is_post_content_restricted' ) && wc_memberships_is_post_content_restricted( get_the_ID() ) ) {
26
+          $restricted = ! current_user_can( 'wc_memberships_view_restricted_post_content', get_the_ID() );
27
+     }
28 28
 }
29 29
 
30 30
 // Check for shortcode overrides.
31 31
 if ( null !== $shortcode_args ) {
32
-	if ( isset( $shortcode_args['columns'] ) ) {
33
-		$column_class = $shortcode_args['columns'];
34
-		$column_class = \lsx_health_plan\functions\column_class( $column_class );
35
-	}
36
-	if ( isset( $shortcode_args['link'] ) ) {
37
-		$link_setting = $shortcode_args['link'];
38
-		// Setup our link and content.
39
-		switch ( $link_setting ) {
40
-			case 'single':
41
-				$link_html  = '<a href="' . get_permalink( $group['connected_plans'] ) . '">';
42
-				$link_close = '</a>';
43
-				break;
32
+     if ( isset( $shortcode_args['columns'] ) ) {
33
+          $column_class = $shortcode_args['columns'];
34
+          $column_class = \lsx_health_plan\functions\column_class( $column_class );
35
+     }
36
+     if ( isset( $shortcode_args['link'] ) ) {
37
+          $link_setting = $shortcode_args['link'];
38
+          // Setup our link and content.
39
+          switch ( $link_setting ) {
40
+               case 'single':
41
+                    $link_html  = '<a href="' . get_permalink( $group['connected_plans'] ) . '">';
42
+                    $link_close = '</a>';
43
+                    break;
44 44
 
45
-			case 'modal':
46
-				$link_html  = '<a data-toggle="modal" href="#workout-plan-modal-' . $group['connected_plans'] . '">';
47
-				$link_close = '</a>';
48
-				$modal_content_setting = \lsx_health_plan\functions\get_option( 'workout_tab_modal_content', 'excerpt' );
49
-				$modal_args = array(
50
-					'modal_content' => $modal_content_setting,
51
-				);
52
-				// We call the button to register the modal, but we do not output it.
53
-				lsx_health_plan_workout_plan_button( $group['connected_plans'], $group, false, $modal_args );
54
-				break;
45
+               case 'modal':
46
+                    $link_html  = '<a data-toggle="modal" href="#workout-plan-modal-' . $group['connected_plans'] . '">';
47
+                    $link_close = '</a>';
48
+                    $modal_content_setting = \lsx_health_plan\functions\get_option( 'workout_tab_modal_content', 'excerpt' );
49
+                    $modal_args = array(
50
+                         'modal_content' => $modal_content_setting,
51
+                    );
52
+                    // We call the button to register the modal, but we do not output it.
53
+                    lsx_health_plan_workout_plan_button( $group['connected_plans'], $group, false, $modal_args );
54
+                    break;
55 55
 
56
-			case 'none':
57
-			default:
58
-				$link_html  = '';
59
-				$link_close = '';
60
-				break;
61
-		}
62
-	}
63
-	if ( isset( $shortcode_args['description'] ) ) {
64
-		$content_setting = $shortcode_args['description'];
65
-	}
56
+               case 'none':
57
+               default:
58
+                    $link_html  = '';
59
+                    $link_close = '';
60
+                    break;
61
+          }
62
+     }
63
+     if ( isset( $shortcode_args['description'] ) ) {
64
+          $content_setting = $shortcode_args['description'];
65
+     }
66 66
 }
67 67
 
68 68
 $featured      = get_post_meta( get_the_ID(), 'plan_featured_plan', true );
@@ -78,62 +78,62 @@  discard block
 block discarded – undo
78 78
 			<?php } ?>
79 79
 			<a href="<?php echo esc_url( get_permalink() ); ?>">
80 80
 			<?php
81
-			$featured_image = get_the_post_thumbnail();
82
-			if ( ! empty( $featured_image ) && '' !== $featured_image ) {
83
-				the_post_thumbnail( 'lsx-thumbnail', array(
84
-					'class' => 'aligncenter',
85
-				) );
86
-			} else {
87
-				?>
81
+               $featured_image = get_the_post_thumbnail();
82
+               if ( ! empty( $featured_image ) && '' !== $featured_image ) {
83
+                    the_post_thumbnail( 'lsx-thumbnail', array(
84
+                         'class' => 'aligncenter',
85
+                    ) );
86
+               } else {
87
+                    ?>
88 88
 				<img loading="lazy" class="placeholder" src="<?php echo esc_attr( plugin_dir_url( __FILE__ ) . '../assets/images/placeholder.jpg' ); ?>">
89 89
 				<?php
90
-			}
91
-			?>
90
+               }
91
+               ?>
92 92
 			</a>
93 93
 		</div>
94 94
 		<div class="content-box plan-content-box white-bg">
95 95
 			<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>
96 96
 			<?php
97
-				echo wp_kses_post( \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
98
-			?>
97
+                    echo wp_kses_post( \lsx_health_plan\functions\hp_get_plan_type_meta( $post ) );
98
+               ?>
99 99
 			<?php
100
-			if ( false !== $linked_product ) {
101
-				echo '<div class="plan-price">';
102
-				echo wp_kses_post( $linked_product->get_price_html() );
103
-				echo '</div>';
104
-			}
105
-			?>
100
+               if ( false !== $linked_product ) {
101
+                    echo '<div class="plan-price">';
102
+                    echo wp_kses_post( $linked_product->get_price_html() );
103
+                    echo '</div>';
104
+               }
105
+               ?>
106 106
 			<div class="excerpt">
107 107
 				<?php
108
-				if ( ! has_excerpt() ) {
109
-					$content = wp_trim_words( get_the_content(), 20 );
110
-					$content = '<p>' . $content . '</p>';
111
-				} else {
112
-					$content = apply_filters( 'the_excerpt', get_the_excerpt() );
113
-				}
114
-				echo wp_kses_post( $content );
115
-				?>
108
+                    if ( ! has_excerpt() ) {
109
+                         $content = wp_trim_words( get_the_content(), 20 );
110
+                         $content = '<p>' . $content . '</p>';
111
+                    } else {
112
+                         $content = apply_filters( 'the_excerpt', get_the_excerpt() );
113
+                    }
114
+                    echo wp_kses_post( $content );
115
+                    ?>
116 116
 			</div>
117 117
 
118 118
 			<?php
119
-			$button_link  = get_permalink();
120
-			$button_text  = __( 'Sign Up', 'lsx-health-plan' );
121
-			$button_class = '';
119
+               $button_link  = get_permalink();
120
+               $button_text  = __( 'Sign Up', 'lsx-health-plan' );
121
+               $button_class = '';
122 122
 
123
-			if ( true === $restricted ) {
124
-				if ( 1 < count( $products ) ) {
125
-					$button_text = __( 'Select Options', 'lsx-health-plan' );
126
-				} else {
127
-					$button_link = $linked_product->add_to_cart_url() . '&plan_id=' . get_the_ID();
128
-					$button_text = $linked_product->add_to_cart_text();
129
-				}
130
-				?>
123
+               if ( true === $restricted ) {
124
+                    if ( 1 < count( $products ) ) {
125
+                         $button_text = __( 'Select Options', 'lsx-health-plan' );
126
+                    } else {
127
+                         $button_link = $linked_product->add_to_cart_url() . '&plan_id=' . get_the_ID();
128
+                         $button_text = $linked_product->add_to_cart_text();
129
+                    }
130
+                    ?>
131 131
 				<?php
132
-			} elseif ( false === $restricted ) {
133
-				$button_text  = __( 'Already Signed Up', 'lsx-health-plan' );
134
-				$button_class = 'btn-disabled';
135
-			}
136
-			?>
132
+               } elseif ( false === $restricted ) {
133
+                    $button_text  = __( 'Already Signed Up', 'lsx-health-plan' );
134
+                    $button_class = 'btn-disabled';
135
+               }
136
+               ?>
137 137
 			<a class="btn <?php echo esc_attr( $button_class ); ?>" href="<?php echo esc_attr( $button_link ); ?>"><?php echo esc_attr( $button_text ); ?></a>
138 138
 		</div>
139 139
 		<?php lsx_entry_bottom(); ?>
Please login to merge, or discard this patch.
templates/partials/workout-sets.php 1 patch
Indentation   +47 added lines, -47 removed lines patch added patch discarded remove patch
@@ -8,57 +8,57 @@  discard block
 block discarded – undo
8 8
 
9 9
 // Check for any shortcode overrides.
10 10
 if ( null !== $shortcode_args && isset( $shortcode_args['include'] ) ) {
11
-	$connected_workouts = array( get_the_ID() );
11
+     $connected_workouts = array( get_the_ID() );
12 12
 }
13 13
 ?>
14 14
 <div class="sets-wrapper">
15 15
 	<?php
16
-	if ( empty( $connected_workouts ) || null === $connected_workouts ) {
17
-		$connected_workouts = get_post_meta( get_the_ID(), 'connected_workouts', true );
18
-		if ( empty( $connected_workouts ) ) {
19
-			$options = \lsx_health_plan\functions\get_option( 'all' );
20
-			if ( isset( $options['connected_workouts'] ) && '' !== $options['connected_workouts'] && ! empty( $options['connected_workouts'] ) ) {
21
-				$connected_workouts = $options['connected_workouts'];
22
-				if ( ! array( $connected_workouts ) ) {
23
-					$connected_workouts = array( $connected_workouts );
24
-				}
25
-			}
26
-		}
27
-	}
28
-	$args     = array(
29
-		'orderby'   => 'date',
30
-		'order'     => 'DESC',
31
-		'post_type' => 'workout',
32
-		'post__in'  => $connected_workouts,
33
-	);
34
-	$workouts = new WP_Query( $args );
16
+     if ( empty( $connected_workouts ) || null === $connected_workouts ) {
17
+          $connected_workouts = get_post_meta( get_the_ID(), 'connected_workouts', true );
18
+          if ( empty( $connected_workouts ) ) {
19
+               $options = \lsx_health_plan\functions\get_option( 'all' );
20
+               if ( isset( $options['connected_workouts'] ) && '' !== $options['connected_workouts'] && ! empty( $options['connected_workouts'] ) ) {
21
+                    $connected_workouts = $options['connected_workouts'];
22
+                    if ( ! array( $connected_workouts ) ) {
23
+                         $connected_workouts = array( $connected_workouts );
24
+                    }
25
+               }
26
+          }
27
+     }
28
+     $args     = array(
29
+          'orderby'   => 'date',
30
+          'order'     => 'DESC',
31
+          'post_type' => 'workout',
32
+          'post__in'  => $connected_workouts,
33
+     );
34
+     $workouts = new WP_Query( $args );
35 35
 
36
-	if ( $workouts->have_posts() ) {
37
-		while ( $workouts->have_posts() ) {
38
-			$workouts->the_post();
39
-			// Brings the workout post content first.
40
-			echo wp_kses_post( lsx_health_plan_workout_main_content() );
36
+     if ( $workouts->have_posts() ) {
37
+          while ( $workouts->have_posts() ) {
38
+               $workouts->the_post();
39
+               // Brings the workout post content first.
40
+               echo wp_kses_post( lsx_health_plan_workout_main_content() );
41 41
 
42
-			$i               = 1;
43
-			$section_counter = 6;
44
-			echo '<div class="sets">';
45
-			while ( $i <= $section_counter ) {
42
+               $i               = 1;
43
+               $section_counter = 6;
44
+               echo '<div class="sets">';
45
+               while ( $i <= $section_counter ) {
46 46
 
47
-				$workout_section = 'workout_section_' . ( $i ) . '_title';
48
-				$workout_desc    = 'workout_section_' . ( $i ) . '_description';
47
+                    $workout_section = 'workout_section_' . ( $i ) . '_title';
48
+                    $workout_desc    = 'workout_section_' . ( $i ) . '_description';
49 49
 
50
-				$section_title = get_post_meta( get_the_ID(), $workout_section, true );
51
-				$description   = get_post_meta( get_the_ID(), $workout_desc, true );
52
-				if ( is_singular( 'workout' ) ) {
53
-					$section_title = get_post_meta( get_queried_object_id(), $workout_section, true );
54
-					$description   = get_post_meta( get_queried_object_id(), $workout_desc, true );
55
-				}
50
+                    $section_title = get_post_meta( get_the_ID(), $workout_section, true );
51
+                    $description   = get_post_meta( get_the_ID(), $workout_desc, true );
52
+                    if ( is_singular( 'workout' ) ) {
53
+                         $section_title = get_post_meta( get_queried_object_id(), $workout_section, true );
54
+                         $description   = get_post_meta( get_queried_object_id(), $workout_desc, true );
55
+                    }
56 56
 
57
-				if ( '' === $section_title ) {
58
-					$i++;
59
-					continue;
60
-				}
61
-				?>
57
+                    if ( '' === $section_title ) {
58
+                         $i++;
59
+                         continue;
60
+                    }
61
+                    ?>
62 62
 				<div class="set-box set content-box">
63 63
 					<h3 class="set-title"><?php echo esc_html( $section_title ); ?></h3>
64 64
 					<div class="set-content">
@@ -67,11 +67,11 @@  discard block
 block discarded – undo
67 67
 					<?php lsx_health_plan_workout_tab_content( $i ); ?>
68 68
 				</div>
69 69
 				<?php
70
-				$i++;
71
-			}
72
-			echo '</div>';
73
-		}
74
-		?>
70
+                    $i++;
71
+               }
72
+               echo '</div>';
73
+          }
74
+          ?>
75 75
 	<?php } ?>
76 76
 	<?php wp_reset_postdata(); ?>
77 77
 </div>
Please login to merge, or discard this patch.