Passed
Push — master ( 0bc0f7...b64220 )
by Warwick
04:04
created
classes/post-types/class-tip.php 1 patch
Indentation   +149 added lines, -149 removed lines patch added patch discarded remove patch
@@ -8,161 +8,161 @@
 block discarded – undo
8 8
  */
9 9
 class Tip {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Tip()
17
-	 */
18
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Tip()
17
+      */
18
+     protected static $instance = null;
19 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 = 'tip';
20
+     /**
21
+      * Holds post_type slug used as an index
22
+      *
23
+      * @since 1.0.0
24
+      *
25
+      * @var      string
26
+      */
27
+     public $slug = 'tip';
28 28
 
29
-	/**
30
-	 * Contructor
31
-	 */
32
-	public function __construct() {
33
-		add_action( 'init', array( $this, 'register_post_type' ) );
34
-		add_action( 'admin_menu', array( $this, 'register_menus' ) );
35
-		add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
36
-		add_action( 'cmb2_admin_init', array( $this, 'featured_metabox' ) );
37
-		add_action( 'cmb2_admin_init', array( $this, 'tips_connections' ), 15 );
38
-	}
29
+     /**
30
+      * Contructor
31
+      */
32
+     public function __construct() {
33
+          add_action( 'init', array( $this, 'register_post_type' ) );
34
+          add_action( 'admin_menu', array( $this, 'register_menus' ) );
35
+          add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
36
+          add_action( 'cmb2_admin_init', array( $this, 'featured_metabox' ) );
37
+          add_action( 'cmb2_admin_init', array( $this, 'tips_connections' ), 15 );
38
+     }
39 39
 
40
-	/**
41
-	 * Return an instance of this class.
42
-	 *
43
-	 * @since 1.0.0
44
-	 *
45
-	 * @return    object \lsx_health_plan\classes\Tip()    A single instance of this class.
46
-	 */
47
-	public static function get_instance() {
48
-		// If the single instance hasn't been set, set it now.
49
-		if ( null === self::$instance ) {
50
-			self::$instance = new self();
51
-		}
52
-		return self::$instance;
53
-	}
54
-	/**
55
-	 * Register the post type.
56
-	 */
57
-	public function register_post_type() {
58
-		$labels = array(
59
-			'name'               => esc_html__( 'Tip', 'lsx-health-plan' ),
60
-			'singular_name'      => esc_html__( 'Tips', 'lsx-health-plan' ),
61
-			'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
62
-			'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
63
-			'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
64
-			'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
65
-			'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
66
-			'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
67
-			'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
68
-			'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
69
-			'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
70
-			'parent_item_colon'  => '',
71
-			'menu_name'          => esc_html__( 'Tips', 'lsx-health-plan' ),
72
-		);
73
-		$args   = array(
74
-			'labels'             => $labels,
75
-			'public'             => true,
76
-			'publicly_queryable' => false,
77
-			'show_ui'            => true,
78
-			'show_in_menu'       => false,
79
-			'show_in_rest'       => true,
80
-			'menu_icon'          => 'dashicons-admin-post',
81
-			'query_var'          => true,
82
-			'rewrite'            => false,
83
-			'capability_type'    => 'post',
84
-			'has_archive'        => false,
85
-			'hierarchical'       => false,
86
-			'menu_position'      => null,
87
-			'supports'           => array(
88
-				'title',
89
-				'editor',
90
-				'thumbnail',
91
-			),
92
-		);
93
-		register_post_type( 'tip', $args );
94
-	}
40
+     /**
41
+      * Return an instance of this class.
42
+      *
43
+      * @since 1.0.0
44
+      *
45
+      * @return    object \lsx_health_plan\classes\Tip()    A single instance of this class.
46
+      */
47
+     public static function get_instance() {
48
+          // If the single instance hasn't been set, set it now.
49
+          if ( null === self::$instance ) {
50
+               self::$instance = new self();
51
+          }
52
+          return self::$instance;
53
+     }
54
+     /**
55
+      * Register the post type.
56
+      */
57
+     public function register_post_type() {
58
+          $labels = array(
59
+               'name'               => esc_html__( 'Tip', 'lsx-health-plan' ),
60
+               'singular_name'      => esc_html__( 'Tips', 'lsx-health-plan' ),
61
+               'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
62
+               'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
63
+               'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
64
+               'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
65
+               'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
66
+               'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
67
+               'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
68
+               'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
69
+               'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
70
+               'parent_item_colon'  => '',
71
+               'menu_name'          => esc_html__( 'Tips', 'lsx-health-plan' ),
72
+          );
73
+          $args   = array(
74
+               'labels'             => $labels,
75
+               'public'             => true,
76
+               'publicly_queryable' => false,
77
+               'show_ui'            => true,
78
+               'show_in_menu'       => false,
79
+               'show_in_rest'       => true,
80
+               'menu_icon'          => 'dashicons-admin-post',
81
+               'query_var'          => true,
82
+               'rewrite'            => false,
83
+               'capability_type'    => 'post',
84
+               'has_archive'        => false,
85
+               'hierarchical'       => false,
86
+               'menu_position'      => null,
87
+               'supports'           => array(
88
+                    'title',
89
+                    'editor',
90
+                    'thumbnail',
91
+               ),
92
+          );
93
+          register_post_type( 'tip', $args );
94
+     }
95 95
 
96
-	/**
97
-	 * Registers the Recipes under the Meals Post type menu.
98
-	 *
99
-	 * @return void
100
-	 */
101
-	public function register_menus() {
102
-		add_submenu_page( 'edit.php?post_type=plan', esc_html__( 'Tips', 'lsx-health-plan' ), esc_html__( 'Tips', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=tip' );
103
-	}
96
+     /**
97
+      * Registers the Recipes under the Meals Post type menu.
98
+      *
99
+      * @return void
100
+      */
101
+     public function register_menus() {
102
+          add_submenu_page( 'edit.php?post_type=plan', esc_html__( 'Tips', 'lsx-health-plan' ), esc_html__( 'Tips', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=tip' );
103
+     }
104 104
 
105
-	/**
106
-	 * Enables the Bi Directional relationships
107
-	 *
108
-	 * @param array $connections
109
-	 * @return void
110
-	 */
111
-	public function enable_connections( $connections = array() ) {
112
-		$connections['tip']['connected_plans'] = 'connected_tips';
113
-		$connections['plan']['connected_tips'] = 'connected_plans';
114
-		return $connections;
115
-	}
105
+     /**
106
+      * Enables the Bi Directional relationships
107
+      *
108
+      * @param array $connections
109
+      * @return void
110
+      */
111
+     public function enable_connections( $connections = array() ) {
112
+          $connections['tip']['connected_plans'] = 'connected_tips';
113
+          $connections['plan']['connected_tips'] = 'connected_plans';
114
+          return $connections;
115
+     }
116 116
 
117
-	/**
118
-	 * Registers the workout connections on the plan post type.
119
-	 *
120
-	 * @return void
121
-	 */
122
-	public function tips_connections() {
123
-		$cmb = new_cmb2_box( array(
124
-			'id'           => $this->slug . '_tips_connections_metabox',
125
-			'title'        => __( 'Tips', 'lsx-health-plan' ),
126
-			'object_types' => array( 'plan' ), // Post type
127
-			'context'      => 'normal',
128
-			'priority'     => 'high',
129
-			'show_names'   => false,
130
-		) );
131
-		$cmb->add_field( array(
132
-			'name'       => __( 'Tips', 'lsx-health-plan' ),
133
-			'id'         => 'connected_tips',
134
-			'desc'       => __( 'Connect the tips that apply to this day plan using the field provided.', 'lsx-health-plan' ),
135
-			'type'       => 'post_search_ajax',
136
-			// Optional :
137
-			'limit'      => 15,  // Limit selection to X items only (default 1)
138
-			'sortable'   => true,  // Allow selected items to be sortable (default false)
139
-			'query_args' => array(
140
-				'post_type'      => array( 'tip' ),
141
-				'post_status'    => array( 'publish' ),
142
-				'posts_per_page' => -1,
143
-			),
144
-		) );
145
-	}
117
+     /**
118
+      * Registers the workout connections on the plan post type.
119
+      *
120
+      * @return void
121
+      */
122
+     public function tips_connections() {
123
+          $cmb = new_cmb2_box( array(
124
+               'id'           => $this->slug . '_tips_connections_metabox',
125
+               'title'        => __( 'Tips', 'lsx-health-plan' ),
126
+               'object_types' => array( 'plan' ), // Post type
127
+               'context'      => 'normal',
128
+               'priority'     => 'high',
129
+               'show_names'   => false,
130
+          ) );
131
+          $cmb->add_field( array(
132
+               'name'       => __( 'Tips', 'lsx-health-plan' ),
133
+               'id'         => 'connected_tips',
134
+               'desc'       => __( 'Connect the tips that apply to this day plan using the field provided.', 'lsx-health-plan' ),
135
+               'type'       => 'post_search_ajax',
136
+               // Optional :
137
+               'limit'      => 15,  // Limit selection to X items only (default 1)
138
+               'sortable'   => true,  // Allow selected items to be sortable (default false)
139
+               'query_args' => array(
140
+                    'post_type'      => array( 'tip' ),
141
+                    'post_status'    => array( 'publish' ),
142
+                    'posts_per_page' => -1,
143
+               ),
144
+          ) );
145
+     }
146 146
 
147
-	/**
148
-	 * Define the metabox and field configurations.
149
-	 */
150
-	public function featured_metabox() {
151
-		$cmb = new_cmb2_box( array(
152
-			'id'           => $this->slug . '_featured_metabox_tip',
153
-			'title'        => __( 'Featured', 'lsx-health-plan' ),
154
-			'object_types' => array( $this->slug ), // Post type
155
-			'context'      => 'side',
156
-			'priority'     => 'high',
157
-			'show_names'   => true,
158
-		) );
159
-		$cmb->add_field( array(
160
-			'name'       => __( 'Featured', 'lsx-health-plan' ),
161
-			'desc'       => __( 'Enable the checkbox to feature this tip, featured tips display in any page that has the tip shortcode: [lsx_health_plan_featured_tips_block]' ),
162
-			'id'         => $this->slug . '_featured_tip',
163
-			'type'       => 'checkbox',
164
-			'show_on_cb' => 'cmb2_hide_if_no_cats',
165
-		) );
166
-	}
147
+     /**
148
+      * Define the metabox and field configurations.
149
+      */
150
+     public function featured_metabox() {
151
+          $cmb = new_cmb2_box( array(
152
+               'id'           => $this->slug . '_featured_metabox_tip',
153
+               'title'        => __( 'Featured', 'lsx-health-plan' ),
154
+               'object_types' => array( $this->slug ), // Post type
155
+               'context'      => 'side',
156
+               'priority'     => 'high',
157
+               'show_names'   => true,
158
+          ) );
159
+          $cmb->add_field( array(
160
+               'name'       => __( 'Featured', 'lsx-health-plan' ),
161
+               'desc'       => __( 'Enable the checkbox to feature this tip, featured tips display in any page that has the tip shortcode: [lsx_health_plan_featured_tips_block]' ),
162
+               'id'         => $this->slug . '_featured_tip',
163
+               'type'       => 'checkbox',
164
+               'show_on_cb' => 'cmb2_hide_if_no_cats',
165
+          ) );
166
+     }
167 167
 
168 168
 }
Please login to merge, or discard this patch.
classes/post-types/class-plan.php 1 patch
Indentation   +199 added lines, -199 removed lines patch added patch discarded remove patch
@@ -8,214 +8,214 @@
 block discarded – undo
8 8
  */
9 9
 class Plan {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Plan()
17
-	 */
18
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Plan()
17
+      */
18
+     protected static $instance = null;
19 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 = 'plan';
20
+     /**
21
+      * Holds post_type slug used as an index
22
+      *
23
+      * @since 1.0.0
24
+      *
25
+      * @var      string
26
+      */
27
+     public $slug = 'plan';
28 28
 
29
-	/**
30
-	 * Contructor
31
-	 */
32
-	public function __construct() {
33
-		add_action( 'init', array( $this, 'register_post_type' ) );
34
-		add_action( 'init', array( $this, 'taxonomy_setup' ) );
35
-		add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
36
-		add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ), 5 );
37
-		add_action( 'cmb2_admin_init', array( $this, 'plan_connections' ), 5 );
38
-		add_filter( 'pre_get_posts', array( $this, 'set_parent_only' ), 10, 1 );
39
-	}
29
+     /**
30
+      * Contructor
31
+      */
32
+     public function __construct() {
33
+          add_action( 'init', array( $this, 'register_post_type' ) );
34
+          add_action( 'init', array( $this, 'taxonomy_setup' ) );
35
+          add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
36
+          add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ), 5 );
37
+          add_action( 'cmb2_admin_init', array( $this, 'plan_connections' ), 5 );
38
+          add_filter( 'pre_get_posts', array( $this, 'set_parent_only' ), 10, 1 );
39
+     }
40 40
 
41
-	/**
42
-	 * Return an instance of this class.
43
-	 *
44
-	 * @since 1.0.0
45
-	 *
46
-	 * @return    object \lsx_health_plan\classes\Meal_Plan()    A single instance of this class.
47
-	 */
48
-	public static function get_instance() {
49
-		// If the single instance hasn't been set, set it now.
50
-		if ( null === self::$instance ) {
51
-			self::$instance = new self();
52
-		}
53
-		return self::$instance;
54
-	}
55
-	/**
56
-	 * Register the post type.
57
-	 */
58
-	public function register_post_type() {
59
-		$labels = array(
60
-			'name'               => esc_html__( 'Plan', 'lsx-health-plan' ),
61
-			'singular_name'      => esc_html__( 'Plans', 'lsx-health-plan' ),
62
-			'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
63
-			'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
64
-			'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
65
-			'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
66
-			'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
67
-			'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
68
-			'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
69
-			'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
70
-			'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
71
-			'parent_item_colon'  => '',
72
-			'menu_name'          => esc_html__( 'Plans', 'lsx-health-plan' ),
73
-		);
74
-		$args   = array(
75
-			'labels'             => $labels,
76
-			'public'             => true,
77
-			'publicly_queryable' => true,
78
-			'show_ui'            => true,
79
-			'show_in_menu'       => true,
80
-			'show_in_rest'       => true,
81
-			'menu_icon'          => 'dashicons-welcome-write-blog',
82
-			'query_var'          => true,
83
-			'rewrite'            => array(
84
-				'slug' => \lsx_health_plan\functions\get_option( 'plan_single_slug', 'plan' ),
85
-			),
86
-			'capability_type'    => 'page',
87
-			'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plans' ),
88
-			'hierarchical'       => true,
89
-			'menu_position'      => null,
90
-			'supports'           => array(
91
-				'title',
92
-				'editor',
93
-				'thumbnail',
94
-				'page-attributes',
95
-			),
96
-		);
97
-		register_post_type( 'plan', $args );
98
-	}
41
+     /**
42
+      * Return an instance of this class.
43
+      *
44
+      * @since 1.0.0
45
+      *
46
+      * @return    object \lsx_health_plan\classes\Meal_Plan()    A single instance of this class.
47
+      */
48
+     public static function get_instance() {
49
+          // If the single instance hasn't been set, set it now.
50
+          if ( null === self::$instance ) {
51
+               self::$instance = new self();
52
+          }
53
+          return self::$instance;
54
+     }
55
+     /**
56
+      * Register the post type.
57
+      */
58
+     public function register_post_type() {
59
+          $labels = array(
60
+               'name'               => esc_html__( 'Plan', 'lsx-health-plan' ),
61
+               'singular_name'      => esc_html__( 'Plans', 'lsx-health-plan' ),
62
+               'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
63
+               'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
64
+               'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
65
+               'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
66
+               'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
67
+               'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
68
+               'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
69
+               'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
70
+               'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
71
+               'parent_item_colon'  => '',
72
+               'menu_name'          => esc_html__( 'Plans', 'lsx-health-plan' ),
73
+          );
74
+          $args   = array(
75
+               'labels'             => $labels,
76
+               'public'             => true,
77
+               'publicly_queryable' => true,
78
+               'show_ui'            => true,
79
+               'show_in_menu'       => true,
80
+               'show_in_rest'       => true,
81
+               'menu_icon'          => 'dashicons-welcome-write-blog',
82
+               'query_var'          => true,
83
+               'rewrite'            => array(
84
+                    'slug' => \lsx_health_plan\functions\get_option( 'plan_single_slug', 'plan' ),
85
+               ),
86
+               'capability_type'    => 'page',
87
+               'has_archive'        => \lsx_health_plan\functions\get_option( 'endpoint_plan_archive', 'plans' ),
88
+               'hierarchical'       => true,
89
+               'menu_position'      => null,
90
+               'supports'           => array(
91
+                    'title',
92
+                    'editor',
93
+                    'thumbnail',
94
+                    'page-attributes',
95
+               ),
96
+          );
97
+          register_post_type( 'plan', $args );
98
+     }
99 99
 
100
-	/**
101
-	 * Register the Week taxonomy.
102
-	 */
103
-	public function taxonomy_setup() {
104
-		$labels = array(
105
-			'name'              => esc_html_x( 'Week', 'taxonomy general name', 'lsx-health-plan' ),
106
-			'singular_name'     => esc_html_x( 'Week', 'taxonomy singular name', 'lsx-health-plan' ),
107
-			'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
108
-			'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
109
-			'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
110
-			'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
111
-			'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
112
-			'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
113
-			'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
114
-			'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
115
-			'menu_name'         => esc_html__( 'Weeks', 'lsx-health-plan' ),
116
-		);
100
+     /**
101
+      * Register the Week taxonomy.
102
+      */
103
+     public function taxonomy_setup() {
104
+          $labels = array(
105
+               'name'              => esc_html_x( 'Week', 'taxonomy general name', 'lsx-health-plan' ),
106
+               'singular_name'     => esc_html_x( 'Week', 'taxonomy singular name', 'lsx-health-plan' ),
107
+               'search_items'      => esc_html__( 'Search', 'lsx-health-plan' ),
108
+               'all_items'         => esc_html__( 'All', 'lsx-health-plan' ),
109
+               'parent_item'       => esc_html__( 'Parent', 'lsx-health-plan' ),
110
+               'parent_item_colon' => esc_html__( 'Parent:', 'lsx-health-plan' ),
111
+               'edit_item'         => esc_html__( 'Edit', 'lsx-health-plan' ),
112
+               'update_item'       => esc_html__( 'Update', 'lsx-health-plan' ),
113
+               'add_new_item'      => esc_html__( 'Add New', 'lsx-health-plan' ),
114
+               'new_item_name'     => esc_html__( 'New Name', 'lsx-health-plan' ),
115
+               'menu_name'         => esc_html__( 'Weeks', 'lsx-health-plan' ),
116
+          );
117 117
 
118
-		$args = array(
119
-			'hierarchical'      => true,
120
-			'labels'            => $labels,
121
-			'show_ui'           => true,
122
-			'show_admin_column' => true,
123
-			'query_var'         => true,
124
-			'rewrite'           => array(
125
-				'slug' => 'week',
126
-			),
127
-		);
118
+          $args = array(
119
+               'hierarchical'      => true,
120
+               'labels'            => $labels,
121
+               'show_ui'           => true,
122
+               'show_admin_column' => true,
123
+               'query_var'         => true,
124
+               'rewrite'           => array(
125
+                    'slug' => 'week',
126
+               ),
127
+          );
128 128
 
129
-		register_taxonomy( 'week', array( 'plan' ), $args );
130
-	}
129
+          register_taxonomy( 'week', array( 'plan' ), $args );
130
+     }
131 131
 
132
-	/**
133
-	 * Adds the post type to the different arrays.
134
-	 *
135
-	 * @param array $post_types
136
-	 * @return array
137
-	 */
138
-	public function enable_post_type( $post_types = array() ) {
139
-		$post_types[] = $this->slug;
140
-		return $post_types;
141
-	}
132
+     /**
133
+      * Adds the post type to the different arrays.
134
+      *
135
+      * @param array $post_types
136
+      * @return array
137
+      */
138
+     public function enable_post_type( $post_types = array() ) {
139
+          $post_types[] = $this->slug;
140
+          return $post_types;
141
+     }
142 142
 
143
-	/**
144
-	 * Define the metabox and field configurations.
145
-	 */
146
-	public function details_metaboxes() {
147
-		$cmb = new_cmb2_box( array(
148
-			'id'           => $this->slug . '_details_metabox',
149
-			'title'        => __( 'Details', 'lsx-health-plan' ),
150
-			'object_types' => array( $this->slug ), // Post type
151
-			'context'      => 'normal',
152
-			'priority'     => 'high',
153
-			'show_names'   => true,
154
-		) );
143
+     /**
144
+      * Define the metabox and field configurations.
145
+      */
146
+     public function details_metaboxes() {
147
+          $cmb = new_cmb2_box( array(
148
+               'id'           => $this->slug . '_details_metabox',
149
+               'title'        => __( 'Details', 'lsx-health-plan' ),
150
+               'object_types' => array( $this->slug ), // Post type
151
+               'context'      => 'normal',
152
+               'priority'     => 'high',
153
+               'show_names'   => true,
154
+          ) );
155 155
 
156
-		$warmup_type = 'page';
157
-		if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
158
-			$warmup_type = array( 'page', 'workout' );
159
-		}
160
-		$cmb->add_field( array(
161
-			'name'       => __( 'Warmup', 'lsx-health-plan' ),
162
-			'desc'       => __( 'Connect the warm up page that applies to this day plan using the field provided.', 'lsx-health-plan' ),
163
-			'id'         => $this->slug . '_warmup',
164
-			'type'       => 'post_search_ajax',
165
-			// Optional :
166
-			'limit'      => 3,  // Limit selection to X items only (default 1)
167
-			'sortable'   => true, // Allow selected items to be sortable (default false)
168
-			'query_args' => array(
169
-				'post_type'      => $warmup_type,
170
-				'post_status'    => array( 'publish' ),
171
-				'posts_per_page' => -1,
172
-			),
173
-		) );
174
-	}
156
+          $warmup_type = 'page';
157
+          if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
158
+               $warmup_type = array( 'page', 'workout' );
159
+          }
160
+          $cmb->add_field( array(
161
+               'name'       => __( 'Warmup', 'lsx-health-plan' ),
162
+               'desc'       => __( 'Connect the warm up page that applies to this day plan using the field provided.', 'lsx-health-plan' ),
163
+               'id'         => $this->slug . '_warmup',
164
+               'type'       => 'post_search_ajax',
165
+               // Optional :
166
+               'limit'      => 3,  // Limit selection to X items only (default 1)
167
+               'sortable'   => true, // Allow selected items to be sortable (default false)
168
+               'query_args' => array(
169
+                    'post_type'      => $warmup_type,
170
+                    'post_status'    => array( 'publish' ),
171
+                    'posts_per_page' => -1,
172
+               ),
173
+          ) );
174
+     }
175 175
 
176
-	/**
177
-	 * Registers the workout connections on the plan post type.
178
-	 *
179
-	 * @return void
180
-	 */
181
-	public function plan_connections() {
182
-		$cmb = new_cmb2_box(
183
-			array(
184
-				'id'           => $this->slug . '_connections_metabox',
185
-				'title'        => __( 'Plans', 'lsx-health-plan' ),
186
-				'object_types' => array( 'workout', 'meal', 'tip', 'recipe' ),
187
-				'context'      => 'normal',
188
-				'priority'     => 'high',
189
-				'show_names'   => true,
190
-			)
191
-		);
192
-		$cmb->add_field(
193
-			array(
194
-				'name'       => __( 'Plan', 'lsx-health-plan' ),
195
-				'id'         => 'connected_plans',
196
-				'desc'       => __( 'Connect this to the day plan it applies to, using the field provided.', 'lsx-health-plan' ),
197
-				'type'       => 'post_search_ajax',
198
-				'limit'      => 15,
199
-				'sortable'   => true,
200
-				'query_args' => array(
201
-					'post_type'      => array( 'plan' ),
202
-					'post_status'    => array( 'publish' ),
203
-					'posts_per_page' => -1,
204
-				),
205
-			)
206
-		);
207
-	}
176
+     /**
177
+      * Registers the workout connections on the plan post type.
178
+      *
179
+      * @return void
180
+      */
181
+     public function plan_connections() {
182
+          $cmb = new_cmb2_box(
183
+               array(
184
+                    'id'           => $this->slug . '_connections_metabox',
185
+                    'title'        => __( 'Plans', 'lsx-health-plan' ),
186
+                    'object_types' => array( 'workout', 'meal', 'tip', 'recipe' ),
187
+                    'context'      => 'normal',
188
+                    'priority'     => 'high',
189
+                    'show_names'   => true,
190
+               )
191
+          );
192
+          $cmb->add_field(
193
+               array(
194
+                    'name'       => __( 'Plan', 'lsx-health-plan' ),
195
+                    'id'         => 'connected_plans',
196
+                    'desc'       => __( 'Connect this to the day plan it applies to, using the field provided.', 'lsx-health-plan' ),
197
+                    'type'       => 'post_search_ajax',
198
+                    'limit'      => 15,
199
+                    'sortable'   => true,
200
+                    'query_args' => array(
201
+                         'post_type'      => array( 'plan' ),
202
+                         'post_status'    => array( 'publish' ),
203
+                         'posts_per_page' => -1,
204
+                    ),
205
+               )
206
+          );
207
+     }
208 208
 
209
-	/**
210
-	 * Set the post type archive to show the parent plans only.
211
-	 *
212
-	 * @param object $wp_query
213
-	 * @return array
214
-	 */
215
-	public function set_parent_only( $wp_query ) {
216
-		if ( ! is_admin() && $wp_query->is_main_query() && $wp_query->is_post_type_archive() && 'plan' === $wp_query->get_query_var( 'post_type' ) ) {
217
-			$wp_query->set( 'parent', '0' );
218
-		}
219
-		return $wp_query;
220
-	}
209
+     /**
210
+      * Set the post type archive to show the parent plans only.
211
+      *
212
+      * @param object $wp_query
213
+      * @return array
214
+      */
215
+     public function set_parent_only( $wp_query ) {
216
+          if ( ! is_admin() && $wp_query->is_main_query() && $wp_query->is_post_type_archive() && 'plan' === $wp_query->get_query_var( 'post_type' ) ) {
217
+               $wp_query->set( 'parent', '0' );
218
+          }
219
+          return $wp_query;
220
+     }
221 221
 }
Please login to merge, or discard this patch.
classes/post-types/class-video.php 1 patch
Indentation   +174 added lines, -174 removed lines patch added patch discarded remove patch
@@ -8,187 +8,187 @@
 block discarded – undo
8 8
  */
9 9
 class Video {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Video()
17
-	 */
18
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Video()
17
+      */
18
+     protected static $instance = null;
19 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 = 'video';
20
+     /**
21
+      * Holds post_type slug used as an index
22
+      *
23
+      * @since 1.0.0
24
+      *
25
+      * @var      string
26
+      */
27
+     public $slug = 'video';
28 28
 
29
-	/**
30
-	 * Contructor
31
-	 */
32
-	public function __construct() {
33
-		add_action( 'init', array( $this, 'register_post_type' ) );
34
-		add_action( 'admin_menu', array( $this, 'register_menus' ) );
35
-		add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
36
-		add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
37
-		add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ) );
38
-	}
29
+     /**
30
+      * Contructor
31
+      */
32
+     public function __construct() {
33
+          add_action( 'init', array( $this, 'register_post_type' ) );
34
+          add_action( 'admin_menu', array( $this, 'register_menus' ) );
35
+          add_filter( 'lsx_health_plan_single_template', array( $this, 'enable_post_type' ), 10, 1 );
36
+          add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
37
+          add_action( 'cmb2_admin_init', array( $this, 'details_metaboxes' ) );
38
+     }
39 39
 
40
-	/**
41
-	 * Return an instance of this class.
42
-	 *
43
-	 * @since 1.0.0
44
-	 *
45
-	 * @return    object \lsx_health_plan\classes\Video()    A single instance of this class.
46
-	 */
47
-	public static function get_instance() {
48
-		// If the single instance hasn't been set, set it now.
49
-		if ( null === self::$instance ) {
50
-			self::$instance = new self();
51
-		}
52
-		return self::$instance;
53
-	}
54
-	/**
55
-	 * Register the post type.
56
-	 */
57
-	public function register_post_type() {
58
-		$labels = array(
59
-			'name'               => esc_html__( 'Video', 'lsx-health-plan' ),
60
-			'singular_name'      => esc_html__( 'Videos', 'lsx-health-plan' ),
61
-			'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
62
-			'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
63
-			'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
64
-			'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
65
-			'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
66
-			'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
67
-			'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
68
-			'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
69
-			'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
70
-			'parent_item_colon'  => '',
71
-			'menu_name'          => esc_html__( 'Videos', 'lsx-health-plan' ),
72
-		);
73
-		$args   = array(
74
-			'labels'             => $labels,
75
-			'public'             => true,
76
-			'publicly_queryable' => true,
77
-			'show_ui'            => true,
78
-			'show_in_menu'       => false,
79
-			'show_in_rest'       => true,
80
-			'menu_icon'          => 'dashicons-format-video',
81
-			'query_var'          => true,
82
-			'rewrite'            => false,
83
-			'capability_type'    => 'post',
84
-			'has_archive'        => false,
85
-			'hierarchical'       => false,
86
-			'menu_position'      => null,
87
-			'supports'           => array(
88
-				'title',
89
-				'editor',
90
-			),
91
-		);
92
-		register_post_type( 'video', $args );
93
-	}
40
+     /**
41
+      * Return an instance of this class.
42
+      *
43
+      * @since 1.0.0
44
+      *
45
+      * @return    object \lsx_health_plan\classes\Video()    A single instance of this class.
46
+      */
47
+     public static function get_instance() {
48
+          // If the single instance hasn't been set, set it now.
49
+          if ( null === self::$instance ) {
50
+               self::$instance = new self();
51
+          }
52
+          return self::$instance;
53
+     }
54
+     /**
55
+      * Register the post type.
56
+      */
57
+     public function register_post_type() {
58
+          $labels = array(
59
+               'name'               => esc_html__( 'Video', 'lsx-health-plan' ),
60
+               'singular_name'      => esc_html__( 'Videos', 'lsx-health-plan' ),
61
+               'add_new'            => esc_html_x( 'Add New', 'post type general name', 'lsx-health-plan' ),
62
+               'add_new_item'       => esc_html__( 'Add New', 'lsx-health-plan' ),
63
+               'edit_item'          => esc_html__( 'Edit', 'lsx-health-plan' ),
64
+               'new_item'           => esc_html__( 'New', 'lsx-health-plan' ),
65
+               'all_items'          => esc_html__( 'All', 'lsx-health-plan' ),
66
+               'view_item'          => esc_html__( 'View', 'lsx-health-plan' ),
67
+               'search_items'       => esc_html__( 'Search', 'lsx-health-plan' ),
68
+               'not_found'          => esc_html__( 'None found', 'lsx-health-plan' ),
69
+               'not_found_in_trash' => esc_html__( 'None found in Trash', 'lsx-health-plan' ),
70
+               'parent_item_colon'  => '',
71
+               'menu_name'          => esc_html__( 'Videos', 'lsx-health-plan' ),
72
+          );
73
+          $args   = array(
74
+               'labels'             => $labels,
75
+               'public'             => true,
76
+               'publicly_queryable' => true,
77
+               'show_ui'            => true,
78
+               'show_in_menu'       => false,
79
+               'show_in_rest'       => true,
80
+               'menu_icon'          => 'dashicons-format-video',
81
+               'query_var'          => true,
82
+               'rewrite'            => false,
83
+               'capability_type'    => 'post',
84
+               'has_archive'        => false,
85
+               'hierarchical'       => false,
86
+               'menu_position'      => null,
87
+               'supports'           => array(
88
+                    'title',
89
+                    'editor',
90
+               ),
91
+          );
92
+          register_post_type( 'video', $args );
93
+     }
94 94
 
95
-	/**
96
-	 * Registers the Recipes under the Meals Post type menu.
97
-	 *
98
-	 * @return void
99
-	 */
100
-	public function register_menus() {
101
-		add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Videos', 'lsx-health-plan' ), esc_html__( 'Videos', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=video' );
102
-	}
95
+     /**
96
+      * Registers the Recipes under the Meals Post type menu.
97
+      *
98
+      * @return void
99
+      */
100
+     public function register_menus() {
101
+          add_submenu_page( 'edit.php?post_type=workout', esc_html__( 'Videos', 'lsx-health-plan' ), esc_html__( 'Videos', 'lsx-health-plan' ), 'edit_posts', 'edit.php?post_type=video' );
102
+     }
103 103
 
104
-	/**
105
-	 * Adds the post type to the different arrays.
106
-	 *
107
-	 * @param array $post_types
108
-	 * @return array
109
-	 */
110
-	public function enable_post_type( $post_types = array() ) {
111
-		$post_types[] = $this->slug;
112
-		return $post_types;
113
-	}
104
+     /**
105
+      * Adds the post type to the different arrays.
106
+      *
107
+      * @param array $post_types
108
+      * @return array
109
+      */
110
+     public function enable_post_type( $post_types = array() ) {
111
+          $post_types[] = $this->slug;
112
+          return $post_types;
113
+     }
114 114
 
115
-	/**
116
-	 * Enables the Bi Directional relationships
117
-	 *
118
-	 * @param array $connections
119
-	 * @return void
120
-	 */
121
-	public function enable_connections( $connections = array() ) {
122
-		$connections['video']['connected_plans']    = 'connected_videos';
123
-		$connections['plan']['connected_videos']    = 'connected_plans';
124
-		$connections['video']['connected_workouts'] = 'connected_videos';
125
-		$connections['plan']['connected_videos']    = 'connected_workouts';
126
-		return $connections;
127
-	}
115
+     /**
116
+      * Enables the Bi Directional relationships
117
+      *
118
+      * @param array $connections
119
+      * @return void
120
+      */
121
+     public function enable_connections( $connections = array() ) {
122
+          $connections['video']['connected_plans']    = 'connected_videos';
123
+          $connections['plan']['connected_videos']    = 'connected_plans';
124
+          $connections['video']['connected_workouts'] = 'connected_videos';
125
+          $connections['plan']['connected_videos']    = 'connected_workouts';
126
+          return $connections;
127
+     }
128 128
 
129
-	/**
130
-	 * Define the metabox and field configurations.
131
-	 */
132
-	public function details_metaboxes() {
133
-		$cmb = new_cmb2_box( array(
134
-			'id'           => $this->slug . '_details_metabox',
135
-			'title'        => __( 'Video Details', 'lsx-health-plan' ),
136
-			'object_types' => array( $this->slug ), // Post type
137
-			'context'      => 'normal',
138
-			'priority'     => 'high',
139
-			'show_names'   => true,
140
-		) );
141
-		$cmb->add_field( array(
142
-			'name'       => __( 'Featured Video', 'lsx-health-plan' ),
143
-			'desc'       => __( 'Enable the checkbox to feature this video, featured videos display in any page that has the video shortcode: [lsx_health_plan_featured_videos_block]', 'lsx-health-plan' ),
144
-			'id'         => $this->slug . '_featured_video',
145
-			'type'       => 'checkbox',
146
-			'show_on_cb' => 'cmb2_hide_if_no_cats',
147
-		) );
148
-		$cmb->add_field( array(
149
-			'name'       => __( 'Youtube Source', 'lsx-health-plan' ),
150
-			'desc'       => __( 'Drop in the url for your video from YouTube in this field, i.e: "https://www.youtube.com/watch?v=9xwazD5SyVg"', 'lsx-health-plan' ),
151
-			'id'         => $this->slug . '_youtube_source',
152
-			'type'       => 'oembed',
153
-			'show_on_cb' => 'cmb2_hide_if_no_cats',
154
-		) );
155
-		$cmb->add_field( array(
156
-			'name'       => __( 'Giphy Source', 'lsx-health-plan' ),
157
-			'desc'       => __( 'Drop in the iFrame embed code from Giphy in this field, i.e: <iframe src="https://giphy.com/embed/3o7527Rn1HxXWqgxuo" width="480" height="270" frameborder="0" class="giphy-embed" allowfullscreen></iframe>', 'lsx-health-plan' ),
158
-			'id'         => $this->slug . '_giphy_source',
159
-			'type'       => 'textarea_code',
160
-			'show_on_cb' => 'cmb2_hide_if_no_cats',
161
-		) );
162
-	}
129
+     /**
130
+      * Define the metabox and field configurations.
131
+      */
132
+     public function details_metaboxes() {
133
+          $cmb = new_cmb2_box( array(
134
+               'id'           => $this->slug . '_details_metabox',
135
+               'title'        => __( 'Video Details', 'lsx-health-plan' ),
136
+               'object_types' => array( $this->slug ), // Post type
137
+               'context'      => 'normal',
138
+               'priority'     => 'high',
139
+               'show_names'   => true,
140
+          ) );
141
+          $cmb->add_field( array(
142
+               'name'       => __( 'Featured Video', 'lsx-health-plan' ),
143
+               'desc'       => __( 'Enable the checkbox to feature this video, featured videos display in any page that has the video shortcode: [lsx_health_plan_featured_videos_block]', 'lsx-health-plan' ),
144
+               'id'         => $this->slug . '_featured_video',
145
+               'type'       => 'checkbox',
146
+               'show_on_cb' => 'cmb2_hide_if_no_cats',
147
+          ) );
148
+          $cmb->add_field( array(
149
+               'name'       => __( 'Youtube Source', 'lsx-health-plan' ),
150
+               'desc'       => __( 'Drop in the url for your video from YouTube in this field, i.e: "https://www.youtube.com/watch?v=9xwazD5SyVg"', 'lsx-health-plan' ),
151
+               'id'         => $this->slug . '_youtube_source',
152
+               'type'       => 'oembed',
153
+               'show_on_cb' => 'cmb2_hide_if_no_cats',
154
+          ) );
155
+          $cmb->add_field( array(
156
+               'name'       => __( 'Giphy Source', 'lsx-health-plan' ),
157
+               'desc'       => __( 'Drop in the iFrame embed code from Giphy in this field, i.e: <iframe src="https://giphy.com/embed/3o7527Rn1HxXWqgxuo" width="480" height="270" frameborder="0" class="giphy-embed" allowfullscreen></iframe>', 'lsx-health-plan' ),
158
+               'id'         => $this->slug . '_giphy_source',
159
+               'type'       => 'textarea_code',
160
+               'show_on_cb' => 'cmb2_hide_if_no_cats',
161
+          ) );
162
+     }
163 163
 
164
-	// /**
165
-	//  * Registers the workout connections on the workout post type.
166
-	//  *
167
-	//  * @return void
168
-	//  */
169
-	// public function videos_connections() {
170
-	// 	$cmb = new_cmb2_box( array(
171
-	// 		'id'           => $this->slug . '_videos_connections_metabox',
172
-	// 		'title'        => __( 'Videos', 'lsx-health-plan' ),
173
-	// 		'desc'         => __( 'Start typing to search for your workouts', 'lsx-health-plan' ),
174
-	// 		'object_types' => array( 'workout' ), // Post type
175
-	// 		'context'      => 'normal',
176
-	// 		'priority'     => 'high',
177
-	// 		'show_names'   => false,
178
-	// 	) );
179
-	// 	$cmb->add_field( array(
180
-	// 		'name'       => __( 'Videos', 'lsx-health-plan' ),
181
-	// 		'id'         => 'connected_videos',
182
-	// 		'type'       => 'post_search_ajax',
183
-	// 		// Optional :
184
-	// 		'limit'      => 15, // Limit selection to X items only (default 1)
185
-	// 		'sortable'   => true, // Allow selected items to be sortable (default false)
186
-	// 		'query_args' => array(
187
-	// 			'post_type'      => array( 'video' ),
188
-	// 			'post_status'    => array( 'publish' ),
189
-	// 			'posts_per_page' => -1,
190
-	// 		),
191
-	// 	) );
192
-	// }
164
+     // /**
165
+     //  * Registers the workout connections on the workout post type.
166
+     //  *
167
+     //  * @return void
168
+     //  */
169
+     // public function videos_connections() {
170
+     // 	$cmb = new_cmb2_box( array(
171
+     // 		'id'           => $this->slug . '_videos_connections_metabox',
172
+     // 		'title'        => __( 'Videos', 'lsx-health-plan' ),
173
+     // 		'desc'         => __( 'Start typing to search for your workouts', 'lsx-health-plan' ),
174
+     // 		'object_types' => array( 'workout' ), // Post type
175
+     // 		'context'      => 'normal',
176
+     // 		'priority'     => 'high',
177
+     // 		'show_names'   => false,
178
+     // 	) );
179
+     // 	$cmb->add_field( array(
180
+     // 		'name'       => __( 'Videos', 'lsx-health-plan' ),
181
+     // 		'id'         => 'connected_videos',
182
+     // 		'type'       => 'post_search_ajax',
183
+     // 		// Optional :
184
+     // 		'limit'      => 15, // Limit selection to X items only (default 1)
185
+     // 		'sortable'   => true, // Allow selected items to be sortable (default false)
186
+     // 		'query_args' => array(
187
+     // 			'post_type'      => array( 'video' ),
188
+     // 			'post_status'    => array( 'publish' ),
189
+     // 			'posts_per_page' => -1,
190
+     // 		),
191
+     // 	) );
192
+     // }
193 193
 
194 194
 }
Please login to merge, or discard this patch.
classes/integrations/class-download-monitor.php 1 patch
Indentation   +150 added lines, -150 removed lines patch added patch discarded remove patch
@@ -8,161 +8,161 @@
 block discarded – undo
8 8
  */
9 9
 class Download_Monitor {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Download_Monitor()
17
-	 */
18
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Download_Monitor()
17
+      */
18
+     protected static $instance = null;
19 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 = 'download';
20
+     /**
21
+      * Holds post_type slug used as an index
22
+      *
23
+      * @since 1.0.0
24
+      *
25
+      * @var      string
26
+      */
27
+     public $slug = 'download';
28 28
 
29
-	/**
30
-	 * Contructor
31
-	 */
32
-	public function __construct() {
33
-		add_action( 'cmb2_admin_init', array( $this, 'downloads_post_type_metaboxes' ), 5 );
34
-		add_action( 'cmb2_admin_init', array( $this, 'download_connections' ), 5 );
35
-		add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
36
-	}
29
+     /**
30
+      * Contructor
31
+      */
32
+     public function __construct() {
33
+          add_action( 'cmb2_admin_init', array( $this, 'downloads_post_type_metaboxes' ), 5 );
34
+          add_action( 'cmb2_admin_init', array( $this, 'download_connections' ), 5 );
35
+          add_filter( 'lsx_health_plan_connections', array( $this, 'enable_connections' ), 10, 1 );
36
+     }
37 37
 
38
-	/**
39
-	 * Return an instance of this class.
40
-	 *
41
-	 * @since 1.0.0
42
-	 *
43
-	 * @return    object \lsx_health_plan\classes\Download_Monitor()    A single instance of this class.
44
-	 */
45
-	public static function get_instance() {
46
-		// If the single instance hasn't been set, set it now.
47
-		if ( null === self::$instance ) {
48
-			self::$instance = new self();
49
-		}
50
-		return self::$instance;
51
-	}
38
+     /**
39
+      * Return an instance of this class.
40
+      *
41
+      * @since 1.0.0
42
+      *
43
+      * @return    object \lsx_health_plan\classes\Download_Monitor()    A single instance of this class.
44
+      */
45
+     public static function get_instance() {
46
+          // If the single instance hasn't been set, set it now.
47
+          if ( null === self::$instance ) {
48
+               self::$instance = new self();
49
+          }
50
+          return self::$instance;
51
+     }
52 52
 
53
-	/**
54
-	 * Enables the Bi Directional relationships
55
-	 *
56
-	 * @param array $connections
57
-	 * @return void
58
-	 */
59
-	public function enable_connections( $connections = array() ) {
60
-		$connections['dlm_download']['connected_pages']     = 'connected_downloads';
61
-		$connections['dlm_download']['connected_workouts']  = 'connected_downloads';
62
-		$connections['dlm_download']['connected_meals']     = 'connected_downloads';
63
-		$connections['dlm_download']['connected_recipes']   = 'connected_downloads';
53
+     /**
54
+      * Enables the Bi Directional relationships
55
+      *
56
+      * @param array $connections
57
+      * @return void
58
+      */
59
+     public function enable_connections( $connections = array() ) {
60
+          $connections['dlm_download']['connected_pages']     = 'connected_downloads';
61
+          $connections['dlm_download']['connected_workouts']  = 'connected_downloads';
62
+          $connections['dlm_download']['connected_meals']     = 'connected_downloads';
63
+          $connections['dlm_download']['connected_recipes']   = 'connected_downloads';
64 64
 
65
-		//Post Type Connections
66
-		$connections['workout']['connected_downloads'] = 'connected_workouts';
67
-		$connections['meal']['connected_downloads']    = 'connected_meals';
68
-		$connections['recipe']['connected_downloads']  = 'connected_recipes';
69
-		$connections['page']['connected_downloads']    = 'connected_pages';
70
-		return $connections;
71
-	}
65
+          //Post Type Connections
66
+          $connections['workout']['connected_downloads'] = 'connected_workouts';
67
+          $connections['meal']['connected_downloads']    = 'connected_meals';
68
+          $connections['recipe']['connected_downloads']  = 'connected_recipes';
69
+          $connections['page']['connected_downloads']    = 'connected_pages';
70
+          return $connections;
71
+     }
72 72
 
73
-	/**
74
-	 * Define the metabox and field configurations.
75
-	 */
76
-	public function downloads_post_type_metaboxes() {
77
-		$cmb = new_cmb2_box( array(
78
-			'id'           => $this->slug . '_connections_metabox',
79
-			'title'        => __( 'Connections', 'lsx-health-plan' ),
80
-			'object_types' => array( 'dlm_download' ), // Post type
81
-			'context'      => 'normal',
82
-			'priority'     => 'high',
83
-			'show_names'   => true,
84
-		) );
85
-		$cmb->add_field( array(
86
-			'name'       => __( 'Pages', 'lsx-health-plan' ),
87
-			'id'         => 'connected_pages',
88
-			'type'       => 'post_search_ajax',
89
-			// Optional :
90
-			'limit'      => 10,  // Limit selection to X items only (default 1)
91
-			'sortable'   => true, // Allow selected items to be sortable (default false)
92
-			'query_args' => array(
93
-				'post_type'      => array( 'page' ),
94
-				'post_status'    => array( 'publish' ),
95
-				'posts_per_page' => -1,
96
-			),
97
-		) );
98
-		$cmb->add_field( array(
99
-			'name'       => __( 'Workouts', 'lsx-health-plan' ),
100
-			'id'         => 'connected_workouts',
101
-			'type'       => 'post_search_ajax',
102
-			// Optional :
103
-			'limit'      => 10,  // Limit selection to X items only (default 1)
104
-			'sortable'   => true, // Allow selected items to be sortable (default false)
105
-			'query_args' => array(
106
-				'post_type'      => array( 'workout' ),
107
-				'post_status'    => array( 'publish' ),
108
-				'posts_per_page' => -1,
109
-			),
110
-		) );
111
-		$cmb->add_field( array(
112
-			'name'       => __( 'Meals', 'lsx-health-plan' ),
113
-			'id'         => 'connected_meals',
114
-			'type'       => 'post_search_ajax',
115
-			// Optional :
116
-			'limit'      => 10,  // Limit selection to X items only (default 1)
117
-			'sortable'   => true,  // Allow selected items to be sortable (default false)
118
-			'query_args' => array(
119
-				'post_type'      => array( 'meal' ),
120
-				'post_status'    => array( 'publish' ),
121
-				'posts_per_page' => -1,
122
-			),
123
-		) );
124
-		$cmb->add_field( array(
125
-			'name'       => __( 'Recipe', 'lsx-health-plan' ),
126
-			'id'         => 'connected_recipes',
127
-			'type'       => 'post_search_ajax',
128
-			// Optional :
129
-			'limit'      => 10, // Limit selection to X items only (default 1)
130
-			'sortable'   => true, // Allow selected items to be sortable (default false)
131
-			'query_args' => array(
132
-				'post_type'      => array( 'recipe' ),
133
-				'post_status'    => array( 'publish' ),
134
-				'posts_per_page' => -1,
135
-			),
136
-		) );
137
-	}
73
+     /**
74
+      * Define the metabox and field configurations.
75
+      */
76
+     public function downloads_post_type_metaboxes() {
77
+          $cmb = new_cmb2_box( array(
78
+               'id'           => $this->slug . '_connections_metabox',
79
+               'title'        => __( 'Connections', 'lsx-health-plan' ),
80
+               'object_types' => array( 'dlm_download' ), // Post type
81
+               'context'      => 'normal',
82
+               'priority'     => 'high',
83
+               'show_names'   => true,
84
+          ) );
85
+          $cmb->add_field( array(
86
+               'name'       => __( 'Pages', 'lsx-health-plan' ),
87
+               'id'         => 'connected_pages',
88
+               'type'       => 'post_search_ajax',
89
+               // Optional :
90
+               'limit'      => 10,  // Limit selection to X items only (default 1)
91
+               'sortable'   => true, // Allow selected items to be sortable (default false)
92
+               'query_args' => array(
93
+                    'post_type'      => array( 'page' ),
94
+                    'post_status'    => array( 'publish' ),
95
+                    'posts_per_page' => -1,
96
+               ),
97
+          ) );
98
+          $cmb->add_field( array(
99
+               'name'       => __( 'Workouts', 'lsx-health-plan' ),
100
+               'id'         => 'connected_workouts',
101
+               'type'       => 'post_search_ajax',
102
+               // Optional :
103
+               'limit'      => 10,  // Limit selection to X items only (default 1)
104
+               'sortable'   => true, // Allow selected items to be sortable (default false)
105
+               'query_args' => array(
106
+                    'post_type'      => array( 'workout' ),
107
+                    'post_status'    => array( 'publish' ),
108
+                    'posts_per_page' => -1,
109
+               ),
110
+          ) );
111
+          $cmb->add_field( array(
112
+               'name'       => __( 'Meals', 'lsx-health-plan' ),
113
+               'id'         => 'connected_meals',
114
+               'type'       => 'post_search_ajax',
115
+               // Optional :
116
+               'limit'      => 10,  // Limit selection to X items only (default 1)
117
+               'sortable'   => true,  // Allow selected items to be sortable (default false)
118
+               'query_args' => array(
119
+                    'post_type'      => array( 'meal' ),
120
+                    'post_status'    => array( 'publish' ),
121
+                    'posts_per_page' => -1,
122
+               ),
123
+          ) );
124
+          $cmb->add_field( array(
125
+               'name'       => __( 'Recipe', 'lsx-health-plan' ),
126
+               'id'         => 'connected_recipes',
127
+               'type'       => 'post_search_ajax',
128
+               // Optional :
129
+               'limit'      => 10, // Limit selection to X items only (default 1)
130
+               'sortable'   => true, // Allow selected items to be sortable (default false)
131
+               'query_args' => array(
132
+                    'post_type'      => array( 'recipe' ),
133
+                    'post_status'    => array( 'publish' ),
134
+                    'posts_per_page' => -1,
135
+               ),
136
+          ) );
137
+     }
138 138
 
139
-	/**
140
-	 * Registers the workout connections on the plan post type.
141
-	 *
142
-	 * @return void
143
-	 */
144
-	public function download_connections() {
145
-		$cmb = new_cmb2_box( array(
146
-			'id'           => $this->slug . '_metabox',
147
-			'title'        => __( 'Downloads', 'lsx-health-plan' ),
148
-			'object_types' => array( 'workout', 'meal', 'recipe' ), // Post type
149
-			'context'      => 'normal',
150
-			'priority'     => 'high',
151
-			'show_names'   => true,
152
-		) );
153
-		$cmb->add_field( array(
154
-			'name'       => __( 'Downloads', 'lsx-health-plan' ),
155
-			'desc'       => __( "Add the pdf's connected to this day plan, using the field provided.", 'lsx-health-plan' ),
156
-			'id'         => 'connected_downloads',
157
-			'type'       => 'post_search_ajax',
158
-			// Optional
159
-			'limit'      => 15,  // Limit selection to X items only (default 1)
160
-			'sortable'   => true, // Allow selected items to be sortable (default false)
161
-			'query_args' => array(
162
-				'post_type'      => array( 'dlm_download' ),
163
-				'post_status'    => array( 'publish' ),
164
-				'posts_per_page' => -1,
165
-			),
166
-		) );
167
-	}
139
+     /**
140
+      * Registers the workout connections on the plan post type.
141
+      *
142
+      * @return void
143
+      */
144
+     public function download_connections() {
145
+          $cmb = new_cmb2_box( array(
146
+               'id'           => $this->slug . '_metabox',
147
+               'title'        => __( 'Downloads', 'lsx-health-plan' ),
148
+               'object_types' => array( 'workout', 'meal', 'recipe' ), // Post type
149
+               'context'      => 'normal',
150
+               'priority'     => 'high',
151
+               'show_names'   => true,
152
+          ) );
153
+          $cmb->add_field( array(
154
+               'name'       => __( 'Downloads', 'lsx-health-plan' ),
155
+               'desc'       => __( "Add the pdf's connected to this day plan, using the field provided.", 'lsx-health-plan' ),
156
+               'id'         => 'connected_downloads',
157
+               'type'       => 'post_search_ajax',
158
+               // Optional
159
+               'limit'      => 15,  // Limit selection to X items only (default 1)
160
+               'sortable'   => true, // Allow selected items to be sortable (default false)
161
+               'query_args' => array(
162
+                    'post_type'      => array( 'dlm_download' ),
163
+                    'post_status'    => array( 'publish' ),
164
+                    'posts_per_page' => -1,
165
+               ),
166
+          ) );
167
+     }
168 168
 }
Please login to merge, or discard this patch.
classes/integrations/class-wp-user-avatar.php 1 patch
Indentation   +39 added lines, -39 removed lines patch added patch discarded remove patch
@@ -8,46 +8,46 @@
 block discarded – undo
8 8
  */
9 9
 class WP_User_Avatar {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Woocommerce()
17
-	 */
18
-	protected static $instance = null;
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Woocommerce()
17
+      */
18
+     protected static $instance = null;
19 19
 
20
-	/**
21
-	 * Contructor
22
-	 */
23
-	public function __construct() {
24
-		add_filter( 'wpua_profile_title', array( $this, 'profile_title' ), 10, 1 );
25
-	}
20
+     /**
21
+      * Contructor
22
+      */
23
+     public function __construct() {
24
+          add_filter( 'wpua_profile_title', array( $this, 'profile_title' ), 10, 1 );
25
+     }
26 26
 
27
-	/**
28
-	 * Return an instance of this class.
29
-	 *
30
-	 * @since 1.0.0
31
-	 *
32
-	 * @return    object \lsx_health_plan\classes\Woocommerce()    A single instance of this class.
33
-	 */
34
-	public static function get_instance() {
35
-		// If the single instance hasn't been set, set it now.
36
-		if ( null === self::$instance ) {
37
-			self::$instance = new self();
38
-		}
39
-		return self::$instance;
40
-	}
27
+     /**
28
+      * Return an instance of this class.
29
+      *
30
+      * @since 1.0.0
31
+      *
32
+      * @return    object \lsx_health_plan\classes\Woocommerce()    A single instance of this class.
33
+      */
34
+     public static function get_instance() {
35
+          // If the single instance hasn't been set, set it now.
36
+          if ( null === self::$instance ) {
37
+               self::$instance = new self();
38
+          }
39
+          return self::$instance;
40
+     }
41 41
 
42
-	/**
43
-	 * Changes the profile title
44
-	 *
45
-	 * @param  string $title
46
-	 * @return string
47
-	 */
48
-	public function profile_title( $title ) {
49
-		$title = '<h3>' . __( 'My Profile', 'lsx-health-plan' ) . '</h3>';
50
-		$title .= '<p class="tagline">' . __( 'Please upload an image of yourself in .jpeg format. Images should be square, to best fit the cropping area, and files sizes kept below 500kb.', 'lsx-health-plan' ) . '</p>';
51
-		return $title;
52
-	}
42
+     /**
43
+      * Changes the profile title
44
+      *
45
+      * @param  string $title
46
+      * @return string
47
+      */
48
+     public function profile_title( $title ) {
49
+          $title = '<h3>' . __( 'My Profile', 'lsx-health-plan' ) . '</h3>';
50
+          $title .= '<p class="tagline">' . __( 'Please upload an image of yourself in .jpeg format. Images should be square, to best fit the cropping area, and files sizes kept below 500kb.', 'lsx-health-plan' ) . '</p>';
51
+          return $title;
52
+     }
53 53
 }
Please login to merge, or discard this patch.
classes/integrations/class-woocommerce.php 1 patch
Indentation   +713 added lines, -713 removed lines patch added patch discarded remove patch
@@ -8,401 +8,401 @@  discard block
 block discarded – undo
8 8
  */
9 9
 class Woocommerce {
10 10
 
11
-	/**
12
-	 * Holds class instance
13
-	 *
14
-	 * @since 1.0.0
15
-	 *
16
-	 * @var      object \lsx_health_plan\classes\Woocommerce()
17
-	 */
18
-	protected static $instance = null;
19
-
20
-	/**
21
-	 * Contructor
22
-	 */
23
-	public function __construct() {
24
-		add_action( 'init', array( $this, 'init' ), 20, 1 );
25
-		add_filter( 'woocommerce_add_to_cart_validation', array( $this, 'only_one_in_cart' ), 99, 2 );
26
-		add_filter( 'woocommerce_order_button_text', array( $this, 'checkout_button_text' ), 10, 1 );
27
-		add_filter( 'woocommerce_get_breadcrumb', array( $this, 'breadcrumbs' ), 30, 1 );
28
-
29
-		// Checkout.
30
-		add_action( 'woocommerce_after_checkout_form', array( $this, 'payment_gateway_logos' ) );
31
-		add_action( 'body_class', array( $this, 'hp_add_body_classes' ) );
32
-		add_action( 'lsx_nav_before', array( $this, 'hp_link_lsx_navbar_header' ), 99 );
33
-		add_action( 'wp_head', array( $this, 'hp_simple_checkout' ), 99 );
34
-
35
-		// Redirect to the Edit Account Template.
36
-		add_filter( 'template_include', array( $this, 'account_endpoint_redirect' ), 99 );
37
-
38
-		add_action( 'woocommerce_edit_account_form', array( $this, 'iconic_print_user_frontend_fields' ), 10 );
39
-
40
-		add_filter( 'iconic_account_fields', array( $this, 'iconic_add_post_data_to_account_fields' ), 10, 1 );
41
-		add_action( 'show_user_profile', array( $this, 'iconic_print_user_admin_fields' ), 30 );
42
-
43
-		add_action( 'personal_options_update', array( $this, 'iconic_save_account_fields' ) );
44
-		add_action( 'edit_user_profile_update', array( $this, 'iconic_save_account_fields' ) );
45
-
46
-		add_action( 'woocommerce_save_account_details', array( $this, 'iconic_save_account_fields' ) );
47
-		add_filter( 'woocommerce_save_account_details_errors', array( $this, 'iconic_validate_user_frontend_fields' ), 10 );
48
-
49
-		// Profile Fields.
50
-		add_filter( 'woocommerce_form_field_text', array( $this, 'lsx_profile_photo_field_filter' ), 10, 4 );
51
-		add_action( 'woocommerce_after_edit_account_form', array( $this, 'action_woocommerce_after_edit_account_form' ), 10, 0 );
52
-
53
-		// Lost Password fields
54
-		add_action( 'woocommerce_before_lost_password_form', array( $this, 'lost_password_page_title' ), 10 );
55
-
56
-		add_action( 'wp', array( $this, 'allow_reset_password_page' ), 9 );
57
-
58
-		add_filter( 'wc_add_to_cart_message_html', '__return_false' );
59
-	}
60
-
61
-	/**
62
-	 * Return an instance of this class.
63
-	 *
64
-	 * @since 1.0.0
65
-	 *
66
-	 * @return    object \lsx_health_plan\classes\Woocommerce()    A single instance of this class.
67
-	 */
68
-	public static function get_instance() {
69
-		// If the single instance hasn't been set, set it now.
70
-		if ( null === self::$instance ) {
71
-			self::$instance = new self();
72
-		}
73
-		return self::$instance;
74
-	}
75
-
76
-	/**
77
-	 * Runs on init
78
-	 *
79
-	 * @return void
80
-	 */
81
-	public function init() {
82
-		remove_action( 'woocommerce_account_navigation', 'woocommerce_account_navigation' );
83
-	}
84
-
85
-	/**
86
-	 * Empties the cart before a product is added
87
-	 *
88
-	 * @param [type] $passed
89
-	 * @param [type] $added_product_id
90
-	 * @return void
91
-	 */
92
-	public function only_one_in_cart( $passed, $added_product_id ) {
93
-		wc_empty_cart();
94
-		return $passed;
95
-	}
96
-
97
-	/**
98
-	 * Return the Place Order Text
99
-	 *
100
-	 * @param string $label
101
-	 * @return void
102
-	 */
103
-	public function checkout_button_text( $label = '' ) {
104
-		$label = __( 'Place order', 'lsx-health-plan' );
105
-		return $label;
106
-	}
107
-
108
-	/**
109
-	 * Add the "Blog" link to the breadcrumbs
110
-	 * @param $crumbs
111
-	 * @return array
112
-	 */
113
-	public function breadcrumbs( $crumbs ) {
114
-
115
-		if ( is_singular( 'plan' ) ) {
116
-
117
-			$new_crumbs    = array();
118
-			$new_crumbs[0] = $crumbs[0];
119
-
120
-			$new_crumbs[1] = array(
121
-				0 => get_the_title( wc_get_page_id( 'myaccount' ) ),
122
-				1 => get_permalink( wc_get_page_id( 'myaccount' ) ),
123
-			);
124
-
125
-			$endpoint = get_query_var( 'endpoint' );
126
-			if ( '' === $endpoint || false === $endpoint ) {
127
-				$new_crumbs[2] = array(
128
-					0 => get_the_title(),
129
-					1 => false,
130
-				);
131
-			} else {
132
-				$endpoint_translation = \lsx_health_plan\functions\get_option( 'endpoint_' . $endpoint, false );
133
-				if ( false !== $endpoint_translation && '' !== $endpoint_translation ) {
134
-					$endpoint = $endpoint_translation;
135
-				}
136
-				$new_crumbs[2] = array(
137
-					0 => get_the_title(),
138
-					1 => get_permalink(),
139
-				);
140
-				$new_crumbs[3] = array(
141
-					0 => ucwords( $endpoint ),
142
-					1 => false,
143
-				);
144
-			}
145
-
146
-			$crumbs = $new_crumbs;
147
-		}
148
-		return $crumbs;
149
-	}
150
-
151
-	/**
152
-	 * Redirects to the my account template.
153
-	 *
154
-	 * @param string $template
155
-	 * @return string
156
-	 */
157
-	public function account_endpoint_redirect( $template ) {
158
-		if ( function_exists( 'is_account_page' ) && is_account_page() ) {
159
-			if ( empty( locate_template( array( 'page-template-my-plan.php' ) ) ) && file_exists( LSX_HEALTH_PLAN_PATH . 'templates/page-template-my-plan.php' ) ) {
160
-				$template = LSX_HEALTH_PLAN_PATH . 'templates/page-template-my-plan.php';
161
-			}
162
-		}
163
-		return $template;
164
-	}
165
-
166
-	/**
167
-	 * Add post values to account fields if set.
168
-	 *
169
-	 * @param array $fields
170
-	 *
171
-	 * @return array
172
-	 */
173
-	public function iconic_add_post_data_to_account_fields( $fields ) {
174
-		if ( empty( $_POST ) && wp_verify_nonce( sanitize_key( $_POST ) ) ) {
175
-			return $fields;
176
-		}
177
-
178
-		foreach ( $fields as $key => $field_args ) {
179
-			if ( isset( $_POST[ $key ] ) && empty( $_POST[ $key ] ) && wp_verify_nonce( sanitize_key( $_POST[ $key ] ) ) ) {
180
-				$fields[ $key ]['value'] = '';
181
-				continue;
182
-			}
183
-
184
-			if ( isset( $_POST[ $key ] ) ) {
185
-				$fields[ $key ]['value'] = sanitize_key( $_POST[ $key ] );
186
-			}
187
-		}
188
-
189
-		return $fields;
190
-	}
191
-
192
-	/**
193
-	 * Add fields to registration form and account area.
194
-	 */
195
-	public function iconic_print_user_frontend_fields() {
196
-		$fields            = $this->get_account_fields();
197
-		$is_user_logged_in = is_user_logged_in();
198
-
199
-		$all_disabled = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
200
-		if ( 'on' !== $all_disabled ) {
201
-			echo wp_kses_post( '<h2 class="title-lined my-stats-title">' . __( 'My Stats', 'lsx-health-plan' ) . '</h2>' );
202
-			echo wp_kses_post( '<div class="my-stats">' );
203
-
204
-			echo wp_kses_post( '<p class="form-row form-label">' . __( 'Start', 'lsx-health-plan' ) . '</p>' );
205
-			echo wp_kses_post( '<p class="form-row form-label">' . __( 'Goal', 'lsx-health-plan' ) . '</p>' );
206
-			echo wp_kses_post( '<p class="form-row form-label">' . __( 'End', 'lsx-health-plan' ) . '</p>' );
207
-			foreach ( $fields as $key => $field_args ) {
208
-				$value = null;
209
-				if ( ! $this->iconic_is_field_visible( $field_args ) ) {
210
-					continue;
211
-				}
212
-				if ( $is_user_logged_in ) {
213
-					$user_id = $this->iconic_get_edit_user_id();
214
-					$value   = $this->iconic_get_userdata( $user_id, $key );
215
-				}
216
-				$value = ( isset( $field_args['value'] ) && '' !== $field_args['value'] ) ? $field_args['value'] : $value;
217
-				woocommerce_form_field( $key, $field_args, $value );
218
-			}
219
-			echo wp_kses_post( '</div>' );
220
-		}
221
-	}
222
-
223
-	/**
224
-	 * Get user data.
225
-	 *
226
-	 * @param $user_id
227
-	 * @param $key
228
-	 *
229
-	 * @return mixed|string
230
-	 */
231
-	public function iconic_get_userdata( $user_id, $key ) {
232
-		if ( ! $this->iconic_is_userdata( $key ) ) {
233
-			return get_user_meta( $user_id, $key, true );
234
-		}
235
-
236
-		$userdata = get_userdata( $user_id );
237
-
238
-		if ( ! $userdata || ! isset( $userdata->{$key} ) ) {
239
-			return '';
240
-		}
241
-
242
-		return $userdata->{$key};
243
-	}
244
-
245
-	/**
246
-	 * Get currently editing user ID (frontend account/edit profile/edit other user).
247
-	 *
248
-	 * @return int
249
-	 */
250
-	public function iconic_get_edit_user_id() {
251
-		return ( isset( $_GET['user_id'] ) && wp_verify_nonce( sanitize_key( $_GET['user_id'] ) ) ) ? (int) $_GET['user_id'] : get_current_user_id();
252
-	}
253
-
254
-
255
-	/**
256
-	 * Save registration fields.
257
-	 *
258
-	 * @param int $customer_id
259
-	 */
260
-	public function iconic_save_account_fields( $customer_id ) {
261
-		$nonce_value = wc_get_var( $_REQUEST['save-account-details-nonce'], wc_get_var( $_REQUEST['_wpnonce'], '' ) ); // @codingStandardsIgnoreLine.
262
-		if ( ! wp_verify_nonce( $nonce_value, 'save_account_details' ) ) {
263
-			return;
264
-		}
265
-
266
-		$fields         = $this->get_account_fields();
267
-		$sanitized_data = array();
268
-		foreach ( $fields as $key => $field_args ) {
269
-			if ( ! $this->iconic_is_field_visible( $field_args ) ) {
270
-				continue;
271
-			}
272
-
273
-			$sanitize = isset( $field_args['sanitize'] ) ? $field_args['sanitize'] : 'wc_clean';
274
-			$value    = ( isset( $_POST[ $key ] ) ) ? call_user_func( $sanitize, $_POST[ $key ] ) : '';
275
-			if ( $this->iconic_is_userdata( $key ) ) {
276
-
277
-				$sanitized_data[ $key ] = $value;
278
-				continue;
279
-			}
280
-
281
-			if ( 'profile_photo' === $key ) {
282
-				// This handles the image uploads.
283
-				require_once ABSPATH . 'wp-admin/includes/image.php';
284
-				require_once ABSPATH . 'wp-admin/includes/file.php';
285
-				require_once ABSPATH . 'wp-admin/includes/media.php';
286
-
287
-				$id = media_handle_upload( $key, 0, '' );
288
-				if ( ! is_wp_error( $id ) ) {
289
-					update_term_meta( $customer_id, $key . '_id', $id );
290
-					update_term_meta( $customer_id, $key, $id );
291
-				}
292
-			} else {
293
-				delete_user_meta( $customer_id, $key );
294
-				update_user_meta( $customer_id, $key, $value );
295
-			}
296
-		}
297
-
298
-		if ( ! empty( $sanitized_data ) ) {
299
-			$sanitized_data['ID'] = $customer_id;
300
-			wp_update_user( $sanitized_data );
301
-		}
302
-	}
303
-
304
-
305
-	/**
306
-	 * Is this field core user data.
307
-	 *
308
-	 * @param $key
309
-	 *
310
-	 * @return bool
311
-	 */
312
-	public function iconic_is_userdata( $key ) {
313
-		$userdata = array(
314
-			'user_pass',
315
-			'user_login',
316
-			'user_nicename',
317
-			'user_url',
318
-			'user_email',
319
-			'display_name',
320
-			'nickname',
321
-			'first_name',
322
-			'last_name',
323
-			'description',
324
-			'rich_editing',
325
-			'user_registered',
326
-			'role',
327
-			'jabber',
328
-			'aim',
329
-			'yim',
330
-			'show_admin_bar_front',
331
-		);
332
-
333
-		return in_array( $key, $userdata, true );
334
-	}
335
-
336
-	/**
337
-	 * Is field visible.
338
-	 *
339
-	 * @param $field_args
340
-	 *
341
-	 * @return bool
342
-	 */
343
-	public function iconic_is_field_visible( $field_args ) {
344
-		$visible = true;
345
-		$action  = filter_input( INPUT_POST, 'action' );
346
-
347
-		if ( is_admin() && ! empty( $field_args['hide_in_admin'] ) ) {
348
-			$visible = false;
349
-		} elseif ( ( is_account_page() || 'save_account_details' === $action ) && is_user_logged_in() && ! empty( $field_args['hide_in_account'] ) ) {
350
-			$visible = false;
351
-		} elseif ( ( is_account_page() || 'save_account_details' === $action ) && ! is_user_logged_in() && ! empty( $field_args['hide_in_registration'] ) ) {
352
-			$visible = false;
353
-		} elseif ( is_checkout() && ! empty( $field_args['hide_in_checkout'] ) ) {
354
-			$visible = false;
355
-		}
356
-
357
-		// Disable the fitness fields if needed.
358
-		$weight_key  = __( 'Weight:' );
359
-		$waist_key   = __( 'Waist:' );
360
-		$fitness_key = __( 'Fitness Test Score:' );
361
-		if ( $weight_key === $field_args['label'] || $waist_key === $field_args['label'] || $fitness_key === $field_args['label'] ) {
362
-
363
-			// Check if all stats are disabled.
364
-			$all_disabled = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
365
-
366
-			$option_key = '';
367
-			switch ( $field_args['label'] ) {
368
-				case $weight_key:
369
-					$option_key = 'disable_weight_checkbox';
370
-					break;
371
-
372
-				case $waist_key:
373
-					$option_key = 'disable_waist_checkbox';
374
-					break;
375
-
376
-				case $fitness_key:
377
-					$option_key = 'disable_fitness_checkbox';
378
-					break;
379
-			}
380
-			$is_disabled = \lsx_health_plan\functions\get_option( $option_key, false );
381
-			if ( 'on' === $all_disabled || 'on' === $is_disabled ) {
382
-				$visible = false;
383
-			}
384
-		}
385
-		return $visible;
386
-	}
387
-
388
-	/**
389
-	 * Add fields to admin area.
390
-	 */
391
-	public function iconic_print_user_admin_fields() {
392
-		$fields = $this->get_account_fields();
393
-		?>
11
+     /**
12
+      * Holds class instance
13
+      *
14
+      * @since 1.0.0
15
+      *
16
+      * @var      object \lsx_health_plan\classes\Woocommerce()
17
+      */
18
+     protected static $instance = null;
19
+
20
+     /**
21
+      * Contructor
22
+      */
23
+     public function __construct() {
24
+          add_action( 'init', array( $this, 'init' ), 20, 1 );
25
+          add_filter( 'woocommerce_add_to_cart_validation', array( $this, 'only_one_in_cart' ), 99, 2 );
26
+          add_filter( 'woocommerce_order_button_text', array( $this, 'checkout_button_text' ), 10, 1 );
27
+          add_filter( 'woocommerce_get_breadcrumb', array( $this, 'breadcrumbs' ), 30, 1 );
28
+
29
+          // Checkout.
30
+          add_action( 'woocommerce_after_checkout_form', array( $this, 'payment_gateway_logos' ) );
31
+          add_action( 'body_class', array( $this, 'hp_add_body_classes' ) );
32
+          add_action( 'lsx_nav_before', array( $this, 'hp_link_lsx_navbar_header' ), 99 );
33
+          add_action( 'wp_head', array( $this, 'hp_simple_checkout' ), 99 );
34
+
35
+          // Redirect to the Edit Account Template.
36
+          add_filter( 'template_include', array( $this, 'account_endpoint_redirect' ), 99 );
37
+
38
+          add_action( 'woocommerce_edit_account_form', array( $this, 'iconic_print_user_frontend_fields' ), 10 );
39
+
40
+          add_filter( 'iconic_account_fields', array( $this, 'iconic_add_post_data_to_account_fields' ), 10, 1 );
41
+          add_action( 'show_user_profile', array( $this, 'iconic_print_user_admin_fields' ), 30 );
42
+
43
+          add_action( 'personal_options_update', array( $this, 'iconic_save_account_fields' ) );
44
+          add_action( 'edit_user_profile_update', array( $this, 'iconic_save_account_fields' ) );
45
+
46
+          add_action( 'woocommerce_save_account_details', array( $this, 'iconic_save_account_fields' ) );
47
+          add_filter( 'woocommerce_save_account_details_errors', array( $this, 'iconic_validate_user_frontend_fields' ), 10 );
48
+
49
+          // Profile Fields.
50
+          add_filter( 'woocommerce_form_field_text', array( $this, 'lsx_profile_photo_field_filter' ), 10, 4 );
51
+          add_action( 'woocommerce_after_edit_account_form', array( $this, 'action_woocommerce_after_edit_account_form' ), 10, 0 );
52
+
53
+          // Lost Password fields
54
+          add_action( 'woocommerce_before_lost_password_form', array( $this, 'lost_password_page_title' ), 10 );
55
+
56
+          add_action( 'wp', array( $this, 'allow_reset_password_page' ), 9 );
57
+
58
+          add_filter( 'wc_add_to_cart_message_html', '__return_false' );
59
+     }
60
+
61
+     /**
62
+      * Return an instance of this class.
63
+      *
64
+      * @since 1.0.0
65
+      *
66
+      * @return    object \lsx_health_plan\classes\Woocommerce()    A single instance of this class.
67
+      */
68
+     public static function get_instance() {
69
+          // If the single instance hasn't been set, set it now.
70
+          if ( null === self::$instance ) {
71
+               self::$instance = new self();
72
+          }
73
+          return self::$instance;
74
+     }
75
+
76
+     /**
77
+      * Runs on init
78
+      *
79
+      * @return void
80
+      */
81
+     public function init() {
82
+          remove_action( 'woocommerce_account_navigation', 'woocommerce_account_navigation' );
83
+     }
84
+
85
+     /**
86
+      * Empties the cart before a product is added
87
+      *
88
+      * @param [type] $passed
89
+      * @param [type] $added_product_id
90
+      * @return void
91
+      */
92
+     public function only_one_in_cart( $passed, $added_product_id ) {
93
+          wc_empty_cart();
94
+          return $passed;
95
+     }
96
+
97
+     /**
98
+      * Return the Place Order Text
99
+      *
100
+      * @param string $label
101
+      * @return void
102
+      */
103
+     public function checkout_button_text( $label = '' ) {
104
+          $label = __( 'Place order', 'lsx-health-plan' );
105
+          return $label;
106
+     }
107
+
108
+     /**
109
+      * Add the "Blog" link to the breadcrumbs
110
+      * @param $crumbs
111
+      * @return array
112
+      */
113
+     public function breadcrumbs( $crumbs ) {
114
+
115
+          if ( is_singular( 'plan' ) ) {
116
+
117
+               $new_crumbs    = array();
118
+               $new_crumbs[0] = $crumbs[0];
119
+
120
+               $new_crumbs[1] = array(
121
+                    0 => get_the_title( wc_get_page_id( 'myaccount' ) ),
122
+                    1 => get_permalink( wc_get_page_id( 'myaccount' ) ),
123
+               );
124
+
125
+               $endpoint = get_query_var( 'endpoint' );
126
+               if ( '' === $endpoint || false === $endpoint ) {
127
+                    $new_crumbs[2] = array(
128
+                         0 => get_the_title(),
129
+                         1 => false,
130
+                    );
131
+               } else {
132
+                    $endpoint_translation = \lsx_health_plan\functions\get_option( 'endpoint_' . $endpoint, false );
133
+                    if ( false !== $endpoint_translation && '' !== $endpoint_translation ) {
134
+                         $endpoint = $endpoint_translation;
135
+                    }
136
+                    $new_crumbs[2] = array(
137
+                         0 => get_the_title(),
138
+                         1 => get_permalink(),
139
+                    );
140
+                    $new_crumbs[3] = array(
141
+                         0 => ucwords( $endpoint ),
142
+                         1 => false,
143
+                    );
144
+               }
145
+
146
+               $crumbs = $new_crumbs;
147
+          }
148
+          return $crumbs;
149
+     }
150
+
151
+     /**
152
+      * Redirects to the my account template.
153
+      *
154
+      * @param string $template
155
+      * @return string
156
+      */
157
+     public function account_endpoint_redirect( $template ) {
158
+          if ( function_exists( 'is_account_page' ) && is_account_page() ) {
159
+               if ( empty( locate_template( array( 'page-template-my-plan.php' ) ) ) && file_exists( LSX_HEALTH_PLAN_PATH . 'templates/page-template-my-plan.php' ) ) {
160
+                    $template = LSX_HEALTH_PLAN_PATH . 'templates/page-template-my-plan.php';
161
+               }
162
+          }
163
+          return $template;
164
+     }
165
+
166
+     /**
167
+      * Add post values to account fields if set.
168
+      *
169
+      * @param array $fields
170
+      *
171
+      * @return array
172
+      */
173
+     public function iconic_add_post_data_to_account_fields( $fields ) {
174
+          if ( empty( $_POST ) && wp_verify_nonce( sanitize_key( $_POST ) ) ) {
175
+               return $fields;
176
+          }
177
+
178
+          foreach ( $fields as $key => $field_args ) {
179
+               if ( isset( $_POST[ $key ] ) && empty( $_POST[ $key ] ) && wp_verify_nonce( sanitize_key( $_POST[ $key ] ) ) ) {
180
+                    $fields[ $key ]['value'] = '';
181
+                    continue;
182
+               }
183
+
184
+               if ( isset( $_POST[ $key ] ) ) {
185
+                    $fields[ $key ]['value'] = sanitize_key( $_POST[ $key ] );
186
+               }
187
+          }
188
+
189
+          return $fields;
190
+     }
191
+
192
+     /**
193
+      * Add fields to registration form and account area.
194
+      */
195
+     public function iconic_print_user_frontend_fields() {
196
+          $fields            = $this->get_account_fields();
197
+          $is_user_logged_in = is_user_logged_in();
198
+
199
+          $all_disabled = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
200
+          if ( 'on' !== $all_disabled ) {
201
+               echo wp_kses_post( '<h2 class="title-lined my-stats-title">' . __( 'My Stats', 'lsx-health-plan' ) . '</h2>' );
202
+               echo wp_kses_post( '<div class="my-stats">' );
203
+
204
+               echo wp_kses_post( '<p class="form-row form-label">' . __( 'Start', 'lsx-health-plan' ) . '</p>' );
205
+               echo wp_kses_post( '<p class="form-row form-label">' . __( 'Goal', 'lsx-health-plan' ) . '</p>' );
206
+               echo wp_kses_post( '<p class="form-row form-label">' . __( 'End', 'lsx-health-plan' ) . '</p>' );
207
+               foreach ( $fields as $key => $field_args ) {
208
+                    $value = null;
209
+                    if ( ! $this->iconic_is_field_visible( $field_args ) ) {
210
+                         continue;
211
+                    }
212
+                    if ( $is_user_logged_in ) {
213
+                         $user_id = $this->iconic_get_edit_user_id();
214
+                         $value   = $this->iconic_get_userdata( $user_id, $key );
215
+                    }
216
+                    $value = ( isset( $field_args['value'] ) && '' !== $field_args['value'] ) ? $field_args['value'] : $value;
217
+                    woocommerce_form_field( $key, $field_args, $value );
218
+               }
219
+               echo wp_kses_post( '</div>' );
220
+          }
221
+     }
222
+
223
+     /**
224
+      * Get user data.
225
+      *
226
+      * @param $user_id
227
+      * @param $key
228
+      *
229
+      * @return mixed|string
230
+      */
231
+     public function iconic_get_userdata( $user_id, $key ) {
232
+          if ( ! $this->iconic_is_userdata( $key ) ) {
233
+               return get_user_meta( $user_id, $key, true );
234
+          }
235
+
236
+          $userdata = get_userdata( $user_id );
237
+
238
+          if ( ! $userdata || ! isset( $userdata->{$key} ) ) {
239
+               return '';
240
+          }
241
+
242
+          return $userdata->{$key};
243
+     }
244
+
245
+     /**
246
+      * Get currently editing user ID (frontend account/edit profile/edit other user).
247
+      *
248
+      * @return int
249
+      */
250
+     public function iconic_get_edit_user_id() {
251
+          return ( isset( $_GET['user_id'] ) && wp_verify_nonce( sanitize_key( $_GET['user_id'] ) ) ) ? (int) $_GET['user_id'] : get_current_user_id();
252
+     }
253
+
254
+
255
+     /**
256
+      * Save registration fields.
257
+      *
258
+      * @param int $customer_id
259
+      */
260
+     public function iconic_save_account_fields( $customer_id ) {
261
+          $nonce_value = wc_get_var( $_REQUEST['save-account-details-nonce'], wc_get_var( $_REQUEST['_wpnonce'], '' ) ); // @codingStandardsIgnoreLine.
262
+          if ( ! wp_verify_nonce( $nonce_value, 'save_account_details' ) ) {
263
+               return;
264
+          }
265
+
266
+          $fields         = $this->get_account_fields();
267
+          $sanitized_data = array();
268
+          foreach ( $fields as $key => $field_args ) {
269
+               if ( ! $this->iconic_is_field_visible( $field_args ) ) {
270
+                    continue;
271
+               }
272
+
273
+               $sanitize = isset( $field_args['sanitize'] ) ? $field_args['sanitize'] : 'wc_clean';
274
+               $value    = ( isset( $_POST[ $key ] ) ) ? call_user_func( $sanitize, $_POST[ $key ] ) : '';
275
+               if ( $this->iconic_is_userdata( $key ) ) {
276
+
277
+                    $sanitized_data[ $key ] = $value;
278
+                    continue;
279
+               }
280
+
281
+               if ( 'profile_photo' === $key ) {
282
+                    // This handles the image uploads.
283
+                    require_once ABSPATH . 'wp-admin/includes/image.php';
284
+                    require_once ABSPATH . 'wp-admin/includes/file.php';
285
+                    require_once ABSPATH . 'wp-admin/includes/media.php';
286
+
287
+                    $id = media_handle_upload( $key, 0, '' );
288
+                    if ( ! is_wp_error( $id ) ) {
289
+                         update_term_meta( $customer_id, $key . '_id', $id );
290
+                         update_term_meta( $customer_id, $key, $id );
291
+                    }
292
+               } else {
293
+                    delete_user_meta( $customer_id, $key );
294
+                    update_user_meta( $customer_id, $key, $value );
295
+               }
296
+          }
297
+
298
+          if ( ! empty( $sanitized_data ) ) {
299
+               $sanitized_data['ID'] = $customer_id;
300
+               wp_update_user( $sanitized_data );
301
+          }
302
+     }
303
+
304
+
305
+     /**
306
+      * Is this field core user data.
307
+      *
308
+      * @param $key
309
+      *
310
+      * @return bool
311
+      */
312
+     public function iconic_is_userdata( $key ) {
313
+          $userdata = array(
314
+               'user_pass',
315
+               'user_login',
316
+               'user_nicename',
317
+               'user_url',
318
+               'user_email',
319
+               'display_name',
320
+               'nickname',
321
+               'first_name',
322
+               'last_name',
323
+               'description',
324
+               'rich_editing',
325
+               'user_registered',
326
+               'role',
327
+               'jabber',
328
+               'aim',
329
+               'yim',
330
+               'show_admin_bar_front',
331
+          );
332
+
333
+          return in_array( $key, $userdata, true );
334
+     }
335
+
336
+     /**
337
+      * Is field visible.
338
+      *
339
+      * @param $field_args
340
+      *
341
+      * @return bool
342
+      */
343
+     public function iconic_is_field_visible( $field_args ) {
344
+          $visible = true;
345
+          $action  = filter_input( INPUT_POST, 'action' );
346
+
347
+          if ( is_admin() && ! empty( $field_args['hide_in_admin'] ) ) {
348
+               $visible = false;
349
+          } elseif ( ( is_account_page() || 'save_account_details' === $action ) && is_user_logged_in() && ! empty( $field_args['hide_in_account'] ) ) {
350
+               $visible = false;
351
+          } elseif ( ( is_account_page() || 'save_account_details' === $action ) && ! is_user_logged_in() && ! empty( $field_args['hide_in_registration'] ) ) {
352
+               $visible = false;
353
+          } elseif ( is_checkout() && ! empty( $field_args['hide_in_checkout'] ) ) {
354
+               $visible = false;
355
+          }
356
+
357
+          // Disable the fitness fields if needed.
358
+          $weight_key  = __( 'Weight:' );
359
+          $waist_key   = __( 'Waist:' );
360
+          $fitness_key = __( 'Fitness Test Score:' );
361
+          if ( $weight_key === $field_args['label'] || $waist_key === $field_args['label'] || $fitness_key === $field_args['label'] ) {
362
+
363
+               // Check if all stats are disabled.
364
+               $all_disabled = \lsx_health_plan\functions\get_option( 'disable_all_stats', false );
365
+
366
+               $option_key = '';
367
+               switch ( $field_args['label'] ) {
368
+                    case $weight_key:
369
+                         $option_key = 'disable_weight_checkbox';
370
+                         break;
371
+
372
+                    case $waist_key:
373
+                         $option_key = 'disable_waist_checkbox';
374
+                         break;
375
+
376
+                    case $fitness_key:
377
+                         $option_key = 'disable_fitness_checkbox';
378
+                         break;
379
+               }
380
+               $is_disabled = \lsx_health_plan\functions\get_option( $option_key, false );
381
+               if ( 'on' === $all_disabled || 'on' === $is_disabled ) {
382
+                    $visible = false;
383
+               }
384
+          }
385
+          return $visible;
386
+     }
387
+
388
+     /**
389
+      * Add fields to admin area.
390
+      */
391
+     public function iconic_print_user_admin_fields() {
392
+          $fields = $this->get_account_fields();
393
+          ?>
394 394
 		<h2><?php esc_html_e( 'Additional Information', 'lsx-health-plan' ); ?></h2>
395 395
 		<table class="form-table" id="iconic-additional-information">
396 396
 			<tbody>
397 397
 			<?php foreach ( $fields as $key => $field_args ) { ?>
398 398
 				<?php
399
-				if ( ! $this->iconic_is_field_visible( $field_args ) ) {
400
-					continue;
401
-				}
399
+                    if ( ! $this->iconic_is_field_visible( $field_args ) ) {
400
+                         continue;
401
+                    }
402 402
 
403
-				$user_id = $this->iconic_get_edit_user_id();
404
-				$value   = get_user_meta( $user_id, $key, true );
405
-				?>
403
+                    $user_id = $this->iconic_get_edit_user_id();
404
+                    $value   = get_user_meta( $user_id, $key, true );
405
+                    ?>
406 406
 				<tr>
407 407
 					<th>
408 408
 						<label for="<?php echo esc_html( $key ); ?>"><?php echo esc_html( $field_args['label'] ); ?></label>
@@ -416,334 +416,334 @@  discard block
 block discarded – undo
416 416
 			</tbody>
417 417
 		</table>
418 418
 		<?php
419
-	}
420
-
421
-	/**
422
-	 * Validate fields on frontend.
423
-	 *
424
-	 * @param WP_Error $errors
425
-	 *
426
-	 * @return WP_Error
427
-	 */
428
-	public function iconic_validate_user_frontend_fields( $errors ) {
429
-		$fields = $this->get_account_fields();
430
-
431
-		foreach ( $fields as $key => $field_args ) {
432
-			if ( empty( $field_args['required'] ) ) {
433
-				continue;
434
-			}
435
-
436
-			/*if ( ! isset( $_POST['register'] ) && wp_verify_nonce( sanitize_key( $_POST['register'] ) ) && ! empty( $field_args['hide_in_account'] ) ) {
419
+     }
420
+
421
+     /**
422
+      * Validate fields on frontend.
423
+      *
424
+      * @param WP_Error $errors
425
+      *
426
+      * @return WP_Error
427
+      */
428
+     public function iconic_validate_user_frontend_fields( $errors ) {
429
+          $fields = $this->get_account_fields();
430
+
431
+          foreach ( $fields as $key => $field_args ) {
432
+               if ( empty( $field_args['required'] ) ) {
433
+                    continue;
434
+               }
435
+
436
+               /*if ( ! isset( $_POST['register'] ) && wp_verify_nonce( sanitize_key( $_POST['register'] ) ) && ! empty( $field_args['hide_in_account'] ) ) {
437 437
 				continue;
438 438
 			}*/
439 439
 
440
-			if ( isset( $_POST['register'] ) && wp_verify_nonce( sanitize_key( $_POST['register'] ) ) && ! empty( $field_args['hide_in_registration'] ) ) {
441
-				continue;
442
-			}
443
-
444
-			if ( empty( $_POST[ $key ] ) ) {
445
-				/* translators: %s: field */
446
-				$message = sprintf( __( '%s is a required field.', 'lsx-health-plan' ), '<strong>' . $field_args['label'] . '</strong>' );
447
-				$errors->add( $key, $message );
448
-			}
449
-		}
450
-
451
-		return $errors;
452
-	}
453
-
454
-	/**
455
-	 * Changes the text into a file upload.
456
-	 * @param $field
457
-	 * @param $key
458
-	 * @param $args
459
-	 * @param $value
460
-	 *
461
-	 * @return mixed
462
-	 */
463
-	public function lsx_profile_photo_field_filter( $field, $key, $args, $value ) {
464
-		if ( 'profile_photo' === $args['id'] ) {
465
-
466
-			if ( $args['required'] ) {
467
-				$args['class'][] = 'validate-required';
468
-				$required        = ' <abbr class="required" title="' . esc_attr__( 'required', 'lsx-health-plan' ) . '">*</abbr>';
469
-			} else {
470
-				$required = '';
471
-			}
472
-
473
-			if ( is_string( $args['label_class'] ) ) {
474
-				$args['label_class'] = array( $args['label_class'] );
475
-			}
476
-
477
-			if ( is_null( $value ) ) {
478
-				$value = $args['default'];
479
-			}
480
-
481
-			// Custom attribute handling.
482
-			$custom_attributes         = array();
483
-			$args['custom_attributes'] = array_filter( (array) $args['custom_attributes'], 'strlen' );
484
-
485
-			if ( $args['maxlength'] ) {
486
-				$args['custom_attributes']['maxlength'] = absint( $args['maxlength'] );
487
-			}
488
-
489
-			if ( ! empty( $args['autocomplete'] ) ) {
490
-				$args['custom_attributes']['autocomplete'] = $args['autocomplete'];
491
-			}
492
-
493
-			if ( true === $args['autofocus'] ) {
494
-				$args['custom_attributes']['autofocus'] = 'autofocus';
495
-			}
496
-
497
-			if ( ! empty( $args['custom_attributes'] ) && is_array( $args['custom_attributes'] ) ) {
498
-				foreach ( $args['custom_attributes'] as $attribute => $attribute_value ) {
499
-					$custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
500
-				}
501
-			}
502
-
503
-			if ( ! empty( $args['validate'] ) ) {
504
-				foreach ( $args['validate'] as $validate ) {
505
-					$args['class'][] = 'validate-' . $validate;
506
-				}
507
-			}
508
-
509
-			$field_html      = '';
510
-			$field           = '';
511
-			$label_id        = $args['id'];
512
-			$sort            = $args['priority'] ? $args['priority'] : '';
513
-			$field_container = '<p class="form-row %1$s" id="%2$s" data-priority="' . esc_attr( $sort ) . '">%3$s</p>';
514
-			$args['class'][] = 'validate-required';
515
-			$required        = ' <abbr class="required" title="' . esc_attr__( 'required', 'lsx-health-plan' ) . '">*</abbr>';
516
-
517
-			$field .= '<input accept="image/*" type="file" class="input-text ' . esc_attr( implode( ' ', $args['input_class'] ) ) . '" name="' . esc_attr( $key ) . '" id="' . esc_attr( $args['id'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '"  value="" ' . implode( ' ', $custom_attributes ) . ' />';
518
-
519
-			if ( '' !== $value && $value !== $args['default'] ) {
520
-				$field .= '<input type="text" class="input-text ' . esc_attr( implode( ' ', $args['input_class'] ) ) . '" name="' . esc_attr( $key ) . '_id" id="' . esc_attr( $args['id'] ) . '_id" placeholder="' . esc_attr( $args['placeholder'] ) . '_id"  value="' . esc_attr( $value ) . '" ' . implode( ' ', $custom_attributes ) . ' />';
521
-			}
522
-
523
-			$field .= '<input type="hidden" name="MAX_FILE_SIZE" value="500000" />';
524
-
525
-			if ( $args['label'] && 'checkbox' !== $args['type'] ) {
526
-				$field_html .= '<label for="' . esc_attr( $label_id ) . '" class="' . esc_attr( implode( ' ', $args['label_class'] ) ) . '">' . $args['label'] . $required . '</label>';
527
-			}
528
-
529
-			$field_html .= $field;
530
-
531
-			if ( $args['description'] ) {
532
-				$field_html .= '<span class="description">' . esc_html( $args['description'] ) . '</span>';
533
-			}
534
-
535
-			$container_class = esc_attr( implode( ' ', $args['class'] ) );
536
-			$container_id    = esc_attr( $args['id'] ) . '_field';
537
-			$field           = sprintf( $field_container, $container_class, $container_id, $field_html );
538
-		}
539
-		return $field;
540
-	}
541
-
542
-
543
-	public function action_woocommerce_after_edit_account_form() {
544
-		echo do_shortcode( '[avatar_upload /]' );
545
-	}
546
-
547
-	/**
548
-	 * Get additional account fields.
549
-	 *
550
-	 * @return array
551
-	 */
552
-	public function get_account_fields() {
553
-		$account_fields = apply_filters( 'iconic_account_fields', array(
554
-			'weight_start'  => array(
555
-				'type'                 => 'text',
556
-				'label'                => __( 'Weight:', 'lsx-health-plan' ),
557
-				'placeholder'          => __( 'kg', 'lsx-health-plan' ),
558
-				'hide_in_account'      => false,
559
-				'hide_in_admin'        => false,
560
-				'hide_in_checkout'     => false,
561
-				'hide_in_registration' => false,
562
-				'required'             => false,
563
-			),
564
-			'weight_goal'   => array(
565
-				'type'                 => 'text',
566
-				'label'                => __( 'Weight:', 'lsx-health-plan' ),
567
-				'placeholder'          => __( 'kg', 'lsx-health-plan' ),
568
-				'hide_in_account'      => false,
569
-				'hide_in_admin'        => false,
570
-				'hide_in_checkout'     => false,
571
-				'hide_in_registration' => false,
572
-				'required'             => false,
573
-			),
574
-			'weight_end'    => array(
575
-				'type'                 => 'text',
576
-				'label'                => __( 'Weight:', 'lsx-health-plan' ),
577
-				'placeholder'          => __( 'kg', 'lsx-health-plan' ),
578
-				'hide_in_account'      => false,
579
-				'hide_in_admin'        => false,
580
-				'hide_in_checkout'     => false,
581
-				'hide_in_registration' => false,
582
-				'required'             => false,
583
-			),
584
-			'waist_start'   => array(
585
-				'type'                 => 'text',
586
-				'label'                => __( 'Waist:', 'lsx-health-plan' ),
587
-				'placeholder'          => __( 'cm', 'lsx-health-plan' ),
588
-				'hide_in_account'      => false,
589
-				'hide_in_admin'        => false,
590
-				'hide_in_checkout'     => false,
591
-				'hide_in_registration' => false,
592
-				'required'             => false,
593
-			),
594
-			'waist_goal'    => array(
595
-				'type'                 => 'text',
596
-				'label'                => __( 'Waist:', 'lsx-health-plan' ),
597
-				'placeholder'          => __( 'cm', 'lsx-health-plan' ),
598
-				'hide_in_account'      => false,
599
-				'hide_in_admin'        => false,
600
-				'hide_in_checkout'     => false,
601
-				'hide_in_registration' => false,
602
-				'required'             => false,
603
-			),
604
-			'waist_end'     => array(
605
-				'type'                 => 'text',
606
-				'label'                => __( 'Waist:', 'lsx-health-plan' ),
607
-				'placeholder'          => __( 'cm', 'lsx-health-plan' ),
608
-				'hide_in_account'      => false,
609
-				'hide_in_admin'        => false,
610
-				'hide_in_checkout'     => false,
611
-				'hide_in_registration' => false,
612
-				'required'             => false,
613
-			),
614
-			'fitness_start' => array(
615
-				'type'                 => 'text',
616
-				'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
617
-				'placeholder'          => '#',
618
-				'hide_in_account'      => false,
619
-				'hide_in_admin'        => false,
620
-				'hide_in_checkout'     => false,
621
-				'hide_in_registration' => false,
622
-				'required'             => false,
623
-			),
624
-			'fitness_goal'  => array(
625
-				'type'                 => 'text',
626
-				'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
627
-				'placeholder'          => '#',
628
-				'hide_in_account'      => false,
629
-				'hide_in_admin'        => false,
630
-				'hide_in_checkout'     => false,
631
-				'hide_in_registration' => false,
632
-				'required'             => false,
633
-			),
634
-			'fitness_end'   => array(
635
-				'type'                 => 'text',
636
-				'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
637
-				'placeholder'          => '#',
638
-				'hide_in_account'      => false,
639
-				'hide_in_admin'        => false,
640
-				'hide_in_checkout'     => false,
641
-				'hide_in_registration' => false,
642
-				'required'             => false,
643
-			),
644
-		) );
645
-
646
-		$is_weight_disabled = \lsx_health_plan\functions\get_option( 'disable_weight_checkbox', false );
647
-		if ( 'on' === $is_weight_disabled ) {
648
-			$account_fields['weight_start']['required'] = false;
649
-			$account_fields['weight_goal']['required']  = false;
650
-			$account_fields['weight_end']['required']   = false;
651
-		}
652
-		$is_waist_disabled = \lsx_health_plan\functions\get_option( 'disable_waist_checkbox', false );
653
-		if ( 'on' === $is_waist_disabled ) {
654
-			$account_fields['waist_start']['required'] = false;
655
-			$account_fields['waist_goal']['required']  = false;
656
-			$account_fields['waist_end']['required']   = false;
657
-		}
658
-		return $account_fields;
659
-	}
660
-
661
-	/**
662
-	 * Removes the content restriction class to allow the password page to show.
663
-	 *
664
-	 * @return void
665
-	 */
666
-	public function allow_reset_password_page() {
667
-		if ( ! is_user_logged_in() && function_exists( 'wc_memberships' ) && is_wc_endpoint_url( 'lost-password' ) ) {
668
-
669
-			$members_instance           = wc_memberships();
670
-			$restriction_instance       = $members_instance->get_restrictions_instance();
671
-			$post_restrictions_instance = $restriction_instance->get_posts_restrictions_instance();
672
-			remove_action( 'wp', array( $post_restrictions_instance, 'handle_restriction_modes' ), 10, 1 );
673
-			add_action( 'body_class', array( $this, 'remove_body_classes' ) );
674
-		}
675
-	}
676
-
677
-	/**
678
-	 * Remove the gutenberg classes from the lost password page.
679
-	 *
680
-	 * @param array $classes
681
-	 * @return void
682
-	 */
683
-	public function remove_body_classes( $classes = array() ) {
684
-		if ( ! empty( $classes ) ) {
685
-			foreach ( $classes as $class_key => $class_value ) {
686
-				if ( 'gutenberg-compatible-template' === $class_value || 'using-gutenberg' === $class_value ) {
687
-					unset( $classes[ $class_key ] );
688
-				}
689
-			}
690
-		}
691
-		return $classes;
692
-	}
693
-
694
-	/**
695
-	 * Add 'lsx-simple-checkout' class to body if it is woocommerce checkout page.
696
-	 *
697
-	 * @param array $classes
698
-	 * @return void
699
-	 */
700
-	public function hp_add_body_classes( $classes = array() ) {
701
-		if ( is_checkout() ) {
702
-			$classes[] = 'lsx-hp-simple-checkout';
703
-		}
704
-		return $classes;
705
-	}
706
-
707
-	/**
708
-	 * Remove unnecessary items for simple woocommerce checkout page.
709
-	 *
710
-	 * @param array $classes
711
-	 * @return void
712
-	 */
713
-	public function hp_simple_checkout() {
714
-		if ( is_checkout() ) {
715
-			remove_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' );
716
-		}
717
-	}
718
-
719
-	public function lost_password_page_title() {
720
-		?>
440
+               if ( isset( $_POST['register'] ) && wp_verify_nonce( sanitize_key( $_POST['register'] ) ) && ! empty( $field_args['hide_in_registration'] ) ) {
441
+                    continue;
442
+               }
443
+
444
+               if ( empty( $_POST[ $key ] ) ) {
445
+                    /* translators: %s: field */
446
+                    $message = sprintf( __( '%s is a required field.', 'lsx-health-plan' ), '<strong>' . $field_args['label'] . '</strong>' );
447
+                    $errors->add( $key, $message );
448
+               }
449
+          }
450
+
451
+          return $errors;
452
+     }
453
+
454
+     /**
455
+      * Changes the text into a file upload.
456
+      * @param $field
457
+      * @param $key
458
+      * @param $args
459
+      * @param $value
460
+      *
461
+      * @return mixed
462
+      */
463
+     public function lsx_profile_photo_field_filter( $field, $key, $args, $value ) {
464
+          if ( 'profile_photo' === $args['id'] ) {
465
+
466
+               if ( $args['required'] ) {
467
+                    $args['class'][] = 'validate-required';
468
+                    $required        = ' <abbr class="required" title="' . esc_attr__( 'required', 'lsx-health-plan' ) . '">*</abbr>';
469
+               } else {
470
+                    $required = '';
471
+               }
472
+
473
+               if ( is_string( $args['label_class'] ) ) {
474
+                    $args['label_class'] = array( $args['label_class'] );
475
+               }
476
+
477
+               if ( is_null( $value ) ) {
478
+                    $value = $args['default'];
479
+               }
480
+
481
+               // Custom attribute handling.
482
+               $custom_attributes         = array();
483
+               $args['custom_attributes'] = array_filter( (array) $args['custom_attributes'], 'strlen' );
484
+
485
+               if ( $args['maxlength'] ) {
486
+                    $args['custom_attributes']['maxlength'] = absint( $args['maxlength'] );
487
+               }
488
+
489
+               if ( ! empty( $args['autocomplete'] ) ) {
490
+                    $args['custom_attributes']['autocomplete'] = $args['autocomplete'];
491
+               }
492
+
493
+               if ( true === $args['autofocus'] ) {
494
+                    $args['custom_attributes']['autofocus'] = 'autofocus';
495
+               }
496
+
497
+               if ( ! empty( $args['custom_attributes'] ) && is_array( $args['custom_attributes'] ) ) {
498
+                    foreach ( $args['custom_attributes'] as $attribute => $attribute_value ) {
499
+                         $custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
500
+                    }
501
+               }
502
+
503
+               if ( ! empty( $args['validate'] ) ) {
504
+                    foreach ( $args['validate'] as $validate ) {
505
+                         $args['class'][] = 'validate-' . $validate;
506
+                    }
507
+               }
508
+
509
+               $field_html      = '';
510
+               $field           = '';
511
+               $label_id        = $args['id'];
512
+               $sort            = $args['priority'] ? $args['priority'] : '';
513
+               $field_container = '<p class="form-row %1$s" id="%2$s" data-priority="' . esc_attr( $sort ) . '">%3$s</p>';
514
+               $args['class'][] = 'validate-required';
515
+               $required        = ' <abbr class="required" title="' . esc_attr__( 'required', 'lsx-health-plan' ) . '">*</abbr>';
516
+
517
+               $field .= '<input accept="image/*" type="file" class="input-text ' . esc_attr( implode( ' ', $args['input_class'] ) ) . '" name="' . esc_attr( $key ) . '" id="' . esc_attr( $args['id'] ) . '" placeholder="' . esc_attr( $args['placeholder'] ) . '"  value="" ' . implode( ' ', $custom_attributes ) . ' />';
518
+
519
+               if ( '' !== $value && $value !== $args['default'] ) {
520
+                    $field .= '<input type="text" class="input-text ' . esc_attr( implode( ' ', $args['input_class'] ) ) . '" name="' . esc_attr( $key ) . '_id" id="' . esc_attr( $args['id'] ) . '_id" placeholder="' . esc_attr( $args['placeholder'] ) . '_id"  value="' . esc_attr( $value ) . '" ' . implode( ' ', $custom_attributes ) . ' />';
521
+               }
522
+
523
+               $field .= '<input type="hidden" name="MAX_FILE_SIZE" value="500000" />';
524
+
525
+               if ( $args['label'] && 'checkbox' !== $args['type'] ) {
526
+                    $field_html .= '<label for="' . esc_attr( $label_id ) . '" class="' . esc_attr( implode( ' ', $args['label_class'] ) ) . '">' . $args['label'] . $required . '</label>';
527
+               }
528
+
529
+               $field_html .= $field;
530
+
531
+               if ( $args['description'] ) {
532
+                    $field_html .= '<span class="description">' . esc_html( $args['description'] ) . '</span>';
533
+               }
534
+
535
+               $container_class = esc_attr( implode( ' ', $args['class'] ) );
536
+               $container_id    = esc_attr( $args['id'] ) . '_field';
537
+               $field           = sprintf( $field_container, $container_class, $container_id, $field_html );
538
+          }
539
+          return $field;
540
+     }
541
+
542
+
543
+     public function action_woocommerce_after_edit_account_form() {
544
+          echo do_shortcode( '[avatar_upload /]' );
545
+     }
546
+
547
+     /**
548
+      * Get additional account fields.
549
+      *
550
+      * @return array
551
+      */
552
+     public function get_account_fields() {
553
+          $account_fields = apply_filters( 'iconic_account_fields', array(
554
+               'weight_start'  => array(
555
+                    'type'                 => 'text',
556
+                    'label'                => __( 'Weight:', 'lsx-health-plan' ),
557
+                    'placeholder'          => __( 'kg', 'lsx-health-plan' ),
558
+                    'hide_in_account'      => false,
559
+                    'hide_in_admin'        => false,
560
+                    'hide_in_checkout'     => false,
561
+                    'hide_in_registration' => false,
562
+                    'required'             => false,
563
+               ),
564
+               'weight_goal'   => array(
565
+                    'type'                 => 'text',
566
+                    'label'                => __( 'Weight:', 'lsx-health-plan' ),
567
+                    'placeholder'          => __( 'kg', 'lsx-health-plan' ),
568
+                    'hide_in_account'      => false,
569
+                    'hide_in_admin'        => false,
570
+                    'hide_in_checkout'     => false,
571
+                    'hide_in_registration' => false,
572
+                    'required'             => false,
573
+               ),
574
+               'weight_end'    => array(
575
+                    'type'                 => 'text',
576
+                    'label'                => __( 'Weight:', 'lsx-health-plan' ),
577
+                    'placeholder'          => __( 'kg', 'lsx-health-plan' ),
578
+                    'hide_in_account'      => false,
579
+                    'hide_in_admin'        => false,
580
+                    'hide_in_checkout'     => false,
581
+                    'hide_in_registration' => false,
582
+                    'required'             => false,
583
+               ),
584
+               'waist_start'   => array(
585
+                    'type'                 => 'text',
586
+                    'label'                => __( 'Waist:', 'lsx-health-plan' ),
587
+                    'placeholder'          => __( 'cm', 'lsx-health-plan' ),
588
+                    'hide_in_account'      => false,
589
+                    'hide_in_admin'        => false,
590
+                    'hide_in_checkout'     => false,
591
+                    'hide_in_registration' => false,
592
+                    'required'             => false,
593
+               ),
594
+               'waist_goal'    => array(
595
+                    'type'                 => 'text',
596
+                    'label'                => __( 'Waist:', 'lsx-health-plan' ),
597
+                    'placeholder'          => __( 'cm', 'lsx-health-plan' ),
598
+                    'hide_in_account'      => false,
599
+                    'hide_in_admin'        => false,
600
+                    'hide_in_checkout'     => false,
601
+                    'hide_in_registration' => false,
602
+                    'required'             => false,
603
+               ),
604
+               'waist_end'     => array(
605
+                    'type'                 => 'text',
606
+                    'label'                => __( 'Waist:', 'lsx-health-plan' ),
607
+                    'placeholder'          => __( 'cm', 'lsx-health-plan' ),
608
+                    'hide_in_account'      => false,
609
+                    'hide_in_admin'        => false,
610
+                    'hide_in_checkout'     => false,
611
+                    'hide_in_registration' => false,
612
+                    'required'             => false,
613
+               ),
614
+               'fitness_start' => array(
615
+                    'type'                 => 'text',
616
+                    'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
617
+                    'placeholder'          => '#',
618
+                    'hide_in_account'      => false,
619
+                    'hide_in_admin'        => false,
620
+                    'hide_in_checkout'     => false,
621
+                    'hide_in_registration' => false,
622
+                    'required'             => false,
623
+               ),
624
+               'fitness_goal'  => array(
625
+                    'type'                 => 'text',
626
+                    'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
627
+                    'placeholder'          => '#',
628
+                    'hide_in_account'      => false,
629
+                    'hide_in_admin'        => false,
630
+                    'hide_in_checkout'     => false,
631
+                    'hide_in_registration' => false,
632
+                    'required'             => false,
633
+               ),
634
+               'fitness_end'   => array(
635
+                    'type'                 => 'text',
636
+                    'label'                => __( 'Fitness Test Score:', 'lsx-health-plan' ),
637
+                    'placeholder'          => '#',
638
+                    'hide_in_account'      => false,
639
+                    'hide_in_admin'        => false,
640
+                    'hide_in_checkout'     => false,
641
+                    'hide_in_registration' => false,
642
+                    'required'             => false,
643
+               ),
644
+          ) );
645
+
646
+          $is_weight_disabled = \lsx_health_plan\functions\get_option( 'disable_weight_checkbox', false );
647
+          if ( 'on' === $is_weight_disabled ) {
648
+               $account_fields['weight_start']['required'] = false;
649
+               $account_fields['weight_goal']['required']  = false;
650
+               $account_fields['weight_end']['required']   = false;
651
+          }
652
+          $is_waist_disabled = \lsx_health_plan\functions\get_option( 'disable_waist_checkbox', false );
653
+          if ( 'on' === $is_waist_disabled ) {
654
+               $account_fields['waist_start']['required'] = false;
655
+               $account_fields['waist_goal']['required']  = false;
656
+               $account_fields['waist_end']['required']   = false;
657
+          }
658
+          return $account_fields;
659
+     }
660
+
661
+     /**
662
+      * Removes the content restriction class to allow the password page to show.
663
+      *
664
+      * @return void
665
+      */
666
+     public function allow_reset_password_page() {
667
+          if ( ! is_user_logged_in() && function_exists( 'wc_memberships' ) && is_wc_endpoint_url( 'lost-password' ) ) {
668
+
669
+               $members_instance           = wc_memberships();
670
+               $restriction_instance       = $members_instance->get_restrictions_instance();
671
+               $post_restrictions_instance = $restriction_instance->get_posts_restrictions_instance();
672
+               remove_action( 'wp', array( $post_restrictions_instance, 'handle_restriction_modes' ), 10, 1 );
673
+               add_action( 'body_class', array( $this, 'remove_body_classes' ) );
674
+          }
675
+     }
676
+
677
+     /**
678
+      * Remove the gutenberg classes from the lost password page.
679
+      *
680
+      * @param array $classes
681
+      * @return void
682
+      */
683
+     public function remove_body_classes( $classes = array() ) {
684
+          if ( ! empty( $classes ) ) {
685
+               foreach ( $classes as $class_key => $class_value ) {
686
+                    if ( 'gutenberg-compatible-template' === $class_value || 'using-gutenberg' === $class_value ) {
687
+                         unset( $classes[ $class_key ] );
688
+                    }
689
+               }
690
+          }
691
+          return $classes;
692
+     }
693
+
694
+     /**
695
+      * Add 'lsx-simple-checkout' class to body if it is woocommerce checkout page.
696
+      *
697
+      * @param array $classes
698
+      * @return void
699
+      */
700
+     public function hp_add_body_classes( $classes = array() ) {
701
+          if ( is_checkout() ) {
702
+               $classes[] = 'lsx-hp-simple-checkout';
703
+          }
704
+          return $classes;
705
+     }
706
+
707
+     /**
708
+      * Remove unnecessary items for simple woocommerce checkout page.
709
+      *
710
+      * @param array $classes
711
+      * @return void
712
+      */
713
+     public function hp_simple_checkout() {
714
+          if ( is_checkout() ) {
715
+               remove_action( 'lsx_footer_before', 'lsx_add_footer_sidebar_area' );
716
+          }
717
+     }
718
+
719
+     public function lost_password_page_title() {
720
+          ?>
721 721
 		<h1 class="lost-your-password-title"><?php esc_html_e( 'Lost your password?', 'lsx-health-plan' ); ?></h1>
722 722
 		<?php
723
-	}
724
-
725
-	/**
726
-	 * Adding the 'Home' link to the checkout.
727
-	 *
728
-	 * @return void
729
-	 */
730
-	public function hp_link_lsx_navbar_header() {
731
-		if ( is_checkout() ) {
732
-			$home_ulr = '<nav class="checkout-navbar"><ul class="nav navbar-nav"><li><a href="' . home_url() . '">' . __( 'Home', 'lsx-health-plan' ) . '</a></li></ul></nav>';
733
-			echo wp_kses_post( $home_ulr );
734
-		}
735
-	}
736
-
737
-
738
-	/**
739
-	 * Add Lets Enrypt and PayFast logos to cart.
740
-	**/
741
-	public function payment_gateway_logos() {
742
-		$encript_image = LSX_HEALTH_PLAN_URL . 'assets/images/lets-encript.svg';
743
-		$payfast_image = LSX_HEALTH_PLAN_URL . 'assets/images/payfast-footer-logo.svg';
744
-		$payment_logos = LSX_HEALTH_PLAN_URL . 'assets/images/payment-logos.svg';
745
-		$payment_logos_mobile = LSX_HEALTH_PLAN_URL . 'assets/images/payment-logos-mobile.svg';
746
-		?>
723
+     }
724
+
725
+     /**
726
+      * Adding the 'Home' link to the checkout.
727
+      *
728
+      * @return void
729
+      */
730
+     public function hp_link_lsx_navbar_header() {
731
+          if ( is_checkout() ) {
732
+               $home_ulr = '<nav class="checkout-navbar"><ul class="nav navbar-nav"><li><a href="' . home_url() . '">' . __( 'Home', 'lsx-health-plan' ) . '</a></li></ul></nav>';
733
+               echo wp_kses_post( $home_ulr );
734
+          }
735
+     }
736
+
737
+
738
+     /**
739
+      * Add Lets Enrypt and PayFast logos to cart.
740
+      **/
741
+     public function payment_gateway_logos() {
742
+          $encript_image = LSX_HEALTH_PLAN_URL . 'assets/images/lets-encript.svg';
743
+          $payfast_image = LSX_HEALTH_PLAN_URL . 'assets/images/payfast-footer-logo.svg';
744
+          $payment_logos = LSX_HEALTH_PLAN_URL . 'assets/images/payment-logos.svg';
745
+          $payment_logos_mobile = LSX_HEALTH_PLAN_URL . 'assets/images/payment-logos-mobile.svg';
746
+          ?>
747 747
 		<div class="row text-center vertical-align lsx-full-width-base-small checkout-cta-bottom">
748 748
 			<div class="col-md-12 img-payfast">
749 749
 				<img src="<?php echo esc_url( $payfast_image ); ?>" alt="payfast"/>
@@ -760,5 +760,5 @@  discard block
 block discarded – undo
760 760
 		</div>
761 761
 
762 762
 		<?php
763
-	}
763
+     }
764 764
 }
Please login to merge, or discard this patch.
classes/admin/class-settings-theme.php 1 patch
Indentation   +176 added lines, -176 removed lines patch added patch discarded remove patch
@@ -10,186 +10,186 @@  discard block
 block discarded – undo
10 10
  */
11 11
 class Settings_Theme {
12 12
 
13
-	/**
14
-	 * Holds class instance
15
-	 *
16
-	 * @since 1.0.0
17
-	 *
18
-	 * @var      object \lsx_health_plan\classes\admin\Settings_Theme()
19
-	 */
20
-	protected static $instance = null;
13
+     /**
14
+      * Holds class instance
15
+      *
16
+      * @since 1.0.0
17
+      *
18
+      * @var      object \lsx_health_plan\classes\admin\Settings_Theme()
19
+      */
20
+     protected static $instance = null;
21 21
 
22
-	/**
23
-	 * Will return true if this is the LSX Search settings page.
24
-	 *
25
-	 * @var array
26
-	 */
27
-	public $is_options_page = false;
22
+     /**
23
+      * Will return true if this is the LSX Search settings page.
24
+      *
25
+      * @var array
26
+      */
27
+     public $is_options_page = false;
28 28
 
29
-	/**
30
-	 * Holds the id and labels for the navigation.
31
-	 *
32
-	 * @var array
33
-	 */
34
-	public $navigation = array();
29
+     /**
30
+      * Holds the id and labels for the navigation.
31
+      *
32
+      * @var array
33
+      */
34
+     public $navigation = array();
35 35
 
36
-	/**
37
-	 * Contructor
38
-	 */
39
-	public function __construct() {
40
-		add_filter( 'cmb2_enqueue_css', array( $this, 'disable_cmb2_styles' ), 1, 1 );
41
-		add_action( 'cmb2_before_form', array( $this, 'generate_navigation' ), 10, 4 );
42
-		add_action( 'cmb2_before_title_field_row', array( $this, 'output_tab_open_div' ), 10, 1 );
43
-		add_action( 'cmb2_after_tab_closing_field_row', array( $this, 'output_tab_closing_div' ), 10, 1 );
44
-		add_action( 'cmb2_render_tab_closing', array( $this, 'cmb2_render_callback_for_tab_closing' ), 10, 5 );
45
-		add_filter( 'cmb2_sanitize_tab_closing', array( $this, 'cmb2_sanitize_tab_closing_callback' ), 10, 2 );
46
-		add_action( 'cmb2_after_form', array( $this, 'navigation_js' ), 10, 4 );
47
-		add_filter( 'cmb2_options_page_redirect_url', array( $this, 'add_tab_argument' ), 10, 1 );
48
-	}
36
+     /**
37
+      * Contructor
38
+      */
39
+     public function __construct() {
40
+          add_filter( 'cmb2_enqueue_css', array( $this, 'disable_cmb2_styles' ), 1, 1 );
41
+          add_action( 'cmb2_before_form', array( $this, 'generate_navigation' ), 10, 4 );
42
+          add_action( 'cmb2_before_title_field_row', array( $this, 'output_tab_open_div' ), 10, 1 );
43
+          add_action( 'cmb2_after_tab_closing_field_row', array( $this, 'output_tab_closing_div' ), 10, 1 );
44
+          add_action( 'cmb2_render_tab_closing', array( $this, 'cmb2_render_callback_for_tab_closing' ), 10, 5 );
45
+          add_filter( 'cmb2_sanitize_tab_closing', array( $this, 'cmb2_sanitize_tab_closing_callback' ), 10, 2 );
46
+          add_action( 'cmb2_after_form', array( $this, 'navigation_js' ), 10, 4 );
47
+          add_filter( 'cmb2_options_page_redirect_url', array( $this, 'add_tab_argument' ), 10, 1 );
48
+     }
49 49
 
50
-	/**
51
-	 * Return an instance of this class.
52
-	 *
53
-	 * @since 1.0.0
54
-	 *
55
-	 * @return    object \lsx_health_plan\classes\admin\Settings_Theme()    A single instance of this class.
56
-	 */
57
-	public static function get_instance() {
58
-		// If the single instance hasn't been set, set it now.
59
-		if ( null == self::$instance ) {
60
-			self::$instance = new self();
61
-		}
62
-		return self::$instance;
63
-	}
50
+     /**
51
+      * Return an instance of this class.
52
+      *
53
+      * @since 1.0.0
54
+      *
55
+      * @return    object \lsx_health_plan\classes\admin\Settings_Theme()    A single instance of this class.
56
+      */
57
+     public static function get_instance() {
58
+          // If the single instance hasn't been set, set it now.
59
+          if ( null == self::$instance ) {
60
+               self::$instance = new self();
61
+          }
62
+          return self::$instance;
63
+     }
64 64
 
65
-	/**
66
-	 * Disable CMB2 styles on front end forms.
67
-	 *
68
-	 * @return bool $enabled Whether to enable (enqueue) styles.
69
-	 */
70
-	public function disable_cmb2_styles( $enabled ) {
71
-		if ( is_admin() ) {
72
-			$current_screen = get_current_screen();
73
-			if ( is_object( $current_screen ) && 'plan_page_lsx_health_plan_options' === $current_screen->id ) {
74
-				$enabled = false;
75
-			}
76
-		}
77
-		return $enabled;
78
-	}
65
+     /**
66
+      * Disable CMB2 styles on front end forms.
67
+      *
68
+      * @return bool $enabled Whether to enable (enqueue) styles.
69
+      */
70
+     public function disable_cmb2_styles( $enabled ) {
71
+          if ( is_admin() ) {
72
+               $current_screen = get_current_screen();
73
+               if ( is_object( $current_screen ) && 'plan_page_lsx_health_plan_options' === $current_screen->id ) {
74
+                    $enabled = false;
75
+               }
76
+          }
77
+          return $enabled;
78
+     }
79 79
 
80
-	/**
81
-	 * Generates the tabbed navigation for the settings page.
82
-	 *
83
-	 * @param string $cmb_id
84
-	 * @param string $object_id
85
-	 * @param string $object_type
86
-	 * @param object $cmb2_obj
87
-	 * @return void
88
-	 */
89
-	public function generate_navigation( $cmb_id, $object_id, $object_type, $cmb2_obj ) {
90
-		if ( 'lsx_health_plan_settings' === $cmb_id && 'lsx_health_plan_options' === $object_id && 'options-page' === $object_type ) {
91
-			$this->navigation      = array();
92
-			$this->is_options_page = true;
93
-			if ( isset( $cmb2_obj->meta_box['fields'] ) && ! empty( $cmb2_obj->meta_box['fields'] ) ) {
94
-				foreach ( $cmb2_obj->meta_box['fields'] as $field_index => $field ) {
95
-					if ( 'title' === $field['type'] ) {
96
-						$this->navigation[ $field_index ] = $field['name'];
97
-					}
98
-				}
99
-			}
100
-			$this->output_navigation();
101
-		}
102
-	}
80
+     /**
81
+      * Generates the tabbed navigation for the settings page.
82
+      *
83
+      * @param string $cmb_id
84
+      * @param string $object_id
85
+      * @param string $object_type
86
+      * @param object $cmb2_obj
87
+      * @return void
88
+      */
89
+     public function generate_navigation( $cmb_id, $object_id, $object_type, $cmb2_obj ) {
90
+          if ( 'lsx_health_plan_settings' === $cmb_id && 'lsx_health_plan_options' === $object_id && 'options-page' === $object_type ) {
91
+               $this->navigation      = array();
92
+               $this->is_options_page = true;
93
+               if ( isset( $cmb2_obj->meta_box['fields'] ) && ! empty( $cmb2_obj->meta_box['fields'] ) ) {
94
+                    foreach ( $cmb2_obj->meta_box['fields'] as $field_index => $field ) {
95
+                         if ( 'title' === $field['type'] ) {
96
+                              $this->navigation[ $field_index ] = $field['name'];
97
+                         }
98
+                    }
99
+               }
100
+               $this->output_navigation();
101
+          }
102
+     }
103 103
 
104
-	/**
105
-	 * Outputs the WP style navigation for the Settings page.
106
-	 *
107
-	 * @return void
108
-	 */
109
-	public function output_navigation() {
110
-		if ( ! empty( $this->navigation ) ) {
111
-			?>
104
+     /**
105
+      * Outputs the WP style navigation for the Settings page.
106
+      *
107
+      * @return void
108
+      */
109
+     public function output_navigation() {
110
+          if ( ! empty( $this->navigation ) ) {
111
+               ?>
112 112
 			<div class="wp-filter hide-if-no-js">
113 113
 				<ul class="filter-links">
114 114
 					<?php
115
-					$first_tab    = true;
116
-					$total        = count( $this->navigation );
117
-					$count        = 0;
118
-					$separator    = ' |';
119
-					$selected_tab = '';
120
-					if ( isset( $_GET['cmb_tab'] ) && '' !== $_GET['cmb_tab'] ) {
121
-						$selected_tab  = sanitize_text_field( $_GET['cmb_tab'] );
122
-						$selected_tab  = 'settings_' . $selected_tab;
123
-					}
124
-					foreach ( $this->navigation as $key => $label ) {
125
-						$count++;
126
-						$current_css = '';
127
-						if ( ( true === $first_tab && '' === $selected_tab ) || $key === $selected_tab ) {
128
-							$first_tab   = false;
129
-							$current_css = 'current';
130
-						}
131
-						if ( $count === $total ) {
132
-							$separator = '';
133
-						}
134
-						?>
115
+                         $first_tab    = true;
116
+                         $total        = count( $this->navigation );
117
+                         $count        = 0;
118
+                         $separator    = ' |';
119
+                         $selected_tab = '';
120
+                         if ( isset( $_GET['cmb_tab'] ) && '' !== $_GET['cmb_tab'] ) {
121
+                              $selected_tab  = sanitize_text_field( $_GET['cmb_tab'] );
122
+                              $selected_tab  = 'settings_' . $selected_tab;
123
+                         }
124
+                         foreach ( $this->navigation as $key => $label ) {
125
+                              $count++;
126
+                              $current_css = '';
127
+                              if ( ( true === $first_tab && '' === $selected_tab ) || $key === $selected_tab ) {
128
+                                   $first_tab   = false;
129
+                                   $current_css = 'current';
130
+                              }
131
+                              if ( $count === $total ) {
132
+                                   $separator = '';
133
+                              }
134
+                              ?>
135 135
 							<li><a href="#" class="<?php echo esc_attr( $current_css ); ?>" data-sort="<?php echo esc_attr( $key ); ?>_tab"><?php echo esc_attr( $label ); ?></a><?php echo esc_attr( $separator ); ?></li>
136 136
 						<?php
137
-					}
138
-					?>
137
+                         }
138
+                         ?>
139 139
 				</ul>
140 140
 			</div>
141 141
 			<?php
142
-		}
143
-	}
142
+          }
143
+     }
144 144
 
145
-	/**
146
-	 * Outputs the opening tab div.
147
-	 *
148
-	 * @param object $field CMB2_Field();
149
-	 * @return void
150
-	 */
151
-	public function output_tab_open_div( $field ) {
152
-		if ( true === $this->is_options_page && isset( $field->args['type'] ) && 'title' === $field->args['type'] ) {
153
-			?>
145
+     /**
146
+      * Outputs the opening tab div.
147
+      *
148
+      * @param object $field CMB2_Field();
149
+      * @return void
150
+      */
151
+     public function output_tab_open_div( $field ) {
152
+          if ( true === $this->is_options_page && isset( $field->args['type'] ) && 'title' === $field->args['type'] ) {
153
+               ?>
154 154
 			<div id="<?php echo esc_attr( $field->args['id'] ); ?>_tab" class="tab tab-nav hidden">
155 155
 			<?php
156
-		}
157
-	}
156
+          }
157
+     }
158 158
 
159
-	/**
160
-	 * Outputs the opening closing div.
161
-	 *
162
-	 * @param object $field CMB2_Field();
163
-	 * @return void
164
-	 */
165
-	public function output_tab_closing_div( $field ) {
166
-		if ( true === $this->is_options_page && isset( $field->args['type'] ) && 'tab_closing' === $field->args['type'] ) {
167
-			?>
159
+     /**
160
+      * Outputs the opening closing div.
161
+      *
162
+      * @param object $field CMB2_Field();
163
+      * @return void
164
+      */
165
+     public function output_tab_closing_div( $field ) {
166
+          if ( true === $this->is_options_page && isset( $field->args['type'] ) && 'tab_closing' === $field->args['type'] ) {
167
+               ?>
168 168
 			</div>
169 169
 			<?php
170
-		}
171
-	}
170
+          }
171
+     }
172 172
 
173
-	public function cmb2_render_callback_for_tab_closing( $field, $escaped_value, $object_id, $object_type, $field_type_object ) {
174
-		return;
175
-	}
173
+     public function cmb2_render_callback_for_tab_closing( $field, $escaped_value, $object_id, $object_type, $field_type_object ) {
174
+          return;
175
+     }
176 176
 
177
-	public function cmb2_sanitize_tab_closing_callback( $override_value, $value ) {
178
-		return '';
179
-	}
177
+     public function cmb2_sanitize_tab_closing_callback( $override_value, $value ) {
178
+          return '';
179
+     }
180 180
 
181
-	/**
182
-	 * Outputs the Script for the tabbed navigation.
183
-	 *
184
-	 * @param string $cmb_id
185
-	 * @param string $object_id
186
-	 * @param string $object_type
187
-	 * @param object $cmb2_obj
188
-	 * @return void
189
-	 */
190
-	public function navigation_js( $cmb_id, $object_id, $object_type, $cmb2_obj ) {
191
-		if ( 'lsx_health_plan_settings' === $cmb_id && 'lsx_health_plan_options' === $object_id && 'options-page' === $object_type ) {
192
-			?>
181
+     /**
182
+      * Outputs the Script for the tabbed navigation.
183
+      *
184
+      * @param string $cmb_id
185
+      * @param string $object_id
186
+      * @param string $object_type
187
+      * @param object $cmb2_obj
188
+      * @return void
189
+      */
190
+     public function navigation_js( $cmb_id, $object_id, $object_type, $cmb2_obj ) {
191
+          if ( 'lsx_health_plan_settings' === $cmb_id && 'lsx_health_plan_options' === $object_id && 'options-page' === $object_type ) {
192
+               ?>
193 193
 			<script>
194 194
 				var LSX_HP_CMB2 = Object.create( null );
195 195
 
@@ -261,25 +261,25 @@  discard block
 block discarded – undo
261 261
 				} )( jQuery, window, document );
262 262
 			</script>
263 263
 			<?php
264
-		}
265
-	}
264
+          }
265
+     }
266 266
 
267
-	/**
268
-	 * This will add the tab selection to the url.
269
-	 *
270
-	 * @param string $url
271
-	 * @return void
272
-	 */
273
-	public function add_tab_argument( $url ) {
274
-		if ( isset( $_POST['cmb_tab'] ) && '' !== $_POST['cmb_tab'] ) { // @codingStandardsIgnoreLine
275
-			$tab_selection = sanitize_text_field( $_POST['cmb_tab'] ); // @codingStandardsIgnoreLine
276
-			$tab_selection = str_replace( array( 'settings_', '_tab' ), '', $tab_selection ); // @codingStandardsIgnoreLine
277
-			if ( 'single' !== $tab_selection ) {
278
-				$url = add_query_arg( 'cmb_tab', $tab_selection, $url );
279
-			} else {
280
-				$url = remove_query_arg( 'cmb_tab', $url );
281
-			}
282
-		}
283
-		return $url;
284
-	}
267
+     /**
268
+      * This will add the tab selection to the url.
269
+      *
270
+      * @param string $url
271
+      * @return void
272
+      */
273
+     public function add_tab_argument( $url ) {
274
+          if ( isset( $_POST['cmb_tab'] ) && '' !== $_POST['cmb_tab'] ) { // @codingStandardsIgnoreLine
275
+               $tab_selection = sanitize_text_field( $_POST['cmb_tab'] ); // @codingStandardsIgnoreLine
276
+               $tab_selection = str_replace( array( 'settings_', '_tab' ), '', $tab_selection ); // @codingStandardsIgnoreLine
277
+               if ( 'single' !== $tab_selection ) {
278
+                    $url = add_query_arg( 'cmb_tab', $tab_selection, $url );
279
+               } else {
280
+                    $url = remove_query_arg( 'cmb_tab', $url );
281
+               }
282
+          }
283
+          return $url;
284
+     }
285 285
 }
Please login to merge, or discard this patch.
classes/admin/class-settings.php 1 patch
Indentation   +591 added lines, -591 removed lines patch added patch discarded remove patch
@@ -12,595 +12,595 @@
 block discarded – undo
12 12
  */
13 13
 class Settings {
14 14
 
15
-	/**
16
-	 * Holds class instance
17
-	 *
18
-	 * @since 1.0.0
19
-	 *
20
-	 * @var      object \lsx_health_plan\classes\admin\Settings()
21
-	 */
22
-	protected static $instance = null;
23
-
24
-	/**
25
-	 * Option key, and option page slug
26
-	 *
27
-	 * @var string
28
-	 */
29
-	protected $screen_id = 'lsx_health_plan_settings';
30
-
31
-	/**
32
-	 * An array of the post types for the Global Downloads field.
33
-	 *
34
-	 * @var array
35
-	 */
36
-	public $download_types = array();
37
-
38
-	/**
39
-	 * An array of the post types for the Global Defaults field.
40
-	 *
41
-	 * @var array
42
-	 */
43
-	public $default_types = array();
44
-
45
-	/**
46
-	 * An array of the endpoints for the Endpoint Translation field.
47
-	 *
48
-	 * @var array
49
-	 */
50
-	public $endpoints = array();
51
-
52
-	/**
53
-	 * Contructor
54
-	 */
55
-	public function __construct() {
56
-		add_action( 'cmb2_admin_init', array( $this, 'register_settings_page' ) );
57
-		add_action( 'lsx_hp_settings_page', array( $this, 'general_settings' ), 1, 1 );
58
-		add_action( 'lsx_hp_settings_page', array( $this, 'global_defaults' ), 3, 1 );
59
-		add_action( 'lsx_hp_settings_page', array( $this, 'global_downloads' ), 5, 1 );
60
-		add_action( 'lsx_hp_settings_page', array( $this, 'stat_disable' ), 6, 1 );
61
-		add_action( 'lsx_hp_settings_page', array( $this, 'endpoint_translations' ), 7, 1 );
62
-		add_action( 'lsx_hp_settings_page', array( $this, 'exercise_translations' ), 7, 1 );
63
-		add_action( 'lsx_hp_settings_page', array( $this, 'post_type_toggles' ), 9, 1 );
64
-	}
65
-
66
-	/**
67
-	 * Return an instance of this class.
68
-	 *
69
-	 * @since 1.0.0
70
-	 *
71
-	 * @return    object \lsx_health_plan\classes\admin\Settings()    A single instance of this class.
72
-	 */
73
-	public static function get_instance() {
74
-		// If the single instance hasn't been set, set it now.
75
-		if ( null === self::$instance ) {
76
-			self::$instance = new self();
77
-		}
78
-		return self::$instance;
79
-	}
80
-
81
-	/**
82
-	 * Sets the variables needed for the fields.
83
-	 *
84
-	 * @return void
85
-	 */
86
-	public function set_vars() {
87
-
88
-		$this->default_types  = array(
89
-			'page' => array(
90
-				'title'       => __( 'Warm Up', 'lsx-health-plan' ),
91
-				'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
92
-				'limit'       => 1,
93
-				'id'          => 'plan_warmup',
94
-			),
95
-		);
96
-		$this->download_types = array(
97
-			'page' => array(
98
-				'title'       => __( 'Warm Up', 'lsx-health-plan' ),
99
-				'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
100
-				'limit'       => 1,
101
-			),
102
-		);
103
-		$this->endpoints      = array(
104
-			'endpoint_warm_up' => array(
105
-				'title'       => __( 'Warm Up Endpoint', 'lsx-health-plan' ),
106
-				'default'     => 'warm-up',
107
-			),
108
-		);
109
-
110
-		if ( post_type_exists( 'meal' ) ) {
111
-			$this->download_types['meal']     = array(
112
-				'title'       => __( 'Meal Plan', 'lsx-health-plan' ),
113
-				'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
114
-			);
115
-			$this->default_types['meal']      = array(
116
-				'title'       => __( 'Meal Plan', 'lsx-health-plan' ),
117
-				'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
118
-				'id'          => 'connected_meals',
119
-			);
120
-			$this->endpoints['endpoint_meal'] = array(
121
-				'title'   => __( 'Meal Endpoint', 'lsx-health-plan' ),
122
-				'default' => 'meal',
123
-			);
124
-		}
125
-		if ( post_type_exists( 'recipe' ) ) {
126
-			$this->download_types['recipe'] = array(
127
-				'title'       => __( 'Recipe', 'lsx-health-plan' ),
128
-				'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
129
-			);
130
-			$this->default_types['recipe'] = array(
131
-				'title'       => __( 'Recipe', 'lsx-health-plan' ),
132
-				'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
133
-				'id'          => 'connected_recipes',
134
-			);
135
-			$this->endpoints['endpoint_recipe'] = array(
136
-				'title'   => __( 'Recipes Endpoint', 'lsx-health-plan' ),
137
-				'default' => 'recipe',
138
-			);
139
-		}
140
-		if ( post_type_exists( 'workout' ) ) {
141
-			$this->download_types['workout'] = array(
142
-				'title'       => __( 'Workout', 'lsx-health-plan' ),
143
-				'description' => __( 'Set a default workout routine PDF.', 'lsx-health-plan' ),
144
-			);
145
-			$this->default_types['workout'] = array(
146
-				'title'       => __( 'Workout', 'lsx-health-plan' ),
147
-				'description' => __( 'Set a default workout routine.', 'lsx-health-plan' ),
148
-				'id'          => 'connected_workouts',
149
-			);
150
-			$this->endpoints['endpoint_workout_archive'] = array(
151
-				'title'   => __( 'Workouts Archive Endpoint', 'lsx-health-plan' ),
152
-				'default' => '',
153
-			);
154
-			$this->endpoints['endpoint_workout'] = array(
155
-				'title'   => __( 'Single Workout Endpoint', 'lsx-health-plan' ),
156
-				'default' => 'workout',
157
-			);
158
-		}
159
-
160
-		$this->endpoints['login_slug'] = array(
161
-			'title'   => __( 'Login Slug', 'lsx-health-plan' ),
162
-			'default' => 'login',
163
-		);
164
-		$this->endpoints['my_plan_slug'] = array(
165
-			'title'   => __( 'My Plan Slug', 'lsx-health-plan' ),
166
-			'default' => 'my-plan',
167
-		);
168
-		$this->endpoints['plan_single_slug'] = array(
169
-			'title'   => __( 'Single Plan Slug', 'lsx-health-plan' ),
170
-			'default' => 'plan',
171
-		);
172
-		$this->endpoints['endpoint_plan_archive'] = array(
173
-			'title'   => __( 'Plans Archive Endpoint', 'lsx-health-plan' ),
174
-			'default' => 'plans',
175
-		);
176
-
177
-		if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
178
-			$this->endpoints['exercise'] = array(
179
-				'exercise_single' => array(
180
-					'title'   => __( 'Single Exercise Slug', 'lsx-health-plan' ),
181
-					'default' => 'exercise',
182
-				),
183
-				'exercise_archive' => array(
184
-					'title'   => __( 'Archive Exercise Slug', 'lsx-health-plan' ),
185
-					'default' => 'exercises',
186
-				),
187
-				'exercise_type' => array(
188
-					'title'   => __( 'Exercise Type Slug', 'lsx-health-plan' ),
189
-					'default' => 'exercise-type',
190
-				),
191
-				'exercise_equipment' => array(
192
-					'title'   => __( 'Equipment Slug', 'lsx-health-plan' ),
193
-					'default' => 'equipment',
194
-				),
195
-				'exercise_musclegroup' => array(
196
-					'title'   => __( 'Muscle Group Slug', 'lsx-health-plan' ),
197
-					'default' => 'muscle-group',
198
-				),
199
-			);
200
-		}
201
-	}
202
-
203
-	/**
204
-	 * Hook in and register a submenu options page for the Page post-type menu.
205
-	 */
206
-	public function register_settings_page() {
207
-		$this->set_vars();
208
-		$cmb = new_cmb2_box(
209
-			array(
210
-				'id'           => $this->screen_id,
211
-				'title'        => esc_html__( 'Settings', 'lsx-health-plan' ),
212
-				'object_types' => array( 'options-page' ),
213
-				'option_key'   => 'lsx_health_plan_options', // The option key and admin menu page slug.
214
-				'parent_slug'  => 'edit.php?post_type=plan', // Make options page a submenu item of the themes menu.
215
-				'capability'   => 'manage_options', // Cap required to view options-page.
216
-			)
217
-		);
218
-		do_action( 'lsx_hp_settings_page', $cmb );
219
-	}
220
-
221
-	/**
222
-	 * Registers the general settings.
223
-	 *
224
-	 * @param object $cmb new_cmb2_box().
225
-	 * @return void
226
-	 */
227
-	public function general_settings( $cmb ) {
228
-		$cmb->add_field(
229
-			array(
230
-				'id'      => 'settings_general_title',
231
-				'type'    => 'title',
232
-				'name'    => __( 'General', 'lsx-health-plan' ),
233
-				'default' => __( 'General', 'lsx-health-plan' ),
234
-			)
235
-		);
236
-		$cmb->add_field(
237
-			array(
238
-				'name'       => __( 'Membership Product', 'lsx-health-plan' ),
239
-				'id'         => 'membership_product',
240
-				'type'       => 'post_search_ajax',
241
-				'limit'      => 1,
242
-				'sortable'   => false,
243
-				'query_args' => array(
244
-					'post_type'      => array( 'product' ),
245
-					'post_status'    => array( 'publish' ),
246
-					'posts_per_page' => -1,
247
-				),
248
-			)
249
-		);
250
-
251
-		$cmb->add_field(
252
-			array(
253
-				'name'    => __( 'Your Warm-up Intro', 'lsx-health-plan' ),
254
-				'id'      => 'warmup_intro',
255
-				'type'    => 'textarea',
256
-				'value'   => '',
257
-				'default' => __( "Don't forget your warm-up! It's a vital part of your daily workout routine.", 'lsx-health-plan' ),
258
-			)
259
-		);
260
-		if ( post_type_exists( 'workout' ) ) {
261
-			$cmb->add_field(
262
-				array(
263
-					'name'    => __( 'Your Workout Intro', 'lsx-health-plan' ),
264
-					'id'      => 'workout_intro',
265
-					'type'    => 'textarea',
266
-					'value'   => '',
267
-					'default' => __( "Let's do this! Smash your daily workout and reach your fitness goals.", 'lsx-health-plan' ),
268
-				)
269
-			);
270
-		}
271
-		if ( post_type_exists( 'meal' ) ) {
272
-			$cmb->add_field(
273
-				array(
274
-					'name'    => __( 'Your Meal Plan Intro', 'lsx-health-plan' ),
275
-					'id'      => 'meal_plan_intro',
276
-					'type'    => 'textarea',
277
-					'value'   => '',
278
-					'default' => __( 'Get the right mix of nutrients to keep muscles strong & healthy.', 'lsx-health-plan' ),
279
-				)
280
-			);
281
-		}
282
-		if ( post_type_exists( 'recipe' ) ) {
283
-			$cmb->add_field(
284
-				array(
285
-					'name'    => __( 'Recipes Intro', 'lsx-health-plan' ),
286
-					'id'      => 'recipes_intro',
287
-					'type'    => 'textarea',
288
-					'value'   => '',
289
-					'default' => __( "Let's get cooking! Delicious and easy to follow recipes.", 'lsx-health-plan' ),
290
-				)
291
-			);
292
-		}
293
-		$cmb->add_field(
294
-			array(
295
-				'id'   => 'settings_general_closing',
296
-				'type' => 'tab_closing',
297
-			)
298
-		);
299
-	}
300
-
301
-	/**
302
-	 * Registers the global default settings.
303
-	 *
304
-	 * @param object $cmb new_cmb2_box().
305
-	 * @return void
306
-	 */
307
-	public function global_defaults( $cmb ) {
308
-		$cmb->add_field(
309
-			array(
310
-				'id'      => 'global_defaults_title',
311
-				'type'    => 'title',
312
-				'name'    => __( 'Global Defaults', 'lsx-health-plan' ),
313
-				'default' => __( 'Global Defaults', 'lsx-health-plan' ),
314
-			)
315
-		);
316
-
317
-		foreach ( $this->default_types as $type => $default_type ) {
318
-			$limit    = 5;
319
-			$sortable = false;
320
-			if ( isset( $default_type['limit'] ) ) {
321
-				$limit    = $default_type['limit'];
322
-				$sortable = true;
323
-			}
324
-
325
-			if ( 'page' === $type && false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
326
-				$type = array( 'page', 'workout' );
327
-			}
328
-
329
-			$cmb->add_field(
330
-				array(
331
-					'name'       => $default_type['title'],
332
-					'desc'       => $default_type['description'],
333
-					'id'         => $default_type['id'],
334
-					'type'       => 'post_search_ajax',
335
-					'limit'      => $limit,
336
-					'sortable'   => $sortable,
337
-					'query_args' => array(
338
-						'post_type'      => $type,
339
-						'post_status'    => array( 'publish' ),
340
-						'posts_per_page' => -1,
341
-					),
342
-				)
343
-			);
344
-		}
345
-
346
-		$cmb->add_field(
347
-			array(
348
-				'id'   => 'settings_global_defaults_closing',
349
-				'type' => 'tab_closing',
350
-			)
351
-		);
352
-	}
353
-
354
-	/**
355
-	 * Registers the global dowloads settings
356
-	 *
357
-	 * @param object $cmb new_cmb2_box().
358
-	 * @return void
359
-	 */
360
-	public function global_downloads( $cmb ) {
361
-		$cmb->add_field(
362
-			array(
363
-				'id'      => 'global_downloads_title',
364
-				'type'    => 'title',
365
-				'name'    => __( 'Global Downloads', 'lsx-health-plan' ),
366
-				'default' => __( 'Global Downloads', 'lsx-health-plan' ),
367
-			)
368
-		);
369
-
370
-		foreach ( $this->download_types as $type => $download_type ) {
371
-			$limit    = 5;
372
-			$sortable = false;
373
-			if ( isset( $download_type['limit'] ) ) {
374
-				$limit    = $download_type['limit'];
375
-				$sortable = true;
376
-			}
377
-
378
-			$cmb->add_field(
379
-				array(
380
-					'name'       => $download_type['title'],
381
-					'id'         => 'download_' . $type,
382
-					'type'       => 'post_search_ajax',
383
-					'limit'      => $limit,
384
-					'sortable'   => $sortable,
385
-					'query_args' => array(
386
-						'post_type'      => array( 'dlm_download' ),
387
-						'post_status'    => array( 'publish' ),
388
-						'posts_per_page' => -1,
389
-					),
390
-				)
391
-			);
392
-		}
393
-		$cmb->add_field(
394
-			array(
395
-				'id'   => 'settings_global_downloads_closing',
396
-				'type' => 'tab_closing',
397
-			)
398
-		);
399
-	}
400
-
401
-	/**
402
-	 * Registers the endpoint translation settings.
403
-	 *
404
-	 * @param object $cmb new_cmb2_box().
405
-	 * @return void
406
-	 */
407
-	public function endpoint_translations( $cmb ) {
408
-		$cmb->add_field(
409
-			array(
410
-				'id'          => 'endpoints_title',
411
-				'type'        => 'title',
412
-				'name'        => __( 'Set Endpoint Translations', 'lsx-health-plan' ),
413
-				'default'     => __( 'Set Endpoint Translations', 'lsx-health-plan' ),
414
-				'description' => __( 'You need to resave your permalinks after changing the endpoint settings.', 'lsx-health-plan' ),
415
-			)
416
-		);
417
-		foreach ( $this->endpoints as $slug => $endpoint_vars ) {
418
-			if ( 'exercise' === $slug ) {
419
-				continue;
420
-			}
421
-
422
-			$cmb->add_field(
423
-				array(
424
-					'name'    => $endpoint_vars['title'],
425
-					'id'      => $slug,
426
-					'type'    => 'input',
427
-					'value'   => '',
428
-					'default' => $endpoint_vars['default'],
429
-				)
430
-			);
431
-		}
432
-		$cmb->add_field(
433
-			array(
434
-				'id'   => 'settings_endpoints_closing',
435
-				'type' => 'tab_closing',
436
-			)
437
-		);
438
-	}
439
-
440
-	/**
441
-	 * Registers the endpoint translation settings.
442
-	 *
443
-	 * @param object $cmb new_cmb2_box().
444
-	 * @return void
445
-	 */
446
-	public function exercise_translations( $cmb ) {
447
-		if ( isset( $this->endpoints['exercise'] ) && '' !== $this->endpoints['exercise'] && ! empty( $this->endpoints['exercise'] ) ) {
448
-			$cmb->add_field(
449
-				array(
450
-					'id'          => 'exercise_endpoints_title',
451
-					'type'        => 'title',
452
-					'name'        => __( 'Set Exercise Translations', 'lsx-health-plan' ),
453
-					'default'     => __( 'Set Exercise Translations', 'lsx-health-plan' ),
454
-					'description' => __( 'You need to resave your permalinks after changing the endpoint settings.', 'lsx-health-plan' ),
455
-				)
456
-			);
457
-
458
-			foreach ( $this->endpoints['exercise'] as $slug => $endpoint_vars ) {
459
-				$cmb->add_field(
460
-					array(
461
-						'name'    => $endpoint_vars['title'],
462
-						'id'      => 'endpoint_' . $slug,
463
-						'type'    => 'input',
464
-						'value'   => '',
465
-						'default' => $endpoint_vars['default'],
466
-					)
467
-				);
468
-			}
469
-			$cmb->add_field(
470
-				array(
471
-					'id'   => 'settings_exercise_closing',
472
-					'type' => 'tab_closing',
473
-				)
474
-			);
475
-		}
476
-	}
477
-
478
-	/**
479
-	 * Registers the post type toggle settings
480
-	 *
481
-	 * @param object $cmb new_cmb2_box().
482
-	 * @return void
483
-	 */
484
-	public function post_type_toggles( $cmb ) {
485
-		$post_types = apply_filters( 'lsx_health_plan_post_types', isset( $this->post_types ) );
486
-
487
-		$cmb->add_field(
488
-			array(
489
-				'id'          => 'post_type_toggles_title',
490
-				'type'        => 'title',
491
-				'name'        => __( 'Disable Post Types', 'lsx-health-plan' ),
492
-				'default'     => __( 'Disable Post Types', 'lsx-health-plan' ),
493
-				'description' => __( 'Disable post types if you are wanting a minimal site.', 'lsx-health-plan' ),
494
-			)
495
-		);
496
-
497
-		foreach ( $post_types as $post_type ) {
498
-			if ( 'plan' === $post_type || 'exercise' === $post_type || ( 'video' === $post_type && false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) ) {
499
-				continue;
500
-			}
501
-
502
-			$cmb->add_field(
503
-				array(
504
-					'name'    => ucwords( $post_type ),
505
-					'id'      => $post_type . '_disabled',
506
-					'type'    => 'checkbox',
507
-					'value'   => 1,
508
-					'default' => 0,
509
-				)
510
-			);
511
-		}
512
-
513
-		$cmb->add_field(
514
-			array(
515
-				'id'   => 'settings_post_type_toggles_closing',
516
-				'type' => 'tab_closing',
517
-			)
518
-		);
519
-
520
-		$cmb->add_field(
521
-			array(
522
-				'id'          => 'post_type_toggles_enable_title',
523
-				'type'        => 'title',
524
-				'name'        => __( 'Enable Post Types', 'lsx-health-plan' ),
525
-				'default'     => __( 'Enable Post Types', 'lsx-health-plan' ),
526
-				'description' => __( 'Enable new functionailty like the "exercise" post type.', 'lsx-health-plan' ),
527
-			)
528
-		);
529
-		$cmb->add_field(
530
-			array(
531
-				'name'        => __( 'Exercises', 'lsx-health-plan' ),
532
-				'id'          => 'exercise_enabled',
533
-				'type'        => 'checkbox',
534
-				'value'       => 1,
535
-				'default'     => 0,
536
-				'description' => __( 'Enabling the exercise post type will automatically replace the Video post type.', 'lsx-health-plan' ),
537
-			)
538
-		);
539
-		$cmb->add_field(
540
-			array(
541
-				'id'   => 'settings_post_type_toggles_enable_closing',
542
-				'type' => 'tab_closing',
543
-			)
544
-		);
545
-	}
546
-	/**
547
-	 * Registers the Profile Stat Toggle settings
548
-	 *
549
-	 * @param object $cmb new_cmb2_box().
550
-	 * @return void
551
-	 */
552
-
553
-	public function stat_disable( $cmb ) {
554
-		$cmb->add_field(
555
-			array(
556
-				'id'      => 'stat_disable_title',
557
-				'type'    => 'title',
558
-				'name'    => __( 'Disable Profile Stats', 'lsx-health-plan' ),
559
-				'default' => __( 'Disable Profile Stats', 'lsx-health-plan' ),
560
-			)
561
-		);
562
-		$cmb->add_field(
563
-			array(
564
-				'name'    => __( 'Disable All Stats', 'lsx-health-plan' ),
565
-				'desc'    => 'Disable All Stats',
566
-				'id'      => 'disable_all_stats',
567
-				'type'    => 'checkbox',
568
-				'value'   => 1,
569
-				'default' => 0,
570
-			)
571
-		);
572
-		$cmb->add_field(
573
-			array(
574
-				'name'    => __( 'Disable Weight', 'lsx-health-plan' ),
575
-				'id'      => 'disable_weight_checkbox',
576
-				'type'    => 'checkbox',
577
-				'value'   => 1,
578
-				'default' => 0,
579
-			)
580
-		);
581
-		$cmb->add_field(
582
-			array(
583
-				'name'    => __( 'Disable Waist', 'lsx-health-plan' ),
584
-				'id'      => 'disable_waist_checkbox',
585
-				'type'    => 'checkbox',
586
-				'value'   => 1,
587
-				'default' => 0,
588
-			)
589
-		);
590
-		$cmb->add_field(
591
-			array(
592
-				'name'    => __( 'Disable Fitness', 'lsx-health-plan' ),
593
-				'id'      => 'disable_fitness_checkbox',
594
-				'type'    => 'checkbox',
595
-				'value'   => 1,
596
-				'default' => 0,
597
-			)
598
-		);
599
-		$cmb->add_field(
600
-			array(
601
-				'id'   => 'settings_stat_disable_closing',
602
-				'type' => 'tab_closing',
603
-			)
604
-		);
605
-	}
15
+     /**
16
+      * Holds class instance
17
+      *
18
+      * @since 1.0.0
19
+      *
20
+      * @var      object \lsx_health_plan\classes\admin\Settings()
21
+      */
22
+     protected static $instance = null;
23
+
24
+     /**
25
+      * Option key, and option page slug
26
+      *
27
+      * @var string
28
+      */
29
+     protected $screen_id = 'lsx_health_plan_settings';
30
+
31
+     /**
32
+      * An array of the post types for the Global Downloads field.
33
+      *
34
+      * @var array
35
+      */
36
+     public $download_types = array();
37
+
38
+     /**
39
+      * An array of the post types for the Global Defaults field.
40
+      *
41
+      * @var array
42
+      */
43
+     public $default_types = array();
44
+
45
+     /**
46
+      * An array of the endpoints for the Endpoint Translation field.
47
+      *
48
+      * @var array
49
+      */
50
+     public $endpoints = array();
51
+
52
+     /**
53
+      * Contructor
54
+      */
55
+     public function __construct() {
56
+          add_action( 'cmb2_admin_init', array( $this, 'register_settings_page' ) );
57
+          add_action( 'lsx_hp_settings_page', array( $this, 'general_settings' ), 1, 1 );
58
+          add_action( 'lsx_hp_settings_page', array( $this, 'global_defaults' ), 3, 1 );
59
+          add_action( 'lsx_hp_settings_page', array( $this, 'global_downloads' ), 5, 1 );
60
+          add_action( 'lsx_hp_settings_page', array( $this, 'stat_disable' ), 6, 1 );
61
+          add_action( 'lsx_hp_settings_page', array( $this, 'endpoint_translations' ), 7, 1 );
62
+          add_action( 'lsx_hp_settings_page', array( $this, 'exercise_translations' ), 7, 1 );
63
+          add_action( 'lsx_hp_settings_page', array( $this, 'post_type_toggles' ), 9, 1 );
64
+     }
65
+
66
+     /**
67
+      * Return an instance of this class.
68
+      *
69
+      * @since 1.0.0
70
+      *
71
+      * @return    object \lsx_health_plan\classes\admin\Settings()    A single instance of this class.
72
+      */
73
+     public static function get_instance() {
74
+          // If the single instance hasn't been set, set it now.
75
+          if ( null === self::$instance ) {
76
+               self::$instance = new self();
77
+          }
78
+          return self::$instance;
79
+     }
80
+
81
+     /**
82
+      * Sets the variables needed for the fields.
83
+      *
84
+      * @return void
85
+      */
86
+     public function set_vars() {
87
+
88
+          $this->default_types  = array(
89
+               'page' => array(
90
+                    'title'       => __( 'Warm Up', 'lsx-health-plan' ),
91
+                    'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
92
+                    'limit'       => 1,
93
+                    'id'          => 'plan_warmup',
94
+               ),
95
+          );
96
+          $this->download_types = array(
97
+               'page' => array(
98
+                    'title'       => __( 'Warm Up', 'lsx-health-plan' ),
99
+                    'description' => __( 'Set a default warm up routine.', 'lsx-health-plan' ),
100
+                    'limit'       => 1,
101
+               ),
102
+          );
103
+          $this->endpoints      = array(
104
+               'endpoint_warm_up' => array(
105
+                    'title'       => __( 'Warm Up Endpoint', 'lsx-health-plan' ),
106
+                    'default'     => 'warm-up',
107
+               ),
108
+          );
109
+
110
+          if ( post_type_exists( 'meal' ) ) {
111
+               $this->download_types['meal']     = array(
112
+                    'title'       => __( 'Meal Plan', 'lsx-health-plan' ),
113
+                    'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
114
+               );
115
+               $this->default_types['meal']      = array(
116
+                    'title'       => __( 'Meal Plan', 'lsx-health-plan' ),
117
+                    'description' => __( 'Set a default meal plan.', 'lsx-health-plan' ),
118
+                    'id'          => 'connected_meals',
119
+               );
120
+               $this->endpoints['endpoint_meal'] = array(
121
+                    'title'   => __( 'Meal Endpoint', 'lsx-health-plan' ),
122
+                    'default' => 'meal',
123
+               );
124
+          }
125
+          if ( post_type_exists( 'recipe' ) ) {
126
+               $this->download_types['recipe'] = array(
127
+                    'title'       => __( 'Recipe', 'lsx-health-plan' ),
128
+                    'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
129
+               );
130
+               $this->default_types['recipe'] = array(
131
+                    'title'       => __( 'Recipe', 'lsx-health-plan' ),
132
+                    'description' => __( 'Set a default recipe.', 'lsx-health-plan' ),
133
+                    'id'          => 'connected_recipes',
134
+               );
135
+               $this->endpoints['endpoint_recipe'] = array(
136
+                    'title'   => __( 'Recipes Endpoint', 'lsx-health-plan' ),
137
+                    'default' => 'recipe',
138
+               );
139
+          }
140
+          if ( post_type_exists( 'workout' ) ) {
141
+               $this->download_types['workout'] = array(
142
+                    'title'       => __( 'Workout', 'lsx-health-plan' ),
143
+                    'description' => __( 'Set a default workout routine PDF.', 'lsx-health-plan' ),
144
+               );
145
+               $this->default_types['workout'] = array(
146
+                    'title'       => __( 'Workout', 'lsx-health-plan' ),
147
+                    'description' => __( 'Set a default workout routine.', 'lsx-health-plan' ),
148
+                    'id'          => 'connected_workouts',
149
+               );
150
+               $this->endpoints['endpoint_workout_archive'] = array(
151
+                    'title'   => __( 'Workouts Archive Endpoint', 'lsx-health-plan' ),
152
+                    'default' => '',
153
+               );
154
+               $this->endpoints['endpoint_workout'] = array(
155
+                    'title'   => __( 'Single Workout Endpoint', 'lsx-health-plan' ),
156
+                    'default' => 'workout',
157
+               );
158
+          }
159
+
160
+          $this->endpoints['login_slug'] = array(
161
+               'title'   => __( 'Login Slug', 'lsx-health-plan' ),
162
+               'default' => 'login',
163
+          );
164
+          $this->endpoints['my_plan_slug'] = array(
165
+               'title'   => __( 'My Plan Slug', 'lsx-health-plan' ),
166
+               'default' => 'my-plan',
167
+          );
168
+          $this->endpoints['plan_single_slug'] = array(
169
+               'title'   => __( 'Single Plan Slug', 'lsx-health-plan' ),
170
+               'default' => 'plan',
171
+          );
172
+          $this->endpoints['endpoint_plan_archive'] = array(
173
+               'title'   => __( 'Plans Archive Endpoint', 'lsx-health-plan' ),
174
+               'default' => 'plans',
175
+          );
176
+
177
+          if ( false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
178
+               $this->endpoints['exercise'] = array(
179
+                    'exercise_single' => array(
180
+                         'title'   => __( 'Single Exercise Slug', 'lsx-health-plan' ),
181
+                         'default' => 'exercise',
182
+                    ),
183
+                    'exercise_archive' => array(
184
+                         'title'   => __( 'Archive Exercise Slug', 'lsx-health-plan' ),
185
+                         'default' => 'exercises',
186
+                    ),
187
+                    'exercise_type' => array(
188
+                         'title'   => __( 'Exercise Type Slug', 'lsx-health-plan' ),
189
+                         'default' => 'exercise-type',
190
+                    ),
191
+                    'exercise_equipment' => array(
192
+                         'title'   => __( 'Equipment Slug', 'lsx-health-plan' ),
193
+                         'default' => 'equipment',
194
+                    ),
195
+                    'exercise_musclegroup' => array(
196
+                         'title'   => __( 'Muscle Group Slug', 'lsx-health-plan' ),
197
+                         'default' => 'muscle-group',
198
+                    ),
199
+               );
200
+          }
201
+     }
202
+
203
+     /**
204
+      * Hook in and register a submenu options page for the Page post-type menu.
205
+      */
206
+     public function register_settings_page() {
207
+          $this->set_vars();
208
+          $cmb = new_cmb2_box(
209
+               array(
210
+                    'id'           => $this->screen_id,
211
+                    'title'        => esc_html__( 'Settings', 'lsx-health-plan' ),
212
+                    'object_types' => array( 'options-page' ),
213
+                    'option_key'   => 'lsx_health_plan_options', // The option key and admin menu page slug.
214
+                    'parent_slug'  => 'edit.php?post_type=plan', // Make options page a submenu item of the themes menu.
215
+                    'capability'   => 'manage_options', // Cap required to view options-page.
216
+               )
217
+          );
218
+          do_action( 'lsx_hp_settings_page', $cmb );
219
+     }
220
+
221
+     /**
222
+      * Registers the general settings.
223
+      *
224
+      * @param object $cmb new_cmb2_box().
225
+      * @return void
226
+      */
227
+     public function general_settings( $cmb ) {
228
+          $cmb->add_field(
229
+               array(
230
+                    'id'      => 'settings_general_title',
231
+                    'type'    => 'title',
232
+                    'name'    => __( 'General', 'lsx-health-plan' ),
233
+                    'default' => __( 'General', 'lsx-health-plan' ),
234
+               )
235
+          );
236
+          $cmb->add_field(
237
+               array(
238
+                    'name'       => __( 'Membership Product', 'lsx-health-plan' ),
239
+                    'id'         => 'membership_product',
240
+                    'type'       => 'post_search_ajax',
241
+                    'limit'      => 1,
242
+                    'sortable'   => false,
243
+                    'query_args' => array(
244
+                         'post_type'      => array( 'product' ),
245
+                         'post_status'    => array( 'publish' ),
246
+                         'posts_per_page' => -1,
247
+                    ),
248
+               )
249
+          );
250
+
251
+          $cmb->add_field(
252
+               array(
253
+                    'name'    => __( 'Your Warm-up Intro', 'lsx-health-plan' ),
254
+                    'id'      => 'warmup_intro',
255
+                    'type'    => 'textarea',
256
+                    'value'   => '',
257
+                    'default' => __( "Don't forget your warm-up! It's a vital part of your daily workout routine.", 'lsx-health-plan' ),
258
+               )
259
+          );
260
+          if ( post_type_exists( 'workout' ) ) {
261
+               $cmb->add_field(
262
+                    array(
263
+                         'name'    => __( 'Your Workout Intro', 'lsx-health-plan' ),
264
+                         'id'      => 'workout_intro',
265
+                         'type'    => 'textarea',
266
+                         'value'   => '',
267
+                         'default' => __( "Let's do this! Smash your daily workout and reach your fitness goals.", 'lsx-health-plan' ),
268
+                    )
269
+               );
270
+          }
271
+          if ( post_type_exists( 'meal' ) ) {
272
+               $cmb->add_field(
273
+                    array(
274
+                         'name'    => __( 'Your Meal Plan Intro', 'lsx-health-plan' ),
275
+                         'id'      => 'meal_plan_intro',
276
+                         'type'    => 'textarea',
277
+                         'value'   => '',
278
+                         'default' => __( 'Get the right mix of nutrients to keep muscles strong & healthy.', 'lsx-health-plan' ),
279
+                    )
280
+               );
281
+          }
282
+          if ( post_type_exists( 'recipe' ) ) {
283
+               $cmb->add_field(
284
+                    array(
285
+                         'name'    => __( 'Recipes Intro', 'lsx-health-plan' ),
286
+                         'id'      => 'recipes_intro',
287
+                         'type'    => 'textarea',
288
+                         'value'   => '',
289
+                         'default' => __( "Let's get cooking! Delicious and easy to follow recipes.", 'lsx-health-plan' ),
290
+                    )
291
+               );
292
+          }
293
+          $cmb->add_field(
294
+               array(
295
+                    'id'   => 'settings_general_closing',
296
+                    'type' => 'tab_closing',
297
+               )
298
+          );
299
+     }
300
+
301
+     /**
302
+      * Registers the global default settings.
303
+      *
304
+      * @param object $cmb new_cmb2_box().
305
+      * @return void
306
+      */
307
+     public function global_defaults( $cmb ) {
308
+          $cmb->add_field(
309
+               array(
310
+                    'id'      => 'global_defaults_title',
311
+                    'type'    => 'title',
312
+                    'name'    => __( 'Global Defaults', 'lsx-health-plan' ),
313
+                    'default' => __( 'Global Defaults', 'lsx-health-plan' ),
314
+               )
315
+          );
316
+
317
+          foreach ( $this->default_types as $type => $default_type ) {
318
+               $limit    = 5;
319
+               $sortable = false;
320
+               if ( isset( $default_type['limit'] ) ) {
321
+                    $limit    = $default_type['limit'];
322
+                    $sortable = true;
323
+               }
324
+
325
+               if ( 'page' === $type && false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) {
326
+                    $type = array( 'page', 'workout' );
327
+               }
328
+
329
+               $cmb->add_field(
330
+                    array(
331
+                         'name'       => $default_type['title'],
332
+                         'desc'       => $default_type['description'],
333
+                         'id'         => $default_type['id'],
334
+                         'type'       => 'post_search_ajax',
335
+                         'limit'      => $limit,
336
+                         'sortable'   => $sortable,
337
+                         'query_args' => array(
338
+                              'post_type'      => $type,
339
+                              'post_status'    => array( 'publish' ),
340
+                              'posts_per_page' => -1,
341
+                         ),
342
+                    )
343
+               );
344
+          }
345
+
346
+          $cmb->add_field(
347
+               array(
348
+                    'id'   => 'settings_global_defaults_closing',
349
+                    'type' => 'tab_closing',
350
+               )
351
+          );
352
+     }
353
+
354
+     /**
355
+      * Registers the global dowloads settings
356
+      *
357
+      * @param object $cmb new_cmb2_box().
358
+      * @return void
359
+      */
360
+     public function global_downloads( $cmb ) {
361
+          $cmb->add_field(
362
+               array(
363
+                    'id'      => 'global_downloads_title',
364
+                    'type'    => 'title',
365
+                    'name'    => __( 'Global Downloads', 'lsx-health-plan' ),
366
+                    'default' => __( 'Global Downloads', 'lsx-health-plan' ),
367
+               )
368
+          );
369
+
370
+          foreach ( $this->download_types as $type => $download_type ) {
371
+               $limit    = 5;
372
+               $sortable = false;
373
+               if ( isset( $download_type['limit'] ) ) {
374
+                    $limit    = $download_type['limit'];
375
+                    $sortable = true;
376
+               }
377
+
378
+               $cmb->add_field(
379
+                    array(
380
+                         'name'       => $download_type['title'],
381
+                         'id'         => 'download_' . $type,
382
+                         'type'       => 'post_search_ajax',
383
+                         'limit'      => $limit,
384
+                         'sortable'   => $sortable,
385
+                         'query_args' => array(
386
+                              'post_type'      => array( 'dlm_download' ),
387
+                              'post_status'    => array( 'publish' ),
388
+                              'posts_per_page' => -1,
389
+                         ),
390
+                    )
391
+               );
392
+          }
393
+          $cmb->add_field(
394
+               array(
395
+                    'id'   => 'settings_global_downloads_closing',
396
+                    'type' => 'tab_closing',
397
+               )
398
+          );
399
+     }
400
+
401
+     /**
402
+      * Registers the endpoint translation settings.
403
+      *
404
+      * @param object $cmb new_cmb2_box().
405
+      * @return void
406
+      */
407
+     public function endpoint_translations( $cmb ) {
408
+          $cmb->add_field(
409
+               array(
410
+                    'id'          => 'endpoints_title',
411
+                    'type'        => 'title',
412
+                    'name'        => __( 'Set Endpoint Translations', 'lsx-health-plan' ),
413
+                    'default'     => __( 'Set Endpoint Translations', 'lsx-health-plan' ),
414
+                    'description' => __( 'You need to resave your permalinks after changing the endpoint settings.', 'lsx-health-plan' ),
415
+               )
416
+          );
417
+          foreach ( $this->endpoints as $slug => $endpoint_vars ) {
418
+               if ( 'exercise' === $slug ) {
419
+                    continue;
420
+               }
421
+
422
+               $cmb->add_field(
423
+                    array(
424
+                         'name'    => $endpoint_vars['title'],
425
+                         'id'      => $slug,
426
+                         'type'    => 'input',
427
+                         'value'   => '',
428
+                         'default' => $endpoint_vars['default'],
429
+                    )
430
+               );
431
+          }
432
+          $cmb->add_field(
433
+               array(
434
+                    'id'   => 'settings_endpoints_closing',
435
+                    'type' => 'tab_closing',
436
+               )
437
+          );
438
+     }
439
+
440
+     /**
441
+      * Registers the endpoint translation settings.
442
+      *
443
+      * @param object $cmb new_cmb2_box().
444
+      * @return void
445
+      */
446
+     public function exercise_translations( $cmb ) {
447
+          if ( isset( $this->endpoints['exercise'] ) && '' !== $this->endpoints['exercise'] && ! empty( $this->endpoints['exercise'] ) ) {
448
+               $cmb->add_field(
449
+                    array(
450
+                         'id'          => 'exercise_endpoints_title',
451
+                         'type'        => 'title',
452
+                         'name'        => __( 'Set Exercise Translations', 'lsx-health-plan' ),
453
+                         'default'     => __( 'Set Exercise Translations', 'lsx-health-plan' ),
454
+                         'description' => __( 'You need to resave your permalinks after changing the endpoint settings.', 'lsx-health-plan' ),
455
+                    )
456
+               );
457
+
458
+               foreach ( $this->endpoints['exercise'] as $slug => $endpoint_vars ) {
459
+                    $cmb->add_field(
460
+                         array(
461
+                              'name'    => $endpoint_vars['title'],
462
+                              'id'      => 'endpoint_' . $slug,
463
+                              'type'    => 'input',
464
+                              'value'   => '',
465
+                              'default' => $endpoint_vars['default'],
466
+                         )
467
+                    );
468
+               }
469
+               $cmb->add_field(
470
+                    array(
471
+                         'id'   => 'settings_exercise_closing',
472
+                         'type' => 'tab_closing',
473
+                    )
474
+               );
475
+          }
476
+     }
477
+
478
+     /**
479
+      * Registers the post type toggle settings
480
+      *
481
+      * @param object $cmb new_cmb2_box().
482
+      * @return void
483
+      */
484
+     public function post_type_toggles( $cmb ) {
485
+          $post_types = apply_filters( 'lsx_health_plan_post_types', isset( $this->post_types ) );
486
+
487
+          $cmb->add_field(
488
+               array(
489
+                    'id'          => 'post_type_toggles_title',
490
+                    'type'        => 'title',
491
+                    'name'        => __( 'Disable Post Types', 'lsx-health-plan' ),
492
+                    'default'     => __( 'Disable Post Types', 'lsx-health-plan' ),
493
+                    'description' => __( 'Disable post types if you are wanting a minimal site.', 'lsx-health-plan' ),
494
+               )
495
+          );
496
+
497
+          foreach ( $post_types as $post_type ) {
498
+               if ( 'plan' === $post_type || 'exercise' === $post_type || ( 'video' === $post_type && false !== \lsx_health_plan\functions\get_option( 'exercise_enabled', false ) ) ) {
499
+                    continue;
500
+               }
501
+
502
+               $cmb->add_field(
503
+                    array(
504
+                         'name'    => ucwords( $post_type ),
505
+                         'id'      => $post_type . '_disabled',
506
+                         'type'    => 'checkbox',
507
+                         'value'   => 1,
508
+                         'default' => 0,
509
+                    )
510
+               );
511
+          }
512
+
513
+          $cmb->add_field(
514
+               array(
515
+                    'id'   => 'settings_post_type_toggles_closing',
516
+                    'type' => 'tab_closing',
517
+               )
518
+          );
519
+
520
+          $cmb->add_field(
521
+               array(
522
+                    'id'          => 'post_type_toggles_enable_title',
523
+                    'type'        => 'title',
524
+                    'name'        => __( 'Enable Post Types', 'lsx-health-plan' ),
525
+                    'default'     => __( 'Enable Post Types', 'lsx-health-plan' ),
526
+                    'description' => __( 'Enable new functionailty like the "exercise" post type.', 'lsx-health-plan' ),
527
+               )
528
+          );
529
+          $cmb->add_field(
530
+               array(
531
+                    'name'        => __( 'Exercises', 'lsx-health-plan' ),
532
+                    'id'          => 'exercise_enabled',
533
+                    'type'        => 'checkbox',
534
+                    'value'       => 1,
535
+                    'default'     => 0,
536
+                    'description' => __( 'Enabling the exercise post type will automatically replace the Video post type.', 'lsx-health-plan' ),
537
+               )
538
+          );
539
+          $cmb->add_field(
540
+               array(
541
+                    'id'   => 'settings_post_type_toggles_enable_closing',
542
+                    'type' => 'tab_closing',
543
+               )
544
+          );
545
+     }
546
+     /**
547
+      * Registers the Profile Stat Toggle settings
548
+      *
549
+      * @param object $cmb new_cmb2_box().
550
+      * @return void
551
+      */
552
+
553
+     public function stat_disable( $cmb ) {
554
+          $cmb->add_field(
555
+               array(
556
+                    'id'      => 'stat_disable_title',
557
+                    'type'    => 'title',
558
+                    'name'    => __( 'Disable Profile Stats', 'lsx-health-plan' ),
559
+                    'default' => __( 'Disable Profile Stats', 'lsx-health-plan' ),
560
+               )
561
+          );
562
+          $cmb->add_field(
563
+               array(
564
+                    'name'    => __( 'Disable All Stats', 'lsx-health-plan' ),
565
+                    'desc'    => 'Disable All Stats',
566
+                    'id'      => 'disable_all_stats',
567
+                    'type'    => 'checkbox',
568
+                    'value'   => 1,
569
+                    'default' => 0,
570
+               )
571
+          );
572
+          $cmb->add_field(
573
+               array(
574
+                    'name'    => __( 'Disable Weight', 'lsx-health-plan' ),
575
+                    'id'      => 'disable_weight_checkbox',
576
+                    'type'    => 'checkbox',
577
+                    'value'   => 1,
578
+                    'default' => 0,
579
+               )
580
+          );
581
+          $cmb->add_field(
582
+               array(
583
+                    'name'    => __( 'Disable Waist', 'lsx-health-plan' ),
584
+                    'id'      => 'disable_waist_checkbox',
585
+                    'type'    => 'checkbox',
586
+                    'value'   => 1,
587
+                    'default' => 0,
588
+               )
589
+          );
590
+          $cmb->add_field(
591
+               array(
592
+                    'name'    => __( 'Disable Fitness', 'lsx-health-plan' ),
593
+                    'id'      => 'disable_fitness_checkbox',
594
+                    'type'    => 'checkbox',
595
+                    'value'   => 1,
596
+                    'default' => 0,
597
+               )
598
+          );
599
+          $cmb->add_field(
600
+               array(
601
+                    'id'   => 'settings_stat_disable_closing',
602
+                    'type' => 'tab_closing',
603
+               )
604
+          );
605
+     }
606 606
 }
Please login to merge, or discard this patch.
classes/admin/class-help-page.php 1 patch
Indentation   +119 added lines, -119 removed lines patch added patch discarded remove patch
@@ -12,125 +12,125 @@  discard block
 block discarded – undo
12 12
  */
13 13
 class Help_Page {
14 14
 
15
-	/**
16
-	 * Holds class instance
17
-	 *
18
-	 * @since 1.0.0
19
-	 *
20
-	 * @var      object \lsx_health_plan\classes\admin\Help_Page()
21
-	 */
22
-	protected static $instance = null;
23
-
24
-	/**
25
-	 * Option key, and option page slug
26
-	 *
27
-	 * @var string
28
-	 */
29
-	protected $screen_id = 'lsx_hp_help';
30
-
31
-	/**
32
-	 * Contructor
33
-	 */
34
-	public function __construct() {
35
-		add_action( 'admin_enqueue_scripts', array( $this, 'assets' ) );
36
-		add_action( 'admin_menu', array( $this, 'register_menu' ) );
37
-		add_action( 'lsx_hp_help', array( $this, 'header' ), 10 );
38
-		add_action( 'lsx_hp_help', array( $this, 'body' ), 20 );
39
-		add_action( 'lsx_hp_help', array( $this, 'footer' ), 30 );
40
-	}
41
-
42
-	/**
43
-	 * Return an instance of this class.
44
-	 *
45
-	 * @since 1.0.0
46
-	 *
47
-	 * @return    object \lsx_health_plan\classes\admin\Help_Page()    A single instance of this class.
48
-	 */
49
-	public static function get_instance() {
50
-		// If the single instance hasn't been set, set it now.
51
-		if ( null === self::$instance ) {
52
-			self::$instance = new self();
53
-		}
54
-		return self::$instance;
55
-	}
56
-
57
-
58
-
59
-	/**
60
-	 * Load hp_help screen css.
61
-	 *
62
-	 * @package    lsx
63
-	 * @subpackage hp-help-page
64
-	 *
65
-	 * @param string $hook_suffix the current page hook suffix.
66
-	 */
67
-	public function assets( $hook_suffix ) {
68
-		if ( 'plan_page_help' === $hook_suffix ) {
69
-			wp_enqueue_style( 'lsx-hp-help-screen', get_template_directory_uri() . '/assets/css/admin/help.css', array(), LSX_VERSION );
70
-			wp_style_add_data( 'lsx-hp-help-screen', 'rtl', 'replace' );
71
-		}
72
-	}
73
-
74
-	/**
75
-	 * Creates the dashboard page.
76
-	 *
77
-	 * @package    lsx
78
-	 * @subpackage hp-help-page
79
-	 */
80
-	public function register_menu() {
81
-		add_submenu_page( 'edit.php?post_type=plan', __( 'Help', 'lsx-health-plan' ), __( 'Help', 'lsx-health-plan' ), 'manage_options', 'help', array( $this, 'screen' ) );
82
-	}
83
-
84
-
85
-	/**
86
-	 * The help screen.
87
-	 *
88
-	 * @package    lsx
89
-	 * @subpackage hp-help-page
90
-	 */
91
-	public function screen() {
92
-		require_once ABSPATH . 'wp-load.php';
93
-		require_once ABSPATH . 'wp-admin/admin.php';
94
-		require_once ABSPATH . 'wp-admin/admin-header.php';
95
-		?>
15
+     /**
16
+      * Holds class instance
17
+      *
18
+      * @since 1.0.0
19
+      *
20
+      * @var      object \lsx_health_plan\classes\admin\Help_Page()
21
+      */
22
+     protected static $instance = null;
23
+
24
+     /**
25
+      * Option key, and option page slug
26
+      *
27
+      * @var string
28
+      */
29
+     protected $screen_id = 'lsx_hp_help';
30
+
31
+     /**
32
+      * Contructor
33
+      */
34
+     public function __construct() {
35
+          add_action( 'admin_enqueue_scripts', array( $this, 'assets' ) );
36
+          add_action( 'admin_menu', array( $this, 'register_menu' ) );
37
+          add_action( 'lsx_hp_help', array( $this, 'header' ), 10 );
38
+          add_action( 'lsx_hp_help', array( $this, 'body' ), 20 );
39
+          add_action( 'lsx_hp_help', array( $this, 'footer' ), 30 );
40
+     }
41
+
42
+     /**
43
+      * Return an instance of this class.
44
+      *
45
+      * @since 1.0.0
46
+      *
47
+      * @return    object \lsx_health_plan\classes\admin\Help_Page()    A single instance of this class.
48
+      */
49
+     public static function get_instance() {
50
+          // If the single instance hasn't been set, set it now.
51
+          if ( null === self::$instance ) {
52
+               self::$instance = new self();
53
+          }
54
+          return self::$instance;
55
+     }
56
+
57
+
58
+
59
+     /**
60
+      * Load hp_help screen css.
61
+      *
62
+      * @package    lsx
63
+      * @subpackage hp-help-page
64
+      *
65
+      * @param string $hook_suffix the current page hook suffix.
66
+      */
67
+     public function assets( $hook_suffix ) {
68
+          if ( 'plan_page_help' === $hook_suffix ) {
69
+               wp_enqueue_style( 'lsx-hp-help-screen', get_template_directory_uri() . '/assets/css/admin/help.css', array(), LSX_VERSION );
70
+               wp_style_add_data( 'lsx-hp-help-screen', 'rtl', 'replace' );
71
+          }
72
+     }
73
+
74
+     /**
75
+      * Creates the dashboard page.
76
+      *
77
+      * @package    lsx
78
+      * @subpackage hp-help-page
79
+      */
80
+     public function register_menu() {
81
+          add_submenu_page( 'edit.php?post_type=plan', __( 'Help', 'lsx-health-plan' ), __( 'Help', 'lsx-health-plan' ), 'manage_options', 'help', array( $this, 'screen' ) );
82
+     }
83
+
84
+
85
+     /**
86
+      * The help screen.
87
+      *
88
+      * @package    lsx
89
+      * @subpackage hp-help-page
90
+      */
91
+     public function screen() {
92
+          require_once ABSPATH . 'wp-load.php';
93
+          require_once ABSPATH . 'wp-admin/admin.php';
94
+          require_once ABSPATH . 'wp-admin/admin-header.php';
95
+          ?>
96 96
 		<div class="wrap about-wrap">
97 97
 			<?php
98
-			/**
99
-			 * Functions hooked into lsx_hp_help action
100
-			 *
101
-			 * @hooked lsx_hp_help_header  - 10
102
-			 * @hooked lsx_hp_help_body - 20
103
-			 * @hooked lsx_hp_help_footer  - 30
104
-			 */
105
-			do_action( 'lsx_hp_help' );
106
-			?>
98
+               /**
99
+                * Functions hooked into lsx_hp_help action
100
+                *
101
+                * @hooked lsx_hp_help_header  - 10
102
+                * @hooked lsx_hp_help_body - 20
103
+                * @hooked lsx_hp_help_footer  - 30
104
+                */
105
+               do_action( 'lsx_hp_help' );
106
+               ?>
107 107
 		</div>
108 108
 		<?php
109
-	}
110
-
111
-	/**
112
-	 * Help screen intro.
113
-	 *
114
-	 * @package    lsx
115
-	 * @subpackage hp-help-page
116
-	 */
117
-	public function header() {
118
-		?>
109
+     }
110
+
111
+     /**
112
+      * Help screen intro.
113
+      *
114
+      * @package    lsx
115
+      * @subpackage hp-help-page
116
+      */
117
+     public function header() {
118
+          ?>
119 119
 		<div class="box enrich">
120 120
 			<h2><?php esc_html_e( 'Built to enrich your WordPress experience.', 'lsx-health-plan' ); ?></h2>
121 121
 			<p><?php esc_html_e( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris iaculis feugiat consectetur. Integer mollis ex lacus, sed ultrices felis mollis vitae.', 'lsx-health-plan' ); ?></p>
122 122
 		</div>
123 123
 		<?php
124
-	}
125
-
126
-	/**
127
-	 * Help screen body section.
128
-	 *
129
-	 * @package    lsx
130
-	 * @subpackage hp-help-page
131
-	 */
132
-	public function body() {
133
-		?>
124
+     }
125
+
126
+     /**
127
+      * Help screen body section.
128
+      *
129
+      * @package    lsx
130
+      * @subpackage hp-help-page
131
+      */
132
+     public function body() {
133
+          ?>
134 134
 		<div>
135 135
 			<ul>
136 136
 				<li>Getting started: Setup a new Health Plan site from scratch.</li>
@@ -153,15 +153,15 @@  discard block
 block discarded – undo
153 153
 			</ul>
154 154
 		</div>
155 155
 		<?php
156
-	}
156
+     }
157 157
 
158
-	/**
159
-	 * Help screen contribute section.
160
-	 *
161
-	 * @package    lsx
162
-	 * @subpackage hp-help-page
163
-	 */
164
-	public function footer() {
158
+     /**
159
+      * Help screen contribute section.
160
+      *
161
+      * @package    lsx
162
+      * @subpackage hp-help-page
163
+      */
164
+     public function footer() {
165 165
 
166
-	}
166
+     }
167 167
 }
Please login to merge, or discard this patch.