1
|
|
|
<?php |
|
|
|
|
2
|
|
|
if ( ! class_exists( 'LSX_Customizer_Frontend' ) ) { |
|
|
|
|
3
|
|
|
|
4
|
|
|
/** |
5
|
|
|
* LSX Customizer Frontend Class |
6
|
|
|
* |
7
|
|
|
* @package LSX Customizer |
8
|
|
|
* @author LightSpeed |
9
|
|
|
* @license GPL3 |
10
|
|
|
* @link |
11
|
|
|
* @copyright 2016 LightSpeed |
12
|
|
|
*/ |
13
|
|
|
class LSX_Customizer_Frontend extends LSX_Customizer { |
14
|
|
|
|
15
|
|
|
/** |
16
|
|
|
* Constructor. |
17
|
|
|
* |
18
|
|
|
* @since 1.0.0 |
19
|
|
|
*/ |
20
|
|
|
public function __construct() { |
|
|
|
|
21
|
|
|
add_action( 'wp_enqueue_scripts', array( $this, 'assets' ), 2999 ); |
22
|
|
|
add_action( 'wp_enqueue_scripts', array( $this, 'lsx_customizer_color_palette_css' ), 2999 ); |
23
|
|
|
add_action( 'wp', array( $this, 'layout' ), 2999 ); |
24
|
|
|
add_action( 'wp', array( $this, 'lsx_distraction_free_checkout' ), 2999 ); |
25
|
|
|
add_action( 'wp', array( $this, 'lsx_customizer_two_step_checkout' ) ); |
26
|
|
|
add_action( 'after_setup_theme', array( $this, 'lsx_customizer_color_palette_setup' ), 100 ); |
27
|
|
|
} |
|
|
|
|
28
|
|
|
|
29
|
|
|
/** |
30
|
|
|
* Enques the assets. |
31
|
|
|
* |
32
|
|
|
* @since 1.0.0 |
33
|
|
|
*/ |
34
|
|
|
public function assets() { |
35
|
|
|
wp_enqueue_script( 'lsx-customizer', LSX_CUSTOMIZER_URL . 'assets/js/lsx-customizer.min.js', array( 'jquery' ), LSX_CUSTOMIZER_VER, true ); |
36
|
|
|
|
37
|
|
|
$params = apply_filters( 'lsx_customizer_js_params', array( |
|
|
|
|
38
|
|
|
'ajax_url' => admin_url( 'admin-ajax.php' ), |
39
|
|
|
)); |
|
|
|
|
40
|
|
|
|
41
|
|
|
wp_localize_script( 'lsx-customizer', 'lsx_customizer_params', $params ); |
42
|
|
|
|
43
|
|
|
wp_enqueue_style( 'lsx-customizer', LSX_CUSTOMIZER_URL . 'assets/css/lsx-customizer.css', array(), LSX_CUSTOMIZER_VER ); |
44
|
|
|
wp_style_add_data( 'lsx-customizer', 'rtl', 'replace' ); |
45
|
|
|
|
46
|
|
|
$two_step_checkout = get_theme_mod( 'lsx_two_step_checkout', false ); |
47
|
|
|
if ( class_exists( 'WooCommerce' ) && function_exists( 'is_checkout' ) && is_checkout() && ! empty( $two_step_checkout ) ) { |
|
|
|
|
48
|
|
|
|
49
|
|
|
wp_enqueue_script( 'flexslider', LSX_CUSTOMIZER_URL . 'assets/js/jquery.flexslider.min.js', array( 'jquery' ), '2.5.0' ); |
|
|
|
|
50
|
|
|
} |
51
|
|
|
|
52
|
|
|
} |
|
|
|
|
53
|
|
|
|
54
|
|
|
/** |
55
|
|
|
* Enqueues front-end colour palette CSS. |
56
|
|
|
* |
57
|
|
|
* @since 1.0.0 |
58
|
|
|
*/ |
59
|
|
|
public function lsx_customizer_color_palette_css() { |
60
|
|
|
$styles = ' |
61
|
|
|
.container #primary.content-area .has-primary-color-background-color { |
62
|
|
|
background-color:' . get_theme_mod( 'primary_color', '#428bca' ) . '; |
63
|
|
|
} |
64
|
|
|
.container #primary.content-area .has-primary-color-color { |
65
|
|
|
color: ' . get_theme_mod( 'primary_color', '#428bca' ) . '; |
66
|
|
|
} |
67
|
|
|
|
68
|
|
|
.container #primary.content-area .has-strong-primary-color-background-color { |
69
|
|
|
background-color:' . get_theme_mod( 'strong_primary_color', '#2a6496' ) . '; |
70
|
|
|
} |
71
|
|
|
.container #primary.content-area .has-strong-primary-color-color { |
72
|
|
|
color: ' . get_theme_mod( 'strong_primary_color', '#2a6496' ) . '; |
73
|
|
|
} |
74
|
|
|
|
75
|
|
|
.container #primary.content-area .has-cta-color-background-color { |
76
|
|
|
background-color:' . get_theme_mod( 'call_to_action_color', '#f7941d' ) . '; |
77
|
|
|
} |
78
|
|
|
.container #primary.content-area .has-cta-color-color { |
79
|
|
|
color: ' . get_theme_mod( 'call_to_action_color', '#f7941d' ) . '; |
80
|
|
|
} |
81
|
|
|
|
82
|
|
|
.container #primary.content-area .has-strong-cta-color-background-color { |
83
|
|
|
background-color:' . get_theme_mod( 'strong_cta_color', '#f7741d' ) . '; |
84
|
|
|
} |
85
|
|
|
.container #primary.content-area .has-strong-cta-color-color { |
86
|
|
|
color: ' . get_theme_mod( 'strong_cta_color', '#f7741d' ) . '; |
87
|
|
|
} |
88
|
|
|
|
89
|
|
|
.container #primary.content-area .has-strong-cta-color-background-color { |
90
|
|
|
background-color:' . get_theme_mod( 'strong_cta_color', '#f7741d' ) . '; |
91
|
|
|
} |
92
|
|
|
.container #primary.content-area .has-strong-cta-color-color { |
93
|
|
|
color: ' . get_theme_mod( 'strong_cta_color', '#f7741d' ) . '; |
94
|
|
|
} |
95
|
|
|
|
96
|
|
|
.container #primary.content-area .has-secondary-color-background-color { |
97
|
|
|
background-color:' . get_theme_mod( 'secondary_color', '#eaeaea' ) . '; |
98
|
|
|
} |
99
|
|
|
.container #primary.content-area .has-secondary-color-color { |
100
|
|
|
color: ' . get_theme_mod( 'secondary_color', '#eaeaea' ) . '; |
101
|
|
|
} |
102
|
|
|
|
103
|
|
|
.container #primary.content-area .has-strong-secondary-color-background-color { |
104
|
|
|
background-color:' . get_theme_mod( 'strong_secondary_color', '#c4c4c4' ) . '; |
105
|
|
|
} |
106
|
|
|
.container #primary.content-area .has-strong-secondary-color-color { |
107
|
|
|
color: ' . get_theme_mod( 'strong_secondary_color', '#c4c4c4' ) . '; |
108
|
|
|
} |
109
|
|
|
|
110
|
|
|
.container #primary.content-area .has-tertiary-color-background-color { |
111
|
|
|
background-color:' . get_theme_mod( 'tertiary_color', '#6BA913' ) . '; |
112
|
|
|
} |
113
|
|
|
.container #primary.content-area .has-tertiary-color-color { |
114
|
|
|
color: ' . get_theme_mod( 'tertiary_color', '#6BA913' ) . '; |
115
|
|
|
} |
116
|
|
|
|
117
|
|
|
.container #primary.content-area .has-strong-tertiary-color-background-color { |
118
|
|
|
background-color:' . get_theme_mod( 'strong_tertiary_color', '#3F640B' ) . '; |
119
|
|
|
} |
120
|
|
|
.container #primary.content-area .has-strong-tertiary-color-color { |
121
|
|
|
color: ' . get_theme_mod( 'strong_tertiary_color', '#3F640B' ) . '; |
122
|
|
|
} |
123
|
|
|
|
124
|
|
|
.container #primary.content-area .has-heading-color-background-color { |
125
|
|
|
background-color:' . get_theme_mod( 'heading_color', '#4a4a4a' ) . '; |
126
|
|
|
} |
127
|
|
|
.container #primary.content-area .has-heading-color-color { |
128
|
|
|
color: ' . get_theme_mod( 'heading_color', '#4a4a4a' ) . '; |
129
|
|
|
} |
130
|
|
|
|
131
|
|
|
.container #primary.content-area .has-body-color-background-color { |
132
|
|
|
background-color:' . get_theme_mod( 'body_text_color_color', '#444444' ) . '; |
133
|
|
|
} |
134
|
|
|
.container #primary.content-area .has-body-color-color { |
135
|
|
|
color: ' . get_theme_mod( 'body_text_color_color', '#444444' ) . '; |
136
|
|
|
} |
137
|
|
|
|
138
|
|
|
'; |
139
|
|
|
wp_add_inline_style( 'lsx-customizer', $styles ); |
140
|
|
|
} |
|
|
|
|
141
|
|
|
|
142
|
|
|
/** |
143
|
|
|
* Layout. |
144
|
|
|
* |
145
|
|
|
* @since 1.0.0 |
146
|
|
|
*/ |
147
|
|
|
public function layout() { |
148
|
|
|
$theme_credit = get_theme_mod( 'lsx_theme_credit_status', true ); |
149
|
|
|
|
150
|
|
|
if ( false == $theme_credit ) { |
|
|
|
|
151
|
|
|
add_filter( 'lsx_credit_link', '__return_false' ); |
152
|
|
|
} |
153
|
|
|
} |
|
|
|
|
154
|
|
|
|
155
|
|
|
/** |
156
|
|
|
* Create the distraction free checkout. |
157
|
|
|
* |
158
|
|
|
* @since 1.0.0 |
159
|
|
|
* @return void |
160
|
|
|
*/ |
161
|
|
|
public function lsx_distraction_free_checkout() { |
|
|
|
|
162
|
|
|
|
163
|
|
|
$distraction_free = get_theme_mod( 'lsx_distraction_free_checkout', false ); |
164
|
|
|
|
165
|
|
|
if ( class_exists( 'WooCommerce' ) && function_exists( 'is_checkout' ) && is_checkout() && ! empty( $distraction_free ) ) { |
|
|
|
|
166
|
|
|
remove_action( 'lsx_body_bottom', 'lsx_wc_footer_bar', 15 ); |
167
|
|
|
|
|
|
|
|
168
|
|
|
} |
169
|
|
|
} |
|
|
|
|
170
|
|
|
|
171
|
|
|
/** |
172
|
|
|
* Create the two step checkout. |
173
|
|
|
* |
174
|
|
|
* @since 1.0.0 |
175
|
|
|
* @return void |
176
|
|
|
*/ |
177
|
|
|
public function lsx_customizer_two_step_checkout() { |
178
|
|
|
$two_step_checkout = get_theme_mod( 'lsx_two_step_checkout', false ); |
179
|
|
|
|
180
|
|
|
if ( class_exists( 'WooCommerce' ) && function_exists( 'is_checkout' ) && is_checkout() && ! empty( $two_step_checkout ) ) { |
|
|
|
|
181
|
|
|
add_action( 'woocommerce_checkout_before_customer_details', 'lsx_customizer_checkout_form_wrapper_div', 1 ); |
182
|
|
|
add_action( 'woocommerce_checkout_before_customer_details', 'lsx_customizer_checkout_form_wrapper', 2 ); |
183
|
|
|
add_action( 'woocommerce_checkout_order_review', 'lsx_customizer_close_div', 30 ); |
184
|
|
|
add_action( 'woocommerce_checkout_order_review', 'lsx_customizer_close_ul', 30 ); |
185
|
|
|
add_action( 'woocommerce_checkout_before_customer_details', 'lsx_customizer_address_wrapper', 5 ); |
186
|
|
|
add_action( 'woocommerce_checkout_after_customer_details', 'lsx_customizer_close_li' ); |
187
|
|
|
add_action( 'wp_footer', 'lsx_customizer_fire_flexslider' ); |
188
|
|
|
add_action( 'woocommerce_checkout_before_order_review', 'lsx_customizer_order_review_wrap', 1 ); |
189
|
|
|
add_action( 'woocommerce_checkout_after_order_review', 'lsx_customizer_close_li', 40 ); |
190
|
|
|
} |
191
|
|
|
} |
|
|
|
|
192
|
|
|
|
193
|
|
|
/** |
194
|
|
|
* Editor color palette. |
195
|
|
|
* |
196
|
|
|
* @return void |
197
|
|
|
*/ |
198
|
|
|
public function lsx_customizer_color_palette_setup() { |
199
|
|
|
add_theme_support( 'editor-color-palette', array( |
|
|
|
|
200
|
|
|
array( |
201
|
|
|
'name' => esc_html__( 'Primary Colour', 'lsx-customizer' ), |
202
|
|
|
'slug' => 'primary-color', |
203
|
|
|
'color' => get_theme_mod( 'primary_color', '#428bca' ), |
204
|
|
|
), |
205
|
|
|
array( |
206
|
|
|
'name' => esc_html__( 'Strong Primary Colour', 'lsx-customizer' ), |
207
|
|
|
'slug' => 'strong-primary-color', |
208
|
|
|
'color' => get_theme_mod( 'strong_primary_color', '#2a6496' ), |
209
|
|
|
), |
210
|
|
|
array( |
211
|
|
|
'name' => esc_html__( 'CTA Colour', 'lsx-customizer' ), |
212
|
|
|
'slug' => 'cta-color', |
213
|
|
|
'color' => get_theme_mod( 'call_to_action_color', '#f7941d' ), |
214
|
|
|
), |
215
|
|
|
array( |
216
|
|
|
'name' => esc_html__( 'Strong CTA Colour', 'lsx-customizer' ), |
217
|
|
|
'slug' => 'strong-cta-color', |
218
|
|
|
'color' => get_theme_mod( 'strong_cta_color', '#f7741d' ), |
219
|
|
|
), |
220
|
|
|
array( |
221
|
|
|
'name' => esc_html__( 'Secondary Colour', 'lsx-customizer' ), |
222
|
|
|
'slug' => 'secondary-color', |
223
|
|
|
'color' => get_theme_mod( 'secondary_color', '#eaeaea' ), |
224
|
|
|
), |
225
|
|
|
array( |
226
|
|
|
'name' => esc_html__( 'Strong Secondary Colour', 'lsx-customizer' ), |
227
|
|
|
'slug' => 'strong-secondary-color', |
228
|
|
|
'color' => get_theme_mod( 'strong_secondary_color', '#c4c4c4' ), |
229
|
|
|
), |
230
|
|
|
array( |
231
|
|
|
'name' => esc_html__( 'Tertiary Colour', 'lsx-customizer' ), |
232
|
|
|
'slug' => 'tertiary-color', |
233
|
|
|
'color' => get_theme_mod( 'tertiary_color', '#6BA913' ), |
234
|
|
|
), |
235
|
|
|
array( |
236
|
|
|
'name' => esc_html__( 'Strong Tertiary Colour', 'lsx-customizer' ), |
237
|
|
|
'slug' => 'strong-tertiary-color', |
238
|
|
|
'color' => get_theme_mod( 'strong_tertiary_color', '#3F640B' ), |
239
|
|
|
), |
240
|
|
|
array( |
241
|
|
|
'name' => esc_html__( 'White', 'lsx-customizer' ), |
242
|
|
|
'slug' => 'white', |
243
|
|
|
'color' => '#ffffff', |
244
|
|
|
), |
245
|
|
|
array( |
246
|
|
|
'name' => esc_html__( 'Black', 'lsx-customizer' ), |
247
|
|
|
'slug' => 'black', |
248
|
|
|
'color' => '#000000', |
249
|
|
|
), |
250
|
|
|
)); |
|
|
|
|
251
|
|
|
} |
|
|
|
|
252
|
|
|
|
253
|
|
|
} |
254
|
|
|
|
255
|
|
|
new LSX_Customizer_Frontend(); |
256
|
|
|
|
|
|
|
|
257
|
|
|
} |
258
|
|
|
|