Enhanced Ecommerce Google Analytics Plugin for WooCommerce - Version 4.1.0

Version Description

  • 24/08/2021 =

  • Now, users can configure their Google accounts without leaving the WordPress interface. We have made plugin set up flow as seamless as possible.

Download this release

Release Info

Developer Tatvic
Plugin Icon 128x128 Enhanced Ecommerce Google Analytics Plugin for WooCommerce
Version 4.1.0
Comparing to
See all releases

Code changes from version 4.0.1 to 4.1.0

Files changed (52) hide show
  1. admin/class-conversios-onboarding.php +975 -0
  2. admin/class-enhanced-ecommerce-google-analytics-admin.php +1 -1
  3. admin/class-tvc-admin-helper.php +42 -12
  4. admin/css/enhanced-ecommerce-google-analytics-admin.css +1 -1
  5. admin/css/responsive.css +192 -0
  6. admin/css/select2.css +109 -0
  7. admin/css/slick.css +46 -0
  8. admin/css/style.css +584 -0
  9. admin/helper/class-onboarding-helper.php +1024 -0
  10. admin/images/arrow_right.png +0 -0
  11. admin/images/blue-plus.png +0 -0
  12. admin/images/check-active.png +0 -0
  13. admin/images/check-wbg.png +0 -0
  14. admin/images/close-icon.png +0 -0
  15. admin/images/close-white.png +0 -0
  16. admin/images/dashboard-icon.png +0 -0
  17. admin/images/erroricon.png +0 -0
  18. admin/images/filter-icon.png +0 -0
  19. admin/images/g-logo.png +0 -0
  20. admin/images/google_signin.png +0 -0
  21. admin/images/green-check.png +0 -0
  22. admin/images/help-icon.png +0 -0
  23. admin/images/icon/lock.svg +1 -0
  24. admin/images/info-icon.png +0 -0
  25. admin/images/next.png +0 -0
  26. admin/images/notification-icon.png +0 -0
  27. admin/images/sclability-image.png +0 -0
  28. admin/images/search-icon.png +0 -0
  29. admin/images/search-icon18.png +0 -0
  30. admin/images/select-arrow.png +0 -0
  31. admin/images/selectarrow-new.png +0 -0
  32. admin/images/setting-icon.png +0 -0
  33. admin/images/smart-shopping-icon.png +0 -0
  34. admin/images/step-down-arrow.png +0 -0
  35. admin/images/step-up-arrow.png +0 -0
  36. admin/images/sync-prdct-icon.png +0 -0
  37. admin/js/onboarding-custom.js +723 -0
  38. admin/js/select2.min.js +2 -0
  39. admin/js/showmoreless.min.js +183 -0
  40. admin/js/slick.js +3011 -0
  41. admin/partials/general-fields.php +8 -8
  42. admin/partials/pricings.php +0 -1
  43. enhanced-ecommerce-google-analytics.php +5 -4
  44. includes/class-enhanced-ecommerce-google-analytics.php +6 -1
  45. includes/setup/CustomApi.php +5 -7
  46. includes/setup/account.php +0 -1
  47. includes/setup/google-ads.php +5 -5
  48. includes/setup/google-shopping-feed-gaa-config.php +5 -5
  49. includes/setup/help-html.php +5 -5
  50. includes/setup/json/country_reward.json +94 -0
  51. includes/setup/json/merchant-info.json +5 -0
  52. readme.txt +8 -6
admin/class-conversios-onboarding.php ADDED
@@ -0,0 +1,975 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @since 4.0.2
4
+ * Description: Conversios Onboarding page, It's call while active the plugin
5
+ */
6
+ if ( ! class_exists( 'Conversios_Onboarding' ) ) {
7
+ class Conversios_Onboarding {
8
+ protected $TVC_Admin_Helper;
9
+ protected $subscriptionId;
10
+ protected $version;
11
+ protected $connect_url;
12
+ protected $customApiObj;
13
+ protected $app_id =1;
14
+ protected $plan_id = 1;
15
+ protected $tvc_data = array();
16
+ public function __construct( ){
17
+ if ( ! is_admin() ) {
18
+ return;
19
+ }
20
+ $this->includes();
21
+ /**
22
+ * Set Var
23
+ */
24
+ $this->version = PLUGIN_TVC_VERSION;
25
+ $this->customApiObj = new CustomApi();
26
+ $this->TVC_Admin_Helper = new TVC_Admin_Helper();
27
+ $this->subscriptionId = $this->TVC_Admin_Helper->get_subscriptionId();
28
+ $this->connect_url = $this->TVC_Admin_Helper->get_connect_url();
29
+ $this->tvc_data = $this->TVC_Admin_Helper->get_store_data();
30
+ $g_mail = get_option('ee_customer_gmail');
31
+ $this->tvc_data['g_mail']="";
32
+ if($g_mail){
33
+ $this->tvc_data['g_mail']=$g_mail;
34
+ }
35
+
36
+ /**
37
+ * call Hooks and function
38
+ */
39
+ add_action( 'admin_menu', array( $this, 'register' ) );
40
+ // Add the welcome screen to the network dashboard.
41
+ add_action( 'network_admin_menu', array( $this, 'register' ) );
42
+ if($this->subscriptionId == ""){
43
+ add_action( 'admin_init', array( $this, 'maybe_redirect' ), 9999 );
44
+ }
45
+ add_action( 'admin_enqueue_scripts', array( $this, 'add_scripts' ) );
46
+ }
47
+ public function includes() {
48
+ if (!class_exists('CustomApi.php')) {
49
+ require_once(ENHANCAD_PLUGIN_DIR . 'includes/setup/CustomApi.php');
50
+ }
51
+ }
52
+
53
+ public function get_countries($user_country) {
54
+ $getCountris = file_get_contents(ENHANCAD_PLUGIN_DIR . "/includes/setup/json/countries.json");
55
+ $contData = json_decode($getCountris);
56
+ if (!empty($user_country)) {
57
+ $data = "<select id='selectCountry' name='country' class='form-control slect2bx' readonly='true'>";
58
+ $data .= "<option value=''>Please select country</option>";
59
+ foreach ($contData as $key => $value) {
60
+ $selected = ($value->code == $user_country) ? "selected='selected'" : "";
61
+ $data .= "<option value=" . $value->code . " " . $selected . " >" . $value->name . "</option>";
62
+ }
63
+ $data .= "</select>";
64
+ } else {
65
+ $data = "<select id='selectCountry' name='country' class='form-control slect2bx'>";
66
+ $data .= "<option value=''>Please select country</option>";
67
+ foreach ($contData as $key => $value) {
68
+ $data .= "<option value=" . $value->code . ">" . $value->name . "</option>";
69
+ }
70
+ $data .= "</select>";
71
+ }
72
+ return $data;
73
+ }
74
+ public function is_checked($tracking_option, $is_val){
75
+ if($tracking_option == $is_val){
76
+ return 'checked="checked"';
77
+ }
78
+ }
79
+ /**
80
+ * onboarding page HTML
81
+ */
82
+ public function welcome_screen() {
83
+ $googleDetail = "";
84
+ $defaulSelection = 1;
85
+ $tracking_option = "UA";
86
+ $login_customer_id ="";
87
+ $completed_last_step ="step-0";
88
+ $complete_step = array("step-0"=>1,"step-1"=>0,"step-2"=>0,"step-3"=>0);
89
+
90
+ if ( isset($_GET['subscription_id']) && $_GET['subscription_id']){
91
+ $this->subscriptionId = $_GET['subscription_id'];
92
+ if ( isset($_GET['g_mail']) && $_GET['g_mail']){
93
+ $this->tvc_data['g_mail'] = $_GET['g_mail'];
94
+ $completed_last_step ="step-1";
95
+ $complete_step["step-0"] = 1;
96
+ }
97
+ //$this->tvc_data = json_encode($this->tvc_data);
98
+ }
99
+
100
+ if($this->subscriptionId != ""){
101
+ $google_detail = $this->customApiObj->getGoogleAnalyticDetail($this->subscriptionId);
102
+ if(property_exists($google_detail,"error") && $google_detail->error == false){
103
+ if( property_exists($google_detail, "data") && $google_detail->data != "" ){
104
+ $googleDetail = $google_detail->data;
105
+ $this->tvc_data['subscription_id'] = $googleDetail->id;
106
+ $this->tvc_data['access_token'] = $googleDetail->access_token;
107
+ $this->tvc_data['refresh_token'] = $googleDetail->refresh_token;
108
+ $this->plan_id = $googleDetail->plan_id;
109
+ $login_customer_id = $googleDetail->customer_id;
110
+ $tracking_option = $googleDetail->tracking_option;
111
+ if($googleDetail->tracking_option != ''){
112
+ $defaulSelection = 0;
113
+ }
114
+ if($this->tvc_data['g_mail'] != ""){
115
+ if($googleDetail->measurement_id != "" || $googleDetail->property_id != ""){
116
+ $complete_step["step-1"] = 1;
117
+ }
118
+ if($googleDetail->google_ads_id != "" ){
119
+ $complete_step["step-2"] = 1;
120
+ }
121
+ if($googleDetail->google_merchant_center_id != "" ){
122
+ $complete_step["step-3"] = 1;
123
+ }
124
+ }
125
+
126
+ }
127
+ }
128
+ }
129
+
130
+ $is_e_e_tracking = (property_exists($googleDetail,"enhanced_e_commerce_tracking") && $googleDetail->enhanced_e_commerce_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
131
+ $is_u_t_tracking = (property_exists($googleDetail,"user_time_tracking") && $googleDetail->user_time_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
132
+ $is_a_g_snippet = (property_exists($googleDetail,"add_gtag_snippet") && $googleDetail->add_gtag_snippet == 1)?"checked":(($defaulSelection == 1)?"checked":"");
133
+ $is_c_i_tracking = (property_exists($googleDetail,"client_id_tracking") && $googleDetail->client_id_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
134
+ $is_e_tracking = (property_exists($googleDetail,"exception_tracking") && $googleDetail->exception_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
135
+ $is_e_l_a_tracking = (property_exists($googleDetail,"enhanced_link_attribution_tracking") && $googleDetail->enhanced_link_attribution_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
136
+
137
+ $countries = json_decode(file_get_contents(ENHANCAD_PLUGIN_DIR . "/includes/setup/json/countries.json"));
138
+ $credit = json_decode(file_get_contents(ENHANCAD_PLUGIN_DIR . "/includes/setup/json/country_reward.json"));
139
+
140
+ $off_country = "";
141
+ $off_credit_amt = "";
142
+ if(is_array($countries) || is_object($countries)){
143
+ foreach( $countries as $key => $value ){
144
+ if($value->code == $this->tvc_data['user_country']){
145
+ $off_country = $value->name;
146
+ break;
147
+ }
148
+ }
149
+ }
150
+
151
+ if(is_array($credit) || is_object($credit)){
152
+ foreach( $credit as $key => $value ){
153
+ if($value->name == $off_country){
154
+ $off_credit_amt = $value->price;
155
+ break;
156
+ }
157
+ }
158
+ }
159
+ ?>
160
+ <style>
161
+ #menu-dashboard li.current{display: none;}
162
+ #wpadminbar{display: none;}
163
+ </style>
164
+ <div class="bodyrightpart onbordingbody-wapper">
165
+ <div class="loader-section" id="loader-section"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/ajax-loader.gif';?>" alt="loader"></div>
166
+ <div class="alert-message" id="tvc_popup_box"></div>
167
+ <div class="onbordingbody">
168
+ <div class="site-header">
169
+ <div class="container">
170
+ <div class="brand"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/logo.png';?>" alt="Conversios" /></div>
171
+ </div>
172
+ </div>
173
+ <div class="onbording-wrapper">
174
+ <div class="container">
175
+ <div class="smallcontainer">
176
+ <div class="onbordingtop">
177
+ <h2>Let’s get you started.</h2>
178
+ <p>Automate Google Analytics, Dynamic Remarketing & Google Shopping in just 5 minutes.</p>
179
+ </div>
180
+ <div class="row">
181
+ <!-- onborading left start -->
182
+ <div class="onboardingstepwrap">
183
+ <!-- step-0 start -->
184
+ <div class="onbordording-step onbrdstep-0 gglanystep <?php if($this->subscriptionId == "" || $this->tvc_data['g_mail']==""){ echo "activestep"; }else{echo "selectedactivestep";} ?>">
185
+ <div class="stepdtltop" data-is-done="<?php echo $complete_step['step-0']; ?>" id="google-signing" data-id="step_0">
186
+ <div class="stepleftround">
187
+ <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/check-wbg.png'; ?>" alt="" />
188
+ </div>
189
+ <div class="stepdetwrap">
190
+ <h4>Connect Conversios with your website <?php /*<span class="helpicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/help-icon.png'; ?>" alt="" /></span> */ ?></h4>
191
+ <p><?php echo (isset($this->tvc_data['g_mail']) && $this->subscriptionId)?$this->tvc_data['g_mail']:""; ?></p>
192
+ </div>
193
+ </div>
194
+ <div class="stepmoredtlwrp">
195
+ <div class="stepmoredtl">
196
+
197
+ <?php if(!isset($this->tvc_data['g_mail']) || $this->tvc_data['g_mail'] == "" || $this->subscriptionId == ""){?>
198
+ <div class="google_connect_url google-btn">
199
+ <div class="google-icon-wrapper">
200
+ <img class="google-icon" src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/g-logo.png'; ?>"/>
201
+ </div>
202
+ <p class="btn-text"><b>Sign in with google</b></p>
203
+ </div>
204
+ <?php } else{?>
205
+ <div class="google_connect_url google-btn">
206
+ <div class="google-icon-wrapper">
207
+ <img class="google-icon" src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/g-logo.png'; ?>"/>
208
+ </div>
209
+ <p class="btn-text mr-35"><b>Reauthorize</b></p>
210
+ </div>
211
+ <?php } ?>
212
+ <p>Make sure you sign in with the google account that has all privileges to access google analytics, google ads and google merchant center account.</p>
213
+ </div>
214
+ </div>
215
+ </div>
216
+ <!-- step-0 over -->
217
+ <!-- step-1 start -->
218
+ <div class="onbordording-step onbrdstep-1 gglanystep <?php echo ($complete_step['step-1']==1 && $this->tvc_data['g_mail'])?'selectedactivestep':''; ?> <?php if($this->subscriptionId != "" && $this->tvc_data['g_mail']){ echo "activestep"; } ?>">
219
+ <div class="stepdtltop" data-is-done="<?php echo $complete_step['step-1']; ?>" id="google-analytics" data-id="step_1">
220
+ <div class="stepleftround">
221
+ <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/check-wbg.png'; ?>" alt="" />
222
+ </div>
223
+ <div class="stepdetwrap">
224
+ <h4>Connect Google Analytics Account </h4>
225
+ <p>Tag your website with all important e-commerce events in Google Analytics.</p>
226
+ </div>
227
+ </div>
228
+ <div class="stepmoredtlwrp">
229
+ <div class="stepmoredtl">
230
+ <form action="#">
231
+ <div class="form-row">
232
+ <h5>How do you plan to tag your website?</h5>
233
+ <div class="cstmrdobtn-item">
234
+ <label for="univeral">
235
+ <input type="radio" <?php echo $this->is_checked($tracking_option, "UA"); ?> name="analytic_tag_type" id="univeral" value="UA">
236
+ <span class="checkmark"></span>
237
+ Universal Analytics (Google Analytics 3)
238
+ </label>
239
+ <div id="UA" class="slctunivr-filed">
240
+ <select class="slect2bx google_analytics_sel" id="ua_web_property_id">
241
+ <option value=''>Select Property Id</option>
242
+ </select>
243
+ </div>
244
+ </div>
245
+ <div class="cstmrdobtn-item">
246
+ <label for="gglanytc">
247
+ <input type="radio" <?php echo $this->is_checked($tracking_option, "GA4"); ?> name="analytic_tag_type" id="gglanytc" value="GA4">
248
+ <span class="checkmark"></span>
249
+ Google Analytics 4
250
+ </label>
251
+ <div id="GA4" class="slctunivr-filed">
252
+ <select class="slect2bx google_analytics_sel" id="ga4_web_measurement_id">
253
+ <option value=''>Select Measurement Id</option>
254
+ </select>
255
+ </div>
256
+ </div>
257
+ <div class="cstmrdobtn-item">
258
+ <label for="both">
259
+ <input type="radio" <?php echo $this->is_checked($tracking_option, "BOTH"); ?> name="analytic_tag_type" id="both" value="BOTH">
260
+ <span class="checkmark"></span>
261
+ Both
262
+ </label>
263
+ <div id="BOTH" class="slctunivr-filed">
264
+ <div class="botslectbxitem">
265
+ <select class="slect2bx google_analytics_sel" id="both_web_property_id">
266
+ <option value=''>Select Property Id</option>
267
+ </select>
268
+ </div>
269
+ <div class="botslectbxitem">
270
+ <select class="slect2bx google_analytics_sel" id="both_web_measurement_id">
271
+ <option value=''>Select Measurement Id</option>
272
+ </select>
273
+ </div>
274
+ </div>
275
+ </div>
276
+ </div>
277
+ <div class="form-row">
278
+ <h5>Advance Settings (Optional)</h5>
279
+ <div class="chckbxbgbx">
280
+ <div class="cstmcheck-item">
281
+ <label for="enhanced_e_commerce_tracking">
282
+ <input type="checkbox" class="custom-control-input" name="enhanced_e_commerce_tracking" id="enhanced_e_commerce_tracking" <?php echo $is_e_e_tracking; ?>>
283
+ <span class="checkmark"></span>
284
+ Enhaced e-commerce tracking
285
+ </label>
286
+ </div>
287
+ <div class="cstmcheck-item">
288
+ <label for="add_gtag_snippet">
289
+ <input type="checkbox" class="custom-control-input" name="add_gtag_snippe" id="add_gtag_snippet" <?php echo $is_a_g_snippet; ?>>
290
+ <span class="checkmark"></span>
291
+ Add gtag.js snippet
292
+ </label>
293
+ </div>
294
+ </div>
295
+ </div>
296
+ <div class="stepsbmtbtn">
297
+ <input type="hidden" id="subscriptionPropertyId" name="subscriptionPropertyId" value="<?php echo (property_exists($googleDetail,"property_id"))?$googleDetail->property_id:""; ?>">
298
+ <input type="hidden" id="subscriptionMeasurementId" name="subscriptionMeasurementId" value="<?php echo (property_exists($googleDetail,"measurement_id"))?$googleDetail->measurement_id:""; ?>">
299
+ <button type="button" disabled id="step_1" class="stepnextbtn stpnxttrgr">Next</button>
300
+ <!-- remove dslbbtn class for green button -->
301
+ </div>
302
+ </form>
303
+ </div>
304
+ </div>
305
+ </div>
306
+ <!-- step-1 over -->
307
+ <!-- step-2 start -->
308
+ <div class="onbordording-step onbrdstep-2 ggladsstep <?php echo ($complete_step['step-2']==1)?'selectedactivestep':''; ?>">
309
+ <div class="stepdtltop" data-is-done="<?php echo $complete_step['step-2']; ?>" id="google-ads" data-id="step_2">
310
+ <div class="stepleftround">
311
+ <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/check-wbg.png'; ?>" alt="" />
312
+ </div>
313
+ <div class="stepdetwrap">
314
+ <h4>Select Google Ads account</h4>
315
+ <p>With dynamic reamarketing tags, you will be able to show ads to your past visitors with specific product information tailored to your customer’s previous site visit.</p>
316
+ </div>
317
+ </div>
318
+ <div class="stepmoredtlwrp">
319
+ <div class="stepmoredtl">
320
+ <form action="#">
321
+ <div class="selcttopwrap" id="tvc_ads_section">
322
+ <div class="ggladsselectbx">
323
+ <input type="hidden" id="subscriptionGoogleAdsId" name="subscriptionGoogleAdsId" value="<?php echo property_exists($googleDetail,"google_ads_id")?$googleDetail->google_ads_id:""; ?>">
324
+ <select class="slect2bx google_ads_sel" id="ads-account" name="customer_id">
325
+ <option value=''>Select Google Ads Account</option>
326
+ </select>
327
+ </div>
328
+ <div class="orwrp">or</div>
329
+ <div class="creatnewwrp">
330
+ <button type="button" class="cretnewbtn newggladsbtn"><span class="plusicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/blue-plus.png'; ?>" alt="" /></span> Create New</button>
331
+ </div>
332
+ </div>
333
+
334
+ <div class="selcttopwrap">
335
+ <div class="onbrdpp-body alert alert-primary" style="display:none;" id="new_google_ads_section">
336
+ <h4>Account Created</h4>
337
+ <p>Your Google Ads Account has been created <strong>(<b><span id="new_google_ads_id"></span></b>).</strong></p>
338
+ <h5>Steps to claim your Google Ads Account:</h5>
339
+ <ol>
340
+ <li>Accept invitation mail from Google Ads sent to your email address <em><?php echo (isset($this->tvc_data['g_mail']))?$this->tvc_data['g_mail']:""; ?></em></li>
341
+ <li>Log into your Google Ads account and set up your <em>billing preferences</em></li>
342
+ </ol>
343
+ </div>
344
+ </div>
345
+
346
+ <div class="form-row">
347
+ <?php
348
+ $is_r_tags = (property_exists($googleDetail,"remarketing_tags") && $googleDetail->remarketing_tags == 1)?"checked":(($defaulSelection == 1)?"checked":"");
349
+ $is_l_g_an_w_g_ad = (property_exists($googleDetail,"link_google_analytics_with_google_ads") && $googleDetail->link_google_analytics_with_google_ads == 1)?"checked":(($defaulSelection == 1)?"checked":"");
350
+ $is_d_r_tags = (property_exists($googleDetail,"dynamic_remarketing_tags") && $googleDetail->dynamic_remarketing_tags == 1)?"checked":(($defaulSelection == 1)?"checked":"");
351
+ $is_g_ad_c_tracking = (property_exists($googleDetail,"google_ads_conversion_tracking") && $googleDetail->google_ads_conversion_tracking == 1)?"checked":(($defaulSelection == 1)?"checked":"");
352
+ ?>
353
+ <h5>Advance Settings (Optional)</h5>
354
+ <div class="chckbxbgbx dsplcolmview">
355
+ <div class="cstmcheck-item">
356
+ <label for="remarketing_tag">
357
+ <input type="checkbox" class="custom-control-input" name="remarketing_tag" id="remarketing_tag" value="1" <?php echo $is_r_tags; ?>>
358
+ <span class="checkmark"></span>
359
+ Enable Google Remarketing Tag
360
+ </label>
361
+ </div>
362
+ <div class="cstmcheck-item">
363
+ <label for="dynamic_remarketing_tags">
364
+ <input type="checkbox" class="custom-control-input" name="dynamic_remarketing_tags" id="dynamic_remarketing_tags" value="1" <?php echo $is_d_r_tags; ?>>
365
+ <span class="checkmark"></span>
366
+ Enable Dynamic Remarketing Tag
367
+ </label>
368
+ </div>
369
+ <div class="cstmcheck-item <?php if($this->plan_id == 1){?>cstmcheck-item-pro <?php } ?>">
370
+ <label for="google_ads_conversion_tracking">
371
+ <?php if($this->plan_id != 1){?>
372
+ <input type="checkbox" class="custom-control-input" name="google_ads_conversion_tracking" id="google_ads_conversion_tracking" value="1" <?php echo $is_g_ad_c_tracking; ?>>
373
+ <span class="checkmark"></span>
374
+ Google Ads conversion tracking
375
+ <?php }else{?>
376
+ <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/icon/lock.svg'; ?>"><label>Google Ads conversion tracking (Pro Plan)</label>
377
+ <?php } ?>
378
+ </label>
379
+ </div>
380
+ <div class="cstmcheck-item">
381
+ <label for="link_google_analytics_with_google_ads">
382
+ <input type="checkbox" class="custom-control-input" name="link_google_analytics_with_google_ads" id="link_google_analytics_with_google_ads" value="1" <?php echo $is_l_g_an_w_g_ad; ?>>
383
+ <span class="checkmark"></span>
384
+ Link Google Analytics with Google Ads
385
+ </label>
386
+ </div>
387
+ </div>
388
+ </div>
389
+ <div class="stepsbmtbtn">
390
+ <button type="button" id="step_2" class="stepnextbtn stpnxttrgr">Next</button>
391
+ <!-- add dslbbtn class for disable button -->
392
+ </div>
393
+ </form>
394
+ </div>
395
+ </div>
396
+ </div>
397
+ <!-- step-2 over -->
398
+ <!-- step-3 start -->
399
+ <div class="onbordording-step onbrdstep-3 gglmrchntstep <?php echo ($complete_step['step-3']==1)?'selectedactivestep':''; ?>">
400
+ <div class="stepdtltop" data-is-done="<?php echo $complete_step['step-3']; ?>" id="gmc-account" data-id="step_3">
401
+ <div class="stepleftround">
402
+ <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/check-wbg.png'; ?>" alt="" />
403
+ </div>
404
+ <div class="stepdetwrap">
405
+ <h4>Select Google Merchant Center Account</h4>
406
+ <p>Make your WooCommerce shop and products available to millions of shoppers across google.</p>
407
+ </div>
408
+ </div>
409
+ <div class="stepmoredtlwrp">
410
+ <div class="stepmoredtl">
411
+ <form action="#">
412
+ <div class="selcttopwrap">
413
+ <div class="form-group" style="display:none;" id="new_merchant_section">
414
+ <div class="text-center">
415
+ <div class="alert alert-primary" style="padding: 10px;" role="alert">
416
+ <label class="form-label-control font-weight-bold">We have created new merchant center account with ID: <span id="new_merchant_id"></span>. Click on finish button to save new account.</label>
417
+ </div>
418
+ </div>
419
+ </div>
420
+ <div id="tvc_merchant_section">
421
+ <div class="ggladsselectbx">
422
+ <select class="slect2bx" id="google_merchant_center_id" name="google_merchant_center_id">
423
+ <option value=''>Select Measurement Id</option>
424
+ </select>
425
+ </div>
426
+ <div class="orwrp">or</div>
427
+ <div class="creatnewwrp">
428
+ <button type="button" class="cretnewbtn newmrchntbtn"><span class="plusicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/blue-plus.png'; ?>" alt="" /></span> Create New</button>
429
+ </div>
430
+ </div>
431
+ </div>
432
+ <div class="stepsbmtbtn">
433
+ <button type="button" id="step_3" data-enchanter="finish" class="stepnextbtn finishbtn">Finish</button>
434
+ <!-- add dslbbtn class for disable button -->
435
+ </div>
436
+ <input type="hidden" id="subscriptionMerchantCenId" name="subscriptionMerchantCenId" value="<?php echo property_exists($googleDetail,"google_merchant_center_id")?$googleDetail->google_merchant_center_id:""; ?>">
437
+ <input type="hidden" id="loginCustomerId" name="loginCustomerId" value="<?php echo $login_customer_id; ?>">
438
+ <input type="hidden" id="subscriptionId" name="subscriptionId" value="<?php echo $this->subscriptionId; ?>">
439
+ <input type="hidden" id="plan_id" name="plan_id" value="<?php echo $this->plan_id; ?>">
440
+ <input type="hidden" id="conversios_onboarding_nonce" name="conversios_onboarding_nonce" value="<?php echo wp_create_nonce( 'conversios_onboarding_nonce' ); ?>">
441
+
442
+ <input type="hidden" id="ga_view_id" name="ga_view_id" value="<?php echo get_option('ee_ga_view_id'); ?>">
443
+ </form>
444
+ </div>
445
+ <div class="stepnotewrp">
446
+ If you are in the European Economic Area or Switzerland your Merchant Center account must be associated with a Comparison Shopping Service (CSS). Please find more information at <a href="">Google Merchant Center Help</a> website. If you create a new Merchant Center account through this application, it will be associated with Google Shopping, Google’s CSS, by default. You can change the CSS associated with your account at any time. Please find more information about our CSS Partners <a href="">here</a>. Once you have set up your Merchant Center account you can use our onboarding tool regardless of which CSS you use.
447
+ </div>
448
+ </div>
449
+ </div>
450
+ <!-- step-3 over -->
451
+ </div>
452
+ <!-- onborading left over -->
453
+ <!-- onborading right panel start -->
454
+ <div class="onbording-right">
455
+ <div class="sidebrcontainer">
456
+ <div class="onbrd-rdmbx">
457
+ <div class="rdm-amnt">
458
+ <small>Redeem upto</small>
459
+ <?php echo $off_credit_amt; ?>
460
+ </div>
461
+ <p>Create your first Google Ads account with us and redeem upto £120.00 on the spend you make in the next 31 days.</p>
462
+ <a target="_blank" href="https://conversios.io/help-center/Google-Spend-Match.pdf" class="lrnmorbtn">Learn more <img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/arrow_right.png'; ?>" alt="" /></a>
463
+ </div>
464
+ <div class="onbrdrgt-nav">
465
+ <ul>
466
+ <li><a target="_blank" href="https://conversios.io/help-center/Installation-Manual.pdf">Installation Manual</a></li>
467
+ <li><a target="_blank" href="https://conversios.io/help-center/Google-shopping-Guide.pdf" href="">Google Shopping Guide</a></li>
468
+ <li><a target="_blank" href="https://wordpress.org/plugins/enhanced-e-commerce-for-woocommerce-store/faq/" href="">FAQ</a></li>
469
+ </ul>
470
+ </div>
471
+ </div>
472
+ </div>
473
+ <!-- onborading right panel over -->
474
+ </div>
475
+ </div>
476
+ </div>
477
+ </div>
478
+ </div>
479
+ </div>
480
+ <!-- google ads skip confirm poppup -->
481
+ <div class="pp-modal onbrd-popupwrp" id="tvc_ads_skip_confirm" tabindex="-1" role="dialog">
482
+ <div class="onbrdppmain" role="document">
483
+ <div class="onbrdnpp-cntner acccretppcntnr">
484
+ <div class="onbrdnpp-hdr">
485
+ <h4>You have not selected Google Ads account.</h4>
486
+ <div class="ppclsbtn clsbtntrgr"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/close-icon.png';?>" alt="" /></div>
487
+ </div>
488
+ <div class="onbrdpp-body">
489
+ <p>If you do not select Google Ads account, you will not be able to use some of the major features like:</p>
490
+ <ul>
491
+ <li>Dynamic Remarketing Tags </li>
492
+ <li>Google Smart Shopping Campaigns</li>
493
+ <li>Google Analytics and Google Ads linking</li>
494
+ </ul>
495
+ <p>Are you sure you want to continue without selecting Google Ads account?</p>
496
+ </div>
497
+ <div class="ppfooterbtn">
498
+ <button type="button" class="ppblubtn btn-secondary" data-dismiss="modal" id="ads-skip-cancel">Cancel</button>
499
+ <button type="button" class="ppblubtn btn-primary" data-dismiss="modal" id="ads-skip-continue">Continue</button>
500
+ </div>
501
+ </div>
502
+ </div>
503
+ </div>
504
+ <!-- google ads poppup -->
505
+ <div id="ggladspopup" class="pp-modal onbrd-popupwrp ggladspp">
506
+ <div class="onbrdppmain">
507
+ <div class="onbrdnpp-cntner ggladsppcntnr">
508
+ <div class="onbrdnpp-hdr">
509
+ <h4>Enable Google Ads Account</h4>
510
+ <div class="ppclsbtn clsbtntrgr"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/close-icon.png';?>" alt="" /></div>
511
+ </div>
512
+ <div class="onbrdpp-body">
513
+ <p>You’ll receive an invite from Google on your email. Accept the invitation to enable your Google Ads Account.</p>
514
+ </div>
515
+ <div class="ppfooterbtn">
516
+ <button type="button" id="ads-continue" class="ppblubtn sndinvitebtn">Send Invite</button>
517
+ </div>
518
+ </div>
519
+ </div>
520
+ </div>
521
+ <!-- merchant center skip confirm -->
522
+ <div class="pp-modal onbrd-popupwrp" id="tvc_merchant_center_skip_confirm">
523
+ <div class="onbrdppmain">
524
+ <div class="onbrdnpp-cntner acccretppcntnr">
525
+ <div class="onbrdnpp-hdr">
526
+ <h4>You have not selected Google merchant center account.</h4>
527
+ <div class="ppclsbtn clsbtntrgr"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/close-icon.png';?>" alt="" /></div>
528
+ </div>
529
+ <div class="onbrdpp-body">
530
+ <p>If you do not select a merchant center account, you will not be able to use complete google shopping features.</p>
531
+ <p>Are you sure you want to continue without selecting a merchant center account?</p>
532
+ </div>
533
+ <div class="ppfooterbtn">
534
+ <button type="button" class="ppblubtn btn-secondary" data-dismiss="modal" id="merchant-center-skip-cancel">Cancel</button>
535
+ <button type="button" class="ppblubtn btn-primary" data-dismiss="modal" id="merchant-center-skip-continue">Continue</button>
536
+ </div>
537
+ </div>
538
+ </div>
539
+ </div>
540
+ <!-- Create New Merchant poppup -->
541
+ <div id="createmerchantpopup" class="pp-modal onbrd-popupwrp crtemrchntpp">
542
+ <div class="onbrdppmain">
543
+ <div class="onbrdnpp-cntner crtemrchntppcntnr">
544
+ <div class="ppclsbtn clsbtntrgr"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/close-icon.png'; ?>" alt="" /></div>
545
+ <div class="onbrdpp-body">
546
+ <div class="row">
547
+ <div class="crtemrchnpp-lft">
548
+ <div class="crtemrchpplft-top">
549
+ <h4>Create Google Merchant Center Account</h4>
550
+ <p>Before you can upload product data, you’ll need to verify and claim your store’s website URL. Claiming associates your website URL with your Google Merchant Center account.</p>
551
+ </div>
552
+ <div class="claimedbx">
553
+ Your site will automatically be claimed and verified.
554
+ </div>
555
+ <div class="mrchntformwrp">
556
+ <form action="#">
557
+ <div class="form-row">
558
+ <input type="hidden" id="get-mail" name="g_email" value="<?php echo isset($this->tvc_data['g_mail'])?$this->tvc_data['g_mail']:""; ?>">
559
+ <input type="text" value="<?php echo $this->tvc_data['user_domain']; ?>" class="fromfiled" name="url" id="url" placeholder="Enter Website">
560
+ <div class="cstmcheck-item mt15">
561
+ <label for="adult_content">
562
+ <input class="" type="checkbox" name="adult_content" id="adult_content">
563
+ <span class="checkmark"></span>
564
+ My site contains
565
+ </label>
566
+ <strong>Adult Content</strong>
567
+ </div>
568
+ </div>
569
+ <div class="form-row">
570
+ <input type="text" class="fromfiled" name="store_name" id="store_name" placeholder="Enter Store Name" required>
571
+ <div class="inputinfotxt">This name will appear in your Shopping Ads.</div>
572
+ </div>
573
+ <div class="form-row">
574
+ <?php echo $this->get_countries($this->tvc_data['user_country']); ?>
575
+ </div>
576
+ <div class="form-row">
577
+ <div class="cstmcheck-item">
578
+ <label for="terms_conditions">
579
+ <input class="" type="checkbox" name="concent" id="terms_conditions">
580
+ <span class="checkmark"></span>
581
+ I accept the
582
+ </label>
583
+ <a target="_blank" href="https://support.google.com/merchants/answer/160173?hl=en">terms & conditions</a>
584
+ </div>
585
+ </div>
586
+ </form>
587
+ </div>
588
+ <div class="ppfooterbtn">
589
+ <button type="button" id="create_merchant_account" class="cretemrchntbtn">Create Account
590
+ </button>
591
+ </div>
592
+ </div>
593
+ <div class="crtemrchnpp-right">
594
+ <h6>To use Google Shopping, your website must meet these requirements:</h6>
595
+ <ul>
596
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6149970?hl=en">Google Shopping ads policies</a></li>
597
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6150127">Accurate Contact Information</a></li>
598
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6150122">Secure collection of process and personal data</a></li>
599
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6150127">Return Policy</a></li>
600
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6150127">Billing terms & conditions</a></li>
601
+ <li><a target="_blank" href="https://support.google.com/merchants/answer/6150118">Complete checkout process</a></li>
602
+ </ul>
603
+ </div>
604
+ </div>
605
+ </div>
606
+
607
+ </div>
608
+ </div>
609
+ </div>
610
+
611
+ <!-- congratulation poppup -->
612
+ <div id="tvc_confirm_submite" class="pp-modal onbrd-popupwrp congratepp">
613
+ <div class="onbrdppmain">
614
+ <div class="onbrdnpp-cntner congratppcntnr">
615
+ <div class="onbrdnpp-hdr txtcnter">
616
+ <h2>Congratulations!!</h2>
617
+ <div class="ppclsbtn clsbtntrgr"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/close-icon.png'; ?>" alt="" /></div>
618
+ </div>
619
+ <div class="onbrdpp-body congratppbody">
620
+ <p>You have been successfully onboarded. Please check the account summary below and confirm.</p>
621
+ <div class="congratppdtlwrp">
622
+ <div class="cngrtppdtl-item" id="google_analytics_property_id_info">
623
+ <div class="cngtrpplft">
624
+ <span class="cngrtchckicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/green-check.png'; ?>" alt="" /></span>
625
+ Google Analytics Property Id:
626
+ </div>
627
+ <div class="cngtrpprgt" id="selected_google_analytics_property"></div>
628
+ </div>
629
+ <div class="cngrtppdtl-item" id="google_analytics_measurement_id_info">
630
+ <div class="cngtrpplft">
631
+ <span class="cngrtchckicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/green-check.png'; ?>" alt="" /></span>
632
+ Google Analytics Measurement Id:
633
+ </div>
634
+ <div class="cngtrpprgt" id="selected_google_analytics_measurement"></div>
635
+ </div>
636
+ <div class="cngrtppdtl-item" id="google_ads_info">
637
+ <div class="cngtrpplft">
638
+ <span class="cngrtchckicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/green-check.png'; ?>" alt="" /></span>
639
+ Google Ads Account:
640
+ </div>
641
+ <div class="cngtrpprgt" id="selected_google_ads_account"></div>
642
+ </div>
643
+ <div class="cngrtppdtl-item" id="google_merchant_center_info">
644
+ <div class="cngtrpplft">
645
+ <span class="cngrtchckicon"><img src="<?php echo ENHANCAD_PLUGIN_URL.'/admin/images/green-check.png'; ?>" alt="" /></span>
646
+ Google Merchant Center Account
647
+ </div>
648
+ <div class="cngtrpprgt" id="selected_google_merchant_center"></div>
649
+ </div>
650
+ </div>
651
+ </div>
652
+ <div class="ppfooterbtn">
653
+ <button type="button" id="confirm_selection" class="ppblubtn">Confirm</button>
654
+ </div>
655
+ </div>
656
+ </div>
657
+ </div>
658
+ <?php
659
+ $this->page_script();
660
+ }
661
+ /**
662
+ * onboarding page javascript
663
+ */
664
+ public function page_script(){
665
+ $j_tvc_data = json_encode($this->tvc_data);
666
+ ?>
667
+ <script>
668
+ let tvc_data = <?php echo $j_tvc_data; ?>;
669
+ var tvc_ajax_url = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
670
+ let subscription_id ="<?php echo $this->subscriptionId; ?>";
671
+ let plan_id ="<?php echo $this->plan_id; ?>";
672
+ let app_id ="<?php echo $this->app_id; ?>";
673
+ /**
674
+ * Convesios custom script
675
+ */
676
+ //Step-0
677
+ $(".google_connect_url").on( "click", function() {
678
+ const w =600; const h=650;
679
+ const dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : window.screenX;
680
+ const dualScreenTop = window.screenTop !== undefined ? window.screenTop : window.screenY;
681
+
682
+ const width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
683
+ const height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
684
+
685
+ const systemZoom = width / window.screen.availWidth;
686
+ const left = (width - w) / 2 / systemZoom + dualScreenLeft;
687
+ const top = (height - h) / 2 / systemZoom + dualScreenTop;
688
+ /*window.open('<?php echo $this->connect_url; ?>','newwindow', config=`height=670,width=670,top=100,left=${left},toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,directories=no,status=no`);*/
689
+ var url ='<?php echo $this->connect_url; ?>';
690
+ url = url.replace(/&amp;/g, '&');
691
+ const newWindow = window.open(url, "newwindow", config= `scrollbars=yes,
692
+ width=${w / systemZoom},
693
+ height=${h / systemZoom},
694
+ top=${top},
695
+ left=${left},toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,directories=no,status=no
696
+ `);
697
+ if (window.focus) newWindow.focus();
698
+ });
699
+
700
+ //Step-1
701
+ $(document).ready(function() {
702
+ let tracking_option = $('input[type=radio][name=analytic_tag_type]:checked').val();
703
+ if(tracking_option != ""){
704
+ if(subscription_id != ""){
705
+ call_list_analytics_web_properties(tracking_option, tvc_data);
706
+ }
707
+ $(".slctunivr-filed").slideUp();
708
+ $("#"+tracking_option).slideDown();
709
+ //is_validate_step("step_1");
710
+ }
711
+
712
+ $("input[type=radio][name=analytic_tag_type]").on( "change", function() {
713
+ let tracking_option = this.value;
714
+ if(subscription_id != ""){
715
+ call_list_analytics_web_properties(tracking_option, tvc_data);
716
+ is_validate_step("step_1");
717
+ }
718
+ $(".slctunivr-filed").slideUp();
719
+ $("#"+tracking_option).slideDown();
720
+ });
721
+ });
722
+ if(subscription_id != ""){
723
+ call_list_googl_ads_account(tvc_data);
724
+ call_list_google_merchant_account(tvc_data);
725
+ }
726
+
727
+ //Step-2
728
+ // create google ads account
729
+ $("#ads-continue").on('click', function(e){
730
+ e.preventDefault();
731
+ create_google_ads_account(tvc_data);
732
+ $('.ggladspp').removeClass('showpopup');
733
+ });
734
+ // skip google ads account selection
735
+ $("#ads-skip-continue").on('click', function(e){
736
+ e.preventDefault();
737
+ save_google_ads_data("", tvc_data, subscription_id, true );
738
+ go_next($("#step_2"));
739
+ });
740
+ //Step - 3
741
+ $("#create_merchant_account").on('click', function(e){
742
+ e.preventDefault();
743
+ create_google_merchant_center_account(tvc_data);
744
+ });
745
+ //Click skip merchant center account on popup
746
+ $("#merchant-center-skip-continue").on('click', function(e){
747
+ e.preventDefault();
748
+ if(is_validate_step("step_1")){
749
+ save_merchant_data("", "", tvc_data, subscription_id, plan_id, true );
750
+ }else{
751
+ add_message("error","Please select property/measurement id.");
752
+ }
753
+ })
754
+ //Click finish button
755
+ $("#step_3").on('click', function(e){
756
+ e.preventDefault();
757
+ let google_merchant_center_id = $("#new_merchant_id").text();
758
+ let merchant_id = "NewMerchant";
759
+ if( google_merchant_center_id == null || google_merchant_center_id =="" ){
760
+ google_merchant_center_id = $('#google_merchant_center_id').val();
761
+ merchant_id =$("#google_merchant_center_id").find(':selected').data('merchant_id');
762
+ }
763
+ if( google_merchant_center_id == null || google_merchant_center_id == "" ){
764
+ $('#tvc_merchant_center_skip_confirm').addClass('showpopup');
765
+ $('body').addClass('scrlnone');
766
+ }else{
767
+ if(is_validate_step("step_1")){
768
+ save_merchant_data(google_merchant_center_id, merchant_id, tvc_data, subscription_id, plan_id, false );
769
+ }else{
770
+ add_message("error","Please Connect Google Analytics Account.");
771
+ }
772
+ }
773
+ })
774
+ //Click confirm button on confirm popup
775
+ $('#confirm_selection').on('click', function(e){
776
+ var conversios_onboarding_nonce = $("#conversios_onboarding_nonce").val();
777
+ var tracking_option = $('input[type=radio][name=analytic_tag_type]:checked').val();
778
+ var view_id = "";
779
+ add_message("warning","Process to save your settings. Do not refresh..",false);
780
+ if(tracking_option == "UA"){
781
+ ga_view_id = $("#ua_web_property_id").find(':selected').data('profileid');
782
+ }else{
783
+ ga_view_id = $("#both_web_property_id").find(':selected').data('profileid');
784
+ }
785
+ $.ajax({
786
+ type: "POST",
787
+ dataType: "json",
788
+ url: tvc_ajax_url,
789
+ data: {action: "update_setup_time_to_subscription", tvc_data:tvc_data, subscription_id:subscription_id, ga_view_id:ga_view_id, conversios_onboarding_nonce:conversios_onboarding_nonce},
790
+ beforeSend: function () {
791
+ loaderSection(true);
792
+ },
793
+ success: function (response) {
794
+ //console.log(response);
795
+ if (response.error === false) {
796
+ if(response.return_url){
797
+ location.replace( response.return_url);
798
+ }else{
799
+ location.replace( "admin.php?page=enhanced-ecommerce-google-analytics-admin-display&tab=general_settings");
800
+ }
801
+ }else{
802
+ loaderSection(false);
803
+ }
804
+ }
805
+ });
806
+ });
807
+
808
+ /**
809
+ * Convesios defoult html script
810
+ */
811
+ $(document).ready(function() {
812
+ $( ".stepdtltop" ).each(function() {
813
+ $(this).on("click", function(){
814
+ if(subscription_id != ""){
815
+ if($(this).attr("data-is-done") == "1"){
816
+ if($(this).parent('.onbordording-step').hasClass("activestep")){
817
+ $(this).parent('.onbordording-step').removeClass('activestep');
818
+ }else{
819
+ $('.onbordording-step').removeClass('activestep');
820
+ $(this).parent('.onbordording-step').addClass('activestep');
821
+ }
822
+ }
823
+ }else{
824
+ //alert("First Connect you website.");
825
+ }
826
+ });
827
+ });
828
+
829
+ $( ".stpnxttrgr" ).each(function() {
830
+ $(this).on("click", function(event){
831
+ var step =$(this).attr("id");
832
+ //step 1 next button call
833
+ if(step == "step_1"){
834
+ if(is_validate_step(step)){
835
+ let tracking_option = $('input[type=radio][name=analytic_tag_type]:checked').val();
836
+ save_analytics_web_properties( tracking_option, tvc_data, subscription_id );
837
+ go_next(this);
838
+ call_list_google_merchant_account(tvc_data);
839
+ }
840
+ }
841
+ //step 2 next button call
842
+ if(step == "step_2" ){
843
+ //event.preventDefault();
844
+ let google_ads_id = $("#new_google_ads_id").text();
845
+ if(google_ads_id ==null || google_ads_id ==""){
846
+ google_ads_id = $('#ads-account').val();
847
+ }
848
+ let tr_ads = save_google_ads_data(google_ads_id, tvc_data, subscription_id, false );
849
+ if(tr_ads){
850
+ go_next(this);
851
+ }
852
+ }
853
+
854
+ });
855
+ });
856
+
857
+ });
858
+ $('.slctunivr-filed').slideUp();
859
+ //
860
+
861
+ function go_next(next_this){
862
+ $(next_this).closest('.onbordording-step').find('.stepdtltop').attr("data-is-done","1");
863
+ $(next_this).closest('.onbordording-step').addClass('selectedactivestep');
864
+ $(next_this).closest('.onbordording-step').removeClass('activestep');
865
+ $( next_this ).closest('.onbordording-step').next('.onbordording-step').addClass('activestep');
866
+ }
867
+ </script>
868
+ <script>
869
+ $(document).ready(function(){
870
+ $(".slect2bx").select2();
871
+ });
872
+ </script>
873
+ <!-- popup script -->
874
+ <script>
875
+ $(document).ready(function() {
876
+ //open now google ads account popup
877
+ $(".newggladsbtn").on( "click", function() {
878
+ $('.ggladspp').addClass('showpopup');
879
+ $('body').addClass('scrlnone');
880
+ });
881
+
882
+ //close any poup whie click on out side
883
+ $('body').click(function(evt){
884
+ if($(evt.target).closest('#step_2,.cretnewbtn,.finishbtn,.onbrdnpp-cntner, .crtemrchntpp .onbrdppmain').length)
885
+ return;
886
+ $('.onbrd-popupwrp').removeClass('showpopup');
887
+ $('body').removeClass('scrlnone');
888
+ });
889
+ });
890
+ $(".clsbtntrgr, .ppblubtn").on( "click", function() {
891
+ $(this).closest('.onbrd-popupwrp').removeClass('showpopup');
892
+ $('body').removeClass('scrlnone');
893
+ });
894
+ /*
895
+ $(".sndinvitebtn").on( "click", function() {
896
+
897
+ //$('.acccretpp').addClass('showpopup');
898
+ //$('body').addClass('scrlnone');
899
+ });
900
+ $(".finishbtn").on( "click", function() {
901
+ $('.congratepp').addClass('showpopup');
902
+ $('body').addClass('scrlnone');
903
+ $('.alertbx').removeClass('show');
904
+ });*/
905
+ $(".newmrchntbtn").on( "click", function() {
906
+ $('.crtemrchntpp').addClass('showpopup');
907
+ $('body').addClass('scrlnone');
908
+ });
909
+ /*$(".cretemrchntbtn").on( "click", function() {
910
+ $('.mrchntalert').addClass('show');
911
+ });
912
+ $(".alertclsbtn").on( "click", function() {
913
+ $(this).parent('.alertbx').removeClass('show');
914
+ });*/
915
+ </script>
916
+ <?php
917
+ }
918
+ /**
919
+ * onboarding page add scripts file
920
+ */
921
+ public function add_scripts(){
922
+ wp_register_style('conversios-select2-css',ENHANCAD_PLUGIN_URL . '/admin/css/select2.css');
923
+ wp_enqueue_style('conversios-style-css',ENHANCAD_PLUGIN_URL . '/admin/css/style.css', array(), $this->version, 'all');
924
+ wp_enqueue_style('conversios-responsive-css',ENHANCAD_PLUGIN_URL . '/admin/css/responsive.css', array(), $this->version, 'all');
925
+ wp_enqueue_style('conversios-select2-css');
926
+
927
+
928
+ wp_enqueue_script( 'conversios-jquery-js', ENHANCAD_PLUGIN_URL . '/admin/js/jquery-3.5.1.min.js', array( 'jquery' ), $this->version, false );
929
+ wp_register_script('conversios-select2-js', ENHANCAD_PLUGIN_URL.'/admin/js/select2.min.js');
930
+ wp_enqueue_script('conversios-select2-js');
931
+ wp_enqueue_script( 'conversios-onboarding-js', ENHANCAD_PLUGIN_URL . '/admin/js/onboarding-custom.js', array( 'jquery' ), $this->version, false );
932
+ }
933
+ /**
934
+ * Onboarding page register menu
935
+ */
936
+ public function register() {
937
+ // Getting started - shows after installation.
938
+ add_dashboard_page(
939
+ esc_html__( 'Welcome to Conversios Onboarding', 'conversios' ),
940
+ esc_html__( 'Welcome to Conversios Onboarding', 'google-analytics-for-wordpress' ),
941
+ apply_filters( 'conversios_welcome', 'manage_options' ),
942
+ 'conversios_onboarding',
943
+ array( $this, 'welcome_screen' )
944
+ );
945
+ }
946
+ /**
947
+ * Check if we should do any redirect.
948
+ */
949
+ public function maybe_redirect() {
950
+
951
+ // Bail if no activation redirect.
952
+ if ( ! get_transient( '_conversios_activation_redirect' ) || isset( $_GET['conversios-redirect'] ) ) {
953
+ return;
954
+ }
955
+ // Delete the redirect transient.
956
+ delete_transient( '_conversios_activation_redirect' );
957
+
958
+ // Bail if activating from network, or bulk.
959
+ if ( isset( $_GET['activate-multi'] ) ) { // WPCS: CSRF ok, input var ok.
960
+ return;
961
+ }
962
+
963
+
964
+ /*if ( apply_filters( 'monsterinsights_enable_onboarding_wizard', false === $upgrade ) ) {*/
965
+ //$redirect = admin_url( 'index.php?page=conversios_onboarding&conversios-redirect=1' );
966
+ $path = 'index.php?page=conversios_onboarding&conversios-redirect=1';
967
+ $redirect = is_network_admin() ? network_admin_url( $path ) : admin_url( $path );
968
+ wp_safe_redirect( $redirect );
969
+ exit;
970
+ //}
971
+ }
972
+ //End function
973
+ }//End Conversios_Onboarding Class
974
+ }
975
+ new Conversios_Onboarding();
admin/class-enhanced-ecommerce-google-analytics-admin.php CHANGED
@@ -57,7 +57,7 @@ class Enhanced_Ecommerce_Google_Analytics_Admin extends TVC_Admin_Helper {
57
  public function __construct($plugin_name, $version) {
58
  $this->plugin_name = $plugin_name;
59
  $this->version = $version;
60
- $this->url = $this->get_connect_url();
61
  $this->site_url = "admin.php?page=enhanced-ecommerce-google-analytics-admin-display&tab=";
62
  $this->pro_plan_site = $this->get_pro_plan_site();
63
  $this->google_detail = $this->get_ee_options_data();
57
  public function __construct($plugin_name, $version) {
58
  $this->plugin_name = $plugin_name;
59
  $this->version = $version;
60
+ $this->url = $this->get_onboarding_page_url();
61
  $this->site_url = "admin.php?page=enhanced-ecommerce-google-analytics-admin-display&tab=";
62
  $this->pro_plan_site = $this->get_pro_plan_site();
63
  $this->google_detail = $this->get_ee_options_data();
admin/class-tvc-admin-helper.php CHANGED
@@ -16,6 +16,9 @@ Class TVC_Admin_Helper{
16
  protected $setting_status = "";
17
  protected $ee_additional_data = "";
18
  protected $TVC_Admin_DB_Helper;
 
 
 
19
  public function __construct() {
20
  $this->includes();
21
  $this->customApiObj = new CustomApi();
@@ -378,7 +381,25 @@ Class TVC_Admin_Helper{
378
  return $this->connect_actual_link;
379
  }
380
  }
381
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
382
  public function get_connect_url(){
383
  if(!empty($this->connect_url)){
384
  return $this->connect_url;
@@ -388,6 +409,15 @@ Class TVC_Admin_Helper{
388
  }
389
  }
390
 
 
 
 
 
 
 
 
 
 
391
  public function get_woo_currency(){
392
  if(!empty($this->woo_currency)){
393
  return $this->woo_currency;
@@ -534,10 +564,10 @@ Class TVC_Admin_Helper{
534
  $setting_status['google_analytic_msg']= "";
535
  }else if($googleDetail->property_id == "" ){
536
  $setting_status['google_analytic']= false;
537
- $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
538
  }else if($googleDetail->measurement_id == "" ){
539
  $setting_status['google_analytic']= false;
540
- $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
541
  }
542
  }else if(isset($googleDetail->tracking_option) && isset($googleDetail->measurement_id) && $googleDetail->tracking_option == "GA4"){
543
  if( $googleDetail->measurement_id != ""){
@@ -545,7 +575,7 @@ Class TVC_Admin_Helper{
545
  $setting_status['google_analytic_msg']= "";
546
  }else{
547
  $setting_status['google_analytic']= false;
548
- $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
549
  }
550
  }else if(isset($googleDetail->tracking_option) && isset($googleDetail->property_id) && $googleDetail->tracking_option == "UA" ){
551
  if($googleDetail->property_id != ""){
@@ -553,7 +583,7 @@ Class TVC_Admin_Helper{
553
  $setting_status['google_analytic_msg']= "";
554
  }else{
555
  $setting_status['google_analytic']= false;
556
- $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
557
  }
558
  }else{
559
  $setting_status['google_analytic']= false;
@@ -567,10 +597,10 @@ Class TVC_Admin_Helper{
567
  $setting_status['google_shopping_msg']= "";
568
  }else if($googleDetail->google_merchant_center_id == ""){
569
  $setting_status['google_shopping']= false;
570
- $setting_status['google_shopping_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
571
  }else if($googleDetail->google_ads_id == ""){
572
  $setting_status['google_shopping']= false;
573
- $setting_status['google_shopping_msg']= "Link your Google Ads with Merchant center to start running shopping campaigns <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
574
  }
575
  }else{
576
  $setting_status['google_shopping']= false;
@@ -584,10 +614,10 @@ Class TVC_Admin_Helper{
584
  $setting_status['google_ads_msg']= "";
585
  }else if($googleDetail->google_merchant_center_id == ""){
586
  $setting_status['google_ads']= false;
587
- $setting_status['google_ads_msg']= "Link your Google Ads with Merchant center to start running shopping campaigns <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
588
  }else if($googleDetail->google_ads_id == ""){
589
  $setting_status['google_ads']= false;
590
- $setting_status['google_ads_msg']= "Configure Google Ads account to reach to millions of interested shoppers <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
591
  }
592
  }else{
593
  $setting_status['google_ads']= false;
@@ -610,7 +640,7 @@ Class TVC_Admin_Helper{
610
  $setting_status['google_shopping_conf_msg']= "Google Shopping Configuration Success.";
611
  }else if($googleDetail->google_merchant_center_id == "" || $googleDetail->google_ads_id == "" ){
612
  $setting_status['google_shopping_conf']= false;
613
- $setting_status['google_shopping_conf_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
614
  }else if($googleDetail->is_site_verified ==0 && $googleDetail->is_domain_claim ==0 ){
615
  $setting_status['google_shopping_conf']= false;
616
  $setting_status['google_shopping_conf_msg']= "Site verification and domain claim for your merchant center account failed.";
@@ -649,7 +679,7 @@ Class TVC_Admin_Helper{
649
  }
650
  }else{
651
  $setting_status['google_shopping_p_sync']= false;
652
- $setting_status['google_shopping_p_sync_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
653
  }
654
 
655
  //sub tab product Campaigns
@@ -669,7 +699,7 @@ Class TVC_Admin_Helper{
669
  }
670
  }else{
671
  $setting_status['google_shopping_p_campaigns']= false;
672
- $setting_status['google_shopping_p_campaigns_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a target='_blank' href='".esc_url($this->get_connect_url())."'>click here</a>.";
673
  }
674
  }
675
  return $setting_status;
16
  protected $setting_status = "";
17
  protected $ee_additional_data = "";
18
  protected $TVC_Admin_DB_Helper;
19
+ protected $store_data;
20
+ protected $api_subscription_data;
21
+ protected $onboarding_page_url;
22
  public function __construct() {
23
  $this->includes();
24
  $this->customApiObj = new CustomApi();
381
  return $this->connect_actual_link;
382
  }
383
  }
384
+
385
+ /**
386
+ * Wordpress store information
387
+ */
388
+ public function get_store_data(){
389
+ if(!empty($this->store_data)){
390
+ return $this->store_data;
391
+ }else{
392
+ return $this->store_data = array(
393
+ "subscription_id"=>$this->get_subscriptionId(),
394
+ "user_domain" => $this->get_connect_actual_link(),
395
+ "currency_code" => $this->get_woo_currency(),
396
+ "timezone_string" => $this->get_time_zone(),
397
+ "user_country" => $this->get_woo_country(),
398
+ "app_id" => 1,
399
+ "time"=> date("d-M-Y h:i:s A")
400
+ );
401
+ }
402
+ }
403
  public function get_connect_url(){
404
  if(!empty($this->connect_url)){
405
  return $this->connect_url;
409
  }
410
  }
411
 
412
+ public function get_onboarding_page_url(){
413
+ if(!empty($this->onboarding_page_url)){
414
+ return $this->onboarding_page_url;
415
+ }else{
416
+ $this->onboarding_page_url = admin_url()."?page=conversios_onboarding";
417
+ return $this->onboarding_page_url;
418
+ }
419
+ }
420
+
421
  public function get_woo_currency(){
422
  if(!empty($this->woo_currency)){
423
  return $this->woo_currency;
564
  $setting_status['google_analytic_msg']= "";
565
  }else if($googleDetail->property_id == "" ){
566
  $setting_status['google_analytic']= false;
567
+ $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
568
  }else if($googleDetail->measurement_id == "" ){
569
  $setting_status['google_analytic']= false;
570
+ $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
571
  }
572
  }else if(isset($googleDetail->tracking_option) && isset($googleDetail->measurement_id) && $googleDetail->tracking_option == "GA4"){
573
  if( $googleDetail->measurement_id != ""){
575
  $setting_status['google_analytic_msg']= "";
576
  }else{
577
  $setting_status['google_analytic']= false;
578
+ $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
579
  }
580
  }else if(isset($googleDetail->tracking_option) && isset($googleDetail->property_id) && $googleDetail->tracking_option == "UA" ){
581
  if($googleDetail->property_id != ""){
583
  $setting_status['google_analytic_msg']= "";
584
  }else{
585
  $setting_status['google_analytic']= false;
586
+ $setting_status['google_analytic_msg']= "There is a configuration issue in your Google Analytics account set up <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
587
  }
588
  }else{
589
  $setting_status['google_analytic']= false;
597
  $setting_status['google_shopping_msg']= "";
598
  }else if($googleDetail->google_merchant_center_id == ""){
599
  $setting_status['google_shopping']= false;
600
+ $setting_status['google_shopping_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
601
  }else if($googleDetail->google_ads_id == ""){
602
  $setting_status['google_shopping']= false;
603
+ $setting_status['google_shopping_msg']= "Link your Google Ads with Merchant center to start running shopping campaigns <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
604
  }
605
  }else{
606
  $setting_status['google_shopping']= false;
614
  $setting_status['google_ads_msg']= "";
615
  }else if($googleDetail->google_merchant_center_id == ""){
616
  $setting_status['google_ads']= false;
617
+ $setting_status['google_ads_msg']= "Link your Google Ads with Merchant center to start running shopping campaigns <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
618
  }else if($googleDetail->google_ads_id == ""){
619
  $setting_status['google_ads']= false;
620
+ $setting_status['google_ads_msg']= "Configure Google Ads account to reach to millions of interested shoppers <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
621
  }
622
  }else{
623
  $setting_status['google_ads']= false;
640
  $setting_status['google_shopping_conf_msg']= "Google Shopping Configuration Success.";
641
  }else if($googleDetail->google_merchant_center_id == "" || $googleDetail->google_ads_id == "" ){
642
  $setting_status['google_shopping_conf']= false;
643
+ $setting_status['google_shopping_conf_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
644
  }else if($googleDetail->is_site_verified ==0 && $googleDetail->is_domain_claim ==0 ){
645
  $setting_status['google_shopping_conf']= false;
646
  $setting_status['google_shopping_conf_msg']= "Site verification and domain claim for your merchant center account failed.";
679
  }
680
  }else{
681
  $setting_status['google_shopping_p_sync']= false;
682
+ $setting_status['google_shopping_p_sync_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
683
  }
684
 
685
  //sub tab product Campaigns
699
  }
700
  }else{
701
  $setting_status['google_shopping_p_campaigns']= false;
702
+ $setting_status['google_shopping_p_campaigns_msg']= "Connect your merchant center account and make your products available to shoppers across Google <a href='".esc_url($this->get_onboarding_page_url())."'>click here</a>.";
703
  }
704
  }
705
  return $setting_status;
admin/css/enhanced-ecommerce-google-analytics-admin.css CHANGED
@@ -11,7 +11,7 @@
11
  body{
12
  background: #f1f1f1 !important;
13
  }
14
-
15
  .popover{
16
  max-width:500px !important;
17
  }
11
  body{
12
  background: #f1f1f1 !important;
13
  }
14
+ .update-nag, .updated, .error, .is-dismissible { display: none; }
15
  .popover{
16
  max-width:500px !important;
17
  }
admin/css/responsive.css ADDED
@@ -0,0 +1,192 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @media only screen and (min-width:1025px) and (max-width:1199px){
2
+ /*------ sync-product -----*/
3
+ .navinfotopnav ul li a{padding:0 10px 16px;}
4
+ .navsmrybx{padding:15px;}
5
+ .navsmrysmalltxt{font-size:13px;}
6
+ .navsmrybigtxt{font-size:36px;}
7
+ }
8
+ @media only screen and (max-width:1024px){
9
+
10
+ }
11
+ @media only screen and (min-width:992px) and (max-width:1024px){
12
+ /*------ sync-product -----*/
13
+ .navinfotopnav ul li a{padding:0 10px 16px;}
14
+ .navsmrybx{padding:15px;min-height:110px;}
15
+ .navsmrysmalltxt{font-size:13px;}
16
+ .navsmrybigtxt{font-size:36px;}
17
+ }
18
+ @media only screen and (max-width:991px){
19
+ /*----- onboarding ----*/
20
+ .onbordingtop{margin-left: auto; margin-right: auto;}
21
+ .onboardingstepwrap{flex: 0 0 100%;margin: 0 auto;}
22
+ .onbording-right{max-width: 622px; flex: 0 0 100%; margin:20px auto 0;}
23
+
24
+ }
25
+ @media only screen and (min-width:768px) and (max-width:991px){
26
+ /*----- onboarding -----*/
27
+ .crtemrchntpp .onbrdpp-body{max-width: 700px;}
28
+ .crtemrchnpp-lft{max-width: 425px;}
29
+
30
+ /*------ sync-product -----*/
31
+ .hdrcntcbx{font-size: 13px;}
32
+ .navinfotopnav ul li a{font-size:14px;padding:0 10px 16px;}
33
+ .navsmrybx{padding:15px;min-height:100px;}
34
+ .navsmrysmalltxt{font-size:12px;}
35
+ .navsmrybigtxt{font-size:36px;}
36
+ .sclabilityleft{max-width:370px;}
37
+ .sclabilityleft h2{font-size:24px;line-height:30px;}
38
+ .sclabilityleft p{font-size:14px;line-height:22px;}
39
+ .syncpropagination ul li{margin:0 2px;}
40
+ .pgprevbtn{margin-right:10px;}
41
+ .pgnextbtn{margin-left:10px;}
42
+ }
43
+ @media only screen and (min-width:783px) and (max-width:960px){
44
+ .site-header{left: 36px !important;}
45
+ }
46
+ @media only screen and (max-width:782px){
47
+ .site-header{left: 0px !important;}
48
+ }
49
+ @media only screen and (max-width:767px){
50
+ /*----- onboarding ------*/
51
+ .crtemrchntppcntnr{padding: 0 10px;}
52
+ .crtemrchnpp-lft{border-right: none; padding-right: 0px; padding-bottom: 15px; border-bottom: 1px solid #E9E9E9; margin: 0 auto; width: 100%; }
53
+ .crtemrchnpp-right{padding-left: 0px; margin: 0 auto; width: 100%; max-width: 506px; padding-top: 15px; }
54
+
55
+ /*------ sync-product -----*/
56
+ .header{padding:20px 15px 20px;}
57
+ .promobandmsg{font-size:12px;line-height:18px;}
58
+ .promoleft, .promoright{flex:0 0 100%;max-width:100%;}
59
+ .promoright{margin-top:10px;}
60
+ .promobandtop, .errormsgtopbx{margin-bottom:15px;position:relative;}
61
+ .promobandtop{padding:15px 0;}
62
+ .prmoclsbtn{position:absolute;top:5px;right:5px;}
63
+ .hdrtpleft{flex:1;max-width:100%;}
64
+
65
+ .hdrnotiwrp{margin-left:15px;}
66
+ .navinfonavtext{opacity:0;display:none;transition:all 0.3s ease-in-out 0s;-moz-transition:all 0.3s ease-in-out 0s;-webkit-transition:all 0.3s ease-in-out 0s;-o-transition:all 0.3s ease-in-out 0s;}
67
+ .navinfotopnav ul li a{padding:0 10px 16px;}
68
+ .navinfotopnav ul li a:hover .navinfonavtext{opacity:1;display:none;}
69
+ .navinfotopnav ul li.active a .navinfonavtext{opacity:1;display:none;}
70
+ .navsmryitem{max-width:33.3333%;flex:0 0 33.33333%;margin-bottom:20px;}
71
+ .navsmryitem:last-child{margin-bottom:0px;}
72
+ .sclabilityright{margin:40px 0 0;padding-left:15px;}
73
+ .w750container{max-width:430px;}
74
+ .sclabilityleft h2{font-size:24px;line-height:30px;}
75
+ .sclabilityleft p{font-size:14px;line-height:22px;}
76
+ .syncprodtheader{padding:15px 15px;}
77
+ .syncprdcbtnwrp{padding-left:0px;}
78
+ .syncprodtblheader{display:none;}
79
+ .mbl-allitemchek{display:flex;}
80
+ .syncprotbody-item{flex-wrap:wrap;align-items:center;}
81
+ .syncprotblcell{max-width:100%;flex:100%;display:flex;padding:6px 10px;}
82
+ .data-th{display:block;flex:0 0 120px;max-width:120px;margin-bottom:6px;font-weight:500;}
83
+ .stsdetlcell, .actndetlcell{text-align:left;}
84
+ .syncprofooter{padding:20px 20px}
85
+ .properpage{padding-right:0px;margin-bottom:9px;max-width:100%;flex:0 0 100%;}
86
+ .syncpropagination{padding-left:0px;max-width:100%;flex:0 0 100%;justify-content:center;}
87
+ .syncpropagination ul li{margin:0 1px;}
88
+ .pgprevbtn{margin-right:8px}
89
+ .pgnextbtn{margin-left:8px}
90
+ }
91
+ @media only screen and (min-width:639px) and (max-width:767px){
92
+ /*------ sync-product -----*/
93
+ .w750container{max-width:100%;}
94
+ .sclabilityleft{max-width:300px;}
95
+ .sclabilityright{max-width:271px;}
96
+ .sclabilityleft h2{font-size:21px;line-height:24px;}
97
+ .sclabilityleft p{line-height:20px;}
98
+ .prdcinfopp-left{max-width:260px;flex:0 0 260px;}
99
+ .prdtpplrg-imgwrp{width:280px;height:280px;}
100
+ .prdcinfopp-right{max-width:280px;flex:0 0 280px;}
101
+ }
102
+ @media only screen and (max-width:639px){
103
+ /*------ sync-product -----*/
104
+ .header{padding-bottom: 15px;}
105
+ .hdrtpleft{max-width: 138px;}
106
+ .hdrtpright{max-width: 100%; flex: 1;}
107
+ .hdrcntcbx{display: none;}
108
+ .mblhdrcntcbx{display: inherit; max-width:100%;flex:0 0 100%;padding:10px 15px 0;margin-left:0;border-left:none;border-top:1px solid #e9e9e9;margin-top:15px;}
109
+
110
+ .navsmryitem{max-width:50%;flex:0 0 50%;}
111
+ .prdcinfopp-right{max-width:305px;flex:0 0 305px;padding-left:0px;margin-top:15px}
112
+ .prdcinfobody{justify-content:center;}
113
+ .prdctinfopp-cntn{max-width:400px;}
114
+ }
115
+ @media only screen and (min-width:576px) and (max-width:639px){
116
+ /*------ onboarding -----*/
117
+ .orwrp{font-size: 14px; padding: 0 12px; }
118
+ .chckbxbgbx{display: inherit;}
119
+ .chckbxbgbx .cstmcheck-item{margin-right: 0px; margin-bottom: 9px;}
120
+ .chckbxbgbx .cstmcheck-item:last-child{margin-bottom: 0px;}
121
+ }
122
+ @media only screen and (max-width:575px){
123
+
124
+ /*------ onboarding -----*/
125
+ .onbordingtop{padding: 0 15px;}
126
+ .stepdtltop{padding:15px 40px 15px 15px }
127
+ .helpicon{margin-left: 6px;}
128
+ .stepdtltop::before{right: 15px;}
129
+ .stepleftround{margin-right: 12px;}
130
+ .stepmoredtlwrp{padding-left:20px; padding-right: 20px;}
131
+ .chckbxbgbx{display: inherit;}
132
+ .chckbxbgbx .cstmcheck-item{margin-right: 0px; margin-bottom: 9px;}
133
+ .chckbxbgbx .cstmcheck-item:last-child{margin-bottom: 0px;}
134
+ .stepnotewrp{margin-left: -20px; margin-right: -20px; padding-left: 15px; padding-right: 15px; }
135
+
136
+ /*------ sync-product -----*/
137
+ .hdrtpleft{flex-wrap:wrap;}
138
+ .errmsglft{max-width:100%;flex:0 0 100%;line-height:18px;}
139
+ .errmsgright{margin-left:0;padding-left:0;border-left:none;margin-left:28px;}
140
+ .prdchdrsrch, .prdcfilter{padding:0 5px;}
141
+ .syncprdcbtn{min-width:200px;}
142
+ }
143
+ @media only screen and (max-width:479px){
144
+
145
+ /*------ onboarding -------*/
146
+ .selcttopwrap {flex-wrap: wrap; }
147
+ .congratppcntnr .onbrdnpp-hdr h2{font-size: 36px;}
148
+ .creatnewwrp{flex: 0 0 100%; max-width: 100%; margin-top: 9px;}
149
+ .cngtrpplft{padding-left: 20px}
150
+
151
+ /*------ sync-product -----*/
152
+ .navsmryitem{max-width:100%;flex:0 0 100%;}
153
+ .syncprdcbtnwrp{max-width:100%;flex:0 0 100%;padding-left:15px;margin-top:6px;}
154
+ .syncprdcbtn{width:100%;}
155
+ .syncproimage{width:70px;height:70px;}
156
+ .syncprotblcell{flex-wrap:wrap;}
157
+ .data-th{max-width:120px;flex:0 0 120px;}
158
+ .syncpropagination ul{flex-wrap:wrap;}
159
+ .syncpropagination ul{margin:0 0px;}
160
+ .paginitem{margin-top:6px; min-width: 18px; font-size: 12px; line-height: 13px; padding: 3px 4px; height: 20px;}
161
+ .tbodyprodetl-cell .syncprotblcntn{flex: 0 0 100%; max-width: 100%;}
162
+ .pgprevbtn{margin-right: 1px;}
163
+ .pgnextbtn{margin-left: 1px;}
164
+
165
+ }
166
+ @media only screen and (max-width:399px){
167
+ /*------- onboarding -------*/
168
+ .onbordingtop p{font-size: 14px; line-height: 22px;}
169
+ .onbordingtop h2{font-size: 24px;}
170
+ .stepdtltop h4{font-size: 16px; line-height: 22px;}
171
+ .slect2bx{width: 225px;}
172
+ .orwrp{padding:0 0 0 8px;}
173
+ .congratppcntnr .onbrdnpp-hdr h2{font-size: 28px;}
174
+ .congratppcntnr .onbrdnpp-hdr{padding-bottom: 0px;}