Click to Chat for WhatsApp Chat - Version 1.7.1

Version Description

  • Style-8 simplified
Download this release

Release Info

Developer bhvreddy
Plugin Icon 128x128 Click to Chat for WhatsApp Chat
Version 1.7.1
Comparing to
See all releases

Code changes from version 1.7 to 1.7.1

admin/class-ccw-admin-page-customize-styles.php CHANGED
@@ -28,7 +28,6 @@ class CCW_Admin_Page_Customize_Styles {
28
  add_settings_section( 'ccw_settings_cs', '', array( $this, 'ccw_settings_section_cs_cb' ), 'ccw_options_settings_cs' );
29
 
30
  add_settings_field( 'ccw_style_1_cs', 'Style 1', array( $this, 'ccw_style_1_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
31
- // add_settings_field( 'ccw_style_1_cs', 'Style 1', array( $this, 'ccw_style_1_cb_prev' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
32
  add_settings_field( 'ccw_style_2_cs', 'Style 2', array( $this, 'ccw_style_2_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
33
  add_settings_field( 'ccw_style_3_cs', 'Style 3', array( $this, 'ccw_style_3_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
34
  add_settings_field( 'ccw_style_4_cs', 'Style 4', array( $this, 'ccw_style_4_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
@@ -63,7 +62,7 @@ class CCW_Admin_Page_Customize_Styles {
63
  <br>
64
  <p class="description">For customizable button, please select style-8</p>
65
  <br><br>
66
- <p class="description">changes made in style-1 since <a href="https://holithemes.com/whatsapp-chat/v-1-7">Version-1.7</a></p>
67
  </div>
68
 
69
  </div>
@@ -76,95 +75,6 @@ class CCW_Admin_Page_Customize_Styles {
76
  }
77
 
78
 
79
- // style - 1 - previous one .. created a new one..
80
- function ccw_style_1_cb_prev() {
81
- $ccw_style_1 = get_option('ccw_options_cs');
82
- ?>
83
- <ul class="collapsible" data-collapsible="accordion">
84
- <li>
85
- <div class="collapsible-header">Style 1</div>
86
- <div class="collapsible-body">
87
-
88
- <div class="row">
89
- <div class="col s6">
90
- <p><?php _e( 'Color of text' , 'click-to-chat-for-whatsapp' ) ?></p>
91
- </div>
92
- <div class="input-field col s6">
93
- <input name="ccw_options_cs[s1_text_color]" data-default-color="#9e9e9e" value="<?php echo esc_attr( $ccw_style_1['s1_text_color'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
94
- </div>
95
- </div>
96
-
97
- <div class="row">
98
- <div class="col s6">
99
- <p><?php _e( 'Color of text when focus on input box' , 'click-to-chat-for-whatsapp' ) ?></p>
100
- </div>
101
- <div class="input-field col s6">
102
- <input name="ccw_options_cs[s1_text_color_onfocus]" data-default-color="#26a69a" value="<?php echo esc_attr( $ccw_style_1['s1_text_color_onfocus'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
103
- </div>
104
- </div>
105
-
106
- <div class="row">
107
- <div class="col s6">
108
- <p><?php _e( 'Color of input field bottom border' , 'click-to-chat-for-whatsapp' ) ?></p>
109
- </div>
110
- <div class="input-field col s6">
111
- <input name="ccw_options_cs[s1_border_color]" data-default-color="#9e9e9e" value="<?php echo esc_attr( $ccw_style_1['s1_border_color'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
112
- </div>
113
- </div>
114
-
115
- <div class="row">
116
- <div class="col s6">
117
- <p><?php _e( 'Color of input field border bottom on focus' , 'click-to-chat-for-whatsapp' ) ?></p>
118
- </div>
119
- <div class="input-field col s6">
120
- <input name="ccw_options_cs[s1_border_color_onfocus]" data-default-color="#26a69a" value="<?php echo esc_attr( $ccw_style_1['s1_border_color_onfocus'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
121
- </div>
122
- </div>
123
-
124
- <div class="row">
125
- <div class="col s6">
126
- <p><?php _e( 'Color of submit button' , 'click-to-chat-for-whatsapp' ) ?></p>
127
- </div>
128
- <div class="input-field col s6">
129
- <input name="ccw_options_cs[s1_submit_btn_color]" data-default-color="#26a69a" value="<?php echo esc_attr( $ccw_style_1['s1_submit_btn_color'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
130
- </div>
131
- </div>
132
-
133
- <div class="row">
134
- <div class="col s6">
135
- <p><?php _e( 'Color of submit button - text, icon' , 'click-to-chat-for-whatsapp' ) ?> </p>
136
- </div>
137
- <div class="input-field col s6">
138
- <input name="ccw_options_cs[s1_submit_btn_text_and_icon_color]" data-default-color="#fff" value="<?php echo esc_attr( $ccw_style_1['s1_submit_btn_text_and_icon_color'] ) ?>" type="text" class="color-wp" style="height: 1.375rem;" >
139
- </div>
140
- </div>
141
-
142
- <div class="row">
143
- <div class="col s6">
144
- <p><?php _e( 'Button Text' , 'click-to-chat-for-whatsapp' ) ?></p>
145
- </div>
146
- <div class="input-field col s4">
147
- <input name="ccw_options_cs[s1_btn_text]" value="<?php echo esc_attr( $ccw_style_1['s1_btn_text'] ) ?>" type="text" class="" >
148
- </div>
149
- </div>
150
-
151
- <!-- This is hidden row -->
152
- <div class="row hide">
153
- <div class="col s6">
154
- <p><?php _e( 'Icon size' , 'click-to-chat-for-whatsapp' ) ?></p>
155
- </div>
156
- <div class="input-field col s4">
157
- <input name="ccw_options_cs[s1_width]" value="<?php echo esc_attr( $ccw_style_1['s1_width'] ) ?>" type="text" class="" >
158
- </div>
159
- </div>
160
-
161
- </div>
162
- </div>
163
- </li>
164
- </ul>
165
- <?php
166
- }
167
-
168
 
169
  // style - 2
170
  function ccw_style_2_cb() {
@@ -779,7 +689,7 @@ class CCW_Admin_Page_Customize_Styles {
779
  <div class="collapsible-body">
780
 
781
  <p class="description"> <?php _e( 'alpha stage, things may change, may not work as like this in next releases, </br> may need to reconfigure also ..' , 'click-to-chat-for-whatsapp' ) ?> </p>
782
- <p class="description"> <?php _e( 'Animations for floating styles ( 3, 4, 5, 6, 7, 8, 9 ) ' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://holithemes.com/whatsapp-chat/animations/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
783
  <br><br>
784
 
785
 
28
  add_settings_section( 'ccw_settings_cs', '', array( $this, 'ccw_settings_section_cs_cb' ), 'ccw_options_settings_cs' );
29
 
30
  add_settings_field( 'ccw_style_1_cs', 'Style 1', array( $this, 'ccw_style_1_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
 
31
  add_settings_field( 'ccw_style_2_cs', 'Style 2', array( $this, 'ccw_style_2_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
32
  add_settings_field( 'ccw_style_3_cs', 'Style 3', array( $this, 'ccw_style_3_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
33
  add_settings_field( 'ccw_style_4_cs', 'Style 4', array( $this, 'ccw_style_4_cb' ), 'ccw_options_settings_cs', 'ccw_settings_cs' );
62
  <br>
63
  <p class="description">For customizable button, please select style-8</p>
64
  <br><br>
65
+ <p class="description">changes made in style-1 since <a target="_blank" href="https://holithemes.com/whatsapp-chat/v-1-7">Version-1.7</a></p>
66
  </div>
67
 
68
  </div>
75
  }
76
 
77
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
 
79
  // style - 2
80
  function ccw_style_2_cb() {
689
  <div class="collapsible-body">
690
 
691
  <p class="description"> <?php _e( 'alpha stage, things may change, may not work as like this in next releases, </br> may need to reconfigure also ..' , 'click-to-chat-for-whatsapp' ) ?> </p>
692
+ <p class="description"> <?php _e( 'Animations for floating styles' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://holithemes.com/whatsapp-chat/animations/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
693
  <br><br>
694
 
695
 
admin/class-ccw-admin-page.php CHANGED
@@ -38,7 +38,7 @@ class CCW_Admin_Page {
38
  add_settings_field( 'ccw_list_id_tohide', __( 'Posts, Pages Id\'s to Hide' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_list_id_tohide_cb' ), 'ccw_options_settings', 'ccw_settings' );
39
  add_settings_field( 'ccw_list_cat_tohide', __( 'Categorys to Hide' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_list_cat_tohide_cb' ), 'ccw_options_settings', 'ccw_settings' );
40
  add_settings_field( 'ccw_custom_shortcode', __( 'Shortcode name' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_custom_shortcode_cb' ), 'ccw_options_settings', 'ccw_settings' );
41
- add_settings_field( 'ccw_app_first', __( 'App First' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_app_first_cb' ), 'ccw_options_settings', 'ccw_settings' );
42
 
43
  }
44
 
@@ -57,9 +57,9 @@ class CCW_Admin_Page {
57
  <div class="input-field col s12">
58
  <select name="ccw_options[enable]" class="select-1">
59
  <option value="1"><?php _e( 'No' , 'click-to-chat-for-whatsapp' ) ?></option>
60
- <option value="2" <?php echo esc_attr( $ccw_enable['enable'] ) == 2 ? 'SELECTED' : ''; ?> ><?php _e( 'Yes' , 'click-to-chat-for-whatsapp' ) ?></option>
61
  </select>
62
- <label><?php _e( 'enable' , 'click-to-chat-for-whatsapp' ) ?></label>
63
  </div>
64
  </div>
65
  <?php
@@ -72,11 +72,11 @@ class CCW_Admin_Page {
72
  <div class="row">
73
  <div class="input-field col s12 select-margin">
74
  <select name="ccw_options[enable_sc]" class="select-1">
75
- <option value="1"><?php _e( 'No' , 'click-to-chat-for-whatsapp' ) ?></option>
76
- <option value="2" <?php echo esc_attr( $ccw_enable_sc['enable_sc'] ) == 2 ? 'SELECTED' : ''; ?> ><?php _e( 'Yes' , 'click-to-chat-for-whatsapp' ) ?></option>
77
  </select>
78
- <label><?php _e( 'enable ShortCodes' , 'click-to-chat-for-whatsapp' ) ?></label>
79
- <p class="description"> <?php _e( 'If Selected - No - then Hides Shortcodes and its syntax' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/enable-disable-styles/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
80
  </div>
81
  </div>
82
  <?php
@@ -89,11 +89,11 @@ class CCW_Admin_Page {
89
  <div class="row">
90
  <div class="input-field col s12 select-margin">
91
  <select name="ccw_options[return_type]" class="select-1">
92
- <option value="chat" <?php echo esc_attr( $ccw_return_type['return_type'] ) == 'chat' ? 'SELECTED' : ''; ?> ><?php _e( 'Chat' , 'click-to-chat-for-whatsapp' ) ?></option>
93
- <option value="group_chat" <?php echo esc_attr( $ccw_return_type['return_type'] ) == 'group_chat' ? 'SELECTED' : ''; ?> ><?php _e( 'Group chat - Invite' , 'click-to-chat-for-whatsapp' ) ?></option>
94
  </select>
95
- <label><?php _e( 'Default return type - Chat or Group Chat Invite' , 'click-to-chat-for-whatsapp' ) ?></label>
96
- <p class="description"><?php _e( 'Default return type for Floating Style, shortcodes. But for shortcodes can change using shortcode attributes' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/return-type-chat-or-group-chat/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
97
  </div>
98
  </div>
99
  <?php
@@ -108,21 +108,21 @@ class CCW_Admin_Page {
108
  <div class="row">
109
  <div class="input-field col s12">
110
  <select name="ccw_options[style]" class="select-2">
111
- <option value="1" <?php echo $style_value == 1 ? 'SELECTED' : ''; ?> >Style-1</option>
112
- <option value="2" <?php echo $style_value == 2 ? 'SELECTED' : ''; ?> >Style-2</option>
113
- <option value="3" <?php echo $style_value == 3 ? 'SELECTED' : ''; ?> >Style-3</option>
114
- <option value="4" <?php echo $style_value == 4 ? 'SELECTED' : ''; ?> >Style-4</option>
115
- <option value="5" <?php echo $style_value == 5 ? 'SELECTED' : ''; ?> >Style-5</option>
116
- <option value="6" <?php echo $style_value == 6 ? 'SELECTED' : ''; ?> >Style-6</option>
117
- <option value="7" <?php echo $style_value == 7 ? 'SELECTED' : ''; ?> >Style-7</option>
118
- <option value="8" <?php echo $style_value == 8 ? 'SELECTED' : ''; ?> >Style-8</option>
119
- <option value="9" <?php echo $style_value == 9 ? 'SELECTED' : ''; ?> >Style-9</option>
120
- <option value="99" <?php echo $style_value == 99 ? 'SELECTED' : ''; ?> >Style-99 ( Add your own Image / GIF )</option>
121
- <option value="0" <?php echo $style_value == 0 ? 'SELECTED' : ''; ?> ><?php _e( 'Hide on Desktop Devices' , 'click-to-chat-for-whatsapp' ) ?></option>
122
  </select>
123
  <label><?php _e( 'Select Style for Destops' , 'click-to-chat-for-whatsapp' ) ?></label>
124
- <p class="description"> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/select-styles/"><?php _e( 'List of syles with images' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
125
- <p class="description"> - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles' ); ?>"><?php _e( 'Customize Styles' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
126
 
127
  </div>
128
  </div>
@@ -147,9 +147,9 @@ class CCW_Admin_Page {
147
  <option value="8" <?php echo $style_mobile_value == 8 ? 'SELECTED' : ''; ?> >Style-8</option>
148
  <option value="9" <?php echo $style_mobile_value == 9 ? 'SELECTED' : ''; ?> >Style-9</option>
149
  <option value="99" <?php echo $style_mobile_value == 99 ? 'SELECTED' : ''; ?> >Style-99 ( Add your own Image / GIF )</option>
150
- <option value="0" <?php echo $style_mobile_value == 0 ? 'SELECTED' : ''; ?> ><?php _e( 'Hide on Mobile Devices' , 'click-to-chat-for-whatsapp' ) ?></option>
151
  </select>
152
- <label><?php _e( 'Select Style for Mobile Devices' , 'click-to-chat-for-whatsapp' ) ?></label>
153
  </div>
154
  </div>
155
  <?php
@@ -162,8 +162,8 @@ class CCW_Admin_Page {
162
  <div class="row">
163
  <div class="input-field col s12">
164
  <input name="ccw_options[number]" value="<?php echo esc_attr( $ccw_number['number'] ) ?>" id="whatsapp_number" type="text" class="input-margin">
165
- <label for="whatsapp_number"><?php _e( 'Enter whatsapp number' , 'click-to-chat-for-whatsapp' ) ?> </label>
166
- <p class="description"><?php _e( 'Enter whatsapp number with country code ( e.g. 916123456789 ) please dont include +, ( here in e.g. 91 is country code 6123456789 is mobile number' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/whatsapp-number/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> ) </p>
167
  </div>
168
  </div>
169
  <?php
@@ -178,7 +178,7 @@ class CCW_Admin_Page {
178
  <div class="input-field col s12">
179
  <input name="ccw_options[initial]" value="<?php echo esc_attr( $ccw_initial['initial'] ) ?>" id="whatsapp_initial" type="text" class="input-margin">
180
  <label for="whatsapp_initial"><?php _e( 'Initial Message' , 'click-to-chat-for-whatsapp' ) ?></label>
181
- <p class="description"><?php _e( 'Initial message ( pre-filled ), placeholder {{url}} to add webpage url - ' , 'click-to-chat-for-whatsapp' ) ?> <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/pre-filled-message/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
182
  </div>
183
  </div>
184
  <?php
@@ -192,8 +192,8 @@ class CCW_Admin_Page {
192
  <div class="row">
193
  <div class="input-field col s12">
194
  <input name="ccw_options[group_id]" value="<?php echo esc_attr( $ccw_group_id['group_id'] ) ?>" id="whatsapp_group_id" type="text" class="input-margin">
195
- <label for="whatsapp_group_id"><?php _e( 'whatsapp group ID Extenstion' , 'click-to-chat-for-whatsapp' ) ?> </label>
196
- <p class="description"><?php _e( 'Enter whatsapp Group Id' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/find-whatsapp-group-id/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> ) </p>
197
  </div>
198
  </div>
199
  <?php
@@ -213,29 +213,29 @@ class CCW_Admin_Page {
213
  <option value="4" <?php echo $ccw_position_value == 4 ? 'SELECTED' : ''; ?> ><?php _e( 'top right' , 'click-to-chat-for-whatsapp' ) ?></option>
214
  </select>
215
  <label><?php _e( 'Fixed position to place' , 'click-to-chat-for-whatsapp' ) ?></label>
216
- <p class="description"><?php _e( ' e.g. 10px - please add css units as suffix, e.g. 10px, 10%, 10rem, 10em' , 'click-to-chat-for-whatsapp' ) ?> .. <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/position-to-place/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
217
  </div>
218
  </div>
219
 
220
  <div class="row display-none position position-1 bottom-right">
221
  <div class="input-field col s6">
222
  <input name="ccw_options[position-1_bottom]" value="<?php echo esc_attr( $ccw_position['position-1_bottom'] ) ?>" id="position_bottom" type="text" class="validate">
223
- <label for="position_bottom"><?php _e( 'position_bottom' , 'click-to-chat-for-whatsapp' ) ?>: </label>
224
  </div>
225
  <div class="input-field col s6">
226
  <input name="ccw_options[position-1_right]" value="<?php echo esc_attr( $ccw_position['position-1_right'] ) ?>" id="position_right" type="text" class="validate">
227
- <label for="position_right"><?php _e( 'position_right' , 'click-to-chat-for-whatsapp' ) ?>: </label>
228
  </div>
229
  </div>
230
 
231
  <div class="row display-none position position-2 bottom-left">
232
  <div class="input-field col s6">
233
  <input name="ccw_options[position-2_bottom]" value="<?php echo esc_attr( $ccw_position['position-2_bottom'] ) ?>" id="position_bottom" type="text" class="validate">
234
- <label for="position_bottom"><?php _e( 'position_bottom' , 'click-to-chat-for-whatsapp' ) ?>: </label>
235
  </div>
236
  <div class="input-field col s6">
237
  <input name="ccw_options[position-2_left]" value="<?php echo esc_attr( $ccw_position['position-2_left'] ) ?>" id="position_left" type="text" class="validate">
238
- <label for="position_left"><?php _e( 'position_left' , 'click-to-chat-for-whatsapp' ) ?>: </label>
239
  </div>
240
  </div>
241
 
@@ -244,22 +244,22 @@ class CCW_Admin_Page {
244
  <div class="row display-none position position-3 top-left">
245
  <div class="input-field col s6">
246
  <input name="ccw_options[position-3_top]" value="<?php echo esc_attr( $ccw_position['position-3_top'] ) ?>" id="position_top" type="text" class="validate">
247
- <label for="position_top"><?php _e( 'position_top' , 'click-to-chat-for-whatsapp' ) ?>: </label>
248
  </div>
249
  <div class="input-field col s6">
250
  <input name="ccw_options[position-3_left]" value="<?php echo esc_attr( $ccw_position['position-3_left'] ) ?>" id="position_left" type="text" class="validate">
251
- <label for="position_left"><?php _e( 'position_left' , 'click-to-chat-for-whatsapp' ) ?>: </label>
252
  </div>
253
  </div>
254
 
255
  <div class="row display-none position position-4 top-right">
256
  <div class="input-field col s6">
257
  <input name="ccw_options[position-4_top]" value="<?php echo esc_attr( $ccw_position['position-4_top'] ) ?>" id="position_top" type="text" class="validate">
258
- <label for="position_top"><?php _e( 'position_top' , 'click-to-chat-for-whatsapp' ) ?>: </label>
259
  </div>
260
  <div class="input-field col s6">
261
  <input name="ccw_options[position-4_right]" value="<?php echo esc_attr( $ccw_position['position-4_right'] ) ?>" id="position_right" type="text" class="validate">
262
- <label for="position_right"><?php _e( 'position_right' , 'click-to-chat-for-whatsapp' ) ?>: </label>
263
  </div>
264
  </div>
265
 
@@ -273,8 +273,8 @@ class CCW_Admin_Page {
273
  <div class="row">
274
  <div class="input-field col s12">
275
  <input name="ccw_options[input_placeholder]" value="<?php echo esc_attr( $ccw_placeholder['input_placeholder'] ) ?>" id="input_placeholder" type="text" class="input-margin">
276
- <label for="input_placeholder"><?php _e( 'placeholder value' , 'click-to-chat-for-whatsapp' ) ?></label>
277
- <p class="description"> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/text-to-display/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
278
  </div>
279
  </div>
280
  <?php
@@ -307,9 +307,9 @@ class CCW_Admin_Page {
307
  }
308
  ?>
309
 
310
- <p class="description"> <?php _e( 'If Google Analytics is installed - creates an Event at there' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/google-analytics/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
311
- <p class="description"> <?php _e( 'Customize Event Values' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles#ga-analytics' ); ?>"><?php _e( 'Customize Styles' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
312
- <p class="description"> <?php _e( 'Using' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/google-analytics-for-click-to-chat-for-whatsapp-plugin/"><?php _e( 'Google Tag Manager' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
313
  <?php
314
  }
315
 
@@ -339,8 +339,8 @@ class CCW_Admin_Page {
339
  <?php
340
  }
341
  ?>
342
- <p class="description"> <?php _e( 'If Facebook Analytics is installed - creates an Event at there' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/facebook-analytics/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
343
- <p class="description"> <?php _e( 'Customize Event Values' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles#fb-analytics' ); ?>"><?php _e( 'Customize Styles' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
344
  <?php
345
  }
346
 
@@ -504,7 +504,7 @@ class CCW_Admin_Page {
504
  <?php
505
  }
506
  ?>
507
- <p class="description"><?php _e( 'Check to hide - Hide - Styles - based on type of the page' , 'click-to-chat-for-whatsapp' ) ?> <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/show-hide-styles-based-on-type-of-the-page/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
508
  <?php
509
  }
510
 
@@ -516,7 +516,7 @@ class CCW_Admin_Page {
516
  <div class="input-field col s12">
517
  <input name="ccw_options[list_hideon_pages]" value="<?php echo esc_attr( $ccw_list_id_tohide['list_hideon_pages'] ) ?>" id="ccw_list_id_tohide" type="text" class="input-margin">
518
  <label for="ccw_list_id_tohide">Id's list to Hide - add ',' after each id </label>
519
- <p class="description"> Add Post, Pages, Media - ID's to hide, can add multiple id's separate with comma ( , ) - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/show-hide-styles-based-on-id/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
520
  </div>
521
  </div>
522
  <?php
@@ -529,8 +529,8 @@ class CCW_Admin_Page {
529
  <div class="row">
530
  <div class="input-field col s12">
531
  <input name="ccw_options[list_hideon_cat]" value="<?php echo esc_attr( $ccw_list_cat_tohide['list_hideon_cat'] ) ?>" id="ccw_list_cat_tohide" type="text" class="input-margin">
532
- <label for="ccw_list_cat_tohide"><?php _e( 'Category name\'s to Hide - add \',\' after each category name' , 'click-to-chat-for-whatsapp' ) ?> </label>
533
- <p class="description"><?php _e( 'Category name\'s to hide, can add multiple Categories separate with comma ( , )' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/hide-styles-based-on-category/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
534
  </div>
535
  </div>
536
  <?php
@@ -543,7 +543,7 @@ class CCW_Admin_Page {
543
  <div class="row">
544
  <div class="input-field col s12">
545
  <input name="ccw_options[shortcode]" value="<?php echo esc_attr( $ccw_shortcode['shortcode'] ) ?>" id="shortcode" type="text" class="input-margin">
546
- <label for="shortcode"><?php _e( 'shortcode name' , 'click-to-chat-for-whatsapp' ) ?></label>
547
  <?php
548
  $shorcode_list = '';
549
  // global used here is defined by wordpress
@@ -551,9 +551,9 @@ class CCW_Admin_Page {
551
  $shorcode_list .= $key . ', ';
552
  }
553
  ?>
554
- <p class="description"> <?php _e( 'Default values is \'chat\', can customize shortcode name' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/change-shortcode-name/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
555
- <!-- <p class="description"> <?php _e( 'please dont add this already existing shorcode names' , 'click-to-chat-for-whatsapp' ) ?> - <?php echo $shorcode_list ?> </p> -->
556
- <p class="description"> <?php _e( 'please dont change to already existing shorcode name' , 'click-to-chat-for-whatsapp' ) ?> </p>
557
  </div>
558
  </div>
559
  <?php
@@ -587,7 +587,7 @@ class CCW_Admin_Page {
587
  <?php
588
  }
589
  ?>
590
- <p class="description"> <?php _e( 'check this only if an issue with some cache plugin - api.whatsapp, web.whatsapp' , 'click-to-chat-for-whatsapp' ) ?> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/app-first/"><?php _e( 'more info' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
591
  <?php
592
  }
593
 
38
  add_settings_field( 'ccw_list_id_tohide', __( 'Posts, Pages Id\'s to Hide' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_list_id_tohide_cb' ), 'ccw_options_settings', 'ccw_settings' );
39
  add_settings_field( 'ccw_list_cat_tohide', __( 'Categorys to Hide' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_list_cat_tohide_cb' ), 'ccw_options_settings', 'ccw_settings' );
40
  add_settings_field( 'ccw_custom_shortcode', __( 'Shortcode name' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_custom_shortcode_cb' ), 'ccw_options_settings', 'ccw_settings' );
41
+ add_settings_field( 'ccw_app_first', __( 'App First / If Cache Issue' , 'click-to-chat-for-whatsapp' ), array( $this, 'ccw_app_first_cb' ), 'ccw_options_settings', 'ccw_settings' );
42
 
43
  }
44
 
57
  <div class="input-field col s12">
58
  <select name="ccw_options[enable]" class="select-1">
59
  <option value="1"><?php _e( 'No' , 'click-to-chat-for-whatsapp' ) ?></option>
60
+ <option value="2" <?php echo esc_attr( $ccw_enable['enable'] ) == 2 ? 'SELECTED' : ''; ?> >Yes</option>
61
  </select>
62
+ <label>enable</label>
63
  </div>
64
  </div>
65
  <?php
72
  <div class="row">
73
  <div class="input-field col s12 select-margin">
74
  <select name="ccw_options[enable_sc]" class="select-1">
75
+ <option value="1">No</option>
76
+ <option value="2" <?php echo esc_attr( $ccw_enable_sc['enable_sc'] ) == 2 ? 'SELECTED' : ''; ?> >Yes</option>
77
  </select>
78
+ <label>enable ShortCodes</label>
79
+ <p class="description">If Selected - No - then Hides Shortcodes and its syntax - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/enable-disable-styles/">more info</a> </p>
80
  </div>
81
  </div>
82
  <?php
89
  <div class="row">
90
  <div class="input-field col s12 select-margin">
91
  <select name="ccw_options[return_type]" class="select-1">
92
+ <option value="chat" <?php echo esc_attr( $ccw_return_type['return_type'] ) == 'chat' ? 'SELECTED' : ''; ?> >Chat</option>
93
+ <option value="group_chat" <?php echo esc_attr( $ccw_return_type['return_type'] ) == 'group_chat' ? 'SELECTED' : ''; ?> >Group chat - Invite</option>
94
  </select>
95
+ <label>Default return type - Chat or Group Chat Invite</label>
96
+ <p class="description">Default return type for Floating Style, shortcodes. But for shortcodes can change using shortcode attributes - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/return-type-chat-or-group-chat/">more info</a> </p>
97
  </div>
98
  </div>
99
  <?php
108
  <div class="row">
109
  <div class="input-field col s12">
110
  <select name="ccw_options[style]" class="select-2">
111
+ <option value="1" <?php echo $style_value == 1 ? 'SELECTED' : ''; ?> >Style-1</option>
112
+ <option value="2" <?php echo $style_value == 2 ? 'SELECTED' : ''; ?> >Style-2</option>
113
+ <option value="3" <?php echo $style_value == 3 ? 'SELECTED' : ''; ?> >Style-3</option>
114
+ <option value="4" <?php echo $style_value == 4 ? 'SELECTED' : ''; ?> >Style-4</option>
115
+ <option value="5" <?php echo $style_value == 5 ? 'SELECTED' : ''; ?> >Style-5</option>
116
+ <option value="6" <?php echo $style_value == 6 ? 'SELECTED' : ''; ?> >Style-6</option>
117
+ <option value="7" <?php echo $style_value == 7 ? 'SELECTED' : ''; ?> >Style-7</option>
118
+ <option value="8" <?php echo $style_value == 8 ? 'SELECTED' : ''; ?> >Style-8</option>
119
+ <option value="9" <?php echo $style_value == 9 ? 'SELECTED' : ''; ?> >Style-9</option>
120
+ <option value="99" <?php echo $style_value == 99 ? 'SELECTED' : ''; ?> >Style-99 ( Add your own Image / GIF )</option>
121
+ <option value="0" <?php echo $style_value == 0 ? 'SELECTED' : ''; ?> ><?php _e( 'Hide on Desktop Devices' , 'click-to-chat-for-whatsapp' ) ?></option>
122
  </select>
123
  <label><?php _e( 'Select Style for Destops' , 'click-to-chat-for-whatsapp' ) ?></label>
124
+ <p class="description"> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/styles/">List of Styles</a> </p>
125
+ <p class="description">These styles are customizable - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles' ); ?>">Customize Styles</a> </p>
126
 
127
  </div>
128
  </div>
147
  <option value="8" <?php echo $style_mobile_value == 8 ? 'SELECTED' : ''; ?> >Style-8</option>
148
  <option value="9" <?php echo $style_mobile_value == 9 ? 'SELECTED' : ''; ?> >Style-9</option>
149
  <option value="99" <?php echo $style_mobile_value == 99 ? 'SELECTED' : ''; ?> >Style-99 ( Add your own Image / GIF )</option>
150
+ <option value="0" <?php echo $style_mobile_value == 0 ? 'SELECTED' : ''; ?> >Hide on Mobile Devices</option>
151
  </select>
152
+ <label>Select Style for Mobile Devices</label>
153
  </div>
154
  </div>
155
  <?php
162
  <div class="row">
163
  <div class="input-field col s12">
164
  <input name="ccw_options[number]" value="<?php echo esc_attr( $ccw_number['number'] ) ?>" id="whatsapp_number" type="text" class="input-margin">
165
+ <label for="whatsapp_number">Enter whatsapp number </label>
166
+ <p class="description">Enter whatsapp number with country code ( e.g. 916123456789 ) please dont include +, ( here in e.g. 91 is country code 6123456789 is mobile number - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/whatsapp-number/">more info</a> ) </p>
167
  </div>
168
  </div>
169
  <?php
178
  <div class="input-field col s12">
179
  <input name="ccw_options[initial]" value="<?php echo esc_attr( $ccw_initial['initial'] ) ?>" id="whatsapp_initial" type="text" class="input-margin">
180
  <label for="whatsapp_initial"><?php _e( 'Initial Message' , 'click-to-chat-for-whatsapp' ) ?></label>
181
+ <p class="description">Initial message ( pre-filled ), placeholder {{url}} to add webpage url - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/pre-filled-message/">more info</a> </p>
182
  </div>
183
  </div>
184
  <?php
192
  <div class="row">
193
  <div class="input-field col s12">
194
  <input name="ccw_options[group_id]" value="<?php echo esc_attr( $ccw_group_id['group_id'] ) ?>" id="whatsapp_group_id" type="text" class="input-margin">
195
+ <label for="whatsapp_group_id">whatsapp group ID Extenstion </label>
196
+ <p class="description">Enter whatsapp Group Id - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/find-whatsapp-group-id/">more info</a> ) </p>
197
  </div>
198
  </div>
199
  <?php
213
  <option value="4" <?php echo $ccw_position_value == 4 ? 'SELECTED' : ''; ?> ><?php _e( 'top right' , 'click-to-chat-for-whatsapp' ) ?></option>
214
  </select>
215
  <label><?php _e( 'Fixed position to place' , 'click-to-chat-for-whatsapp' ) ?></label>
216
+ <p class="description"><?php _e( ' e.g. 10px - please add css units as suffix, e.g. 10px, 10%, 10rem, 10em' , 'click-to-chat-for-whatsapp' ) ?> .. <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/position-to-place/">more info</a> </p>
217
  </div>
218
  </div>
219
 
220
  <div class="row display-none position position-1 bottom-right">
221
  <div class="input-field col s6">
222
  <input name="ccw_options[position-1_bottom]" value="<?php echo esc_attr( $ccw_position['position-1_bottom'] ) ?>" id="position_bottom" type="text" class="validate">
223
+ <label for="position_bottom">position_bottom: </label>
224
  </div>
225
  <div class="input-field col s6">
226
  <input name="ccw_options[position-1_right]" value="<?php echo esc_attr( $ccw_position['position-1_right'] ) ?>" id="position_right" type="text" class="validate">
227
+ <label for="position_right">position_right: </label>
228
  </div>
229
  </div>
230
 
231
  <div class="row display-none position position-2 bottom-left">
232
  <div class="input-field col s6">
233
  <input name="ccw_options[position-2_bottom]" value="<?php echo esc_attr( $ccw_position['position-2_bottom'] ) ?>" id="position_bottom" type="text" class="validate">
234
+ <label for="position_bottom">position_bottom: </label>
235
  </div>
236
  <div class="input-field col s6">
237
  <input name="ccw_options[position-2_left]" value="<?php echo esc_attr( $ccw_position['position-2_left'] ) ?>" id="position_left" type="text" class="validate">
238
+ <label for="position_left">position_left: </label>
239
  </div>
240
  </div>
241
 
244
  <div class="row display-none position position-3 top-left">
245
  <div class="input-field col s6">
246
  <input name="ccw_options[position-3_top]" value="<?php echo esc_attr( $ccw_position['position-3_top'] ) ?>" id="position_top" type="text" class="validate">
247
+ <label for="position_top">position_top: </label>
248
  </div>
249
  <div class="input-field col s6">
250
  <input name="ccw_options[position-3_left]" value="<?php echo esc_attr( $ccw_position['position-3_left'] ) ?>" id="position_left" type="text" class="validate">
251
+ <label for="position_left">position_left: </label>
252
  </div>
253
  </div>
254
 
255
  <div class="row display-none position position-4 top-right">
256
  <div class="input-field col s6">
257
  <input name="ccw_options[position-4_top]" value="<?php echo esc_attr( $ccw_position['position-4_top'] ) ?>" id="position_top" type="text" class="validate">
258
+ <label for="position_top">position_top: </label>
259
  </div>
260
  <div class="input-field col s6">
261
  <input name="ccw_options[position-4_right]" value="<?php echo esc_attr( $ccw_position['position-4_right'] ) ?>" id="position_right" type="text" class="validate">
262
+ <label for="position_right">position_right: </label>
263
  </div>
264
  </div>
265
 
273
  <div class="row">
274
  <div class="input-field col s12">
275
  <input name="ccw_options[input_placeholder]" value="<?php echo esc_attr( $ccw_placeholder['input_placeholder'] ) ?>" id="input_placeholder" type="text" class="input-margin">
276
+ <label for="input_placeholder">placeholder value</label>
277
+ <p class="description"> - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/text-to-display/">more info</a> </p>
278
  </div>
279
  </div>
280
  <?php
307
  }
308
  ?>
309
 
310
+ <p class="description"> If Google Analytics is installed - creates an Event at there - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/google-analytics/">more info</a> </p>
311
+ <p class="description"> Customize Event Values - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles#ga-analytics' ); ?>"><?php _e( 'Customize Styles' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
312
+ <p class="description"> Using - <a target="_blank" href="https://www.holithemes.com/google-analytics-for-click-to-chat-for-whatsapp-plugin/"><?php _e( 'Google Tag Manager' , 'click-to-chat-for-whatsapp' ) ?></a> </p>
313
  <?php
314
  }
315
 
339
  <?php
340
  }
341
  ?>
342
+ <p class="description"> If Facebook Analytics is installed - creates an Event at there - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/facebook-analytics/">more info</a> </p>
343
+ <p class="description"> Customize Event Values - <a target="_blank" href="<?php echo admin_url( 'admin.php?page=ccw-edit-styles#fb-analytics' ); ?>">Customize Styles</a> </p>
344
  <?php
345
  }
346
 
504
  <?php
505
  }
506
  ?>
507
+ <p class="description">Check to hide - Hide - Styles - based on type of the page <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/show-hide-styles-based-on-type-of-the-page/">more info</a> </p>
508
  <?php
509
  }
510
 
516
  <div class="input-field col s12">
517
  <input name="ccw_options[list_hideon_pages]" value="<?php echo esc_attr( $ccw_list_id_tohide['list_hideon_pages'] ) ?>" id="ccw_list_id_tohide" type="text" class="input-margin">
518
  <label for="ccw_list_id_tohide">Id's list to Hide - add ',' after each id </label>
519
+ <p class="description"> Add Post, Pages, Media - ID's to hide, can add multiple id's separate with comma ( , ) - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/show-hide-styles-based-on-id/">more info</a> </p>
520
  </div>
521
  </div>
522
  <?php
529
  <div class="row">
530
  <div class="input-field col s12">
531
  <input name="ccw_options[list_hideon_cat]" value="<?php echo esc_attr( $ccw_list_cat_tohide['list_hideon_cat'] ) ?>" id="ccw_list_cat_tohide" type="text" class="input-margin">
532
+ <label for="ccw_list_cat_tohide">Category name\'s to Hide - add \',\' after each category name </label>
533
+ <p class="description">Category name\'s to hide, can add multiple Categories separate with comma ( , ) - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/hide-styles-based-on-category/">more info</a> </p>
534
  </div>
535
  </div>
536
  <?php
543
  <div class="row">
544
  <div class="input-field col s12">
545
  <input name="ccw_options[shortcode]" value="<?php echo esc_attr( $ccw_shortcode['shortcode'] ) ?>" id="shortcode" type="text" class="input-margin">
546
+ <label for="shortcode">shortcode name</label>
547
  <?php
548
  $shorcode_list = '';
549
  // global used here is defined by wordpress
551
  $shorcode_list .= $key . ', ';
552
  }
553
  ?>
554
+ <p class="description"> Default values is \'chat\', can customize shortcode name - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/change-shortcode-name/">more info</a> </p>
555
+ <!-- <p class="description"> please dont add this already existing shorcode names - <?php echo $shorcode_list ?> </p> -->
556
+ <p class="description"> please dont change to already existing shorcode name </p>
557
  </div>
558
  </div>
559
  <?php
587
  <?php
588
  }
589
  ?>
590
+ <p class="description"> check this only if an issue with some cache plugin - api.whatsapp, web.whatsapp - <a target="_blank" href="https://www.holithemes.com/whatsapp-chat/app-first/">more info</a> </p>
591
  <?php
592
  }
593
 
admin/commons/admin-sidebar.php CHANGED
@@ -22,8 +22,8 @@ if ( ! defined( 'ABSPATH' ) ) exit;
22
  <br>
23
  <p>We developed a new Interface, plannnig to release soon. </p>
24
  <br>
25
- <p>Please <a href="https://www.holithemes.com/go/ctc-1-8">Download</a> the beta version</p><br>
26
- <p>After downloading, please delete the current version and reinstall the latest version.</p><br>
27
  <br>
28
 
29
  </div>
22
  <br>
23
  <p>We developed a new Interface, plannnig to release soon. </p>
24
  <br>
25
+ <p>Please <a href="https://www.holithemes.com/go/ctc-1-8">Download</a> the beta version and reinstall the plugin</p><br>
26
+ <!-- <p>After downloading, please delete the current version and reinstall the latest version.</p><br> -->
27
  <br>
28
 
29
  </div>
admin/default-values.php CHANGED
@@ -51,47 +51,6 @@ $values = array(
51
 
52
  );
53
 
54
- /**
55
- * for version before 1.3
56
- * has things changed - showon is changed to hideon
57
- * as its checkboxes
58
- * handled in this way..
59
- */
60
- $showon = get_option( 'ccw_options' );
61
- $p_ver = get_option('ccw_plugin_details');
62
-
63
- if ( '1.1' == $p_ver['version'] || '1.2' == $p_ver['version'] ) {
64
-
65
- if( !isset( $showon['showon_posts'] ) ) {
66
- $values[hideon_posts] = '1';
67
- }
68
-
69
- if( !isset( $showon['showon_page'] ) ) {
70
- $values[hideon_page] = '1';
71
- }
72
-
73
- if( !isset( $showon['showon_homepage'] ) ) {
74
- $values[hideon_homepage] = '1';
75
- }
76
-
77
- if( !isset( $showon['showon_frontpage'] ) ) {
78
- $values[hideon_frontpage] = '1';
79
- }
80
-
81
- if( !isset( $showon['showon_category'] ) ) {
82
- $values[hideon_category] = '1';
83
- }
84
-
85
- if( !isset( $showon['showon_archive'] ) ) {
86
- $values[hideon_archive] = '1';
87
- }
88
-
89
- if( !isset( $showon['showon_404'] ) ) {
90
- $values[hideon_404] = '1';
91
- }
92
- }
93
-
94
-
95
  // update_option( 'ccw_options', $values );
96
  // add_option( 'ccw_options', $values );
97
 
@@ -245,8 +204,7 @@ update_option( 'ccw_plugin_details', $plugin_details );
245
 
246
 
247
  /**
248
- * for new interface.. adding some values in advance..
249
- * todo
250
  */
251
 
252
  function new_options() {
51
 
52
  );
53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  // update_option( 'ccw_options', $values );
55
  // add_option( 'ccw_options', $values );
56
 
204
 
205
 
206
  /**
207
+ * for new interface.. in advance..
 
208
  */
209
 
210
  function new_options() {
admin/settings_page.php CHANGED
@@ -47,11 +47,11 @@ if ( ! defined( 'ABSPATH' ) ) exit;
47
  <div class="col s12 m6">
48
  <div class="card blue-grey darken-1">
49
  <div class="card-content white-text">
50
- <span class="card-title"><?php _e( 'Plugin Review' , 'click-to-chat-for-whatsapp' ) ?></span>
51
  <br>
52
- <p><?php _e( 'If you like the plugin, Support the Developers' , 'click-to-chat-for-whatsapp' ) ?></p>
53
  <br>
54
- <p><?php _e( 'By giving 5 Star rating' , 'click-to-chat-for-whatsapp' ) ?></p>
55
  </div>
56
  <div class="card-action">
57
  <a target="_blank" href="https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/reviews/#new-post"><?php _e( '' , 'click-to-chat-for-whatsapp' ) ?>Plugin Review</a>
@@ -60,7 +60,7 @@ if ( ! defined( 'ABSPATH' ) ) exit;
60
  </div>
61
 
62
 
63
- <div class="col s12 m6">
64
  <div class="card blue-grey darken-1">
65
  <div class="card-content white-text">
66
  <span class="card-title"><?php _e( 'Click - premium plugin' , 'click-to-chat-for-whatsapp' ) ?></span>
@@ -73,7 +73,7 @@ if ( ! defined( 'ABSPATH' ) ) exit;
73
  <a target="_blank" href="https://www.holithemes.com/plugins/click/"><?php _e( '' , 'click-to-chat-for-whatsapp' ) ?>HoliThemes Click</a>
74
  </div>
75
  </div>
76
- </div>
77
 
78
 
79
  </div>
47
  <div class="col s12 m6">
48
  <div class="card blue-grey darken-1">
49
  <div class="card-content white-text">
50
+ <span class="card-title">Plugin Review</span>
51
  <br>
52
+ <p>If you like the plugin, please Support the Developers</p>
53
  <br>
54
+ <p>By giving 5 Star rating</p>
55
  </div>
56
  <div class="card-action">
57
  <a target="_blank" href="https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/reviews/#new-post"><?php _e( '' , 'click-to-chat-for-whatsapp' ) ?>Plugin Review</a>
60
  </div>
61
 
62
 
63
+ <!-- <div class="col s12 m6">
64
  <div class="card blue-grey darken-1">
65
  <div class="card-content white-text">
66
  <span class="card-title"><?php _e( 'Click - premium plugin' , 'click-to-chat-for-whatsapp' ) ?></span>
73
  <a target="_blank" href="https://www.holithemes.com/plugins/click/"><?php _e( '' , 'click-to-chat-for-whatsapp' ) ?>HoliThemes Click</a>
74
  </div>
75
  </div>
76
+ </div> -->
77
 
78
 
79
  </div>
assets/css/mdstyle8.css ADDED
@@ -0,0 +1,867 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Material Design styles - load on 8 */
2
+
3
+ .mdstyle8 .transparent {
4
+ background-color: transparent !important; }
5
+ .mdstyle8 .transparent-text {
6
+ color: transparent !important; }
7
+ .mdstyle8 html {
8
+ font-family: sans-serif;
9
+ /* 1 */
10
+ -ms-text-size-adjust: 100%;
11
+ /* 2 */
12
+ -webkit-text-size-adjust: 100%;
13
+ /* 2 */ }
14
+ .mdstyle8 body {
15
+ margin: 0; }
16
+ .mdstyle8 article,
17
+ .mdstyle8 aside,
18
+ .mdstyle8 footer,
19
+ .mdstyle8 header,
20
+ .mdstyle8 main,
21
+ .mdstyle8 nav,
22
+ .mdstyle8 section,
23
+ .mdstyle8 summary {
24
+ display: block; }
25
+
26
+ .mdstyle8 [hidden],
27
+ .mdstyle8 template {
28
+ display: none; }
29
+ .mdstyle8 a {
30
+ background-color: transparent; }
31
+ .mdstyle8 a:active,
32
+ .mdstyle8 a:hover {
33
+ outline: 0; }
34
+ .mdstyle8 abbr[title] {
35
+ border-bottom: 1px dotted; }
36
+ .mdstyle8 b,
37
+ .mdstyle8 strong {
38
+ font-weight: bold; }
39
+ .mdstyle8 dfn {
40
+ font-style: italic; }
41
+ .mdstyle8 h1 {
42
+ font-size: 2em;
43
+ margin: 0.67em 0; }
44
+ .mdstyle8 mark {
45
+ background: #ff0;
46
+ color: #000; }
47
+ .mdstyle8 small {
48
+ font-size: 80%; }
49
+ .mdstyle8 sub,
50
+ .mdstyle8 sup {
51
+ font-size: 75%;
52
+ line-height: 0;
53
+ position: relative;
54
+ vertical-align: baseline; }
55
+ .mdstyle8 sup {
56
+ top: -0.5em; }
57
+ .mdstyle8 sub {
58
+ bottom: -0.25em; }
59
+ .mdstyle8 img {
60
+ border: 0; }
61
+ .mdstyle8 svg:not(:root) {
62
+ overflow: hidden; }
63
+ .mdstyle8 figure {
64
+ margin: 1em 40px; }
65
+ .mdstyle8 hr {
66
+ box-sizing: content-box;
67
+ height: 0; }
68
+ .mdstyle8 pre {
69
+ overflow: auto; }
70
+ .mdstyle8 code,
71
+ .mdstyle8 kbd,
72
+ .mdstyle8 pre,
73
+ .mdstyle8 samp {
74
+ font-family: monospace, monospace;
75
+ font-size: 1em; }
76
+ .mdstyle8 button,
77
+ .mdstyle8 input,
78
+ .mdstyle8 optgroup,
79
+ .mdstyle8 select,
80
+ .mdstyle8 textarea {
81
+ color: inherit;
82
+ /* 1 */
83
+ font: inherit;
84
+ /* 2 */
85
+ margin: 0;
86
+ /* 3 */ }
87
+ .mdstyle8 button {
88
+ overflow: visible; }
89
+ .mdstyle8 button,
90
+ .mdstyle8 select {
91
+ text-transform: none; }
92
+ .mdstyle8 button,
93
+ .mdstyle8 html input[type="button"],
94
+ .mdstyle8 input[type="reset"],
95
+ .mdstyle8 input[type="submit"] {
96
+ -webkit-appearance: button;
97
+ /* 2 */
98
+ cursor: pointer;
99
+ /* 3 */ }
100
+ .mdstyle8 button[disabled],
101
+ .mdstyle8 html input[disabled] {
102
+ cursor: default; }
103
+ .mdstyle8 button::-moz-focus-inner,
104
+ .mdstyle8 input::-moz-focus-inner {
105
+ border: 0;
106
+ padding: 0; }
107
+ .mdstyle8 input {
108
+ line-height: normal; }
109
+
110
+
111
+ .mdstyle8 fieldset {
112
+ border: 1px solid #c0c0c0;
113
+ margin: 0 2px;
114
+ padding: 0.35em 0.625em 0.75em; }
115
+ .mdstyle8 legend {
116
+ border: 0;
117
+ /* 1 */
118
+ padding: 0;
119
+ /* 2 */ }
120
+ .mdstyle8 textarea {
121
+ overflow: auto; }
122
+ .mdstyle8 optgroup {
123
+ font-weight: bold; }
124
+ .mdstyle8 table {
125
+ border-collapse: collapse;
126
+ border-spacing: 0; }
127
+ .mdstyle8 td,
128
+ .mdstyle8 th {
129
+ padding: 0; }
130
+ .mdstyle8 html {
131
+ box-sizing: border-box; }
132
+ .mdstyle8 *, .mdstyle8 *:before, .mdstyle8 *:after {
133
+ box-sizing: inherit; }
134
+ .mdstyle8 ul:not(.browser-default) {
135
+ padding-left: 0;
136
+ list-style-type: none; }
137
+ .mdstyle8 ul:not(.browser-default) > li {
138
+ list-style-type: none; }
139
+ .mdstyle8 a {
140
+ color: #039be5;
141
+ text-decoration: none;
142
+ -webkit-tap-highlight-color: transparent; }
143
+ .mdstyle8 .valign-wrapper {
144
+ display: flex;
145
+ align-items: center; }
146
+ .mdstyle8 .clearfix {
147
+ clear: both; }
148
+ .mdstyle8 .z-depth-0 {
149
+ box-shadow: none !important; }
150
+ .mdstyle8 .z-depth-1, .mdstyle8 .btn, .mdstyle8 .btn-large, .mdstyle8 .btn-floating {
151
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }
152
+ .mdstyle8 .z-depth-1-half, .mdstyle8 .btn:hover, .mdstyle8 .btn-large:hover, .mdstyle8 .btn-floating:hover {
153
+ box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2); }
154
+ .mdstyle8 .z-depth-2 {
155
+ box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3); }
156
+ .mdstyle8 .z-depth-3 {
157
+ box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3); }
158
+ .mdstyle8 .z-depth-4 {
159
+ box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3); }
160
+ .mdstyle8 .z-depth-5 {
161
+ box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.3); }
162
+ .mdstyle8 .hoverable {
163
+ transition: box-shadow .25s; }
164
+ .mdstyle8 .hoverable:hover {
165
+ box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
166
+ .mdstyle8 .divider {
167
+ height: 1px;
168
+ overflow: hidden;
169
+ background-color: #e0e0e0; }
170
+ .mdstyle8 blockquote {
171
+ margin: 20px 0;
172
+ padding-left: 1.5rem;
173
+ border-left: 5px solid #ee6e73; }
174
+ .mdstyle8 i {
175
+ line-height: inherit; }
176
+ .mdstyle8 i.left {
177
+ float: left;
178
+ margin-right: 15px; }
179
+ .mdstyle8 i.right {
180
+ float: right;
181
+ margin-left: 15px; }
182
+ .mdstyle8 i.tiny {
183
+ font-size: 1rem; }
184
+ .mdstyle8 i.small {
185
+ font-size: 2rem; }
186
+ .mdstyle8 i.medium {
187
+ font-size: 4rem; }
188
+ .mdstyle8 i.large {
189
+ font-size: 6rem; }
190
+ .mdstyle8 img.responsive-img,
191
+ .mdstyle8 video.responsive-video {
192
+ max-width: 100%;
193
+ height: auto; }
194
+
195
+
196
+
197
+ .mdstyle8 ul.staggered-list li {
198
+ opacity: 0; }
199
+ .mdstyle8 .fade-in {
200
+ opacity: 0;
201
+ transform-origin: 0 50%; }
202
+
203
+ .mdstyle8 .page-footer {
204
+ padding-top: 20px;
205
+ color: #fff;
206
+ background-color: #ee6e73; }
207
+ .mdstyle8 .page-footer .footer-copyright {
208
+ overflow: hidden;
209
+ min-height: 50px;
210
+ display: flex;
211
+ align-items: center;
212
+ padding: 10px 0px;
213
+ color: rgba(255, 255, 255, 0.8);
214
+ background-color: rgba(51, 51, 51, 0.08); }
215
+ .mdstyle8 table, .mdstyle8 th, .mdstyle8 td {
216
+ border: none; }
217
+ .mdstyle8 table {
218
+ width: 100%;
219
+ display: table; }
220
+ .mdstyle8 table.bordered > thead > tr,
221
+ .mdstyle8 table.bordered > tbody > tr {
222
+ border-bottom: 1px solid #d0d0d0; }
223
+ .mdstyle8 table.striped > tbody > tr:nth-child(odd) {
224
+ background-color: #f2f2f2; }
225
+ .mdstyle8 table.striped > tbody > tr > td {
226
+ border-radius: 0; }
227
+ .mdstyle8 table.highlight > tbody > tr {
228
+ transition: background-color .25s ease; }
229
+ .mdstyle8 table.highlight > tbody > tr:hover {
230
+ background-color: #f2f2f2; }
231
+ .mdstyle8 table.centered thead tr th, .mdstyle8 table.centered tbody tr td {
232
+ text-align: center; }
233
+ .mdstyle8 thead {
234
+ border-bottom: 1px solid #d0d0d0; }
235
+ .mdstyle8 td, .mdstyle8 th {
236
+ padding: 15px 5px;
237
+ display: table-cell;
238
+ text-align: left;
239
+ vertical-align: middle;
240
+ border-radius: 2px; }
241
+ @media only screen and (max-width: 992px) {
242
+ .mdstyle8 table.responsive-table {
243
+ width: 100%;
244
+ border-collapse: collapse;
245
+ border-spacing: 0;
246
+ display: block;
247
+ position: relative;
248
+ /* sort out borders */ }
249
+ .mdstyle8 table.responsive-table td:empty:before {
250
+ content: '\A0'; }
251
+ .mdstyle8 table.responsive-table th,
252
+ .mdstyle8 table.responsive-table td {
253
+ margin: 0;
254
+ vertical-align: top; }
255
+ .mdstyle8 table.responsive-table th {
256
+ text-align: left; }
257
+ .mdstyle8 table.responsive-table thead {
258
+ display: block;
259
+ float: left; }
260
+ .mdstyle8 table.responsive-table thead tr {
261
+ display: block;
262
+ padding: 0 10px 0 0; }
263
+ .mdstyle8 table.responsive-table thead tr th::before {
264
+ content: "\A0"; }
265
+ .mdstyle8 table.responsive-table tbody {
266
+ display: block;
267
+ width: auto;
268
+ position: relative;
269
+ overflow-x: auto;
270
+ white-space: nowrap; }
271
+ .mdstyle8 table.responsive-table tbody tr {
272
+ display: inline-block;
273
+ vertical-align: top; }
274
+ .mdstyle8 table.responsive-table th {
275
+ display: block;
276
+ text-align: right; }
277
+ .mdstyle8 table.responsive-table td {
278
+ display: block;
279
+ min-height: 1.25em;
280
+ text-align: left; }
281
+ .mdstyle8 table.responsive-table tr {
282
+ padding: 0 10px; }
283
+ .mdstyle8 table.responsive-table thead {
284
+ border: 0;
285
+ border-right: 1px solid #d0d0d0; }
286
+ .mdstyle8 table.responsive-table.bordered th {
287
+ border-bottom: 0;
288
+ border-left: 0; }
289
+ .mdstyle8 table.responsive-table.bordered td {
290
+ border-left: 0;
291
+ border-right: 0;
292
+ border-bottom: 0; }
293
+ .mdstyle8 table.responsive-table.bordered tr {
294
+ border: 0; }
295
+ .mdstyle8 table.responsive-table.bordered tbody tr {
296
+ border-right: 1px solid #d0d0d0; } }
297
+
298
+ .mdstyle8 .secondary-content {
299
+ float: right;
300
+ color: #26a69a; }
301
+ .mdstyle8 .collapsible .collection {
302
+ margin: 0;
303
+ border: none; }
304
+
305
+
306
+ .mdstyle8 .hide {
307
+ display: none !important; }
308
+ .mdstyle8 .left-align {
309
+ text-align: left; }
310
+ .mdstyle8 .right-align {
311
+ text-align: right; }
312
+ .mdstyle8 .center, .mdstyle8 .center-align {
313
+ text-align: center; }
314
+ .mdstyle8 .left {
315
+ float: left !important; }
316
+ .mdstyle8 .right {
317
+ float: right !important; }
318
+ .mdstyle8 .no-select {
319
+ user-select: none; }
320
+ .mdstyle8 .circle {
321
+ border-radius: 50%; }
322
+ .mdstyle8 .center-block {
323
+ display: block;
324
+ margin-left: auto;
325
+ margin-right: auto; }
326
+ .mdstyle8 .truncate {
327
+ display: block;
328
+ white-space: nowrap;
329
+ overflow: hidden;
330
+ text-overflow: ellipsis; }
331
+ .mdstyle8 .no-padding {
332
+ padding: 0 !important; }
333
+ .mdstyle8 a {
334
+ text-decoration: none; }
335
+ .mdstyle8 html {
336
+ line-height: 1.5;
337
+ font-family: "Roboto", sans-serif;
338
+ font-weight: normal;
339
+ color: rgba(0, 0, 0, 0.87); }
340
+ @media only screen and (min-width: 0) {
341
+ .mdstyle8 html {
342
+ font-size: 14px; } }
343
+ @media only screen and (min-width: 992px) {
344
+ .mdstyle8 html {
345
+ font-size: 14.5px; } }
346
+ @media only screen and (min-width: 1200px) {
347
+ .mdstyle8 html {
348
+ font-size: 15px; } }
349
+
350
+ .mdstyle8 em {
351
+ font-style: italic; }
352
+ .mdstyle8 strong {
353
+ font-weight: 500; }
354
+ .mdstyle8 small {
355
+ font-size: 75%; }
356
+ .mdstyle8 .light, .mdstyle8 .page-footer .footer-copyright {
357
+ font-weight: 300; }
358
+ .mdstyle8 .thin {
359
+ font-weight: 200; }
360
+
361
+ .mdstyle8 .scale-transition {
362
+ transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important; }
363
+ .mdstyle8 .scale-transition.scale-out {
364
+ transform: scale(0);
365
+ transition: transform .2s !important; }
366
+ .mdstyle8 .scale-transition.scale-in {
367
+ transform: scale(1); }
368
+ .mdstyle8 .btn, .mdstyle8 .btn-large,
369
+ .mdstyle8 .btn-flat {
370
+ border: none;
371
+ border-radius: 2px;
372
+ display: inline-block;
373
+ height: 36px;
374
+ line-height: 36px;
375
+ padding: 0 2rem;
376
+ text-transform: uppercase;
377
+ vertical-align: middle;
378
+ -webkit-tap-highlight-color: transparent; }
379
+ .mdstyle8 .btn.disabled, .mdstyle8 .disabled.btn-large,
380
+ .mdstyle8 .btn-floating.disabled,
381
+ .mdstyle8 .btn-large.disabled,
382
+ .mdstyle8 .btn-flat.disabled,
383
+ .mdstyle8 .btn:disabled, .mdstyle8 .btn-large:disabled,
384
+ .mdstyle8 .btn-floating:disabled,
385
+ .mdstyle8 .btn-large:disabled,
386
+ .mdstyle8 .btn-flat:disabled,
387
+ .mdstyle8 .btn[disabled], .mdstyle8 [disabled].btn-large,
388
+ .mdstyle8 .btn-floating[disabled],
389
+ .mdstyle8 .btn-large[disabled],
390
+ .mdstyle8 .btn-flat[disabled] {
391
+ pointer-events: none;
392
+ background-color: #DFDFDF !important;
393
+ box-shadow: none;
394
+ color: #9F9F9F !important;
395
+ cursor: default; }
396
+ .mdstyle8 .btn.disabled:hover, .mdstyle8 .disabled.btn-large:hover,
397
+ .mdstyle8 .btn-floating.disabled:hover,
398
+ .mdstyle8 .btn-large.disabled:hover,
399
+ .mdstyle8 .btn-flat.disabled:hover,
400
+ .mdstyle8 .btn:disabled:hover, .mdstyle8 .btn-large:disabled:hover,
401
+ .mdstyle8 .btn-floating:disabled:hover,
402
+ .mdstyle8 .btn-large:disabled:hover,
403
+ .mdstyle8 .btn-flat:disabled:hover,
404
+ .mdstyle8 .btn[disabled]:hover, .mdstyle8 [disabled].btn-large:hover,
405
+ .mdstyle8 .btn-floating[disabled]:hover,
406
+ .mdstyle8 .btn-large[disabled]:hover,
407
+ .mdstyle8 .btn-flat[disabled]:hover {
408
+ background-color: #DFDFDF !important;
409
+ color: #9F9F9F !important; }
410
+ .mdstyle8 .btn, .mdstyle8 .btn-large,
411
+ .mdstyle8 .btn-floating,
412
+ .mdstyle8 .btn-large,
413
+ .mdstyle8 .btn-flat {
414
+ font-size: 1rem;
415
+ outline: 0; }
416
+ .mdstyle8 .btn i, .mdstyle8 .btn-large i,
417
+ .mdstyle8 .btn-floating i,
418
+ .mdstyle8 .btn-large i,
419
+ .mdstyle8 .btn-flat i {
420
+ font-size: 1.3rem;
421
+ line-height: inherit; }
422
+ .mdstyle8 .btn:focus, .mdstyle8 .btn-large:focus,
423
+ .mdstyle8 .btn-floating:focus {
424
+ background-color: #1d7d74; }
425
+ .mdstyle8 .btn, .mdstyle8 .btn-large {
426
+ text-decoration: none;
427
+ color: #fff;
428
+ background-color: #26a69a;
429
+ text-align: center;
430
+ letter-spacing: .5px;
431
+ transition: .2s ease-out;
432
+ cursor: pointer; }
433
+ .mdstyle8 .btn:hover, .mdstyle8 .btn-large:hover {
434
+ background-color: #2bbbad; }
435
+ .mdstyle8 .btn-floating {
436
+ display: inline-block;
437
+ color: #fff;
438
+ position: relative;
439
+ overflow: hidden;
440
+ z-index: 1;
441
+ width: 40px;
442
+ height: 40px;
443
+ line-height: 40px;
444
+ padding: 0;
445
+ background-color: #26a69a;
446
+ border-radius: 50%;
447
+ transition: .3s;
448
+ cursor: pointer;
449
+ vertical-align: middle; }
450
+ .mdstyle8 .btn-floating:hover {
451
+ background-color: #26a69a; }
452
+ .mdstyle8 .btn-floating:before {
453
+ border-radius: 0; }
454
+ .mdstyle8 .btn-floating.btn-large {
455
+ width: 56px;
456
+ height: 56px; }
457
+ .mdstyle8 .btn-floating.btn-large.halfway-fab {
458
+ bottom: -28px; }
459
+ .mdstyle8 .btn-floating.btn-large i {
460
+ line-height: 56px; }
461
+ .mdstyle8 .btn-floating.halfway-fab {
462
+ position: absolute;
463
+ right: 24px;
464
+ bottom: -20px; }
465
+ .mdstyle8 .btn-floating.halfway-fab.left {
466
+ right: auto;
467
+ left: 24px; }
468
+ .mdstyle8 .btn-floating i {
469
+ width: inherit;
470
+ display: inline-block;
471
+ text-align: center;
472
+ color: #fff;
473
+ font-size: 1.6rem;
474
+ line-height: 40px; }
475
+ .mdstyle8 button.btn-floating {
476
+ border: none; }
477
+ .mdstyle8 .fixed-action-btn {
478
+ position: fixed;
479
+ right: 23px;
480
+ bottom: 23px;
481
+ padding-top: 15px;
482
+ margin-bottom: 0;
483
+ z-index: 997; }
484
+ .mdstyle8 .fixed-action-btn.active ul {
485
+ visibility: visible; }
486
+ .mdstyle8 .fixed-action-btn.horizontal {
487
+ padding: 0 0 0 15px; }
488
+ .mdstyle8 .fixed-action-btn.horizontal ul {
489
+ text-align: right;
490
+ right: 64px;
491
+ top: 50%;
492
+ transform: translateY(-50%);
493
+ height: 100%;
494
+ left: auto;
495
+ width: 500px;
496
+ /*width 100% only goes to width of button container */ }
497
+ .mdstyle8 .fixed-action-btn.horizontal ul li {
498
+ display: inline-block;
499
+ margin: 15px 15px 0 0; }
500
+ .mdstyle8 .fixed-action-btn.toolbar {
501
+ padding: 0;
502
+ height: 56px; }
503
+ .mdstyle8 .fixed-action-btn.toolbar.active > a i {
504
+ opacity: 0; }
505
+ .mdstyle8 .fixed-action-btn.toolbar ul {
506
+ display: flex;
507
+ top: 0;
508
+ bottom: 0;
509
+ z-index: 1; }
510
+ .mdstyle8 .fixed-action-btn.toolbar ul li {
511
+ flex: 1;
512
+ display: inline-block;
513
+ margin: 0;
514
+ height: 100%;
515
+ transition: none; }
516
+ .mdstyle8 .fixed-action-btn.toolbar ul li a {
517
+ display: block;
518
+ overflow: hidden;
519
+ position: relative;
520
+ width: 100%;
521
+ height: 100%;
522
+ background-color: transparent;
523
+ box-shadow: none;
524
+ color: #fff;
525
+ line-height: 56px;
526
+ z-index: 1; }
527
+ .mdstyle8 .fixed-action-btn.toolbar ul li a i {
528
+ line-height: inherit; }
529
+ .mdstyle8 .fixed-action-btn ul {
530
+ left: 0;
531
+ right: 0;
532
+ text-align: center;
533
+ position: absolute;
534
+ bottom: 64px;
535
+ margin: 0;
536
+ visibility: hidden; }
537
+ .mdstyle8 .fixed-action-btn ul li {
538
+ margin-bottom: 15px; }
539
+ .mdstyle8 .fixed-action-btn ul a.btn-floating {
540
+ opacity: 0; }
541
+ .mdstyle8 .fixed-action-btn .fab-backdrop {
542
+ position: absolute;
543
+ top: 0;
544
+ left: 0;
545
+ z-index: -1;
546
+ width: 40px;
547
+ height: 40px;
548
+ background-color: #26a69a;
549
+ border-radius: 50%;
550
+ transform: scale(0); }
551
+ .mdstyle8 .btn-flat {
552
+ box-shadow: none;
553
+ background-color: transparent;
554
+ color: #343434;
555
+ cursor: pointer;
556
+ transition: background-color .2s; }
557
+ .mdstyle8 .btn-flat:focus, .mdstyle8 .btn-flat:hover {
558
+ box-shadow: none; }
559
+ .mdstyle8 .btn-flat:focus {
560
+ background-color: rgba(0, 0, 0, 0.1); }
561
+ .mdstyle8 .btn-flat.disabled {
562
+ background-color: transparent !important;
563
+ color: #b3b3b3 !important;
564
+ cursor: default; }
565
+ .mdstyle8 .btn-large {
566
+ height: 54px;
567
+ line-height: 54px; }
568
+ .mdstyle8 .btn-large i {
569
+ font-size: 1.6rem; }
570
+ .mdstyle8 .btn-block {
571
+ display: block; }
572
+ .mdstyle8 .chip {
573
+ display: inline-block;
574
+ height: 32px;
575
+ font-size: 13px;
576
+ font-weight: 500;
577
+ color: rgba(0, 0, 0, 0.6);
578
+ line-height: 32px;
579
+ padding: 0 12px;
580
+ border-radius: 16px;
581
+ background-color: #e4e4e4;
582
+ margin-bottom: 5px;
583
+ margin-right: 5px; }
584
+ .mdstyle8 .chip > img {
585
+ float: left;
586
+ margin: 0 8px 0 -12px;
587
+ height: 32px;
588
+ width: 32px;
589
+ border-radius: 50%; }
590
+ .mdstyle8 .chip .close {
591
+ cursor: pointer;
592
+ float: right;
593
+ font-size: 16px;
594
+ line-height: 32px;
595
+ padding-left: 8px; }
596
+ .mdstyle8 .chips {
597
+ border: none;
598
+ border-bottom: 1px solid #9e9e9e;
599
+ box-shadow: none;
600
+ margin: 0 0 20px 0;
601
+ min-height: 45px;
602
+ outline: none;
603
+ transition: all .3s; }
604
+ .mdstyle8 .chips.focus {
605
+ border-bottom: 1px solid #26a69a;
606
+ box-shadow: 0 1px 0 0 #26a69a; }
607
+ .mdstyle8 .chips:hover {
608
+ cursor: text; }
609
+ .mdstyle8 .chips .chip.selected {
610
+ background-color: #26a69a;
611
+ color: #fff; }
612
+ .mdstyle8 .chips .input {
613
+ background: none;
614
+ border: 0;
615
+ color: rgba(0, 0, 0, 0.6);
616
+ display: inline-block;
617
+ font-size: 1rem;
618
+ height: 3rem;
619
+ line-height: 32px;
620
+ outline: 0;
621
+ margin: 0;
622
+ padding: 0 !important;
623
+ width: 120px !important; }
624
+ .mdstyle8 .chips .input:focus {
625
+ border: 0 !important;
626
+ box-shadow: none !important; }
627
+ .mdstyle8 .chips .autocomplete-content {
628
+ margin-top: 0;
629
+ margin-bottom: 0; }
630
+ .mdstyle8 .prefix ~ .chips {
631
+ margin-left: 3rem;
632
+ width: 92%;
633
+ width: calc(100% - 3rem); }
634
+ .mdstyle8 .chips:empty ~ label {
635
+ font-size: 0.8rem;
636
+ transform: translateY(-140%); }
637
+ .mdstyle8 select:focus {
638
+ outline: 1px solid #c9f3ef; }
639
+ .mdstyle8 button:focus {
640
+ outline: none;
641
+ background-color: #2ab7a9; }
642
+ .mdstyle8 label {
643
+ font-size: 0.8rem;
644
+ color: #9e9e9e; }
645
+ .mdstyle8 ::placeholder {
646
+ color: #d1d1d1; }
647
+ .mdstyle8 input:not([type]),
648
+ .mdstyle8 input[type=text]:not(.browser-default),
649
+ .mdstyle8 textarea.materialize-textarea {
650
+ background-color: transparent;
651
+ border: none;
652
+ border-bottom: 1px solid #9e9e9e;
653
+ border-radius: 0;
654
+ outline: none;
655
+ height: 3rem;
656
+ width: 100%;
657
+ font-size: 1rem;
658
+ margin: 0 0 20px 0;
659
+ padding: 0;
660
+ box-shadow: none;
661
+ box-sizing: content-box;
662
+ transition: all 0.3s; }
663
+ .mdstyle8 input:not([type]):disabled, .mdstyle8 input:not([type])[readonly="readonly"],
664
+ .mdstyle8 input[type=text]:not(.browser-default):disabled,
665
+ .mdstyle8 input[type=text]:not(.browser-default)[readonly="readonly"],
666
+ .mdstyle8 textarea.materialize-textarea:disabled,
667
+ .mdstyle8 textarea.materialize-textarea[readonly="readonly"] {
668
+ color: rgba(0, 0, 0, 0.42);
669
+ border-bottom: 1px dotted rgba(0, 0, 0, 0.42); }
670
+ .mdstyle8 input:not([type]):disabled + label,
671
+ .mdstyle8 input:not([type])[readonly="readonly"] + label,
672
+ .mdstyle8 input[type=text]:not(.browser-default):disabled + label,
673
+ .mdstyle8 input[type=text]:not(.browser-default)[readonly="readonly"] + label,
674
+ .mdstyle8 textarea.materialize-textarea:disabled + label,
675
+ .mdstyle8 textarea.materialize-textarea[readonly="readonly"] + label {
676
+ color: rgba(0, 0, 0, 0.42); }
677
+ .mdstyle8 input:not([type]):focus:not([readonly]),
678
+ .mdstyle8 input[type=text]:not(.browser-default):focus:not([readonly]),
679
+ .mdstyle8 textarea.materialize-textarea:focus:not([readonly]) {
680
+ border-bottom: 1px solid #26a69a;
681
+ box-shadow: 0 1px 0 0 #26a69a; }
682
+ .mdstyle8 input:not([type]):focus:not([readonly]) + label,
683
+ .mdstyle8 input[type=text]:not(.browser-default):focus:not([readonly]) + label,
684
+ .mdstyle8 textarea.materialize-textarea:focus:not([readonly]) + label {
685
+ color: #26a69a; }
686
+ .mdstyle8 input:not([type]).validate + label,
687
+ .mdstyle8 input[type=text]:not(.browser-default).validate + label,
688
+ .mdstyle8 textarea.materialize-textarea.validate + label {
689
+ width: 100%; }
690
+ .mdstyle8 input:not([type]).invalid + label:after,
691
+ .mdstyle8 input:not([type]).valid + label:after,
692
+ .mdstyle8 input[type=text]:not(.browser-default).invalid + label:after,
693
+ .mdstyle8 input[type=text]:not(.browser-default).valid + label:after,
694
+ .mdstyle8 textarea.materialize-textarea.invalid + label:after,
695
+ .mdstyle8 textarea.materialize-textarea.valid + label:after {
696
+ display: none; }
697
+ .mdstyle8 input:not([type]).invalid + label.active:after,
698
+ .mdstyle8 input:not([type]).valid + label.active:after,
699
+ .mdstyle8 input[type=text]:not(.browser-default).invalid + label.active:after,
700
+ .mdstyle8 input[type=text]:not(.browser-default).valid + label.active:after,
701
+ .mdstyle8 textarea.materialize-textarea.invalid + label.active:after,
702
+ .mdstyle8 textarea.materialize-textarea.valid + label.active:after {
703
+ display: block; }
704
+ .mdstyle8 input.valid:not([type]), .mdstyle8 input.valid:not([type]):focus, .mdstyle8 input[type=text].valid:not(.browser-default), .mdstyle8 input[type=text].valid:not(.browser-default):focus, .mdstyle8 input[type=password].valid:not(.browser-default), .mdstyle8 input[type=password].valid:not(.browser-default):focus, .mdstyle8 input[type=email].valid:not(.browser-default), .mdstyle8 input[type=email].valid:not(.browser-default):focus, .mdstyle8 input[type=url].valid:not(.browser-default), .mdstyle8 input[type=url].valid:not(.browser-default):focus, .mdstyle8 input[type=time].valid:not(.browser-default), .mdstyle8 input[type=time].valid:not(.browser-default):focus, .mdstyle8 input[type=date].valid:not(.browser-default), .mdstyle8 input[type=date].valid:not(.browser-default):focus, .mdstyle8 input[type=datetime].valid:not(.browser-default), .mdstyle8 input[type=datetime].valid:not(.browser-default):focus, .mdstyle8 input[type=datetime-local].valid:not(.browser-default), .mdstyle8 input[type=datetime-local].valid:not(.browser-default):focus, .mdstyle8 input[type=tel].valid:not(.browser-default), .mdstyle8 input[type=tel].valid:not(.browser-default):focus, .mdstyle8 input[type=number].valid:not(.browser-default), .mdstyle8 input[type=number].valid:not(.browser-default):focus, .mdstyle8 input[type=search].valid:not(.browser-default), .mdstyle8 input[type=search].valid:not(.browser-default):focus, .mdstyle8 textarea.materialize-textarea.valid, .mdstyle8 textarea.materialize-textarea.valid:focus, .mdstyle8 .select-wrapper.valid > input.select-dropdown {
705
+ border-bottom: 1px solid #4CAF50;
706
+ box-shadow: 0 1px 0 0 #4CAF50; }
707
+ .mdstyle8 input.invalid:not([type]), .mdstyle8 input.invalid:not([type]):focus, .mdstyle8 input[type=text].invalid:not(.browser-default), .mdstyle8 input[type=text].invalid:not(.browser-default):focus, .mdstyle8 input[type=password].invalid:not(.browser-default), .mdstyle8 input[type=password].invalid:not(.browser-default):focus, .mdstyle8 input[type=email].invalid:not(.browser-default), .mdstyle8 input[type=email].invalid:not(.browser-default):focus, .mdstyle8 input[type=url].invalid:not(.browser-default), .mdstyle8 input[type=url].invalid:not(.browser-default):focus, .mdstyle8 input[type=time].invalid:not(.browser-default), .mdstyle8 input[type=time].invalid:not(.browser-default):focus, .mdstyle8 input[type=date].invalid:not(.browser-default), .mdstyle8 input[type=date].invalid:not(.browser-default):focus, .mdstyle8 input[type=datetime].invalid:not(.browser-default), .mdstyle8 input[type=datetime].invalid:not(.browser-default):focus, .mdstyle8 input[type=datetime-local].invalid:not(.browser-default), .mdstyle8 input[type=datetime-local].invalid:not(.browser-default):focus, .mdstyle8 input[type=tel].invalid:not(.browser-default), .mdstyle8 input[type=tel].invalid:not(.browser-default):focus, .mdstyle8 input[type=number].invalid:not(.browser-default), .mdstyle8 input[type=number].invalid:not(.browser-default):focus, .mdstyle8 input[type=search].invalid:not(.browser-default), .mdstyle8 input[type=search].invalid:not(.browser-default):focus, .mdstyle8 textarea.materialize-textarea.invalid, .mdstyle8 textarea.materialize-textarea.invalid:focus, .mdstyle8 .select-wrapper.invalid > input.select-dropdown {
708
+ border-bottom: 1px solid #F44336;
709
+ box-shadow: 0 1px 0 0 #F44336; }
710
+ .mdstyle8 input:not([type]).valid + label:after, .mdstyle8 input:not([type]):focus.valid + label:after, .mdstyle8 input[type=text]:not(.browser-default).valid + label:after, .mdstyle8 input[type=text]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=password]:not(.browser-default).valid + label:after, .mdstyle8 input[type=password]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=email]:not(.browser-default).valid + label:after, .mdstyle8 input[type=email]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=url]:not(.browser-default).valid + label:after, .mdstyle8 input[type=url]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=time]:not(.browser-default).valid + label:after, .mdstyle8 input[type=time]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=date]:not(.browser-default).valid + label:after, .mdstyle8 input[type=date]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=datetime]:not(.browser-default).valid + label:after, .mdstyle8 input[type=datetime]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=datetime-local]:not(.browser-default).valid + label:after, .mdstyle8 input[type=datetime-local]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=tel]:not(.browser-default).valid + label:after, .mdstyle8 input[type=tel]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=number]:not(.browser-default).valid + label:after, .mdstyle8 input[type=number]:not(.browser-default):focus.valid + label:after, .mdstyle8 input[type=search]:not(.browser-default).valid + label:after, .mdstyle8 input[type=search]:not(.browser-default):focus.valid + label:after, .mdstyle8 textarea.materialize-textarea.valid + label:after, .mdstyle8 textarea.materialize-textarea:focus.valid + label:after, .mdstyle8 .select-wrapper.valid + label:after {
711
+ content: attr(data-success);
712
+ color: #4CAF50;
713
+ opacity: 1;
714
+ transform: translateY(9px); }
715
+ .mdstyle8 input:not([type]).invalid + label:after, .mdstyle8 input:not([type]):focus.invalid + label:after, .mdstyle8 input[type=text]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=text]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=password]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=password]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=email]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=email]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=url]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=url]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=time]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=time]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=date]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=date]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=datetime]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=datetime]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=datetime-local]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=datetime-local]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=tel]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=tel]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=number]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=number]:not(.browser-default):focus.invalid + label:after, .mdstyle8 input[type=search]:not(.browser-default).invalid + label:after, .mdstyle8 input[type=search]:not(.browser-default):focus.invalid + label:after, .mdstyle8 textarea.materialize-textarea.invalid + label:after, .mdstyle8 textarea.materialize-textarea:focus.invalid + label:after, .mdstyle8 .select-wrapper.invalid + label:after {
716
+ content: attr(data-error);
717
+ color: #F44336;
718
+ opacity: 1;
719
+ transform: translateY(9px); }
720
+ .mdstyle8 input:not([type]) + label:after, .mdstyle8 input[type=text]:not(.browser-default) + label:after, .mdstyle8 input[type=password]:not(.browser-default) + label:after, .mdstyle8 input[type=email]:not(.browser-default) + label:after, .mdstyle8 input[type=url]:not(.browser-default) + label:after, .mdstyle8 input[type=time]:not(.browser-default) + label:after, .mdstyle8 input[type=date]:not(.browser-default) + label:after, .mdstyle8 input[type=datetime]:not(.browser-default) + label:after, .mdstyle8 input[type=datetime-local]:not(.browser-default) + label:after, .mdstyle8 input[type=tel]:not(.browser-default) + label:after, .mdstyle8 input[type=number]:not(.browser-default) + label:after, .mdstyle8 input[type=search]:not(.browser-default) + label:after, .mdstyle8 textarea.materialize-textarea + label:after, .mdstyle8 .select-wrapper + label:after {
721
+ display: block;
722
+ content: "";
723
+ position: absolute;
724
+ top: 100%;
725
+ left: 0;
726
+ opacity: 0;
727
+ transition: .2s opacity ease-out, .2s color ease-out; }
728
+ .mdstyle8 .input-field {
729
+ position: relative;
730
+ margin-top: 1rem; }
731
+ .mdstyle8 .input-field.inline {
732
+ display: inline-block;
733
+ vertical-align: middle;
734
+ margin-left: 5px; }
735
+ .mdstyle8 .input-field.inline input,
736
+ .mdstyle8 .input-field.inline .select-dropdown {
737
+ margin-bottom: 1rem; }
738
+ .mdstyle8 .input-field.col label {
739
+ left: 0.75rem; }
740
+ .mdstyle8 .input-field.col .prefix ~ label,
741
+ .mdstyle8 .input-field.col .prefix ~ .validate ~ label {
742
+ width: calc(100% - 3rem - 1.5rem); }
743
+ .mdstyle8 .input-field label {
744
+ color: #9e9e9e;
745
+ position: absolute;
746
+ top: 0;
747
+ left: 0;
748
+ height: 100%;
749
+ font-size: 1rem;
750
+ cursor: text;
751
+ transition: transform .2s ease-out;
752
+ transform-origin: 0% 100%;
753
+ text-align: initial;
754
+ transform: translateY(12px);
755
+ pointer-events: none; }
756
+ .mdstyle8 .input-field label:not(.label-icon).active {
757
+ transform: translateY(-14px) scale(0.8);
758
+ transform-origin: 0 0; }
759
+ .mdstyle8 .input-field .prefix {
760
+ position: absolute;
761
+ width: 3rem;
762
+ font-size: 2rem;
763
+ transition: color .2s; }
764
+ .mdstyle8 .input-field .prefix.active {
765
+ color: #26a69a; }
766
+ .mdstyle8 .input-field .prefix ~ input,
767
+ .mdstyle8 .input-field .prefix ~ textarea,
768
+ .mdstyle8 .input-field .prefix ~ label,
769
+ .mdstyle8 .input-field .prefix ~ .validate ~ label,
770
+ .mdstyle8 .input-field .prefix ~ .autocomplete-content {
771
+ margin-left: 3rem;
772
+ width: 92%;
773
+ width: calc(100% - 3rem); }
774
+ .mdstyle8 .input-field .prefix ~ label {
775
+ margin-left: 3rem; }
776
+ @media only screen and (max-width: 992px) {
777
+ .mdstyle8 .input-field .prefix ~ input {
778
+ width: 86%;
779
+ width: calc(100% - 3rem); } }
780
+ @media only screen and (max-width: 600px) {
781
+ .mdstyle8 .input-field .prefix ~ input {
782
+ width: 80%;
783
+ width: calc(100% - 3rem); } }
784
+
785
+
786
+ .mdstyle8 textarea {
787
+ width: 100%;
788
+ height: 3rem;
789
+ background-color: transparent; }
790
+ .mdstyle8 textarea.materialize-textarea {
791
+ overflow-y: hidden;
792
+ /* prevents scroll bar flash */
793
+ padding: .8rem 0 1.6rem 0;
794
+ /* prevents text jump on Enter keypress */
795
+ resize: none;
796
+ min-height: 3rem; }
797
+ .mdstyle8 textarea.materialize-textarea.validate + label {
798
+ height: 100%; }
799
+ .mdstyle8 textarea.materialize-textarea.validate + label::after {
800
+ top: calc(100% - 12px); }
801
+ .mdstyle8 textarea.materialize-textarea.validate + label:not(.label-icon).active {
802
+ transform: translateY(-25px); }
803
+ .mdstyle8 .hiddendiv {
804
+ display: none;
805
+ white-space: pre-wrap;
806
+ word-wrap: break-word;
807
+ overflow-wrap: break-word;
808
+ /* future version of deprecated 'word-wrap' */
809
+ padding-top: 1.2rem;
810
+ /* prevents text jump on Enter keypress */
811
+ position: absolute;
812
+ top: 0; }
813
+ .mdstyle8 .autocomplete-content {
814
+ margin-top: -20px;
815
+ margin-bottom: 20px;
816
+ display: block;
817
+ opacity: 1;
818
+ position: static; }
819
+ .mdstyle8 .autocomplete-content li .highlight {
820
+ color: #444; }
821
+ .mdstyle8 .autocomplete-content li img {
822
+ height: 40px;
823
+ width: 40px;
824
+ margin: 5px 15px; }
825
+ .mdstyle8 form p {
826
+ margin-bottom: 10px;
827
+ text-align: left; }
828
+ .mdstyle8 form p:last-child {
829
+ margin-bottom: 0; }
830
+
831
+ .mdstyle8 select {
832
+ display: none; }
833
+ .mdstyle8 select.browser-default {
834
+ display: block; }
835
+ .mdstyle8 select {
836
+ background-color: rgba(255, 255, 255, 0.9);
837
+ width: 100%;
838
+ padding: 5px;
839
+ border: 1px solid #f2f2f2;
840
+ border-radius: 2px;
841
+ height: 3rem; }
842
+ .mdstyle8 .input-field > select {
843
+ display: block;
844
+ position: absolute;
845
+ width: 0;
846
+ pointer-events: none;
847
+ height: 0;
848
+ top: 0;
849
+ left: 0;
850
+ opacity: 0; }
851
+
852
+ .mdstyle8 select:disabled {
853
+ color: rgba(0, 0, 0, 0.42); }
854
+ .mdstyle8 .select-wrapper.disabled span.caret,
855
+ .mdstyle8 .select-wrapper.disabled + label {
856
+ color: rgba(0, 0, 0, 0.42); }
857
+ .mdstyle8 .select-wrapper input.select-dropdown:disabled {
858
+ color: rgba(0, 0, 0, 0.42);
859
+ cursor: default;
860
+ user-select: none; }
861
+
862
+ .mdstyle8 .prefix ~ .select-wrapper {
863
+ margin-left: 3rem;
864
+ width: 92%;
865
+ width: calc(100% - 3rem); }
866
+ .mdstyle8 .prefix ~ label {
867
+ margin-left: 3rem; }
assets/css/required/mdstyles.css DELETED
@@ -1,867 +0,0 @@
1
- /* Material Design styles - load on style-1, 4, 8 */
2
-
3
- .ccw_plugin .transparent {
4
- background-color: transparent !important; }
5
- .ccw_plugin .transparent-text {
6
- color: transparent !important; }
7
- .ccw_plugin html {
8
- font-family: sans-serif;
9
- /* 1 */
10
- -ms-text-size-adjust: 100%;
11
- /* 2 */
12
- -webkit-text-size-adjust: 100%;
13
- /* 2 */ }
14
- .ccw_plugin body {
15
- margin: 0; }
16
- .ccw_plugin article,
17
- .ccw_plugin aside,
18
- .ccw_plugin footer,
19
- .ccw_plugin header,
20
- .ccw_plugin main,
21
- .ccw_plugin nav,
22
- .ccw_plugin section,
23
- .ccw_plugin summary {
24
- display: block; }
25
-
26
- .ccw_plugin [hidden],
27
- .ccw_plugin template {
28
- display: none; }
29
- .ccw_plugin a {
30
- background-color: transparent; }
31
- .ccw_plugin a:active,
32
- .ccw_plugin a:hover {
33
- outline: 0; }
34
- .ccw_plugin abbr[title] {
35
- border-bottom: 1px dotted; }
36
- .ccw_plugin b,
37
- .ccw_plugin strong {
38
- font-weight: bold; }
39
- .ccw_plugin dfn {
40
- font-style: italic; }
41
- .ccw_plugin h1 {
42
- font-size: 2em;
43
- margin: 0.67em 0; }
44
- .ccw_plugin mark {
45
- background: #ff0;
46
- color: #000; }
47
- .ccw_plugin small {
48
- font-size: 80%; }
49
- .ccw_plugin sub,
50
- .ccw_plugin sup {
51
- font-size: 75%;
52
- line-height: 0;
53
- position: relative;
54
- vertical-align: baseline; }
55
- .ccw_plugin sup {
56
- top: -0.5em; }
57
- .ccw_plugin sub {
58
- bottom: -0.25em; }
59
- .ccw_plugin img {
60
- border: 0; }
61
- .ccw_plugin svg:not(:root) {
62
- overflow: hidden; }
63
- .ccw_plugin figure {
64
- margin: 1em 40px; }
65
- .ccw_plugin hr {
66
- box-sizing: content-box;
67
- height: 0; }
68
- .ccw_plugin pre {
69
- overflow: auto; }
70
- .ccw_plugin code,
71
- .ccw_plugin kbd,
72
- .ccw_plugin pre,
73
- .ccw_plugin samp {
74
- font-family: monospace, monospace;
75
- font-size: 1em; }
76
- .ccw_plugin button,
77
- .ccw_plugin input,
78
- .ccw_plugin optgroup,
79
- .ccw_plugin select,
80
- .ccw_plugin textarea {
81
- color: inherit;
82
- /* 1 */
83
- font: inherit;
84
- /* 2 */
85
- margin: 0;
86
- /* 3 */ }
87
- .ccw_plugin button {
88
- overflow: visible; }
89
- .ccw_plugin button,
90
- .ccw_plugin select {
91
- text-transform: none; }
92
- .ccw_plugin button,
93
- .ccw_plugin html input[type="button"],
94
- .ccw_plugin input[type="reset"],
95
- .ccw_plugin input[type="submit"] {
96
- -webkit-appearance: button;
97
- /* 2 */
98
- cursor: pointer;
99
- /* 3 */ }
100
- .ccw_plugin button[disabled],
101
- .ccw_plugin html input[disabled] {
102
- cursor: default; }
103
- .ccw_plugin button::-moz-focus-inner,
104
- .ccw_plugin input::-moz-focus-inner {
105
- border: 0;
106
- padding: 0; }
107
- .ccw_plugin input {
108
- line-height: normal; }
109
-
110
-
111
- .ccw_plugin fieldset {
112
- border: 1px solid #c0c0c0;
113
- margin: 0 2px;
114
- padding: 0.35em 0.625em 0.75em; }
115
- .ccw_plugin legend {
116
- border: 0;
117
- /* 1 */
118
- padding: 0;
119
- /* 2 */ }
120
- .ccw_plugin textarea {
121
- overflow: auto; }
122
- .ccw_plugin optgroup {
123
- font-weight: bold; }
124
- .ccw_plugin table {
125
- border-collapse: collapse;
126
- border-spacing: 0; }
127
- .ccw_plugin td,
128
- .ccw_plugin th {
129
- padding: 0; }
130
- .ccw_plugin html {
131
- box-sizing: border-box; }
132
- .ccw_plugin *, .ccw_plugin *:before, .ccw_plugin *:after {
133
- box-sizing: inherit; }
134
- .ccw_plugin ul:not(.browser-default) {
135
- padding-left: 0;
136
- list-style-type: none; }
137
- .ccw_plugin ul:not(.browser-default) > li {
138
- list-style-type: none; }
139
- .ccw_plugin a {
140
- color: #039be5;
141
- text-decoration: none;
142
- -webkit-tap-highlight-color: transparent; }
143
- .ccw_plugin .valign-wrapper {
144
- display: flex;
145
- align-items: center; }
146
- .ccw_plugin .clearfix {
147
- clear: both; }
148
- .ccw_plugin .z-depth-0 {
149
- box-shadow: none !important; }
150
- .ccw_plugin .z-depth-1, .ccw_plugin .btn, .ccw_plugin .btn-large, .ccw_plugin .btn-floating {
151
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }
152
- .ccw_plugin .z-depth-1-half, .ccw_plugin .btn:hover, .ccw_plugin .btn-large:hover, .ccw_plugin .btn-floating:hover {
153
- box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2); }
154
- .ccw_plugin .z-depth-2 {
155
- box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3); }
156
- .ccw_plugin .z-depth-3 {
157
- box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3); }
158
- .ccw_plugin .z-depth-4 {
159
- box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3); }
160
- .ccw_plugin .z-depth-5 {
161
- box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.3); }
162
- .ccw_plugin .hoverable {
163
- transition: box-shadow .25s; }
164
- .ccw_plugin .hoverable:hover {
165
- box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
166
- .ccw_plugin .divider {
167
- height: 1px;
168
- overflow: hidden;
169
- background-color: #e0e0e0; }
170
- .ccw_plugin blockquote {
171
- margin: 20px 0;
172
- padding-left: 1.5rem;
173
- border-left: 5px solid #ee6e73; }
174
- .ccw_plugin i {
175
- line-height: inherit; }
176
- .ccw_plugin i.left {
177
- float: left;
178
- margin-right: 15px; }
179
- .ccw_plugin i.right {
180
- float: right;
181
- margin-left: 15px; }
182
- .ccw_plugin i.tiny {
183
- font-size: 1rem; }
184
- .ccw_plugin i.small {
185
- font-size: 2rem; }
186
- .ccw_plugin i.medium {
187
- font-size: 4rem; }
188
- .ccw_plugin i.large {
189
- font-size: 6rem; }
190
- .ccw_plugin img.responsive-img,
191
- .ccw_plugin video.responsive-video {
192
- max-width: 100%;
193
- height: auto; }
194
-
195
-
196
-
197
- .ccw_plugin ul.staggered-list li {
198
- opacity: 0; }
199
- .ccw_plugin .fade-in {
200
- opacity: 0;
201
- transform-origin: 0 50%; }
202
-
203
- .ccw_plugin .page-footer {
204
- padding-top: 20px;
205
- color: #fff;
206
- background-color: #ee6e73; }
207
- .ccw_plugin .page-footer .footer-copyright {
208
- overflow: hidden;
209
- min-height: 50px;
210
- display: flex;
211
- align-items: center;
212
- padding: 10px 0px;
213
- color: rgba(255, 255, 255, 0.8);
214
- background-color: rgba(51, 51, 51, 0.08); }
215
- .ccw_plugin table, .ccw_plugin th, .ccw_plugin td {
216
- border: none; }
217
- .ccw_plugin table {
218
- width: 100%;
219
- display: table; }
220
- .ccw_plugin table.bordered > thead > tr,
221
- .ccw_plugin table.bordered > tbody > tr {
222
- border-bottom: 1px solid #d0d0d0; }
223
- .ccw_plugin table.striped > tbody > tr:nth-child(odd) {
224
- background-color: #f2f2f2; }
225
- .ccw_plugin table.striped > tbody > tr > td {
226
- border-radius: 0; }
227
- .ccw_plugin table.highlight > tbody > tr {
228
- transition: background-color .25s ease; }
229
- .ccw_plugin table.highlight > tbody > tr:hover {
230
- background-color: #f2f2f2; }
231
- .ccw_plugin table.centered thead tr th, .ccw_plugin table.centered tbody tr td {
232
- text-align: center; }
233
- .ccw_plugin thead {
234
- border-bottom: 1px solid #d0d0d0; }
235
- .ccw_plugin td, .ccw_plugin th {
236
- padding: 15px 5px;
237
- display: table-cell;
238
- text-align: left;
239
- vertical-align: middle;
240
- border-radius: 2px; }
241
- @media only screen and (max-width: 992px) {
242
- .ccw_plugin table.responsive-table {
243
- width: 100%;
244
- border-collapse: collapse;
245
- border-spacing: 0;
246
- display: block;
247
- position: relative;
248
- /* sort out borders */ }
249
- .ccw_plugin table.responsive-table td:empty:before {
250
- content: '\A0'; }
251
- .ccw_plugin table.responsive-table th,
252
- .ccw_plugin table.responsive-table td {
253
- margin: 0;
254
- vertical-align: top; }
255
- .ccw_plugin table.responsive-table th {
256
- text-align: left; }
257
- .ccw_plugin table.responsive-table thead {
258
- display: block;
259
- float: left; }
260
- .ccw_plugin table.responsive-table thead tr {
261
- display: block;
262
- padding: 0 10px 0 0; }
263
- .ccw_plugin table.responsive-table thead tr th::before {
264
- content: "\A0"; }
265
- .ccw_plugin table.responsive-table tbody {
266
- display: block;
267
- width: auto;
268
- position: relative;
269
- overflow-x: auto;
270
- white-space: nowrap; }
271
- .ccw_plugin table.responsive-table tbody tr {
272
- display: inline-block;
273
- vertical-align: top; }
274
- .ccw_plugin table.responsive-table th {
275
- display: block;
276
- text-align: right; }
277
- .ccw_plugin table.responsive-table td {
278
- display: block;
279
- min-height: 1.25em;
280
- text-align: left; }
281
- .ccw_plugin table.responsive-table tr {
282
- padding: 0 10px; }
283
- .ccw_plugin table.responsive-table thead {
284
- border: 0;
285
- border-right: 1px solid #d0d0d0; }
286
- .ccw_plugin table.responsive-table.bordered th {
287
- border-bottom: 0;
288
- border-left: 0; }
289
- .ccw_plugin table.responsive-table.bordered td {
290
- border-left: 0;
291
- border-right: 0;
292
- border-bottom: 0; }
293
- .ccw_plugin table.responsive-table.bordered tr {
294
- border: 0; }
295
- .ccw_plugin table.responsive-table.bordered tbody tr {
296
- border-right: 1px solid #d0d0d0; } }
297
-
298
- .ccw_plugin .secondary-content {
299
- float: right;
300
- color: #26a69a; }
301
- .ccw_plugin .collapsible .collection {
302
- margin: 0;
303
- border: none; }
304
-
305
-
306
- .ccw_plugin .hide {
307
- display: none !important; }
308
- .ccw_plugin .left-align {
309
- text-align: left; }
310
- .ccw_plugin .right-align {
311
- text-align: right; }
312
- .ccw_plugin .center, .ccw_plugin .center-align {
313
- text-align: center; }
314
- .ccw_plugin .left {
315
- float: left !important; }
316
- .ccw_plugin .right {
317
- float: right !important; }
318
- .ccw_plugin .no-select {
319
- user-select: none; }
320
- .ccw_plugin .circle {
321
- border-radius: 50%; }
322
- .ccw_plugin .center-block {
323
- display: block;
324
- margin-left: auto;
325
- margin-right: auto; }
326
- .ccw_plugin .truncate {
327
- display: block;
328
- white-space: nowrap;
329
- overflow: hidden;
330
- text-overflow: ellipsis; }
331
- .ccw_plugin .no-padding {
332
- padding: 0 !important; }
333
- .ccw_plugin a {
334
- text-decoration: none; }
335
- .ccw_plugin html {
336
- line-height: 1.5;
337
- font-family: "Roboto", sans-serif;
338
- font-weight: normal;
339
- color: rgba(0, 0, 0, 0.87); }
340
- @media only screen and (min-width: 0) {
341
- .ccw_plugin html {
342
- font-size: 14px; } }
343
- @media only screen and (min-width: 992px) {
344
- .ccw_plugin html {
345
- font-size: 14.5px; } }
346
- @media only screen and (min-width: 1200px) {
347
- .ccw_plugin html {
348
- font-size: 15px; } }
349
-
350
- .ccw_plugin em {
351
- font-style: italic; }
352
- .ccw_plugin strong {
353
- font-weight: 500; }
354
- .ccw_plugin small {
355
- font-size: 75%; }
356
- .ccw_plugin .light, .ccw_plugin .page-footer .footer-copyright {
357
- font-weight: 300; }
358
- .ccw_plugin .thin {
359
- font-weight: 200; }
360
-
361
- .ccw_plugin .scale-transition {
362
- transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important; }
363
- .ccw_plugin .scale-transition.scale-out {
364
- transform: scale(0);
365
- transition: transform .2s !important; }
366
- .ccw_plugin .scale-transition.scale-in {
367
- transform: scale(1); }
368
- .ccw_plugin .btn, .ccw_plugin .btn-large,
369
- .ccw_plugin .btn-flat {
370
- border: none;
371
- border-radius: 2px;
372
- display: inline-block;
373
- height: 36px;
374
- line-height: 36px;
375
- padding: 0 2rem;
376
- text-transform: uppercase;
377
- vertical-align: middle;
378
- -webkit-tap-highlight-color: transparent; }
379
- .ccw_plugin .btn.disabled, .ccw_plugin .disabled.btn-large,
380
- .ccw_plugin .btn-floating.disabled,
381
- .ccw_plugin .btn-large.disabled,
382
- .ccw_plugin .btn-flat.disabled,
383
- .ccw_plugin .btn:disabled, .ccw_plugin .btn-large:disabled,
384
- .ccw_plugin .btn-floating:disabled,
385
- .ccw_plugin .btn-large:disabled,
386
- .ccw_plugin .btn-flat:disabled,
387
- .ccw_plugin .btn[disabled], .ccw_plugin [disabled].btn-large,
388
- .ccw_plugin .btn-floating[disabled],
389
- .ccw_plugin .btn-large[disabled],
390
- .ccw_plugin .btn-flat[disabled] {
391
- pointer-events: none;
392
- background-color: #DFDFDF !important;
393
- box-shadow: none;
394
- color: #9F9F9F !important;
395
- cursor: default; }
396
- .ccw_plugin .btn.disabled:hover, .ccw_plugin .disabled.btn-large:hover,
397
- .ccw_plugin .btn-floating.disabled:hover,
398
- .ccw_plugin .btn-large.disabled:hover,
399
- .ccw_plugin .btn-flat.disabled:hover,
400
- .ccw_plugin .btn:disabled:hover, .ccw_plugin .btn-large:disabled:hover,
401
- .ccw_plugin .btn-floating:disabled:hover,
402
- .ccw_plugin .btn-large:disabled:hover,
403
- .ccw_plugin .btn-flat:disabled:hover,
404
- .ccw_plugin .btn[disabled]:hover, .ccw_plugin [disabled].btn-large:hover,
405
- .ccw_plugin .btn-floating[disabled]:hover,
406
- .ccw_plugin .btn-large[disabled]:hover,
407
- .ccw_plugin .btn-flat[disabled]:hover {
408
- background-color: #DFDFDF !important;
409
- color: #9F9F9F !important; }
410
- .ccw_plugin .btn, .ccw_plugin .btn-large,
411
- .ccw_plugin .btn-floating,
412
- .ccw_plugin .btn-large,
413
- .ccw_plugin .btn-flat {
414
- font-size: 1rem;
415
- outline: 0; }
416
- .ccw_plugin .btn i, .ccw_plugin .btn-large i,
417
- .ccw_plugin .btn-floating i,
418
- .ccw_plugin .btn-large i,
419
- .ccw_plugin .btn-flat i {
420
- font-size: 1.3rem;
421
- line-height: inherit; }
422
- .ccw_plugin .btn:focus, .ccw_plugin .btn-large:focus,
423
- .ccw_plugin .btn-floating:focus {
424
- background-color: #1d7d74; }
425
- .ccw_plugin .btn, .ccw_plugin .btn-large {
426
- text-decoration: none;
427
- color: #fff;
428
- background-color: #26a69a;
429
- text-align: center;
430
- letter-spacing: .5px;
431
- transition: .2s ease-out;
432
- cursor: pointer; }
433
- .ccw_plugin .btn:hover, .ccw_plugin .btn-large:hover {
434
- background-color: #2bbbad; }
435
- .ccw_plugin .btn-floating {
436
- display: inline-block;
437
- color: #fff;
438
- position: relative;
439
- overflow: hidden;
440
- z-index: 1;
441
- width: 40px;
442
- height: 40px;
443
- line-height: 40px;
444
- padding: 0;
445
- background-color: #26a69a;
446
- border-radius: 50%;
447
- transition: .3s;
448
- cursor: pointer;
449
- vertical-align: middle; }
450
- .ccw_plugin .btn-floating:hover {
451
- background-color: #26a69a; }
452
- .ccw_plugin .btn-floating:before {
453
- border-radius: 0; }
454
- .ccw_plugin .btn-floating.btn-large {
455
- width: 56px;
456
- height: 56px; }
457
- .ccw_plugin .btn-floating.btn-large.halfway-fab {
458
- bottom: -28px; }
459
- .ccw_plugin .btn-floating.btn-large i {
460
- line-height: 56px; }
461
- .ccw_plugin .btn-floating.halfway-fab {
462
- position: absolute;
463
- right: 24px;
464
- bottom: -20px; }
465
- .ccw_plugin .btn-floating.halfway-fab.left {
466
- right: auto;
467
- left: 24px; }
468
- .ccw_plugin .btn-floating i {
469
- width: inherit;
470
- display: inline-block;
471
- text-align: center;
472
- color: #fff;
473
- font-size: 1.6rem;
474
- line-height: 40px; }
475
- .ccw_plugin button.btn-floating {
476
- border: none; }
477
- .ccw_plugin .fixed-action-btn {
478
- position: fixed;
479
- right: 23px;
480
- bottom: 23px;
481
- padding-top: 15px;
482
- margin-bottom: 0;
483
- z-index: 997; }
484
- .ccw_plugin .fixed-action-btn.active ul {
485
- visibility: visible; }
486
- .ccw_plugin .fixed-action-btn.horizontal {
487
- padding: 0 0 0 15px; }
488
- .ccw_plugin .fixed-action-btn.horizontal ul {
489
- text-align: right;
490
- right: 64px;
491
- top: 50%;
492
- transform: translateY(-50%);
493
- height: 100%;
494
- left: auto;
495
- width: 500px;
496
- /*width 100% only goes to width of button container */ }
497
- .ccw_plugin .fixed-action-btn.horizontal ul li {
498
- display: inline-block;
499
- margin: 15px 15px 0 0; }
500
- .ccw_plugin .fixed-action-btn.toolbar {
501
- padding: 0;
502
- height: 56px; }
503
- .ccw_plugin .fixed-action-btn.toolbar.active > a i {
504
- opacity: 0; }
505
- .ccw_plugin .fixed-action-btn.toolbar ul {
506
- display: flex;
507
- top: 0;
508
- bottom: 0;
509
- z-index: 1; }
510
- .ccw_plugin .fixed-action-btn.toolbar ul li {
511
- flex: 1;
512
- display: inline-block;
513
- margin: 0;
514
- height: 100%;
515
- transition: none; }
516
- .ccw_plugin .fixed-action-btn.toolbar ul li a {
517
- display: block;
518
- overflow: hidden;
519
- position: relative;
520
- width: 100%;
521
- height: 100%;
522
- background-color: transparent;
523
- box-shadow: none;
524
- color: #fff;
525
- line-height: 56px;
526
- z-index: 1; }
527
- .ccw_plugin .fixed-action-btn.toolbar ul li a i {
528
- line-height: inherit; }
529
- .ccw_plugin .fixed-action-btn ul {
530
- left: 0;
531
- right: 0;
532
- text-align: center;
533
- position: absolute;
534
- bottom: 64px;
535
- margin: 0;
536
- visibility: hidden; }
537
- .ccw_plugin .fixed-action-btn ul li {
538
- margin-bottom: 15px; }
539
- .ccw_plugin .fixed-action-btn ul a.btn-floating {
540
- opacity: 0; }
541
- .ccw_plugin .fixed-action-btn .fab-backdrop {
542
- position: absolute;
543
- top: 0;
544
- left: 0;
545
- z-index: -1;
546
- width: 40px;
547
- height: 40px;
548
- background-color: #26a69a;
549
- border-radius: 50%;
550
- transform: scale(0); }
551
- .ccw_plugin .btn-flat {
552
- box-shadow: none;
553
- background-color: transparent;
554
- color: #343434;
555
- cursor: pointer;
556
- transition: background-color .2s; }
557
- .ccw_plugin .btn-flat:focus, .ccw_plugin .btn-flat:hover {
558
- box-shadow: none; }
559
- .ccw_plugin .btn-flat:focus {
560
- background-color: rgba(0, 0, 0, 0.1); }
561
- .ccw_plugin .btn-flat.disabled {
562
- background-color: transparent !important;
563
- color: #b3b3b3 !important;
564
- cursor: default; }
565
- .ccw_plugin .btn-large {
566
- height: 54px;
567
- line-height: 54px; }
568
- .ccw_plugin .btn-large i {
569
- font-size: 1.6rem; }
570
- .ccw_plugin .btn-block {
571
- display: block; }
572
- .ccw_plugin .chip {
573
- display: inline-block;
574
- height: 32px;
575
- font-size: 13px;
576
- font-weight: 500;
577
- color: rgba(0, 0, 0, 0.6);
578
- line-height: 32px;
579
- padding: 0 12px;
580
- border-radius: 16px;
581
- background-color: #e4e4e4;
582
- margin-bottom: 5px;
583
- margin-right: 5px; }
584
- .ccw_plugin .chip > img {
585
- float: left;
586
- margin: 0 8px 0 -12px;
587
- height: 32px;
588
- width: 32px;
589
- border-radius: 50%; }
590
- .ccw_plugin .chip .close {
591
- cursor: pointer;
592
- float: right;
593
- font-size: 16px;
594
- line-height: 32px;
595
- padding-left: 8px; }
596
- .ccw_plugin .chips {
597
- border: none;
598
- border-bottom: 1px solid #9e9e9e;
599
- box-shadow: none;
600
- margin: 0 0 20px 0;
601
- min-height: 45px;
602
- outline: none;
603
- transition: all .3s; }
604
- .ccw_plugin .chips.focus {
605
- border-bottom: 1px solid #26a69a;
606
- box-shadow: 0 1px 0 0 #26a69a; }
607
- .ccw_plugin .chips:hover {
608
- cursor: text; }
609
- .ccw_plugin .chips .chip.selected {
610
- background-color: #26a69a;
611
- color: #fff; }
612
- .ccw_plugin .chips .input {
613
- background: none;
614
- border: 0;
615
- color: rgba(0, 0, 0, 0.6);
616
- display: inline-block;
617
- font-size: 1rem;
618
- height: 3rem;
619
- line-height: 32px;
620
- outline: 0;
621
- margin: 0;
622
- padding: 0 !important;
623
- width: 120px !important; }
624
- .ccw_plugin .chips .input:focus {
625
- border: 0 !important;
626
- box-shadow: none !important; }
627
- .ccw_plugin .chips .autocomplete-content {
628
- margin-top: 0;
629
- margin-bottom: 0; }
630
- .ccw_plugin .prefix ~ .chips {
631
- margin-left: 3rem;
632
- width: 92%;
633
- width: calc(100% - 3rem); }
634
- .ccw_plugin .chips:empty ~ label {
635
- font-size: 0.8rem;
636
- transform: translateY(-140%); }
637
- .ccw_plugin select:focus {
638
- outline: 1px solid #c9f3ef; }
639
- .ccw_plugin button:focus {
640
- outline: none;
641
- background-color: #2ab7a9; }
642
- .ccw_plugin label {
643
- font-size: 0.8rem;
644
- color: #9e9e9e; }
645
- .ccw_plugin ::placeholder {
646
- color: #d1d1d1; }
647
- .ccw_plugin input:not([type]),
648
- .ccw_plugin input[type=text]:not(.browser-default),
649
- .ccw_plugin textarea.materialize-textarea {
650
- background-color: transparent;
651
- border: none;
652
- border-bottom: 1px solid #9e9e9e;
653
- border-radius: 0;
654
- outline: none;
655
- height: 3rem;
656
- width: 100%;
657
- font-size: 1rem;
658
- margin: 0 0 20px 0;
659
- padding: 0;
660
- box-shadow: none;
661
- box-sizing: content-box;
662
- transition: all 0.3s; }
663
- .ccw_plugin input:not([type]):disabled, .ccw_plugin input:not([type])[readonly="readonly"],
664
- .ccw_plugin input[type=text]:not(.browser-default):disabled,
665
- .ccw_plugin input[type=text]:not(.browser-default)[readonly="readonly"],
666
- .ccw_plugin textarea.materialize-textarea:disabled,
667
- .ccw_plugin textarea.materialize-textarea[readonly="readonly"] {
668
- color: rgba(0, 0, 0, 0.42);
669
- border-bottom: 1px dotted rgba(0, 0, 0, 0.42); }
670
- .ccw_plugin input:not([type]):disabled + label,
671
- .ccw_plugin input:not([type])[readonly="readonly"] + label,
672
- .ccw_plugin input[type=text]:not(.browser-default):disabled + label,
673
- .ccw_plugin input[type=text]:not(.browser-default)[readonly="readonly"] + label,
674
- .ccw_plugin textarea.materialize-textarea:disabled + label,
675
- .ccw_plugin textarea.materialize-textarea[readonly="readonly"] + label {
676
- color: rgba(0, 0, 0, 0.42); }
677
- .ccw_plugin input:not([type]):focus:not([readonly]),
678
- .ccw_plugin input[type=text]:not(.browser-default):focus:not([readonly]),
679
- .ccw_plugin textarea.materialize-textarea:focus:not([readonly]) {
680
- border-bottom: 1px solid #26a69a;
681
- box-shadow: 0 1px 0 0 #26a69a; }
682
- .ccw_plugin input:not([type]):focus:not([readonly]) + label,
683
- .ccw_plugin input[type=text]:not(.browser-default):focus:not([readonly]) + label,
684
- .ccw_plugin textarea.materialize-textarea:focus:not([readonly]) + label {
685
- color: #26a69a; }
686
- .ccw_plugin input:not([type]).validate + label,
687
- .ccw_plugin input[type=text]:not(.browser-default).validate + label,
688
- .ccw_plugin textarea.materialize-textarea.validate + label {
689
- width: 100%; }
690
- .ccw_plugin input:not([type]).invalid + label:after,
691
- .ccw_plugin input:not([type]).valid + label:after,
692
- .ccw_plugin input[type=text]:not(.browser-default).invalid + label:after,
693
- .ccw_plugin input[type=text]:not(.browser-default).valid + label:after,
694
- .ccw_plugin textarea.materialize-textarea.invalid + label:after,
695
- .ccw_plugin textarea.materialize-textarea.valid + label:after {
696
- display: none; }
697
- .ccw_plugin input:not([type]).invalid + label.active:after,
698
- .ccw_plugin input:not([type]).valid + label.active:after,
699
- .ccw_plugin input[type=text]:not(.browser-default).invalid + label.active:after,
700
- .ccw_plugin input[type=text]:not(.browser-default).valid + label.active:after,
701
- .ccw_plugin textarea.materialize-textarea.invalid + label.active:after,
702
- .ccw_plugin textarea.materialize-textarea.valid + label.active:after {
703
- display: block; }
704
- .ccw_plugin input.valid:not([type]), .ccw_plugin input.valid:not([type]):focus, .ccw_plugin input[type=text].valid:not(.browser-default), .ccw_plugin input[type=text].valid:not(.browser-default):focus, .ccw_plugin input[type=password].valid:not(.browser-default), .ccw_plugin input[type=password].valid:not(.browser-default):focus, .ccw_plugin input[type=email].valid:not(.browser-default), .ccw_plugin input[type=email].valid:not(.browser-default):focus, .ccw_plugin input[type=url].valid:not(.browser-default), .ccw_plugin input[type=url].valid:not(.browser-default):focus, .ccw_plugin input[type=time].valid:not(.browser-default), .ccw_plugin input[type=time].valid:not(.browser-default):focus, .ccw_plugin input[type=date].valid:not(.browser-default), .ccw_plugin input[type=date].valid:not(.browser-default):focus, .ccw_plugin input[type=datetime].valid:not(.browser-default), .ccw_plugin input[type=datetime].valid:not(.browser-default):focus, .ccw_plugin input[type=datetime-local].valid:not(.browser-default), .ccw_plugin input[type=datetime-local].valid:not(.browser-default):focus, .ccw_plugin input[type=tel].valid:not(.browser-default), .ccw_plugin input[type=tel].valid:not(.browser-default):focus, .ccw_plugin input[type=number].valid:not(.browser-default), .ccw_plugin input[type=number].valid:not(.browser-default):focus, .ccw_plugin input[type=search].valid:not(.browser-default), .ccw_plugin input[type=search].valid:not(.browser-default):focus, .ccw_plugin textarea.materialize-textarea.valid, .ccw_plugin textarea.materialize-textarea.valid:focus, .ccw_plugin .select-wrapper.valid > input.select-dropdown {
705
- border-bottom: 1px solid #4CAF50;
706
- box-shadow: 0 1px 0 0 #4CAF50; }
707
- .ccw_plugin input.invalid:not([type]), .ccw_plugin input.invalid:not([type]):focus, .ccw_plugin input[type=text].invalid:not(.browser-default), .ccw_plugin input[type=text].invalid:not(.browser-default):focus, .ccw_plugin input[type=password].invalid:not(.browser-default), .ccw_plugin input[type=password].invalid:not(.browser-default):focus, .ccw_plugin input[type=email].invalid:not(.browser-default), .ccw_plugin input[type=email].invalid:not(.browser-default):focus, .ccw_plugin input[type=url].invalid:not(.browser-default), .ccw_plugin input[type=url].invalid:not(.browser-default):focus, .ccw_plugin input[type=time].invalid:not(.browser-default), .ccw_plugin input[type=time].invalid:not(.browser-default):focus, .ccw_plugin input[type=date].invalid:not(.browser-default), .ccw_plugin input[type=date].invalid:not(.browser-default):focus, .ccw_plugin input[type=datetime].invalid:not(.browser-default), .ccw_plugin input[type=datetime].invalid:not(.browser-default):focus, .ccw_plugin input[type=datetime-local].invalid:not(.browser-default), .ccw_plugin input[type=datetime-local].invalid:not(.browser-default):focus, .ccw_plugin input[type=tel].invalid:not(.browser-default), .ccw_plugin input[type=tel].invalid:not(.browser-default):focus, .ccw_plugin input[type=number].invalid:not(.browser-default), .ccw_plugin input[type=number].invalid:not(.browser-default):focus, .ccw_plugin input[type=search].invalid:not(.browser-default), .ccw_plugin input[type=search].invalid:not(.browser-default):focus, .ccw_plugin textarea.materialize-textarea.invalid, .ccw_plugin textarea.materialize-textarea.invalid:focus, .ccw_plugin .select-wrapper.invalid > input.select-dropdown {
708
- border-bottom: 1px solid #F44336;
709
- box-shadow: 0 1px 0 0 #F44336; }
710
- .ccw_plugin input:not([type]).valid + label:after, .ccw_plugin input:not([type]):focus.valid + label:after, .ccw_plugin input[type=text]:not(.browser-default).valid + label:after, .ccw_plugin input[type=text]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=password]:not(.browser-default).valid + label:after, .ccw_plugin input[type=password]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=email]:not(.browser-default).valid + label:after, .ccw_plugin input[type=email]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=url]:not(.browser-default).valid + label:after, .ccw_plugin input[type=url]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=time]:not(.browser-default).valid + label:after, .ccw_plugin input[type=time]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=date]:not(.browser-default).valid + label:after, .ccw_plugin input[type=date]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=datetime]:not(.browser-default).valid + label:after, .ccw_plugin input[type=datetime]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=datetime-local]:not(.browser-default).valid + label:after, .ccw_plugin input[type=datetime-local]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=tel]:not(.browser-default).valid + label:after, .ccw_plugin input[type=tel]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=number]:not(.browser-default).valid + label:after, .ccw_plugin input[type=number]:not(.browser-default):focus.valid + label:after, .ccw_plugin input[type=search]:not(.browser-default).valid + label:after, .ccw_plugin input[type=search]:not(.browser-default):focus.valid + label:after, .ccw_plugin textarea.materialize-textarea.valid + label:after, .ccw_plugin textarea.materialize-textarea:focus.valid + label:after, .ccw_plugin .select-wrapper.valid + label:after {
711
- content: attr(data-success);
712
- color: #4CAF50;
713
- opacity: 1;
714
- transform: translateY(9px); }
715
- .ccw_plugin input:not([type]).invalid + label:after, .ccw_plugin input:not([type]):focus.invalid + label:after, .ccw_plugin input[type=text]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=text]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=password]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=password]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=email]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=email]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=url]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=url]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=time]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=time]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=date]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=date]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=datetime]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=datetime]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=datetime-local]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=datetime-local]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=tel]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=tel]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=number]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=number]:not(.browser-default):focus.invalid + label:after, .ccw_plugin input[type=search]:not(.browser-default).invalid + label:after, .ccw_plugin input[type=search]:not(.browser-default):focus.invalid + label:after, .ccw_plugin textarea.materialize-textarea.invalid + label:after, .ccw_plugin textarea.materialize-textarea:focus.invalid + label:after, .ccw_plugin .select-wrapper.invalid + label:after {
716
- content: attr(data-error);
717
- color: #F44336;
718
- opacity: 1;
719
- transform: translateY(9px); }
720
- .ccw_plugin input:not([type]) + label:after, .ccw_plugin input[type=text]:not(.browser-default) + label:after, .ccw_plugin input[type=password]:not(.browser-default) + label:after, .ccw_plugin input[type=email]:not(.browser-default) + label:after, .ccw_plugin input[type=url]:not(.browser-default) + label:after, .ccw_plugin input[type=time]:not(.browser-default) + label:after, .ccw_plugin input[type=date]:not(.browser-default) + label:after, .ccw_plugin input[type=datetime]:not(.browser-default) + label:after, .ccw_plugin input[type=datetime-local]:not(.browser-default) + label:after, .ccw_plugin input[type=tel]:not(.browser-default) + label:after, .ccw_plugin input[type=number]:not(.browser-default) + label:after, .ccw_plugin input[type=search]:not(.browser-default) + label:after, .ccw_plugin textarea.materialize-textarea + label:after, .ccw_plugin .select-wrapper + label:after {
721
- display: block;
722
- content: "";
723
- position: absolute;
724
- top: 100%;
725
- left: 0;
726
- opacity: 0;
727
- transition: .2s opacity ease-out, .2s color ease-out; }
728
- .ccw_plugin .input-field {
729
- position: relative;
730
- margin-top: 1rem; }
731
- .ccw_plugin .input-field.inline {
732
- display: inline-block;
733
- vertical-align: middle;
734
- margin-left: 5px; }
735
- .ccw_plugin .input-field.inline input,
736
- .ccw_plugin .input-field.inline .select-dropdown {
737
- margin-bottom: 1rem; }
738
- .ccw_plugin .input-field.col label {
739
- left: 0.75rem; }
740
- .ccw_plugin .input-field.col .prefix ~ label,
741
- .ccw_plugin .input-field.col .prefix ~ .validate ~ label {
742
- width: calc(100% - 3rem - 1.5rem); }
743
- .ccw_plugin .input-field label {
744
- color: #9e9e9e;
745
- position: absolute;
746
- top: 0;
747
- left: 0;
748
- height: 100%;
749
- font-size: 1rem;
750
- cursor: text;
751
- transition: transform .2s ease-out;
752
- transform-origin: 0% 100%;
753
- text-align: initial;
754
- transform: translateY(12px);
755
- pointer-events: none; }
756
- .ccw_plugin .input-field label:not(.label-icon).active {
757
- transform: translateY(-14px) scale(0.8);
758
- transform-origin: 0 0; }
759
- .ccw_plugin .input-field .prefix {
760
- position: absolute;
761
- width: 3rem;
762
- font-size: 2rem;
763
- transition: color .2s; }
764
- .ccw_plugin .input-field .prefix.active {
765
- color: #26a69a; }
766
- .ccw_plugin .input-field .prefix ~ input,
767
- .ccw_plugin .input-field .prefix ~ textarea,
768
- .ccw_plugin .input-field .prefix ~ label,
769
- .ccw_plugin .input-field .prefix ~ .validate ~ label,
770
- .ccw_plugin .input-field .prefix ~ .autocomplete-content {
771
- margin-left: 3rem;
772
- width: 92%;
773
- width: calc(100% - 3rem); }
774
- .ccw_plugin .input-field .prefix ~ label {
775
- margin-left: 3rem; }
776
- @media only screen and (max-width: 992px) {
777
- .ccw_plugin .input-field .prefix ~ input {
778
- width: 86%;
779
- width: calc(100% - 3rem); } }
780
- @media only screen and (max-width: 600px) {
781
- .ccw_plugin .input-field .prefix ~ input {
782
- width: 80%;
783
- width: calc(100% - 3rem); } }
784
-
785
-
786
- .ccw_plugin textarea {
787
- width: 100%;
788
- height: 3rem;
789
- background-color: transparent; }
790
- .ccw_plugin textarea.materialize-textarea {
791
- overflow-y: hidden;
792
- /* prevents scroll bar flash */
793
- padding: .8rem 0 1.6rem 0;
794
- /* prevents text jump on Enter keypress */
795
- resize: none;
796
- min-height: 3rem; }
797
- .ccw_plugin textarea.materialize-textarea.validate + label {
798
- height: 100%; }
799
- .ccw_plugin textarea.materialize-textarea.validate + label::after {
800
- top: calc(100% - 12px); }
801
- .ccw_plugin textarea.materialize-textarea.validate + label:not(.label-icon).active {
802
- transform: translateY(-25px); }
803
- .ccw_plugin .hiddendiv {
804
- display: none;
805
- white-space: pre-wrap;
806
- word-wrap: break-word;
807
- overflow-wrap: break-word;
808
- /* future version of deprecated 'word-wrap' */
809
- padding-top: 1.2rem;
810
- /* prevents text jump on Enter keypress */
811
- position: absolute;
812
- top: 0; }
813
- .ccw_plugin .autocomplete-content {
814
- margin-top: -20px;
815
- margin-bottom: 20px;
816
- display: block;
817
- opacity: 1;
818
- position: static; }
819
- .ccw_plugin .autocomplete-content li .highlight {
820
- color: #444; }
821
- .ccw_plugin .autocomplete-content li img {
822
- height: 40px;
823
- width: 40px;
824
- margin: 5px 15px; }
825
- .ccw_plugin form p {
826
- margin-bottom: 10px;
827
- text-align: left; }
828
- .ccw_plugin form p:last-child {
829
- margin-bottom: 0; }
830
-
831
- .ccw_plugin select {
832
- display: none; }
833
- .ccw_plugin select.browser-default {
834
- display: block; }
835
- .ccw_plugin select {
836
- background-color: rgba(255, 255, 255, 0.9);
837
- width: 100%;
838
- padding: 5px;
839
- border: 1px solid #f2f2f2;
840
- border-radius: 2px;
841
- height: 3rem; }
842
- .ccw_plugin .input-field > select {
843
- display: block;
844
- position: absolute;
845
- width: 0;
846
- pointer-events: none;
847
- height: 0;
848
- top: 0;
849
- left: 0;
850
- opacity: 0; }
851
-
852
- .ccw_plugin select:disabled {
853
- color: rgba(0, 0, 0, 0.42); }
854
- .ccw_plugin .select-wrapper.disabled span.caret,
855
- .ccw_plugin .select-wrapper.disabled + label {
856
- color: rgba(0, 0, 0, 0.42); }
857
- .ccw_plugin .select-wrapper input.select-dropdown:disabled {
858
- color: rgba(0, 0, 0, 0.42);
859
- cursor: default;
860
- user-select: none; }
861
-
862
- .ccw_plugin .prefix ~ .select-wrapper {
863
- margin-left: 3rem;
864
- width: 92%;
865
- width: calc(100% - 3rem); }
866
- .ccw_plugin .prefix ~ label {
867
- margin-left: 3rem; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/js/mainstyles.js DELETED
@@ -1,74 +0,0 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, {
40
- /******/ configurable: false,
41
- /******/ enumerable: true,
42
- /******/ get: getter
43
- /******/ });
44
- /******/ }
45
- /******/ };
46
- /******/
47
- /******/ // getDefaultExport function for compatibility with non-harmony modules
48
- /******/ __webpack_require__.n = function(module) {
49
- /******/ var getter = module && module.__esModule ?
50
- /******/ function getDefault() { return module['default']; } :
51
- /******/ function getModuleExports() { return module; };
52
- /******/ __webpack_require__.d(getter, 'a', getter);
53
- /******/ return getter;
54
- /******/ };
55
- /******/
56
- /******/ // Object.prototype.hasOwnProperty.call
57
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
58
- /******/
59
- /******/ // __webpack_public_path__
60
- /******/ __webpack_require__.p = "";
61
- /******/
62
- /******/ // Load entry module and return exports
63
- /******/ return __webpack_require__(__webpack_require__.s = 1);
64
- /******/ })
65
- /************************************************************************/
66
- /******/ ([
67
- /* 0 */,
68
- /* 1 */
69
- /***/ (function(module, exports) {
70
-
71
- // removed by extract-text-webpack-plugin
72
-
73
- /***/ })
74
- /******/ ]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/js/required/mdjs.js DELETED
@@ -1,1351 +0,0 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, {
40
- /******/ configurable: false,
41
- /******/ enumerable: true,
42
- /******/ get: getter
43
- /******/ });
44
- /******/ }
45
- /******/ };
46
- /******/
47
- /******/ // getDefaultExport function for compatibility with non-harmony modules
48
- /******/ __webpack_require__.n = function(module) {
49
- /******/ var getter = module && module.__esModule ?
50
- /******/ function getDefault() { return module['default']; } :
51
- /******/ function getModuleExports() { return module; };
52
- /******/ __webpack_require__.d(getter, 'a', getter);
53
- /******/ return getter;
54
- /******/ };
55
- /******/
56
- /******/ // Object.prototype.hasOwnProperty.call
57
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
58
- /******/
59
- /******/ // __webpack_public_path__
60
- /******/ __webpack_require__.p = "";
61
- /******/
62
- /******/ // Load entry module and return exports
63
- /******/ return __webpack_require__(__webpack_require__.s = 1);
64
- /******/ })
65
- /************************************************************************/
66
- /******/ ([
67
- /* 0 */,
68
- /* 1 */
69
- /***/ (function(module, exports, __webpack_require__) {
70
-
71
- "use strict";
72
-
73
-
74
- __webpack_require__(2);
75
-
76
- __webpack_require__(3);
77
-
78
- __webpack_require__(4);
79
-
80
- // import "materialize-css/js/waves";
81
-
82
-
83
- // jQuery(document).ready(function ($) {
84
- jQuery(document).ready(function () {
85
- jQuery(".inline_issue").prev("p").css("display", "inline");
86
- }); // import "materialize-css/dist/js/materialize";
87
-
88
- /***/ }),
89
- /* 2 */
90
- /***/ (function(module, exports) {
91
-
92
- // Required for Meteor package, the use of window prevents export by Meteor
93
- (function(window){
94
- if(window.Package){
95
- Materialize = {};
96
- } else {
97
- window.Materialize = {};
98
- }
99
- })(window);
100
-
101
-
102
- /*
103
- * raf.js
104
- * https://github.com/ngryman/raf.js
105
- *
106
- * original requestAnimationFrame polyfill by Erik Möller
107
- * inspired from paul_irish gist and post
108
- *
109
- * Copyright (c) 2013 ngryman
110
- * Licensed under the MIT license.
111
- */
112
- (function(window) {
113
- var lastTime = 0,
114
- vendors = ['webkit', 'moz'],
115
- requestAnimationFrame = window.requestAnimationFrame,
116
- cancelAnimationFrame = window.cancelAnimationFrame,
117
- i = vendors.length;
118
-
119
- // try to un-prefix existing raf
120
- while (--i >= 0 && !requestAnimationFrame) {
121
- requestAnimationFrame = window[vendors[i] + 'RequestAnimationFrame'];
122
- cancelAnimationFrame = window[vendors[i] + 'CancelRequestAnimationFrame'];
123
- }
124
-
125
- // polyfill with setTimeout fallback
126
- // heavily inspired from @darius gist mod: https://gist.github.com/paulirish/1579671#comment-837945
127
- if (!requestAnimationFrame || !cancelAnimationFrame) {
128
- requestAnimationFrame = function(callback) {
129
- var now = +Date.now(),
130
- nextTime = Math.max(lastTime + 16, now);
131
- return setTimeout(function() {
132
- callback(lastTime = nextTime);
133
- }, nextTime - now);
134
- };
135
-
136
- cancelAnimationFrame = clearTimeout;
137
- }
138
-
139
- // export to window
140
- window.requestAnimationFrame = requestAnimationFrame;
141
- window.cancelAnimationFrame = cancelAnimationFrame;
142
- }(window));
143
-
144
-
145
- /**
146
- * Generate approximated selector string for a jQuery object
147
- * @param {jQuery} obj jQuery object to be parsed
148
- * @returns {string}
149
- */
150
- Materialize.objectSelectorString = function(obj) {
151
- var tagStr = obj.prop('tagName') || '';
152
- var idStr = obj.attr('id') || '';
153
- var classStr = obj.attr('class') || '';
154
- return (tagStr + idStr + classStr).replace(/\s/g,'');
155
- };
156
-
157
-
158
- // Unique Random ID
159
- Materialize.guid = (function() {
160
- function s4() {
161
- return Math.floor((1 + Math.random()) * 0x10000)
162
- .toString(16)
163
- .substring(1);
164
- }
165
- return function() {
166
- return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
167
- s4() + '-' + s4() + s4() + s4();
168
- };
169
- })();
170
-
171
- /**
172
- * Escapes hash from special characters
173
- * @param {string} hash String returned from this.hash
174
- * @returns {string}
175
- */
176
- Materialize.escapeHash = function(hash) {
177
- return hash.replace( /(:|\.|\[|\]|,|=)/g, "\\$1" );
178
- };
179
-
180
- Materialize.elementOrParentIsFixed = function(element) {
181
- var $element = $(element);
182
- var $checkElements = $element.add($element.parents());
183
- var isFixed = false;
184
- $checkElements.each(function(){
185
- if ($(this).css("position") === "fixed") {
186
- isFixed = true;
187
- return false;
188
- }
189
- });
190
- return isFixed;
191
- };
192
-
193
-
194
- /**
195
- * Get time in ms
196
- * @license https://raw.github.com/jashkenas/underscore/master/LICENSE
197
- * @type {function}
198
- * @return {number}
199
- */
200
- var getTime = (Date.now || function () {
201
- return new Date().getTime();
202
- });
203
-
204
-
205
- /**
206
- * Returns a function, that, when invoked, will only be triggered at most once
207
- * during a given window of time. Normally, the throttled function will run
208
- * as much as it can, without ever going more than once per `wait` duration;
209
- * but if you'd like to disable the execution on the leading edge, pass
210
- * `{leading: false}`. To disable execution on the trailing edge, ditto.
211
- * @license https://raw.github.com/jashkenas/underscore/master/LICENSE
212
- * @param {function} func
213
- * @param {number} wait
214
- * @param {Object=} options
215
- * @returns {Function}
216
- */
217
- Materialize.throttle = function(func, wait, options) {
218
- var context, args, result;
219
- var timeout = null;
220
- var previous = 0;
221
- options || (options = {});
222
- var later = function () {
223
- previous = options.leading === false ? 0 : getTime();
224
- timeout = null;
225
- result = func.apply(context, args);
226
- context = args = null;
227
- };
228
- return function () {
229
- var now = getTime();
230
- if (!previous && options.leading === false) previous = now;
231
- var remaining = wait - (now - previous);
232
- context = this;
233
- args = arguments;
234
- if (remaining <= 0) {
235
- clearTimeout(timeout);
236
- timeout = null;
237
- previous = now;
238
- result = func.apply(context, args);
239
- context = args = null;
240
- } else if (!timeout && options.trailing !== false) {
241
- timeout = setTimeout(later, remaining);
242
- }
243
- return result;
244
- };
245
- };
246
-
247
-
248
- // Velocity has conflicts when loaded with jQuery, this will check for it
249
- // First, check if in noConflict mode
250
- var Vel;
251
- if (jQuery) {
252
- Vel = jQuery.Velocity;
253
- } else if ($) {
254
- Vel = $.Velocity;
255
- } else {
256
- Vel = Velocity;
257
- }
258
-
259
-
260
- /***/ }),
261
- /* 3 */
262
- /***/ (function(module, exports) {
263
-
264
- (function ($) {
265
- $(document).ready(function() {
266
-
267
- // Function to update labels of text fields
268
- Materialize.updateTextFields = function() {
269
- var input_selector = 'input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], textarea';
270
- $(input_selector).each(function(index, element) {
271
- var $this = $(this);
272
- if ($(element).val().length > 0 || $(element).is(':focus') || element.autofocus || $this.attr('placeholder') !== undefined) {
273
- $this.siblings('label').addClass('active');
274
- } else if ($(element)[0].validity) {
275
- $this.siblings('label').toggleClass('active', $(element)[0].validity.badInput === true);
276
- } else {
277
- $this.siblings('label').removeClass('active');
278
- }
279
- });
280
- };
281
-
282
- // Text based inputs
283
- var input_selector = 'input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], textarea';
284
-
285
- // Add active if form auto complete
286
- $(document).on('change', input_selector, function () {
287
- if($(this).val().length !== 0 || $(this).attr('placeholder') !== undefined) {
288
- $(this).siblings('label').addClass('active');
289
- }
290
- validate_field($(this));
291
- });
292
-
293
- // Add active if input element has been pre-populated on document ready
294
- $(document).ready(function() {
295
- Materialize.updateTextFields();
296
- });
297
-
298
- // HTML DOM FORM RESET handling
299
- $(document).on('reset', function(e) {
300
- var formReset = $(e.target);
301
- if (formReset.is('form')) {
302
- formReset.find(input_selector).removeClass('valid').removeClass('invalid');
303
- formReset.find(input_selector).each(function () {
304
- if ($(this).attr('value') === '') {
305
- $(this).siblings('label').removeClass('active');
306
- }
307
- });
308
-
309
- // Reset select
310
- formReset.find('select.initialized').each(function () {
311
- var reset_text = formReset.find('option[selected]').text();
312
- formReset.siblings('input.select-dropdown').val(reset_text);
313
- });
314
- }
315
- });
316
-
317
- // Add active when element has focus
318
- $(document).on('focus', input_selector, function () {
319
- $(this).siblings('label, .prefix').addClass('active');
320
- });
321
-
322
- $(document).on('blur', input_selector, function () {
323
- var $inputElement = $(this);
324
- var selector = ".prefix";
325
-
326
- if ($inputElement.val().length === 0 && $inputElement[0].validity.badInput !== true && $inputElement.attr('placeholder') === undefined) {
327
- selector += ", label";
328
- }
329
-
330
- $inputElement.siblings(selector).removeClass('active');
331
-
332
- validate_field($inputElement);
333
- });
334
-
335
- window.validate_field = function(object) {
336
- var hasLength = object.attr('data-length') !== undefined;
337
- var lenAttr = parseInt(object.attr('data-length'));
338
- var len = object.val().length;
339
-
340
- if (object.val().length === 0 && object[0].validity.badInput === false && !object.is(':required')) {
341
- if (object.hasClass('validate')) {
342
- object.removeClass('valid');
343
- object.removeClass('invalid');
344
- }
345
- }
346
- else {
347
- if (object.hasClass('validate')) {
348
- // Check for character counter attributes
349
- if ((object.is(':valid') && hasLength && (len <= lenAttr)) || (object.is(':valid') && !hasLength)) {
350
- object.removeClass('invalid');
351
- object.addClass('valid');
352
- }
353
- else {
354
- object.removeClass('valid');
355
- object.addClass('invalid');
356
- }
357
- }
358
- }
359
- };
360
-
361
- // Radio and Checkbox focus class
362
- var radio_checkbox = 'input[type=radio], input[type=checkbox]';
363
- $(document).on('keyup.radio', radio_checkbox, function(e) {
364
- // TAB, check if tabbing to radio or checkbox.
365
- if (e.which === 9) {
366
- $(this).addClass('tabbed');
367
- var $this = $(this);
368
- $this.one('blur', function(e) {
369
-
370
- $(this).removeClass('tabbed');
371
- });
372
- return;
373
- }
374
- });
375
-
376
- // Textarea Auto Resize
377
- var hiddenDiv = $('.hiddendiv').first();
378
- if (!hiddenDiv.length) {
379
- hiddenDiv = $('<div class="hiddendiv common"></div>');
380
- $('body').append(hiddenDiv);
381
- }
382
- var text_area_selector = '.materialize-textarea';
383
-
384
- function textareaAutoResize($textarea) {
385
- // Set font properties of hiddenDiv
386
-
387
- var fontFamily = $textarea.css('font-family');
388
- var fontSize = $textarea.css('font-size');
389
- var lineHeight = $textarea.css('line-height');
390
- var padding = $textarea.css('padding');
391
-
392
- if (fontSize) { hiddenDiv.css('font-size', fontSize); }
393
- if (fontFamily) { hiddenDiv.css('font-family', fontFamily); }
394
- if (lineHeight) { hiddenDiv.css('line-height', lineHeight); }
395
- if (padding) { hiddenDiv.css('padding', padding); }
396
-
397
- // Set original-height, if none
398
- if (!$textarea.data('original-height')) {
399
- $textarea.data('original-height', $textarea.height());
400
- }
401
-
402
- if ($textarea.attr('wrap') === 'off') {
403
- hiddenDiv.css('overflow-wrap', 'normal')
404
- .css('white-space', 'pre');
405
- }
406
-
407
- hiddenDiv.text($textarea.val() + '\n');
408
- var content = hiddenDiv.html().replace(/\n/g, '<br>');
409
- hiddenDiv.html(content);
410
-
411
-
412
- // When textarea is hidden, width goes crazy.
413
- // Approximate with half of window size
414
-
415
- if ($textarea.is(':visible')) {
416
- hiddenDiv.css('width', $textarea.width());
417
- }
418
- else {
419
- hiddenDiv.css('width', $(window).width()/2);
420
- }
421
-
422
-
423
- /**
424
- * Resize if the new height is greater than the
425
- * original height of the textarea
426
- */
427
- if ($textarea.data('original-height') <= hiddenDiv.height()) {
428
- $textarea.css('height', hiddenDiv.height());
429
- } else if ($textarea.val().length < $textarea.data('previous-length')) {
430
- /**
431
- * In case the new height is less than original height, it
432
- * means the textarea has less text than before
433
- * So we set the height to the original one
434
- */
435
- $textarea.css('height', $textarea.data('original-height'));
436
- }
437
- $textarea.data('previous-length', $textarea.val().length);
438
- }
439
-
440
- $(text_area_selector).each(function () {
441
- var $textarea = $(this);
442
- /**
443
- * Instead of resizing textarea on document load,
444
- * store the original height and the original length
445
- */
446
- $textarea.data('original-height', $textarea.height());
447
- $textarea.data('previous-length', $textarea.val().length);
448
- });
449
-
450
- $('body').on('keyup keydown autoresize', text_area_selector, function () {
451
- textareaAutoResize($(this));
452
- });
453
-
454
- // File Input Path
455
- $(document).on('change', '.file-field input[type="file"]', function () {
456
- var file_field = $(this).closest('.file-field');
457
- var path_input = file_field.find('input.file-path');
458
- var files = $(this)[0].files;
459
- var file_names = [];
460
- for (var i = 0; i < files.length; i++) {
461
- file_names.push(files[i].name);
462
- }
463
- path_input.val(file_names.join(", "));
464
- path_input.trigger('change');
465
- });
466
-
467
- /****************
468
- * Range Input *
469
- ****************/
470
-
471
- var range_type = 'input[type=range]';
472
- var range_mousedown = false;
473
- var left;
474
-
475
- $(range_type).each(function () {
476
- var thumb = $('<span class="thumb"><span class="value"></span></span>');
477
- $(this).after(thumb);
478
- });
479
-
480
- var showRangeBubble = function(thumb) {
481
- var paddingLeft = parseInt(thumb.parent().css('padding-left'));
482
- var marginLeft = (-7 + paddingLeft) + 'px';
483
- thumb.velocity({ height: "30px", width: "30px", top: "-30px", marginLeft: marginLeft}, { duration: 300, easing: 'easeOutExpo' });
484
- };
485
-
486
- var calcRangeOffset = function(range) {
487
- var width = range.width() - 15;
488
- var max = parseFloat(range.attr('max'));
489
- var min = parseFloat(range.attr('min'));
490
- var percent = (parseFloat(range.val()) - min) / (max - min);
491
- return percent * width;
492
- }
493
-
494
- var range_wrapper = '.range-field';
495
- $(document).on('change', range_type, function(e) {
496
- var thumb = $(this).siblings('.thumb');
497
- thumb.find('.value').html($(this).val());
498
-
499
- if (!thumb.hasClass('active')) {
500
- showRangeBubble(thumb);
501
- }
502
-
503
- var offsetLeft = calcRangeOffset($(this));
504
- thumb.addClass('active').css('left', offsetLeft);
505
- });
506
-
507
- $(document).on('mousedown touchstart', range_type, function(e) {
508
- var thumb = $(this).siblings('.thumb');
509
-
510
- // If thumb indicator does not exist yet, create it
511
- if (thumb.length <= 0) {
512
- thumb = $('<span class="thumb"><span class="value"></span></span>');
513
- $(this).after(thumb);
514
- }
515
-
516
- // Set indicator value
517
- thumb.find('.value').html($(this).val());
518
-
519
- range_mousedown = true;
520
- $(this).addClass('active');
521
-
522
- if (!thumb.hasClass('active')) {
523
- showRangeBubble(thumb);
524
- }
525
-
526
- if (e.type !== 'input') {
527
- var offsetLeft = calcRangeOffset($(this));
528
- thumb.addClass('active').css('left', offsetLeft);
529
- }
530
- });
531
-
532
- $(document).on('mouseup touchend', range_wrapper, function() {
533
- range_mousedown = false;
534
- $(this).removeClass('active');
535
- });
536
-
537
- $(document).on('input mousemove touchmove', range_wrapper, function(e) {
538
- var thumb = $(this).children('.thumb');
539
- var left;
540
- var input = $(this).find(range_type);
541
-
542
- if (range_mousedown) {
543
- if (!thumb.hasClass('active')) {
544
- showRangeBubble(thumb);
545
- }
546
-
547
- var offsetLeft = calcRangeOffset(input);
548
- thumb.addClass('active').css('left', offsetLeft);
549
- thumb.find('.value').html(thumb.siblings(range_type).val());
550
- }
551
- });
552
-
553
- $(document).on('mouseout touchleave', range_wrapper, function() {
554
- if (!range_mousedown) {
555
-
556
- var thumb = $(this).children('.thumb');
557
- var paddingLeft = parseInt($(this).css('padding-left'));
558
- var marginLeft = (7 + paddingLeft) + 'px';
559
-
560
- if (thumb.hasClass('active')) {
561
- thumb.velocity({ height: '0', width: '0', top: '10px', marginLeft: marginLeft}, { duration: 100 });
562
- }
563
- thumb.removeClass('active');
564
- }
565
- });
566
-
567
- /**************************
568
- * Auto complete plugin *
569
- *************************/
570
- $.fn.autocomplete = function (options) {
571
- // Defaults
572
- var defaults = {
573
- data: {},
574
- limit: Infinity,
575
- onAutocomplete: null,
576
- minLength: 1
577
- };
578
-
579
- options = $.extend(defaults, options);
580
-
581
- return this.each(function() {
582
- var $input = $(this);
583
- var data = options.data,
584
- count = 0,
585
- activeIndex = -1,
586
- oldVal,
587
- $inputDiv = $input.closest('.input-field'); // Div to append on
588
-
589
- // Check if data isn't empty
590
- if (!$.isEmptyObject(data)) {
591
- var $autocomplete = $('<ul class="autocomplete-content dropdown-content"></ul>');
592
- var $oldAutocomplete;
593
-
594
- // Append autocomplete element.
595
- // Prevent double structure init.
596
- if ($inputDiv.length) {
597
- $oldAutocomplete = $inputDiv.children('.autocomplete-content.dropdown-content').first();
598
- if (!$oldAutocomplete.length) {
599
- $inputDiv.append($autocomplete); // Set ul in body
600
- }
601
- } else {
602
- $oldAutocomplete = $input.next('.autocomplete-content.dropdown-content');
603
- if (!$oldAutocomplete.length) {
604
- $input.after($autocomplete);
605
- }
606
- }
607
- if ($oldAutocomplete.length) {
608
- $autocomplete = $oldAutocomplete;
609
- }
610
-
611
- // Highlight partial match.
612
- var highlight = function(string, $el) {
613
- var img = $el.find('img');
614
- var matchStart = $el.text().toLowerCase().indexOf("" + string.toLowerCase() + ""),
615
- matchEnd = matchStart + string.length - 1,
616
- beforeMatch = $el.text().slice(0, matchStart),
617
- matchText = $el.text().slice(matchStart, matchEnd + 1),
618
- afterMatch = $el.text().slice(matchEnd + 1);
619
- $el.html("<span>" + beforeMatch + "<span class='highlight'>" + matchText + "</span>" + afterMatch + "</span>");
620
- if (img.length) {
621
- $el.prepend(img);
622
- }
623
- };
624
-
625
- // Reset current element position
626
- var resetCurrentElement = function() {
627
- activeIndex = -1;
628
- $autocomplete.find('.active').removeClass('active');
629
- }
630
-
631
- // Remove autocomplete elements
632
- var removeAutocomplete = function() {
633
- $autocomplete.empty();
634
- resetCurrentElement();
635
- oldVal = undefined;
636
- };
637
-
638
- $input.off('blur.autocomplete').on('blur.autocomplete', function() {
639
- removeAutocomplete();
640
- });
641
-
642
- // Perform search
643
- $input.off('keyup.autocomplete focus.autocomplete').on('keyup.autocomplete focus.autocomplete', function (e) {
644
- // Reset count.
645
- count = 0;
646
- var val = $input.val().toLowerCase();
647
-
648
- // Don't capture enter or arrow key usage.
649
- if (e.which === 13 ||
650
- e.which === 38 ||
651
- e.which === 40) {
652
- return;
653
- }
654
-
655
-
656
- // Check if the input isn't empty
657
- if (oldVal !== val) {
658
- removeAutocomplete();
659
-
660
- if (val.length >= options.minLength) {
661
- for(var key in data) {
662
- if (data.hasOwnProperty(key) &&
663
- key.toLowerCase().indexOf(val) !== -1) {
664
- // Break if past limit
665
- if (count >= options.limit) {
666
- break;
667
- }
668
-
669
- var autocompleteOption = $('<li></li>');
670
- if (!!data[key]) {
671
- autocompleteOption.append('<img src="'+ data[key] +'" class="right circle"><span>'+ key +'</span>');
672
- } else {
673
- autocompleteOption.append('<span>'+ key +'</span>');
674
- }
675
-
676
- $autocomplete.append(autocompleteOption);
677
- highlight(val, autocompleteOption);
678
- count++;
679
- }
680
- }
681
- }
682
- }
683
-
684
- // Update oldVal
685
- oldVal = val;
686
- });
687
-
688
- $input.off('keydown.autocomplete').on('keydown.autocomplete', function (e) {
689
- // Arrow keys and enter key usage
690
- var keyCode = e.which,
691
- liElement,
692
- numItems = $autocomplete.children('li').length,
693
- $active = $autocomplete.children('.active').first();
694
-
695
- // select element on Enter
696
- if (keyCode === 13 && activeIndex >= 0) {
697
- liElement = $autocomplete.children('li').eq(activeIndex);
698
- if (liElement.length) {
699
- liElement.trigger('mousedown.autocomplete');
700
- e.preventDefault();
701
- }
702
- return;
703
- }
704
-
705
- // Capture up and down key
706
- if ( keyCode === 38 || keyCode === 40 ) {
707
- e.preventDefault();
708
-
709
- if (keyCode === 38 &&
710
- activeIndex > 0) {
711
- activeIndex--;
712
- }
713
-
714
- if (keyCode === 40 &&
715
- activeIndex < (numItems - 1)) {
716
- activeIndex++;
717
- }
718
-
719
- $active.removeClass('active');
720
- if (activeIndex >= 0) {
721
- $autocomplete.children('li').eq(activeIndex).addClass('active');
722
- }
723
- }
724
- });
725
-
726
- // Set input value
727
- $autocomplete.off('mousedown.autocomplete touchstart.autocomplete').on('mousedown.autocomplete touchstart.autocomplete', 'li', function () {
728
- var text = $(this).text().trim();
729
- $input.val(text);
730
- $input.trigger('change');
731
- removeAutocomplete();
732
-
733
- // Handle onAutocomplete callback.
734
- if (typeof(options.onAutocomplete) === "function") {
735
- options.onAutocomplete.call(this, text);
736
- }
737
- });
738
-
739
- // Empty data
740
- } else {
741
- $input.off('keyup.autocomplete focus.autocomplete');
742
- }
743
- });
744
- };
745
-
746
- }); // End of $(document).ready
747
-
748
- /*******************
749
- * Select Plugin *
750
- ******************/
751
- $.fn.material_select = function (callback) {
752
- $(this).each(function(){
753
- var $select = $(this);
754
-
755
- if ($select.hasClass('browser-default')) {
756
- return; // Continue to next (return false breaks out of entire loop)
757
- }
758
-
759
- var multiple = $select.attr('multiple') ? true : false,
760
- lastID = $select.attr('data-select-id'); // Tear down structure if Select needs to be rebuilt
761
-
762
- if (lastID) {
763
- $select.parent().find('span.caret').remove();
764
- $select.parent().find('input').remove();
765
-
766
- $select.unwrap();
767
- $('ul#select-options-'+lastID).remove();
768
- }
769
-
770
- // If destroying the select, remove the selelct-id and reset it to it's uninitialized state.
771
- if(callback === 'destroy') {
772
- $select.removeAttr('data-select-id').removeClass('initialized');
773
- $(window).off('click.select');
774
- return;
775
- }
776
-
777
- var uniqueID = Materialize.guid();
778
- $select.attr('data-select-id', uniqueID);
779
- var wrapper = $('<div class="select-wrapper"></div>');
780
- wrapper.addClass($select.attr('class'));
781
- if ($select.is(':disabled'))
782
- wrapper.addClass('disabled');
783
- var options = $('<ul id="select-options-' + uniqueID +'" class="dropdown-content select-dropdown ' + (multiple ? 'multiple-select-dropdown' : '') + '"></ul>'),
784
- selectChildren = $select.children('option, optgroup'),
785
- valuesSelected = [],
786
- optionsHover = false;
787
-
788
- var label = $select.find('option:selected').html() || $select.find('option:first').html() || "";
789
-
790
- // Function that renders and appends the option taking into
791
- // account type and possible image icon.
792
- var appendOptionWithIcon = function(select, option, type) {
793
- // Add disabled attr if disabled
794
- var disabledClass = (option.is(':disabled')) ? 'disabled ' : '';
795
- var optgroupClass = (type === 'optgroup-option') ? 'optgroup-option ' : '';
796
- var multipleCheckbox = multiple ? '<input type="checkbox"' + disabledClass + '/><label></label>' : '';
797
-
798
- // add icons
799
- var icon_url = option.data('icon');
800
- var classes = option.attr('class');
801
- if (!!icon_url) {
802
- var classString = '';
803
- if (!!classes) classString = ' class="' + classes + '"';
804
-
805
- // Check for multiple type.
806
- options.append($('<li class="' + disabledClass + optgroupClass + '"><img alt="" src="' + icon_url + '"' + classString + '><span>' + multipleCheckbox + option.html() + '</span></li>'));
807
- return true;
808
- }
809
-
810
- // Check for multiple type.
811
- options.append($('<li class="' + disabledClass + optgroupClass + '"><span>' + multipleCheckbox + option.html() + '</span></li>'));
812
- };
813
-
814
- /* Create dropdown structure. */
815
- if (selectChildren.length) {
816
- selectChildren.each(function() {
817
- if ($(this).is('option')) {
818
- // Direct descendant option.
819
- if (multiple) {
820
- appendOptionWithIcon($select, $(this), 'multiple');
821
-
822
- } else {
823
- appendOptionWithIcon($select, $(this));
824
- }
825
- } else if ($(this).is('optgroup')) {
826
- // Optgroup.
827
- var selectOptions = $(this).children('option');
828
- options.append($('<li class="optgroup"><span>' + $(this).attr('label') + '</span></li>'));
829
-
830
- selectOptions.each(function() {
831
- appendOptionWithIcon($select, $(this), 'optgroup-option');
832
- });
833
- }
834
- });
835
- }
836
-
837
- options.find('li:not(.optgroup)').each(function (i) {
838
- $(this).click(function (e) {
839
- // Check if option element is disabled
840
- if (!$(this).hasClass('disabled') && !$(this).hasClass('optgroup')) {
841
- var selected = true;
842
-
843
- if (multiple) {
844
- $('input[type="checkbox"]', this).prop('checked', function(i, v) { return !v; });
845
- selected = toggleEntryFromArray(valuesSelected, i, $select);
846
- $newSelect.trigger('focus');
847
- } else {
848
- options.find('li').removeClass('active');
849
- $(this).toggleClass('active');
850
- $newSelect.val($(this).text());
851
- }
852
-
853
- activateOption(options, $(this));
854
- $select.find('option').eq(i).prop('selected', selected);
855
- // Trigger onchange() event
856
- $select.trigger('change');
857
- if (typeof callback !== 'undefined') callback();
858
- }
859
-
860
- e.stopPropagation();
861
- });
862
- });
863
-
864
- // Wrap Elements
865
- $select.wrap(wrapper);
866
- // Add Select Display Element
867
- var dropdownIcon = $('<span class="caret">&#9660;</span>');
868
-
869
- // escape double quotes
870
- var sanitizedLabelHtml = label.replace(/"/g, '&quot;');
871
-
872
- var $newSelect = $('<input type="text" class="select-dropdown" readonly="true" ' + (($select.is(':disabled')) ? 'disabled' : '') + ' data-activates="select-options-' + uniqueID +'" value="'+ sanitizedLabelHtml +'"/>');
873
- $select.before($newSelect);
874
- $newSelect.before(dropdownIcon);
875
-
876
- $newSelect.after(options);
877
- // Check if section element is disabled
878
- if (!$select.is(':disabled')) {
879
- $newSelect.dropdown({'hover': false});
880
- }
881
-
882
- // Copy tabindex
883
- if ($select.attr('tabindex')) {
884
- $($newSelect[0]).attr('tabindex', $select.attr('tabindex'));
885
- }
886
-
887
- $select.addClass('initialized');
888
-
889
- $newSelect.on({
890
- 'focus': function (){
891
- if ($('ul.select-dropdown').not(options[0]).is(':visible')) {
892
- $('input.select-dropdown').trigger('close');
893
- $(window).off('click.select');
894
- }
895
- if (!options.is(':visible')) {
896
- $(this).trigger('open', ['focus']);
897
- var label = $(this).val();
898
- if (multiple && label.indexOf(',') >= 0) {
899
- label = label.split(',')[0];
900
- }
901
-
902
- var selectedOption = options.find('li').filter(function() {
903
- return $(this).text().toLowerCase() === label.toLowerCase();
904
- })[0];
905
- activateOption(options, selectedOption, true);
906
-
907
- $(window).off('click.select').on('click.select', function () {
908
- multiple && (optionsHover || $newSelect.trigger('close'));
909
- $(window).off('click.select');
910
- });
911
- }
912
- },
913
- 'click': function (e){
914
- e.stopPropagation();
915
- }
916
- });
917
-
918
- $newSelect.on('blur', function() {
919
- if (!multiple) {
920
- $(this).trigger('close');
921
- $(window).off('click.select');
922
- }
923
- options.find('li.selected').removeClass('selected');
924
- });
925
-
926
- options.hover(function() {
927
- optionsHover = true;
928
- }, function () {
929
- optionsHover = false;
930
- });
931
-
932
- // Add initial multiple selections.
933
- if (multiple) {
934
- $select.find("option:selected:not(:disabled)").each(function () {
935
- var index = $(this).index();
936
-
937
- toggleEntryFromArray(valuesSelected, index, $select);
938
- options.find("li").eq(index).find(":checkbox").prop("checked", true);
939
- });
940
- }
941
-
942
- /**
943
- * Make option as selected and scroll to selected position
944
- * @param {jQuery} collection Select options jQuery element
945
- * @param {Element} newOption element of the new option
946
- * @param {Boolean} firstActivation If on first activation of select
947
- */
948
- var activateOption = function(collection, newOption, firstActivation) {
949
- if (newOption) {
950
- collection.find('li.selected').removeClass('selected');
951
- var option = $(newOption);
952
- option.addClass('selected');
953
- if (!multiple || !!firstActivation) {
954
- options.scrollTo(option);
955
- }
956
- }
957
- };
958
-
959
- // Allow user to search by typing
960
- // this array is cleared after 1 second
961
- var filterQuery = [],
962
- onKeyDown = function(e){
963
- // TAB - switch to another input
964
- if(e.which == 9){
965
- $newSelect.trigger('close');
966
- return;
967
- }
968
-
969
- // ARROW DOWN WHEN SELECT IS CLOSED - open select options
970
- if(e.which == 40 && !options.is(':visible')){
971
- $newSelect.trigger('open');
972
- return;
973
- }
974
-
975
- // ENTER WHEN SELECT IS CLOSED - submit form
976
- if(e.which == 13 && !options.is(':visible')){
977
- return;
978
- }
979
-
980
- e.preventDefault();
981
-
982
- // CASE WHEN USER TYPE LETTERS
983
- var letter = String.fromCharCode(e.which).toLowerCase(),
984
- nonLetters = [9,13,27,38,40];
985
- if (letter && (nonLetters.indexOf(e.which) === -1)) {
986
- filterQuery.push(letter);
987
-
988
- var string = filterQuery.join(''),
989
- newOption = options.find('li').filter(function() {
990
- return $(this).text().toLowerCase().indexOf(string) === 0;
991
- })[0];
992
-
993
- if (newOption) {
994
- activateOption(options, newOption);
995
- }
996
- }
997
-
998
- // ENTER - select option and close when select options are opened
999
- if (e.which == 13) {
1000
- var activeOption = options.find('li.selected:not(.disabled)')[0];
1001
- if(activeOption){
1002
- $(activeOption).trigger('click');
1003
- if (!multiple) {
1004
- $newSelect.trigger('close');
1005
- }
1006
- }
1007
- }
1008
-
1009
- // ARROW DOWN - move to next not disabled option
1010
- if (e.which == 40) {
1011
- if (options.find('li.selected').length) {
1012
- newOption = options.find('li.selected').next('li:not(.disabled)')[0];
1013
- } else {
1014
- newOption = options.find('li:not(.disabled)')[0];
1015
- }
1016
- activateOption(options, newOption);
1017
- }
1018
-
1019
- // ESC - close options
1020
- if (e.which == 27) {
1021
- $newSelect.trigger('close');
1022
- }
1023
-
1024
- // ARROW UP - move to previous not disabled option
1025
- if (e.which == 38) {
1026
- newOption = options.find('li.selected').prev('li:not(.disabled)')[0];
1027
- if(newOption)
1028
- activateOption(options, newOption);
1029
- }
1030
-
1031
- // Automaticaly clean filter query so user can search again by starting letters
1032
- setTimeout(function(){ filterQuery = []; }, 1000);
1033
- };
1034
-
1035
- $newSelect.on('keydown', onKeyDown);
1036
- });
1037
-
1038
- function toggleEntryFromArray(entriesArray, entryIndex, select) {
1039
- var index = entriesArray.indexOf(entryIndex),
1040
- notAdded = index === -1;
1041
-
1042
- if (notAdded) {
1043
- entriesArray.push(entryIndex);
1044
- } else {
1045
- entriesArray.splice(index, 1);
1046
- }
1047
-
1048
- select.siblings('ul.dropdown-content').find('li:not(.optgroup)').eq(entryIndex).toggleClass('active');
1049
-
1050
- // use notAdded instead of true (to detect if the option is selected or not)
1051
- select.find('option').eq(entryIndex).prop('selected', notAdded);
1052
- setValueToInput(entriesArray, select);
1053
-
1054
- return notAdded;
1055
- }
1056
-
1057
- function setValueToInput(entriesArray, select) {
1058
- var value = '';
1059
-
1060
- for (var i = 0, count = entriesArray.length; i < count; i++) {
1061
- var text = select.find('option').eq(entriesArray[i]).text();
1062
-
1063
- i === 0 ? value += text : value += ', ' + text;
1064
- }
1065
-
1066
- if (value === '') {
1067
- value = select.find('option:disabled').eq(0).text();
1068
- }
1069
-
1070
- select.siblings('input.select-dropdown').val(value);
1071
- }
1072
- };
1073
-
1074
- }( jQuery ));
1075
-
1076
-
1077
- /***/ }),
1078
- /* 4 */
1079
- /***/ (function(module, exports) {
1080
-
1081
- (function ($) {
1082
- $(document).ready(function() {
1083
-
1084
- // jQuery reverse
1085
- $.fn.reverse = [].reverse;
1086
-
1087
- // Hover behaviour: make sure this doesn't work on .click-to-toggle FABs!
1088
- $(document).on('mouseenter.fixedActionBtn', '.fixed-action-btn:not(.click-to-toggle):not(.toolbar)', function(e) {
1089
- var $this = $(this);
1090
- openFABMenu($this);
1091
- });
1092
- $(document).on('mouseleave.fixedActionBtn', '.fixed-action-btn:not(.click-to-toggle):not(.toolbar)', function(e) {
1093
- var $this = $(this);
1094
- closeFABMenu($this);
1095
- });
1096
-
1097
- // Toggle-on-click behaviour.
1098
- $(document).on('click.fabClickToggle', '.fixed-action-btn.click-to-toggle > a', function(e) {
1099
- var $this = $(this);
1100
- var $menu = $this.parent();
1101
- if ($menu.hasClass('active')) {
1102
- closeFABMenu($menu);
1103
- } else {
1104
- openFABMenu($menu);
1105
- }
1106
- });
1107
-
1108
- // Toolbar transition behaviour.
1109
- $(document).on('click.fabToolbar', '.fixed-action-btn.toolbar > a', function(e) {
1110
- var $this = $(this);
1111
- var $menu = $this.parent();
1112
- FABtoToolbar($menu);
1113
- });
1114
-
1115
- });
1116
-
1117
- $.fn.extend({
1118
- openFAB: function() {
1119
- openFABMenu($(this));
1120
- },
1121
- closeFAB: function() {
1122
- closeFABMenu($(this));
1123
- },
1124
- openToolbar: function() {
1125
- FABtoToolbar($(this));
1126
- },
1127
- closeToolbar: function() {
1128
- toolbarToFAB($(this));
1129
- }
1130
- });
1131
-
1132
-
1133
- var openFABMenu = function (btn) {
1134
- var $this = btn;
1135
- if ($this.hasClass('active') === false) {
1136
-
1137
- // Get direction option
1138
- var horizontal = $this.hasClass('horizontal');
1139
- var offsetY, offsetX;
1140
-
1141
- if (horizontal === true) {
1142
- offsetX = 40;
1143
- } else {
1144
- offsetY = 40;
1145
- }
1146
-
1147
- $this.addClass('active');
1148
- $this.find('ul .btn-floating').velocity(
1149
- { scaleY: ".4", scaleX: ".4", translateY: offsetY + 'px', translateX: offsetX + 'px'},
1150
- { duration: 0 });
1151
-
1152
- var time = 0;
1153
- $this.find('ul .btn-floating').reverse().each( function () {
1154
- $(this).velocity(
1155
- { opacity: "1", scaleX: "1", scaleY: "1", translateY: "0", translateX: '0'},
1156
- { duration: 80, delay: time });
1157
- time += 40;
1158
- });
1159
- }
1160
- };
1161
-
1162
- var closeFABMenu = function (btn) {
1163
- var $this = btn;
1164
- // Get direction option
1165
- var horizontal = $this.hasClass('horizontal');
1166
- var offsetY, offsetX;
1167
-
1168
- if (horizontal === true) {
1169
- offsetX = 40;
1170
- } else {
1171
- offsetY = 40;
1172
- }
1173
-
1174
- $this.removeClass('active');
1175
- var time = 0;
1176
- $this.find('ul .btn-floating').velocity("stop", true);
1177
- $this.find('ul .btn-floating').velocity(
1178
- { opacity: "0", scaleX: ".4", scaleY: ".4", translateY: offsetY + 'px', translateX: offsetX + 'px'},
1179
- { duration: 80 }
1180
- );
1181
- };
1182
-
1183
-
1184
- /**
1185
- * Transform FAB into toolbar
1186
- * @param {Object} object jQuery object
1187
- */
1188
- var FABtoToolbar = function(btn) {
1189
- if (btn.attr('data-open') === "true") {
1190
- return;
1191
- }
1192
-
1193
- var offsetX, offsetY, scaleFactor;
1194
- var windowWidth = window.innerWidth;
1195
- var windowHeight = window.innerHeight;
1196
- var btnRect = btn[0].getBoundingClientRect();
1197
- var anchor = btn.find('> a').first();
1198
- var menu = btn.find('> ul').first();
1199
- var backdrop = $('<div class="fab-backdrop"></div>');
1200
- var fabColor = anchor.css('background-color');
1201
- anchor.append(backdrop);
1202
-
1203
- offsetX = btnRect.left - (windowWidth / 2) + (btnRect.width / 2);
1204
- offsetY = windowHeight - btnRect.bottom;
1205
- scaleFactor = windowWidth / backdrop.width();
1206
- btn.attr('data-origin-bottom', btnRect.bottom);
1207
- btn.attr('data-origin-left', btnRect.left);
1208
- btn.attr('data-origin-width', btnRect.width);
1209
-
1210
- // Set initial state
1211
- btn.addClass('active');
1212
- btn.attr('data-open', true);
1213
- btn.css({
1214
- 'text-align': 'center',
1215
- width: '100%',
1216
- bottom: 0,
1217
- left: 0,
1218
- transform: 'translateX(' + offsetX + 'px)',
1219
- transition: 'none'
1220
- });
1221
- anchor.css({
1222
- transform: 'translateY(' + -offsetY + 'px)',
1223
- transition: 'none'
1224
- });
1225
- backdrop.css({
1226
- 'background-color': fabColor
1227
- });
1228
-
1229
-
1230
- setTimeout(function() {
1231
- btn.css({
1232
- transform: '',
1233
- transition: 'transform .2s cubic-bezier(0.550, 0.085, 0.680, 0.530), background-color 0s linear .2s'
1234
- });
1235
- anchor.css({
1236
- overflow: 'visible',
1237
- transform: '',
1238
- transition: 'transform .2s'
1239
- });
1240
-
1241
- setTimeout(function() {
1242
- btn.css({
1243
- overflow: 'hidden',
1244
- 'background-color': fabColor
1245
- });
1246
- backdrop.css({
1247
- transform: 'scale(' + scaleFactor + ')',
1248
- transition: 'transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)'
1249
- });
1250
- menu.find('> li > a').css({
1251
- opacity: 1
1252
- });
1253
-
1254
- // Scroll to close.
1255
- $(window).on('scroll.fabToolbarClose', function() {
1256
- toolbarToFAB(btn);
1257
- $(window).off('scroll.fabToolbarClose');
1258
- $(document).off('click.fabToolbarClose');
1259
- });
1260
-
1261
- $(document).on('click.fabToolbarClose', function(e) {
1262
- if (!$(e.target).closest(menu).length) {
1263
- toolbarToFAB(btn);
1264
- $(window).off('scroll.fabToolbarClose');
1265
- $(document).off('click.fabToolbarClose');
1266
- }
1267
- });
1268
- }, 100);
1269
- }, 0);
1270
- };
1271
-
1272
- /**
1273
- * Transform toolbar back into FAB
1274
- * @param {Object} object jQuery object
1275
- */
1276
- var toolbarToFAB = function(btn) {
1277
- if (btn.attr('data-open') !== "true") {
1278
- return;
1279
- }
1280
-
1281
- var offsetX, offsetY, scaleFactor;
1282
- var windowWidth = window.innerWidth;
1283
- var windowHeight = window.innerHeight;
1284
- var btnWidth = btn.attr('data-origin-width');
1285
- var btnBottom = btn.attr('data-origin-bottom');
1286
- var btnLeft = btn.attr('data-origin-left');
1287
- var anchor = btn.find('> .btn-floating').first();
1288
- var menu = btn.find('> ul').first();
1289
- var backdrop = btn.find('.fab-backdrop');
1290
- var fabColor = anchor.css('background-color');
1291
-
1292
- offsetX = btnLeft - (windowWidth / 2) + (btnWidth / 2);
1293
- offsetY = windowHeight - btnBottom;
1294
- scaleFactor = windowWidth / backdrop.width();
1295
-
1296
-
1297
- // Hide backdrop
1298
- btn.removeClass('active');
1299
- btn.attr('data-open', false);
1300
- btn.css({
1301
- 'background-color': 'transparent',
1302
- transition: 'none'
1303
- });
1304
- anchor.css({
1305
- transition: 'none'
1306
- });
1307
- backdrop.css({
1308
- transform: 'scale(0)',
1309
- 'background-color': fabColor
1310
- });
1311
- menu.find('> li > a').css({
1312
- opacity: ''
1313
- });
1314
-
1315
- setTimeout(function() {
1316
- backdrop.remove();
1317
-
1318
- // Set initial state.
1319
- btn.css({
1320
- 'text-align': '',
1321
- width: '',
1322
- bottom: '',
1323
- left: '',
1324
- overflow: '',
1325
- 'background-color': '',
1326
- transform: 'translate3d(' + -offsetX + 'px,0,0)'
1327
- });
1328
- anchor.css({
1329
- overflow: '',
1330
- transform: 'translate3d(0,' + offsetY + 'px,0)'
1331
- });
1332
-
1333
- setTimeout(function() {
1334
- btn.css({
1335
- transform: 'translate3d(0,0,0)',
1336
- transition: 'transform .2s'
1337
- });
1338
- anchor.css({
1339
- transform: 'translate3d(0,0,0)',
1340
- transition: 'transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)'
1341
- });
1342
- }, 20);
1343
- }, 200);
1344
- };
1345
-
1346
-
1347
- }( jQuery ));
1348
-
1349
-
1350
- /***/ })
1351
- /******/ ]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
click-to-chat.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Click to Chat
4
  Plugin URI: https://wordpress.org/plugins/click-to-chat-for-whatsapp/
5
  Description: Lets make your Web page visitor contact you through WhatsApp with a single click/tap
6
- Version: 1.7
7
  Author: HoliThemes
8
  Author URI: https://holithemes.com/whatsapp-chat/
9
  License: GPL2
@@ -15,6 +15,11 @@ if ( ! defined( 'WPINC' ) ) {
15
  die('dont try to call this directly');
16
  }
17
 
 
 
 
 
 
18
  // define HT_CCW_PLUGIN_FILE
19
  if ( ! defined( 'HT_CCW_PLUGIN_FILE' ) ) {
20
  define( 'HT_CCW_PLUGIN_FILE', __FILE__ );
3
  Plugin Name: Click to Chat
4
  Plugin URI: https://wordpress.org/plugins/click-to-chat-for-whatsapp/
5
  Description: Lets make your Web page visitor contact you through WhatsApp with a single click/tap
6
+ Version: 1.7.1
7
  Author: HoliThemes
8
  Author URI: https://holithemes.com/whatsapp-chat/
9
  License: GPL2
15
  die('dont try to call this directly');
16
  }
17
 
18
+ // define HT_CCW_VERSION
19
+ if ( ! defined( 'HT_CCW_VERSION' ) ) {
20
+ define( 'HT_CCW_VERSION', '1.7.1' );
21
+ }
22
+
23
  // define HT_CCW_PLUGIN_FILE
24
  if ( ! defined( 'HT_CCW_PLUGIN_FILE' ) ) {
25
  define( 'HT_CCW_PLUGIN_FILE', __FILE__ );
inc/class-ccw-add-styles-scripts.php CHANGED
@@ -1,18 +1,13 @@
1
  <?php
2
  /**
3
- * mdjs.js - material design - js - style 1 only needed - added at template file style-1.php
4
  * app.js - autop issue solution, animtions - added for all styles
5
  *
6
  * mainstyles.css - for all styles ..
7
- * mdstyles.css - style 1, 8 needed -
8
  * for floating style added with conditons - in this file
9
  * for shortcodes added at there related template files.. ( sc-style- .php )
10
  * for shortcode - if user faces issue, as style apply to elements later
11
- * - then uncomment a line, then works normal
12
- * - wp_enqueue_style('ccw_md_css'); - ( 46th line or near .. )
13
- *
14
- * admin_mainstyles.css, admin_app-works.js - admin side
15
- *
16
  *
17
  *
18
  * @package ccw
@@ -36,18 +31,12 @@ class CCW_Add_Styles_Scripts {
36
  wp_enqueue_style('ccw_main_css');
37
 
38
 
39
- wp_register_style('ccw_md_css', plugins_url( 'assets/css/required/mdstyles.css', HT_CCW_PLUGIN_FILE ), '', HT_CCW_VERSION );
40
- // needs - s1, s8
41
- // wp_enqueue_style('ccw_md_css');
42
-
43
 
44
  wp_enqueue_script( 'ccw_app', plugins_url( 'assets/js/app.js', HT_CCW_PLUGIN_FILE ), array ( 'jquery' ), HT_CCW_VERSION, true );
45
 
46
- // only style-1 needed
47
- wp_register_script( 'ccw_md_js', plugins_url( 'assets/js/required/mdjs.js', HT_CCW_PLUGIN_FILE ), array ( 'jquery' ), HT_CCW_VERSION, true );
48
- // wp_register_script( 'ccw_md_js', plugins_url( 'assets/js/md.js', HT_CCW_PLUGIN_FILE ), array ( 'jquery' ), HT_CCW_VERSION, true );
49
-
50
-
51
  // As now - for floating style - enqueue md style added like this
52
  // but for shortcodes enqueue while calling that template file
53
  $mobile_style = ht_ccw()->variables->get_option['stylemobile'];
@@ -55,17 +44,15 @@ class CCW_Add_Styles_Scripts {
55
 
56
  /**
57
  * is mobile or not
58
- * and then enqueue styles if selected style is 1, 8
59
  */
60
  if ( 1 == ht_ccw()->device_type->is_mobile ) {
61
- // if ( 1 == $mobile_style || 8 == $mobile_style ) {
62
  if ( 8 == $mobile_style ) {
63
- wp_enqueue_style('ccw_md_css');
64
  }
65
  } else {
66
- // if ( 1 == $desktop_style || 8 == $desktop_style ) {
67
  if ( 8 == $desktop_style ) {
68
- wp_enqueue_style('ccw_md_css');
69
  }
70
  }
71
 
1
  <?php
2
  /**
 
3
  * app.js - autop issue solution, animtions - added for all styles
4
  *
5
  * mainstyles.css - for all styles ..
6
+ * mdstyle8.css - style 8 needed -
7
  * for floating style added with conditons - in this file
8
  * for shortcodes added at there related template files.. ( sc-style- .php )
9
  * for shortcode - if user faces issue, as style apply to elements later
10
+ * - then uncomment - wp_enqueue_style('ccw_mdstyle8_css'); - ( 36th line or near .. )
 
 
 
 
11
  *
12
  *
13
  * @package ccw
31
  wp_enqueue_style('ccw_main_css');
32
 
33
 
34
+ wp_register_style('ccw_mdstyle8_css', plugins_url( 'assets/css/mdstyle8.css', HT_CCW_PLUGIN_FILE ), '', HT_CCW_VERSION );
35
+ // needs - s8
36
+ // wp_enqueue_style('ccw_mdstyle8_css');
 
37
 
38
  wp_enqueue_script( 'ccw_app', plugins_url( 'assets/js/app.js', HT_CCW_PLUGIN_FILE ), array ( 'jquery' ), HT_CCW_VERSION, true );
39
 
 
 
 
 
 
40
  // As now - for floating style - enqueue md style added like this
41
  // but for shortcodes enqueue while calling that template file
42
  $mobile_style = ht_ccw()->variables->get_option['stylemobile'];
44
 
45
  /**
46
  * is mobile or not
47
+ * and then enqueue styles if selected style is 8
48
  */
49
  if ( 1 == ht_ccw()->device_type->is_mobile ) {
 
50
  if ( 8 == $mobile_style ) {
51
+ wp_enqueue_style('ccw_mdstyle8_css');
52
  }
53
  } else {
 
54
  if ( 8 == $desktop_style ) {
55
+ wp_enqueue_style('ccw_mdstyle8_css');
56
  }
57
  }
58
 
inc/class-ccw-shortcode.php CHANGED
@@ -175,12 +175,12 @@ class CCW_Shortcode {
175
  }
176
 
177
  if ( 'group_chat' == $is_group ) {
178
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
179
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
180
  $redirect_a = "https://chat.whatsapp.com/$group_id";
181
  } else {
182
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
183
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=$is_mobile";
184
  $img_click_link = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
185
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
186
  }
@@ -194,12 +194,12 @@ class CCW_Shortcode {
194
 
195
  // App First - so mobile based url
196
  if ( 'group_chat' == $is_group ) {
197
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
198
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
199
  $redirect_a = "https://chat.whatsapp.com/$group_id";
200
  } else {
201
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
202
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=1";
203
  $img_click_link = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
204
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
205
  }
@@ -208,12 +208,12 @@ class CCW_Shortcode {
208
 
209
  // General - Desktop url
210
  if ( 'group_chat' == $is_group ) {
211
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
212
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
213
  $redirect_a = "https://chat.whatsapp.com/$group_id";
214
  } else {
215
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
216
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=0";
217
  $img_click_link = "window.open('https://web.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
218
  $redirect_a = "https://web.whatsapp.com/send?phone=$num&text=$initial_text";
219
  }
175
  }
176
 
177
  if ( 'group_chat' == $is_group ) {
178
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
179
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
180
  $redirect_a = "https://chat.whatsapp.com/$group_id";
181
  } else {
182
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
183
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=$is_mobile";
184
  $img_click_link = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
185
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
186
  }
194
 
195
  // App First - so mobile based url
196
  if ( 'group_chat' == $is_group ) {
197
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
198
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
199
  $redirect_a = "https://chat.whatsapp.com/$group_id";
200
  } else {
201
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
202
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=1";
203
  $img_click_link = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
204
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
205
  }
208
 
209
  // General - Desktop url
210
  if ( 'group_chat' == $is_group ) {
211
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
212
  $img_click_link = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
213
  $redirect_a = "https://chat.whatsapp.com/$group_id";
214
  } else {
215
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
216
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=0";
217
  $img_click_link = "window.open('https://web.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
218
  $redirect_a = "https://web.whatsapp.com/send?phone=$num&text=$initial_text";
219
  }
inc/class-ht-ccw-chat.php CHANGED
@@ -232,7 +232,7 @@ class HT_CCW_Chat {
232
 
233
 
234
 
235
- require_once HT_CCW_PLUGIN_DIR .'inc/commons/styles.php';
236
 
237
  }
238
 
232
 
233
 
234
 
235
+ include_once HT_CCW_PLUGIN_DIR .'inc/commons/styles.php';
236
 
237
  }
238
 
inc/class-ht-ccw-register.php CHANGED
@@ -25,7 +25,7 @@ class HT_CCW_Register {
25
  }
26
 
27
  // add default values to options db
28
- require_once( HT_CCW_PLUGIN_DIR . '/admin/default-values.php' );
29
  }
30
 
31
  // when plugin deactivate
25
  }
26
 
27
  // add default values to options db
28
+ include_once( HT_CCW_PLUGIN_DIR . '/admin/default-values.php' );
29
  }
30
 
31
  // when plugin deactivate
inc/class-ht-ccw.php CHANGED
@@ -33,7 +33,7 @@ class HT_CCW {
33
  * if this changed dont forgot to change in plugin header content
34
  * click-to-chat.php - Version
35
  */
36
- private $version = '1.7';
37
 
38
 
39
  /**
@@ -110,7 +110,7 @@ class HT_CCW {
110
  */
111
  private function define_constants() {
112
 
113
- $this->define( 'HT_CCW_VERSION', $this->version );
114
 
115
  $this->define( 'HT_CCW_WP_MIN_VERSION', '4.6' );
116
  $this->define( 'HT_CCW_PLUGIN_DIR', plugin_dir_path( HT_CCW_PLUGIN_FILE ) );
@@ -134,8 +134,8 @@ class HT_CCW {
134
  */
135
  private function basic() {
136
 
137
- require_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-ismobile.php';
138
- require_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-variables.php';
139
 
140
  $this->device_type = new HT_CCW_IsMobile();
141
  $this->variables = new HT_CCW_Variables();
@@ -166,20 +166,20 @@ class HT_CCW {
166
  private function includes() {
167
 
168
  // include in admin and front pages
169
- require_once HT_CCW_PLUGIN_DIR .'inc/class-ht-ccw-register.php';
170
- // require_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-variables.php';
171
- // require_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-ismobile.php';
172
 
173
 
174
  // is_admin ? include file to admin area : include files to non-admin area
175
  if ( is_admin() ) {
176
- require_once HT_CCW_PLUGIN_DIR . 'admin/admin.php';
177
  } else {
178
- require_once HT_CCW_PLUGIN_DIR . 'inc/class-ccw-add-styles-scripts.php';
179
- require_once HT_CCW_PLUGIN_DIR . 'inc/class-ccw-shortcode.php';
180
 
181
- // require_once HT_CCW_PLUGIN_DIR . 'inc/class-ht-ccw-floating-style.php';
182
- require_once HT_CCW_PLUGIN_DIR . 'inc/class-ht-ccw-chat.php';
183
 
184
  }
185
  }
33
  * if this changed dont forgot to change in plugin header content
34
  * click-to-chat.php - Version
35
  */
36
+ // private $version = '1.7';
37
 
38
 
39
  /**
110
  */
111
  private function define_constants() {
112
 
113
+ // $this->define( 'HT_CCW_VERSION', $this->version );
114
 
115
  $this->define( 'HT_CCW_WP_MIN_VERSION', '4.6' );
116
  $this->define( 'HT_CCW_PLUGIN_DIR', plugin_dir_path( HT_CCW_PLUGIN_FILE ) );
134
  */
135
  private function basic() {
136
 
137
+ include_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-ismobile.php';
138
+ include_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-variables.php';
139
 
140
  $this->device_type = new HT_CCW_IsMobile();
141
  $this->variables = new HT_CCW_Variables();
166
  private function includes() {
167
 
168
  // include in admin and front pages
169
+ include_once HT_CCW_PLUGIN_DIR .'inc/class-ht-ccw-register.php';
170
+ // include_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-variables.php';
171
+ // include_once HT_CCW_PLUGIN_DIR .'inc/commons/class-ht-ccw-ismobile.php';
172
 
173
 
174
  // is_admin ? include file to admin area : include files to non-admin area
175
  if ( is_admin() ) {
176
+ include_once HT_CCW_PLUGIN_DIR . 'admin/admin.php';
177
  } else {
178
+ include_once HT_CCW_PLUGIN_DIR . 'inc/class-ccw-add-styles-scripts.php';
179
+ include_once HT_CCW_PLUGIN_DIR . 'inc/class-ccw-shortcode.php';
180
 
181
+ // include_once HT_CCW_PLUGIN_DIR . 'inc/class-ht-ccw-floating-style.php';
182
+ include_once HT_CCW_PLUGIN_DIR . 'inc/class-ht-ccw-chat.php';
183
 
184
  }
185
  }
inc/commons/styles-list-sc/sc-style-1-prev.php DELETED
@@ -1,48 +0,0 @@
1
- <?php
2
-
3
- if ( ! defined( 'ABSPATH' ) ) exit;
4
-
5
-
6
- $s1_text_color = $a['s1_text_color'];
7
- $s1_text_color_onfocus = $a['s1_text_color_onfocus'];
8
- $s1_border_color = $a['s1_border_color'];
9
- $s1_border_color_onfocus = $a['s1_border_color_onfocus'];
10
- $s1_submit_btn_color = $a['s1_submit_btn_color'];
11
- $s1_submit_btn_text_and_icon_color = $a['s1_submit_btn_text_and_icon_color'];
12
- $s1_width = $a['s1_width'];
13
-
14
- $s1_btn_text = $a['s1_btn_text'];
15
-
16
-
17
- wp_enqueue_script( 'ccw_md_js');
18
- wp_enqueue_style('ccw_md_css');
19
-
20
-
21
- $s1_border_color = $s1_border_color;
22
- $s1_border_color_onfocus = $s1_border_color_onfocus;
23
- $s1_text_color = $s1_text_color;
24
- $s1_text_color_onfocus = $s1_text_color_onfocus;
25
- $s1_submit_btn_color = $s1_submit_btn_color;
26
- $s1_submit_btn_text_and_icon_color = $s1_submit_btn_text_and_icon_color;
27
- $s1_width = $s1_width;
28
-
29
- $s1_btn_text = $s1_btn_text;
30
-
31
- $input = "border-bottom: 1px solid $s1_border_color; ";
32
- $input_onfocus = "this.style.borderBottomColor= '$s1_border_color_onfocus', this.style.boxShadow= '0 1px 0 0 $s1_border_color_onfocus' , this.nextSibling.style.color= '$s1_text_color_onfocus';";
33
- $input_onfocusout = "this.style.borderBottomColor= '$s1_border_color',this.style.boxShadow='none' , this.nextSibling.style.color= '$s1_text_color';";
34
- $label = "color: $s1_text_color;";
35
- $button = "background-color: $s1_submit_btn_color; color: $s1_submit_btn_text_and_icon_color";
36
- $button_i = "color: $s1_submit_btn_text_and_icon_color";
37
-
38
- $o .= '<form name="form" target="_blank" action="'.$redirect_page.'" method="post" class="ccw_plugin sc_item '.$inline_issue.' " style=" '.$css.' width: '.$s1_width.' ">';
39
- $o .= wp_nonce_field( 'ccw_style_1_verify' );
40
- // $o .= '<input type="hidden" name="action" value="ccw_style_1">';
41
- $o .= '<div class="input-field">';
42
- $o .= '<input type="text" name="subject" id="subject" onfocus= " '.$input_onfocus.' " onfocusout= " '.$input_onfocusout.' " style= " '.$input.' " >';
43
- $o .= '<label style= " '.$label.' " class="ccw-s1-label_sc" for="subject" >'.$a["val"].'</label>';
44
- $o .= '</div>';
45
- $o .= '<button class="btn waves-effect waves-light ccw-analytics" data-ccw="style-1-sc" type="submit" name="action" style= " '.$button.' " >'.$s1_btn_text.' ';
46
- $o .= '<i class="material-icons right ccw-analytics" data-ccw="style-1-sc" style= " '.$button_i.' " ><span class="icon icon-send"></span></i>';
47
- $o .= '</button>';
48
- $o .= '</form>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/commons/styles-list-sc/sc-style-8.1.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
- wp_enqueue_style('ccw_md_css');
6
 
7
  $s8_text_color = $a['s8_text_color'];
8
  $s8_background_color = $a['s8_background_color'];
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
+ wp_enqueue_style('ccw_mdstyle8_css');
6
 
7
  $s8_text_color = $a['s8_text_color'];
8
  $s8_background_color = $a['s8_background_color'];
inc/commons/styles-list-sc/sc-style-8.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
- wp_enqueue_style('ccw_md_css');
6
 
7
  $s8_text_color = $a['s8_text_color'];
8
  $s8_background_color = $a['s8_background_color'];
@@ -25,7 +25,7 @@ $s8_icon_float = $s8_icon_float;
25
  $input_onhover = "this.style.backgroundColor= '$s8_background_color_onhover', this.childNodes[1].style.color= '$s8_icon_color_onhover', this.childNodes[2].style.color= '$s8_text_color_onhover' ; ";
26
  $input_onhover_out = "this.style.backgroundColor= '$s8_background_color', this.childNodes[1].style.color= '$s8_icon_color', this.childNodes[2].style.color= '$s8_text_color' ; ";
27
 
28
- $o .= '<div class="ccw_plugin sc_item '.$inline_issue.' " style=" '.$css.' " >';
29
  $o .= '<a style="background-color: '.$s8_background_color.';" target="_blank" href="'.$redirect_a.'" class="btn ccw-analytics" data-ccw="style-8-sc" onmouseover= " '.$input_onhover.' " onmouseout= " '.$input_onhover_out.' " > ';
30
  $o .= '<i class="material-icons '.$s8_icon_float.' icon icon-whatsapp2 ccw-s8-icon-sc ccw-analytics" data-ccw="style-8" style="color: '.$s8_icon_color.';" ></i>';
31
  $o .= '<span style="color: '.$s8_text_color.';" class="ccw-s8-span-sc ccw-analytics" data-ccw="style-8-sc" id="ccw-s8-icon-sc" >'.$a["val"].'</span>';
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
+ wp_enqueue_style('ccw_mdstyle8_css');
6
 
7
  $s8_text_color = $a['s8_text_color'];
8
  $s8_background_color = $a['s8_background_color'];
25
  $input_onhover = "this.style.backgroundColor= '$s8_background_color_onhover', this.childNodes[1].style.color= '$s8_icon_color_onhover', this.childNodes[2].style.color= '$s8_text_color_onhover' ; ";
26
  $input_onhover_out = "this.style.backgroundColor= '$s8_background_color', this.childNodes[1].style.color= '$s8_icon_color', this.childNodes[2].style.color= '$s8_text_color' ; ";
27
 
28
+ $o .= '<div class="ccw_plugin mdstyle8 sc_item '.$inline_issue.' " style=" '.$css.' " >';
29
  $o .= '<a style="background-color: '.$s8_background_color.';" target="_blank" href="'.$redirect_a.'" class="btn ccw-analytics" data-ccw="style-8-sc" onmouseover= " '.$input_onhover.' " onmouseout= " '.$input_onhover_out.' " > ';
30
  $o .= '<i class="material-icons '.$s8_icon_float.' icon icon-whatsapp2 ccw-s8-icon-sc ccw-analytics" data-ccw="style-8" style="color: '.$s8_icon_color.';" ></i>';
31
  $o .= '<span style="color: '.$s8_text_color.';" class="ccw-s8-span-sc ccw-analytics" data-ccw="style-8-sc" id="ccw-s8-icon-sc" >'.$a["val"].'</span>';
inc/commons/styles-list/style-1-prev.php DELETED
@@ -1,44 +0,0 @@
1
- <?php
2
-
3
- if ( ! defined( 'ABSPATH' ) ) exit;
4
-
5
- // wp_enqueue_style('ccw_md_css');
6
- wp_enqueue_script( 'ccw_md_js');
7
-
8
-
9
- // $ccw_options_cs = get_option('ccw_options_cs');
10
- $s1_btn_text = esc_attr( $ccw_options_cs['s1_btn_text'] );
11
-
12
- $s1_text_color = esc_attr( $ccw_options_cs['s1_text_color'] );
13
- $s1_text_color_onfocus = esc_attr( $ccw_options_cs['s1_text_color_onfocus'] );
14
- $s1_border_color = esc_attr( $ccw_options_cs['s1_border_color'] );
15
- $s1_border_color_onfocus = esc_attr( $ccw_options_cs['s1_border_color_onfocus'] );
16
- $s1_submit_btn_color = esc_attr( $ccw_options_cs['s1_submit_btn_color'] );
17
- $s1_submit_btn_text_and_icon_color = esc_attr( $ccw_options_cs['s1_submit_btn_text_and_icon_color'] );
18
- ?>
19
- <div class="ccw_plugin chatbot" style="<?php echo $p1 ?>; <?php echo $p2 ?>;">
20
-
21
- <div class="box1">
22
- <form name="form" target="_blank" action="<?php echo $redirect_page ?>" method="post">
23
- <!-- <input type="hidden" name="action" value="ccw_style_1"> -->
24
- <?php wp_nonce_field( 'ccw_style_1_verify' ); ?>
25
- <div class="input-field">
26
- <input type="text" name="subject" id="subject"
27
- style="border-bottom: 1px solid <?php echo $s1_border_color ?>;"
28
- onfocus="this.style.borderBottomColor= '<?php echo $s1_border_color_onfocus ?>', this.style.boxShadow= '0 1px 0 0 <?php echo $s1_border_color_onfocus ?>' , document.getElementsByClassName('ccw-s1-label')[0].style.color= '<?php echo $s1_text_color_onfocus ?>';"
29
- onfocusout="this.style.borderBottomColor= '<?php echo $s1_border_color ?>' , this.style.boxShadow='none' , document.getElementsByClassName('ccw-s1-label')[0].style.color= '<?php echo $s1_text_color ?>';"
30
- >
31
- <label for="subject" class="ccw-s1-label"
32
- style="color: <?php echo $s1_text_color ?>;"
33
- ><?php echo $val ?></label>
34
- </div>
35
-
36
- <button class="btn waves-effect waves-light ccw-analytics" id="style-1" data-ccw="style-1"
37
- style="background-color: <?php echo $s1_submit_btn_color ?>; color: <?php echo $s1_submit_btn_text_and_icon_color ?>;"
38
- type="submit" name="action"><?php echo $s1_btn_text ?>
39
- <!-- <i class="material-icons right">send</i> -->
40
- <i class="material-icons right icon icon-send ccw-analytics" id="s1-icon" data-ccw="style-1" style="color: <?php echo $s1_submit_btn_text_and_icon_color ?>;"></i>
41
- </button>
42
- </form>
43
- </div>
44
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/commons/styles-list/style-8.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
- // wp_enqueue_style('ccw_md_css');
6
 
7
  // $ccw_options_cs = get_option('ccw_options_cs');
8
  $s8_text_color = esc_attr( $ccw_options_cs['s8_text_color'] );
@@ -18,7 +18,7 @@ $s8_icon_float = esc_attr( $ccw_options_cs['s8_icon_float'] );
18
 
19
  ?>
20
  <!-- material button - text , icon -->
21
- <div class="ccw_plugin chatbot" style="<?php echo $p1 ?>; <?php echo $p2 ?>;">
22
  <div class="style8 animated <?php echo $an_on_load .' '. $an_on_hover ?>">
23
  <a target="_blank" class="btn ccw-analytics" id="style-8" data-ccw="style-8"
24
  style="background-color: <?php echo $s8_background_color ?>; "
2
 
3
  if ( ! defined( 'ABSPATH' ) ) exit;
4
 
5
+ // wp_enqueue_style('ccw_mdstyle8_css');
6
 
7
  // $ccw_options_cs = get_option('ccw_options_cs');
8
  $s8_text_color = esc_attr( $ccw_options_cs['s8_text_color'] );
18
 
19
  ?>
20
  <!-- material button - text , icon -->
21
+ <div class="ccw_plugin mdstyle8 chatbot" style="<?php echo $p1 ?>; <?php echo $p2 ?>;">
22
  <div class="style8 animated <?php echo $an_on_load .' '. $an_on_hover ?>">
23
  <a target="_blank" class="btn ccw-analytics" id="style-8" data-ccw="style-8"
24
  style="background-color: <?php echo $s8_background_color ?>; "
inc/commons/styles.php CHANGED
@@ -37,7 +37,7 @@ $an_on_hover = esc_attr( $ccw_options_cs['an_on_hover'] );
37
 
38
  /**
39
  * $redirect - redirect link for onclick attribute - window.open - direct link - using window.open
40
- * $redirect_page - ( use only for style -1 ) page where redirect url there .. whatsapp-url whatsapp-url-group file ..
41
  * $redirect_a - full url - for 'a' tags - direct link - instead of calling another file using redirect_page
42
  */
43
  $redirect = "";
@@ -49,12 +49,12 @@ if( 1 == $is_mobile ) {
49
 
50
 
51
  if ( 'group_chat' == $return_type ) {
52
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
53
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
54
  $redirect_a = "https://chat.whatsapp.com/$group_id";
55
  } else {
56
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
57
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=$is_mobile";
58
  $redirect = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
59
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
60
  }
@@ -68,13 +68,13 @@ if( 1 == $is_mobile ) {
68
 
69
  // App First - so mobile based url
70
  if ( 'group_chat' == $return_type ) {
71
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
72
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
73
  $redirect_a = "https://chat.whatsapp.com/$group_id";
74
  } else {
75
  // an issue addin another url in plugin_url - in {{url}} https:// - one / is missing is
76
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
77
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=1";
78
  $redirect = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
79
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
80
  }
@@ -84,12 +84,12 @@ if( 1 == $is_mobile ) {
84
 
85
  // General - Desktop url
86
  if ( 'group_chat' == $return_type ) {
87
- $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
88
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
89
  $redirect_a = "https://chat.whatsapp.com/$group_id";
90
  } else {
91
- $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
92
- $redirect_page = $base_url . "?num=$num&text=$initial_text&m=0";
93
  $redirect = "window.open('https://web.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
94
  $redirect_a = "https://web.whatsapp.com/send?phone=$num&text=$initial_text";
95
  }
37
 
38
  /**
39
  * $redirect - redirect link for onclick attribute - window.open - direct link - using window.open
40
+ *
41
  * $redirect_a - full url - for 'a' tags - direct link - instead of calling another file using redirect_page
42
  */
43
  $redirect = "";
49
 
50
 
51
  if ( 'group_chat' == $return_type ) {
52
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
53
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
54
  $redirect_a = "https://chat.whatsapp.com/$group_id";
55
  } else {
56
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
57
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=$is_mobile";
58
  $redirect = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
59
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
60
  }
68
 
69
  // App First - so mobile based url
70
  if ( 'group_chat' == $return_type ) {
71
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
72
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
73
  $redirect_a = "https://chat.whatsapp.com/$group_id";
74
  } else {
75
  // an issue addin another url in plugin_url - in {{url}} https:// - one / is missing is
76
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
77
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=1";
78
  $redirect = "window.open('https://api.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
79
  $redirect_a = "https://api.whatsapp.com/send?phone=$num&text=$initial_text";
80
  }
84
 
85
  // General - Desktop url
86
  if ( 'group_chat' == $return_type ) {
87
+ // $redirect_page = plugins_url( "inc/whatsapp-url-group.php?id=$group_id", HT_CCW_PLUGIN_FILE );
88
  $redirect = "window.open('https://chat.whatsapp.com/$group_id', '_blank')";
89
  $redirect_a = "https://chat.whatsapp.com/$group_id";
90
  } else {
91
+ // $base_url = plugins_url( "inc/whatsapp-url.php", HT_CCW_PLUGIN_FILE );
92
+ // $redirect_page = $base_url . "?num=$num&text=$initial_text&m=0";
93
  $redirect = "window.open('https://web.whatsapp.com/send?phone=$num&text=$initial_text', '_blank')";
94
  $redirect_a = "https://web.whatsapp.com/send?phone=$num&text=$initial_text";
95
  }
inc/whatsapp-url-group.php DELETED
@@ -1,24 +0,0 @@
1
- <?php
2
- /**
3
- * when user click on items this page will load
4
- * and here settings added as where to navigate
5
- * but at some place added navigation using onclick
6
- * at shorcode.php -> attribute for shortcode - > img_click_link
7
- *
8
- * @package ccw
9
- * @since 1.0
10
- */
11
-
12
- // const wont work here
13
- // todo - style-1 only required, works with an alternative way
14
- // require_once( explode( "wp-content" , __FILE__ )[0] . "wp-load.php" );
15
-
16
- // this can call directly - its needed like this - if this cant call directly it wont work
17
- // or to call directly require - wp-content to load .. wp-load.php
18
- if ( ! defined( 'ABSPATH' ) ) exit;
19
-
20
- $id = sanitize_text_field( $_GET['id'] );
21
-
22
- header("Location: https://chat.whatsapp.com/$id");
23
-
24
- exit();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/whatsapp-url.php DELETED
@@ -1,43 +0,0 @@
1
- <?php
2
- /**
3
- * when user click on items this page will load
4
- * and here settings added as where to navigate
5
- * but at some place added navigation using onclick
6
- * at shorcode.php -> attribute for shortcode - > img_click_link
7
- *
8
- * $subject , $is_mobile - if value exists then it use, if not then rest works.
9
- * $subject i.e. post subject - it works for style-1 form action ..
10
- * $is_mobile get value if it is a mobile device or tab ..
11
- *
12
- * @package ccw
13
- * @since 1.0
14
- */
15
-
16
- // const wont work here
17
- // todo - style-1 only required, works with an alternative way
18
- // require_once( explode( "wp-content" , __FILE__ )[0] . "wp-load.php" );
19
-
20
- // this can call directly - its needed like this - if this cant call directly it wont work
21
- // or to call directly require - wp-content load .. wp-load.php
22
- if ( ! defined( 'ABSPATH' ) ) exit;
23
-
24
- $num = sanitize_text_field( $_GET['num'] );
25
- $subject = sanitize_text_field( $_POST['subject'] );
26
- $is_mobile = sanitize_text_field( $_GET['m'] );
27
- $text = sanitize_text_field( $_GET['text'] );
28
-
29
- $out_text = $text . ' ' .$subject;
30
-
31
- check_admin_referer( 'ccw_style_1_verify' );
32
-
33
-
34
- if( 1 == $is_mobile ) {
35
- header("Location: https://api.whatsapp.com/send?phone=$num&text=$out_text");
36
- // wp_redirect( "https://api.whatsapp.com/send?phone=$num&text=$out_text" );
37
- }
38
- else {
39
- header("Location: https://web.whatsapp.com/send?phone=$num&text=$out_text");
40
- // wp_redirect( "https://web.whatsapp.com/send?phone=$num&text=$subject" );
41
- }
42
-
43
- exit();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/read.md DELETED
@@ -1,4 +0,0 @@
1
-
2
- translate.wordpress.org
3
-
4
- https://translate.wordpress.org/projects/wp-plugins/click-to-chat-for-whatsapp
 
 
 
 
readme.txt CHANGED
@@ -17,7 +17,7 @@ Let's make your Web page visitors Contact you through "WhatsApp" with a single C
17
 
18
  **Mobile:** Navigates to WhatsApp App.
19
 
20
- **Desktop:** Navigates to WhatsApp Webpage(web.whatsapp.com). user can chat directly from the browser.
21
 
22
  [Demo](https://www.holithemes.com/whatsapp-chat/styles/)
23
 
@@ -26,20 +26,18 @@ Let's make your Web page visitors Contact you through "WhatsApp" with a single C
26
 
27
  = How easy the plugin is =
28
 
29
- * After installing the plugin, add your WhatsApp number (WhatsApp or WhatsApp business).
30
  * If using WhatsApp group invite/chat add WhatsApp group id.
31
 
32
- And there are lot more features
33
- we can change the display style to any predefined style
34
- or
35
- Can add any image/ GIF.
36
- Can place the styles at any position of the screen.
37
 
38
  = Features =
39
 
40
  * Navigates to WhatsApp Chat
41
  * Navigates to WhatsApp Group Chat
42
- * Nine pre-configured Styles
43
  * Add Own Image or GIF
44
  * Floating style can position at any place on the screen
45
  ( At any pixel of the screen, not limited to fixed positions )
@@ -61,15 +59,15 @@ or using [Google Tag Manager](https://www.holithemes.com/google-analytics-for-cl
61
 
62
  = Nine Styles + own Image =
63
 
64
- 1. **Style-1:** Input field, user can enter text and click send to navigate to WhatsApp page with text
65
  1. **Style-2:** Plain text with a link navigates to WhatsApp App or web.whatsapp.com
66
- 1. **Style-3:** image
67
  1. **Style-4:** Chip style - combination of image and a text message
68
  1. **Style-5:** plain WhatsApp icon - can customize color, height
69
  1. **Style-6:** Icon with Circle border
70
  1. **Style-7:** Icon with box border
71
  1. **Style-8:** Button with text, icon
72
- 1. **Style-9:** image
73
  1. **Style - 99:** Own Image / GIF / Animated image
74
 
75
 
@@ -109,7 +107,9 @@ Add 'text' or 'HTML' widget in the widget area, and then add shortcode within th
109
  1. customize Styles
110
  1. can add shortcodes in Text Widget
111
  1. example - shortcodes
 
112
  1. Style - 2 - plain link
 
113
 
114
 
115
  == Installation ==
@@ -149,12 +149,12 @@ We can change the position values from the plugin settings page.
149
  Add styles at any position of the screen (not fixed to selected positions).
150
 
151
  e.g.
152
- bottom-right corner
153
  -> select - bottom-right position
154
  bottom: 10px
155
  right: 10px
156
 
157
- bottom center
158
  -> select - bottom-right position
159
  bottom: 10px
160
  right: 50%
@@ -165,14 +165,21 @@ Plugin won't collect your user data and not using cookies.
165
 
166
  Plugin won't collect your data also.
167
 
168
- = Get support / Give Support =
 
 
 
 
 
 
 
 
169
 
170
- * Get support
171
- if any problem please create a [new topic](https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/)
172
- or send an email: wp@holithemes.com
173
 
174
- * Give support
175
- If you like the plugin support the developers by giving [5 star rating](https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/reviews/#new-post)
 
176
 
177
 
178
  Thanks for showing interest on this plugin.
@@ -191,6 +198,9 @@ Thanks for showing interest on this plugin.
191
 
192
  == Changelog ==
193
 
 
 
 
194
  = 1.7 =
195
  * Improved plugin performance
196
  * Style-4 simplified
17
 
18
  **Mobile:** Navigates to WhatsApp App.
19
 
20
+ **Desktop:** Navigates to WhatsApp Webpage (web.whatsapp.com). Users can chat directly from the browser.
21
 
22
  [Demo](https://www.holithemes.com/whatsapp-chat/styles/)
23
 
26
 
27
  = How easy the plugin is =
28
 
29
+ * After installing the plugin, add your WhatsApp number ( WhatsApp or WhatsApp business ).
30
  * If using WhatsApp group invite/chat add WhatsApp group id.
31
 
32
+
33
+ * 9 Styles or Add any Image/GIF.
34
+ * Place the styles at any position of the screen.
 
 
35
 
36
  = Features =
37
 
38
  * Navigates to WhatsApp Chat
39
  * Navigates to WhatsApp Group Chat
40
+ * Nine pre-configured Styles (customizable)
41
  * Add Own Image or GIF
42
  * Floating style can position at any place on the screen
43
  ( At any pixel of the screen, not limited to fixed positions )
59
 
60
  = Nine Styles + own Image =
61
 
62
+ 1. **Style-1:** Button, appears as theme button.
63
  1. **Style-2:** Plain text with a link navigates to WhatsApp App or web.whatsapp.com
64
+ 1. **Style-3:** Image
65
  1. **Style-4:** Chip style - combination of image and a text message
66
  1. **Style-5:** plain WhatsApp icon - can customize color, height
67
  1. **Style-6:** Icon with Circle border
68
  1. **Style-7:** Icon with box border
69
  1. **Style-8:** Button with text, icon
70
+ 1. **Style-9:** Image
71
  1. **Style - 99:** Own Image / GIF / Animated image
72
 
73
 
107
  1. customize Styles
108
  1. can add shortcodes in Text Widget
109
  1. example - shortcodes
110
+ 1. Style - 1 - looks like Theme button
111
  1. Style - 2 - plain link
112
+ 1. Style - 99 - Add your own Image / GIF
113
 
114
 
115
  == Installation ==
149
  Add styles at any position of the screen (not fixed to selected positions).
150
 
151
  e.g.
152
+ * bottom-right corner
153
  -> select - bottom-right position
154
  bottom: 10px
155
  right: 10px
156
 
157
+ * bottom-center
158
  -> select - bottom-right position
159
  bottom: 10px
160
  right: 50%
165
 
166
  Plugin won't collect your data also.
167
 
168
+ = Support =
169
+
170
+ If any problem with the plugin, please create a [new topic](https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/)
171
+ or
172
+ send us an email: wp@holithemes.com
173
+
174
+ = Give Support =
175
+
176
+ If you like the plugin, please support the developers by giving [5 star rating](https://wordpress.org/support/plugin/click-to-chat-for-whatsapp/reviews/#new-post)
177
 
178
+ = In Mobile, If navigates to Web page =
 
 
179
 
180
+ By default, Plugin Navigates to WhatsApp App on mobile and "web.whatsapp.com" on desktop.
181
+
182
+ In mobile devices, If navigates to web.whatsapp instead of App, please check/tick "If cache issue"(last option) from plugin settings.
183
 
184
 
185
  Thanks for showing interest on this plugin.
198
 
199
  == Changelog ==
200
 
201
+ = 1.7.1 =
202
+ * Style-8 simplified
203
+
204
  = 1.7 =
205
  * Improved plugin performance
206
  * Style-4 simplified