Version Description
(2014.10.16) =
Download this release
Release Info
Developer | AndyGCook |
Plugin | HubSpot – Free Marketing Plugin for WordPress |
Version | 2.2.2 |
Comparing to | |
See all releases |
Code changes from version 2.2.1 to 2.2.2
- admin/inc/class-leadin-list-table.php +2 -2
- admin/inc/class-leadin-tag-editor.php +2 -2
- admin/inc/class-leadin-tags-list-table.php +1 -1
- admin/inc/class-stats-dashboard.php +45 -7
- admin/leadin-admin.php +3 -5
- assets/js/build/leadin-subscribe.js +6 -0
- assets/js/build/leadin-subscribe.min.js +1 -1
- assets/js/build/leadin-tracking.js +7 -1
- assets/js/build/leadin-tracking.min.js +1 -1
- inc/class-leadin.php +1 -1
- inc/leadin-ajax-functions.php +1 -1
- inc/leadin-functions.php +15 -7
- leadin.php +9 -6
- power-ups/constant-contact-connect.php +10 -0
- power-ups/mailchimp-connect.php +6 -0
- power-ups/subscribe-widget.php +5 -1
- power-ups/subscribe-widget/admin/subscribe-widget-admin.php +1 -10
- readme.txt +16 -4
admin/inc/class-leadin-list-table.php
CHANGED
@@ -440,7 +440,7 @@ class LI_List_Table extends WP_List_Table {
|
|
440 |
$url = leadin_strip_params_from_url($lead->lead_source);
|
441 |
|
442 |
$redirect_url = '';
|
443 |
-
if ( isset($_GET['contact_type']) || isset($_GET['filter_action']) || isset($_GET['filter_form']) || isset($_GET['filter_content']) || isset($_GET['num_pageviews']) || isset($_GET['s']) )
|
444 |
$redirect_url = urlencode(leadin_get_current_url());
|
445 |
|
446 |
$lead_array = array(
|
@@ -524,7 +524,7 @@ class LI_List_Table extends WP_List_Table {
|
|
524 |
$q = "
|
525 |
SELECT
|
526 |
lt.tag_text, lt.tag_slug, lt.tag_synced_lists, lt.tag_form_selectors, lt.tag_order, lt.tag_id,
|
527 |
-
( SELECT COUNT(DISTINCT contact_hashkey) FROM $wpdb->li_tag_relationships, $wpdb->li_leads WHERE tag_id = lt.tag_id AND tag_relationship_deleted = 0 AND contact_hashkey != '' AND
|
528 |
FROM
|
529 |
$wpdb->li_tags lt
|
530 |
WHERE
|
440 |
$url = leadin_strip_params_from_url($lead->lead_source);
|
441 |
|
442 |
$redirect_url = '';
|
443 |
+
if ( isset($_GET['contact_type']) || isset($_GET['filter_action']) || isset($_GET['filter_form']) || isset($_GET['filter_content']) || isset($_GET['num_pageviews']) || isset($_GET['s']) || isset($_GET['paged']) )
|
444 |
$redirect_url = urlencode(leadin_get_current_url());
|
445 |
|
446 |
$lead_array = array(
|
524 |
$q = "
|
525 |
SELECT
|
526 |
lt.tag_text, lt.tag_slug, lt.tag_synced_lists, lt.tag_form_selectors, lt.tag_order, lt.tag_id,
|
527 |
+
( SELECT COUNT(DISTINCT contact_hashkey) FROM $wpdb->li_tag_relationships ltr, $wpdb->li_leads ll WHERE ltr.tag_id = lt.tag_id AND ltr.tag_relationship_deleted = 0 AND ltr.contact_hashkey != '' AND ll.hashkey = ltr.contact_hashkey AND ll.hashkey != '' AND ll.lead_deleted = 0 GROUP BY tag_id ) AS tag_count
|
528 |
FROM
|
529 |
$wpdb->li_tags lt
|
530 |
WHERE
|
admin/inc/class-leadin-tag-editor.php
CHANGED
@@ -55,7 +55,7 @@ class LI_Tag_Editor {
|
|
55 |
{
|
56 |
foreach ( explode(',', $class->form_selector_classes) as $class_selector )
|
57 |
{
|
58 |
-
if ( ! in_array($class_selector, $selectors) && $class_selector )
|
59 |
array_push($selectors, '.' . $class_selector);
|
60 |
}
|
61 |
}
|
@@ -68,7 +68,7 @@ class LI_Tag_Editor {
|
|
68 |
{
|
69 |
foreach ( $ids as $id )
|
70 |
{
|
71 |
-
if ( ! in_array($id->form_selector_id, $selectors) && $id->form_selector_id )
|
72 |
array_push($selectors, '#' . $id->form_selector_id);
|
73 |
}
|
74 |
}
|
55 |
{
|
56 |
foreach ( explode(',', $class->form_selector_classes) as $class_selector )
|
57 |
{
|
58 |
+
if ( ! in_array('.' . $class_selector, $selectors) && $class_selector )
|
59 |
array_push($selectors, '.' . $class_selector);
|
60 |
}
|
61 |
}
|
68 |
{
|
69 |
foreach ( $ids as $id )
|
70 |
{
|
71 |
+
if ( ! in_array('#' . $id->form_selector_id, $selectors) && $id->form_selector_id )
|
72 |
array_push($selectors, '#' . $id->form_selector_id);
|
73 |
}
|
74 |
}
|
admin/inc/class-leadin-tags-list-table.php
CHANGED
@@ -159,7 +159,7 @@ class LI_Tags_Table extends WP_List_Table {
|
|
159 |
$q = $wpdb->prepare("
|
160 |
SELECT
|
161 |
lt.tag_text, lt.tag_slug, lt.tag_synced_lists, lt.tag_form_selectors, lt.tag_order, lt.tag_id,
|
162 |
-
( SELECT COUNT(DISTINCT contact_hashkey) FROM $wpdb->li_tag_relationships ltr, $wpdb->li_leads ll WHERE tag_id = lt.tag_id AND ltr.tag_relationship_deleted = 0 AND ltr.contact_hashkey != '' AND ll.hashkey = ltr.contact_hashkey AND ll.lead_deleted = 0 GROUP BY tag_id ) AS tag_count
|
163 |
FROM
|
164 |
$wpdb->li_tags lt
|
165 |
WHERE
|
159 |
$q = $wpdb->prepare("
|
160 |
SELECT
|
161 |
lt.tag_text, lt.tag_slug, lt.tag_synced_lists, lt.tag_form_selectors, lt.tag_order, lt.tag_id,
|
162 |
+
( SELECT COUNT(DISTINCT contact_hashkey) FROM $wpdb->li_tag_relationships ltr, $wpdb->li_leads ll WHERE tag_id = lt.tag_id AND ltr.tag_relationship_deleted = 0 AND ltr.contact_hashkey != '' AND ll.hashkey = ltr.contact_hashkey AND ll.lead_deleted = 0 AND ll.hashkey != '' GROUP BY tag_id ) AS tag_count
|
163 |
FROM
|
164 |
$wpdb->li_tags lt
|
165 |
WHERE
|
admin/inc/class-stats-dashboard.php
CHANGED
@@ -132,7 +132,8 @@ class LI_StatsDashboard {
|
|
132 |
lead_id,
|
133 |
lead_email,
|
134 |
( SELECT COUNT(*) FROM $wpdb->li_pageviews WHERE lead_hashkey = lh ) as pageviews,
|
135 |
-
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source
|
|
|
136 |
FROM
|
137 |
$wpdb->li_leads ll, $wpdb->li_pageviews lpv
|
138 |
WHERE
|
@@ -153,7 +154,8 @@ class LI_StatsDashboard {
|
|
153 |
lead_id,
|
154 |
lead_email,
|
155 |
( SELECT COUNT(*) FROM $wpdb->li_pageviews WHERE lead_hashkey = lh ) as pageviews,
|
156 |
-
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source
|
|
|
157 |
FROM
|
158 |
$wpdb->li_leads ll, li_pageviews lpv
|
159 |
WHERE
|
@@ -169,17 +171,18 @@ class LI_StatsDashboard {
|
|
169 |
global $wpdb;
|
170 |
|
171 |
$q = "SELECT hashkey lh,
|
172 |
-
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source
|
|
|
173 |
FROM
|
174 |
$wpdb->li_leads
|
175 |
WHERE
|
176 |
-
lead_date BETWEEN CURDATE() - INTERVAL 30 DAY AND
|
177 |
-
|
178 |
$contacts = $wpdb->get_results($q);
|
179 |
|
180 |
foreach ( $contacts as $contact )
|
181 |
{
|
182 |
-
$source = $this->check_lead_source($contact->lead_source);
|
183 |
|
184 |
switch ( $source )
|
185 |
{
|
@@ -212,7 +215,7 @@ class LI_StatsDashboard {
|
|
212 |
$this->max_source = max(array($this->organic_count, $this->referral_count, $this->social_count, $this->email_count, $this->paid_count, $this->direct_count));
|
213 |
}
|
214 |
|
215 |
-
function check_lead_source ( $source )
|
216 |
{
|
217 |
if ( $source )
|
218 |
{
|
@@ -259,7 +262,42 @@ class LI_StatsDashboard {
|
|
259 |
return 'referral';
|
260 |
}
|
261 |
else
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
262 |
return 'direct';
|
|
|
263 |
}
|
264 |
|
265 |
function print_readable_source ( $source )
|
132 |
lead_id,
|
133 |
lead_email,
|
134 |
( SELECT COUNT(*) FROM $wpdb->li_pageviews WHERE lead_hashkey = lh ) as pageviews,
|
135 |
+
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source,
|
136 |
+
( SELECT MIN(pageview_url) AS pageview_url FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_origin_url
|
137 |
FROM
|
138 |
$wpdb->li_leads ll, $wpdb->li_pageviews lpv
|
139 |
WHERE
|
154 |
lead_id,
|
155 |
lead_email,
|
156 |
( SELECT COUNT(*) FROM $wpdb->li_pageviews WHERE lead_hashkey = lh ) as pageviews,
|
157 |
+
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source,
|
158 |
+
( SELECT MIN(pageview_url) AS pageview_url FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_origin_url
|
159 |
FROM
|
160 |
$wpdb->li_leads ll, li_pageviews lpv
|
161 |
WHERE
|
171 |
global $wpdb;
|
172 |
|
173 |
$q = "SELECT hashkey lh,
|
174 |
+
( SELECT MIN(pageview_source) AS pageview_source FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_source,
|
175 |
+
( SELECT MIN(pageview_url) AS pageview_url FROM $wpdb->li_pageviews WHERE lead_hashkey = lh AND pageview_session_start = 1 AND pageview_deleted = 0 ) AS lead_origin_url
|
176 |
FROM
|
177 |
$wpdb->li_leads
|
178 |
WHERE
|
179 |
+
lead_date BETWEEN CURDATE() - INTERVAL 30 DAY AND NOW() AND lead_email != ''";
|
180 |
+
|
181 |
$contacts = $wpdb->get_results($q);
|
182 |
|
183 |
foreach ( $contacts as $contact )
|
184 |
{
|
185 |
+
$source = $this->check_lead_source($contact->lead_source, $contact->lead_origin_url);
|
186 |
|
187 |
switch ( $source )
|
188 |
{
|
215 |
$this->max_source = max(array($this->organic_count, $this->referral_count, $this->social_count, $this->email_count, $this->paid_count, $this->direct_count));
|
216 |
}
|
217 |
|
218 |
+
function check_lead_source ( $source, $origin_url = '' )
|
219 |
{
|
220 |
if ( $source )
|
221 |
{
|
262 |
return 'referral';
|
263 |
}
|
264 |
else
|
265 |
+
{
|
266 |
+
$decoded_origin_url = urldecode($origin_url);
|
267 |
+
|
268 |
+
if ( stristr($decoded_origin_url, 'utm_medium=cpc') || stristr($decoded_origin_url, 'utm_medium=ppc') || stristr($decoded_origin_url, 'aclk') || stristr($decoded_origin_url, 'gclid') )
|
269 |
+
return 'paid';
|
270 |
+
|
271 |
+
if ( stristr($decoded_origin_url, 'utm_') )
|
272 |
+
{
|
273 |
+
$url = $decoded_origin_url;
|
274 |
+
$url_parts = parse_url($url);
|
275 |
+
parse_str($url_parts['query'], $path_parts);
|
276 |
+
|
277 |
+
if ( isset($path_parts['adurl']) )
|
278 |
+
return 'paid';
|
279 |
+
|
280 |
+
if ( isset($path_parts['utm_medium']) )
|
281 |
+
{
|
282 |
+
if ( $path_parts['utm_medium'] == 'cpc' || $path_parts['utm_medium'] == 'ppc' )
|
283 |
+
return 'paid';
|
284 |
+
|
285 |
+
if ( $path_parts['utm_medium'] == 'social' )
|
286 |
+
return 'social';
|
287 |
+
|
288 |
+
if ( $path_parts['utm_medium'] == 'email' )
|
289 |
+
return 'email';
|
290 |
+
}
|
291 |
+
|
292 |
+
if ( isset($path_parts['utm_source']) )
|
293 |
+
{
|
294 |
+
if ( stristr($path_parts['utm_source'], 'email') )
|
295 |
+
return 'email';
|
296 |
+
}
|
297 |
+
}
|
298 |
+
|
299 |
return 'direct';
|
300 |
+
}
|
301 |
}
|
302 |
|
303 |
function print_readable_source ( $source )
|
admin/leadin-admin.php
CHANGED
@@ -324,8 +324,6 @@ class WPLeadInAdmin {
|
|
324 |
$new_contacts_postbox .= '<th>original source</th>';
|
325 |
$new_contacts_postbox .= '</tr>';
|
326 |
|
327 |
-
|
328 |
-
|
329 |
foreach ( $this->stats_dashboard->new_contacts as $contact )
|
330 |
{
|
331 |
$new_contacts_postbox .= '<tr>';
|
@@ -333,7 +331,7 @@ class WPLeadInAdmin {
|
|
333 |
$new_contacts_postbox .= '<a href="?page=leadin_contacts&action=view&lead=' . $contact->lead_id . '&stats_dashboard=1"><img class="lazy pull-left leadin-contact-avatar leadin-dynamic-avatar_' . substr($contact->lead_id, -1) .'" src="https://api.hubapi.com/socialintel/v1/avatars?email=' . $contact->lead_email . '" width="35" height="35"><b>' . $contact->lead_email . '</b></a>';
|
334 |
$new_contacts_postbox .= '</td>';
|
335 |
$new_contacts_postbox .= '<td class="">' . $contact->pageviews . '</td>';
|
336 |
-
$new_contacts_postbox .= '<td class="">' . $this->stats_dashboard->print_readable_source($this->stats_dashboard->check_lead_source($contact->lead_source)) . '</td>';
|
337 |
$new_contacts_postbox .= '</tr>';
|
338 |
}
|
339 |
|
@@ -368,7 +366,7 @@ class WPLeadInAdmin {
|
|
368 |
$returning_contacts_postbox .= '<a href="?page=leadin_contacts&action=view&lead=' . $contact->lead_id . '&stats_dashboard=1"><img class="lazy pull-left leadin-contact-avatar leadin-dynamic-avatar_' . substr($contact->lead_id, -1) .'" src="https://api.hubapi.com/socialintel/v1/avatars?email=' . $contact->lead_email . '" width="35" height="35"><b>' . $contact->lead_email . '</b></a>';
|
369 |
$returning_contacts_postbox .= '</td>';
|
370 |
$returning_contacts_postbox .= '<td class="">' . $contact->pageviews . '</td>';
|
371 |
-
$returning_contacts_postbox .= '<td class="">' . $this->stats_dashboard->print_readable_source($this->stats_dashboard->check_lead_source($contact->lead_source)) . '</td>';
|
372 |
$returning_contacts_postbox .= '</tr>';
|
373 |
}
|
374 |
|
@@ -748,7 +746,7 @@ class WPLeadInAdmin {
|
|
748 |
<div class="oboarding-step">
|
749 |
<h2 class="oboarding-step-title">Setup Complete!<br>Leadin is waiting for your first form submission.</h2>
|
750 |
<div class="oboarding-step-content">
|
751 |
-
<p class="oboarding-step-description">Leadin is setup and waiting for a form submission. Once Leadin detects a
|
752 |
<form id="li-onboarding-form" method="post" action="options.php">
|
753 |
<?php $this->print_hidden_settings_fields(); ?>
|
754 |
<a href="<?php echo get_admin_url() . 'admin.php?page=leadin_settings'; ?>" class="button button-primary button-big"><?php esc_attr_e('Complete Setup'); ?></a>
|
324 |
$new_contacts_postbox .= '<th>original source</th>';
|
325 |
$new_contacts_postbox .= '</tr>';
|
326 |
|
|
|
|
|
327 |
foreach ( $this->stats_dashboard->new_contacts as $contact )
|
328 |
{
|
329 |
$new_contacts_postbox .= '<tr>';
|
331 |
$new_contacts_postbox .= '<a href="?page=leadin_contacts&action=view&lead=' . $contact->lead_id . '&stats_dashboard=1"><img class="lazy pull-left leadin-contact-avatar leadin-dynamic-avatar_' . substr($contact->lead_id, -1) .'" src="https://api.hubapi.com/socialintel/v1/avatars?email=' . $contact->lead_email . '" width="35" height="35"><b>' . $contact->lead_email . '</b></a>';
|
332 |
$new_contacts_postbox .= '</td>';
|
333 |
$new_contacts_postbox .= '<td class="">' . $contact->pageviews . '</td>';
|
334 |
+
$new_contacts_postbox .= '<td class="">' . $this->stats_dashboard->print_readable_source($this->stats_dashboard->check_lead_source($contact->lead_source, $contact->lead_origin_url)) . '</td>';
|
335 |
$new_contacts_postbox .= '</tr>';
|
336 |
}
|
337 |
|
366 |
$returning_contacts_postbox .= '<a href="?page=leadin_contacts&action=view&lead=' . $contact->lead_id . '&stats_dashboard=1"><img class="lazy pull-left leadin-contact-avatar leadin-dynamic-avatar_' . substr($contact->lead_id, -1) .'" src="https://api.hubapi.com/socialintel/v1/avatars?email=' . $contact->lead_email . '" width="35" height="35"><b>' . $contact->lead_email . '</b></a>';
|
367 |
$returning_contacts_postbox .= '</td>';
|
368 |
$returning_contacts_postbox .= '<td class="">' . $contact->pageviews . '</td>';
|
369 |
+
$returning_contacts_postbox .= '<td class="">' . $this->stats_dashboard->print_readable_source($this->stats_dashboard->check_lead_source($contact->lead_source, $contact->lead_origin_url)) . '</td>';
|
370 |
$returning_contacts_postbox .= '</tr>';
|
371 |
}
|
372 |
|
746 |
<div class="oboarding-step">
|
747 |
<h2 class="oboarding-step-title">Setup Complete!<br>Leadin is waiting for your first form submission.</h2>
|
748 |
<div class="oboarding-step-content">
|
749 |
+
<p class="oboarding-step-description">Leadin is setup and waiting for a form submission. Once Leadin detects a form submission, a new contact will be added to your contacts list. We recommend filling out a form on your site to test that Leadin is working correctly.</p>
|
750 |
<form id="li-onboarding-form" method="post" action="options.php">
|
751 |
<?php $this->print_hidden_settings_fields(); ?>
|
752 |
<a href="<?php echo get_admin_url() . 'admin.php?page=leadin_settings'; ?>" class="button button-primary button-big"><?php esc_attr_e('Complete Setup'); ?></a>
|
assets/js/build/leadin-subscribe.js
CHANGED
@@ -408,6 +408,12 @@ function bind_leadin_subscribe_widget ( lis_heading, lis_desc, lis_show_names, l
|
|
408 |
subscribe.vex = undefined;
|
409 |
|
410 |
subscribe.init = function() {
|
|
|
|
|
|
|
|
|
|
|
|
|
411 |
$(window).scroll(function() {
|
412 |
if ($(window).scrollTop() + $(window).height() > $(document).height() / 2) {
|
413 |
subscribe.open();
|
408 |
subscribe.vex = undefined;
|
409 |
|
410 |
subscribe.init = function() {
|
411 |
+
if ($(window).scrollTop() + $(window).height() > $(document).height() / 2) {
|
412 |
+
subscribe.open();
|
413 |
+
} else {
|
414 |
+
//subscribe.close();
|
415 |
+
}
|
416 |
+
|
417 |
$(window).scroll(function() {
|
418 |
if ($(window).scrollTop() + $(window).height() > $(document).height() / 2) {
|
419 |
subscribe.open();
|
assets/js/build/leadin-subscribe.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function bind_leadin_subscribe_widget(lis_heading,lis_desc,lis_show_names,lis_show_phone,lis_btn_label,lis_vex_class){!function(){var $=jQuery,subscribe={};subscribe.vex=void 0,subscribe.init=function(){$(window).scroll(function(){$(window).scrollTop()+$(window).height()>$(document).height()/2&&subscribe.open()})},subscribe.open=function(){return subscribe.vex?subscribe._open():(subscribe.vex=vex.dialog.open({showCloseButton:!0,className:"leadin-subscribe "+lis_vex_class,message:"<h4>"+lis_heading+"</h4><p>"+lis_desc+"</p>",input:'<input id="leadin-subscribe-email" name="email" type="email" placeholder="Email address" />'+(parseInt(lis_show_names)?'<input id="leadin-subscribe-fname" name="fname" type="text" placeholder="First Name" /><input id="leadin-subscribe-lname" name="lname" type="text" placeholder="Last Name" />':"")+(parseInt(lis_show_phone)?'<input id="leadin-subscribe-phone" name="phone" type="tel" placeholder="Phone" />':""),buttons:[$.extend({},vex.dialog.buttons.YES,{text:lis_btn_label?lis_btn_label:"SUBSCRIBE"})],onSubmit:function(){$subscribe_form=$(this),$subscribe_form.find("input.error").removeClass("error");var form_validated=!0;return $subscribe_form.find("input").each(function(){var $input=$(this);$input.val()||($input.addClass("error"),form_validated=!1)}),form_validated?($(".vex-dialog-form").fadeOut(300,function(){$(".vex-dialog-form").html('<div class="vex-close"></div><h3>Thanks!<br>You should receive a confirmation email in your inbox shortly.</h3><div><span class="powered-by">Powered by Leadin</span><a href="http://leadin.com/wordpress-subscribe-widget/?utm_campaign=subscribe_widget&utm_medium=email&utm_source='+window.location.host+'"><img alt="Leadin" height="20px" width="99px" src="'+document.location.protocol+'//leadin.com/wp-content/themes/LeadIn-WP-Theme/library/images/logos/Leadin_logo@2x.png" alt="leadin.com"/></a></div>').css("text-align","center").fadeIn(250)}),leadin_submit_form($(".leadin-subscribe form"),$),$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date}),!1):!1},callback:function(data){data===!1&&$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date}),$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date})}}),void $(".leadin-subscribe form.vex-dialog-form").append('<a href="http://leadin.com/wordpress-subscribe-widget/?utm_campaign=subscribe_widget&utm_medium=widget&utm_source='+document.URL+'" id="leadin-subscribe-powered-by" class="leadin-subscribe-powered-by">Powered by Leadin</a>'))},subscribe._open=function(){subscribe.vex.parent().removeClass("vex-closing")},subscribe.close=function(){subscribe.vex&&subscribe.vex.parent().addClass("vex-closing")},subscribe.init(),window.subscribe=subscribe}()}function leadin_subscribe_check_mobile($){var is_mobile=!1;return"none"==$("#leadin-subscribe-mobile-check").css("display")&&(is_mobile=!0),is_mobile}function leadin_subscribe_show(){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_subscribe_show"},success:function(){},error:function(){}})}function leadin_get_parameter_by_name(name){name=name.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var regex=new RegExp("[\\?&]"+name+"=([^&#]*)"),results=regex.exec(location.search);return null==results?"":decodeURIComponent(results[1].replace(/\+/g," "))}(function(){var vexFactory;vexFactory=function($){var animationEndSupport,vex;return animationEndSupport=!1,$(function(){var s;return s=(document.body||document.documentElement).style,animationEndSupport=void 0!==s.animation||void 0!==s.WebkitAnimation||void 0!==s.MozAnimation||void 0!==s.MsAnimation||void 0!==s.OAnimation,$(window).bind("keyup.vex",function(event){return 27===event.keyCode?vex.closeByEscape():void 0})}),vex={globalID:1,animationEndEvent:"animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",baseClassNames:{vex:"vex",content:"vex-content",overlay:"vex-overlay",close:"vex-close",closing:"vex-closing",open:"vex-open"},defaultOptions:{content:"",showCloseButton:!0,escapeButtonCloses:!0,overlayClosesOnClick:!0,appendLocation:"body",className:"",css:{},overlayClassName:"",overlayCSS:{},contentClassName:"",contentCSS:{},closeClassName:"",closeCSS:{}},open:function(options){return options=$.extend({},vex.defaultOptions,options),options.id=vex.globalID,vex.globalID+=1,options.$vex=$("<div>").addClass(vex.baseClassNames.vex).addClass(options.className).css(options.css).data({vex:options}),options.$vexOverlay=$("<div>").addClass(vex.baseClassNames.overlay).addClass(options.overlayClassName).css(options.overlayCSS).data({vex:options}),options.overlayClosesOnClick&&options.$vexOverlay.bind("click.vex",function(e){return e.target===this?vex.close($(this).data().vex.id):void 0}),options.$vex.append(options.$vexOverlay),options.$vexContent=$("<div>").addClass(vex.baseClassNames.content).addClass(options.contentClassName).css(options.contentCSS).append(options.content).data({vex:options}),options.$vex.append(options.$vexContent),options.showCloseButton&&(options.$closeButton=$("<div>").addClass(vex.baseClassNames.close).addClass(options.closeClassName).css(options.closeCSS).data({vex:options}).bind("click.vex",function(){return vex.close($(this).data().vex.id)}),options.$vexContent.append(options.$closeButton)),$(options.appendLocation).append(options.$vex),vex.setupBodyClassName(options.$vex),options.afterOpen&&options.afterOpen(options.$vexContent,options),setTimeout(function(){return options.$vexContent.trigger("vexOpen",options)},0),options.$vexContent},getAllVexes:function(){return $("."+vex.baseClassNames.vex+':not(".'+vex.baseClassNames.closing+'") .'+vex.baseClassNames.content)},getVexByID:function(id){return vex.getAllVexes().filter(function(){return $(this).data().vex.id===id})},close:function(id){var $lastVex;if(!id){if($lastVex=vex.getAllVexes().last(),!$lastVex.length)return!1;id=$lastVex.data().vex.id}return vex.closeByID(id)},closeAll:function(){var ids;return ids=vex.getAllVexes().map(function(){return $(this).data().vex.id}).toArray(),(null!=ids?ids.length:void 0)?($.each(ids.reverse(),function(index,id){return vex.closeByID(id)}),!0):!1},closeByID:function(id){var $vex,$vexContent,beforeClose,close,options;return $vexContent=vex.getVexByID(id),$vexContent.length?($vex=$vexContent.data().vex.$vex,options=$.extend({},$vexContent.data().vex),beforeClose=function(){return options.beforeClose?options.beforeClose($vexContent,options):void 0},close=function(){return $vexContent.trigger("vexClose",options),$vex.remove(),options.afterClose?options.afterClose($vexContent,options):void 0},animationEndSupport?(beforeClose(),$vex.unbind(vex.animationEndEvent).bind(vex.animationEndEvent,function(){return close()}).addClass(vex.baseClassNames.closing)):(beforeClose(),close()),!0):void 0},closeByEscape:function(){var $lastVex,id,ids;return ids=vex.getAllVexes().map(function(){return $(this).data().vex.id}).toArray(),(null!=ids?ids.length:void 0)?(id=Math.max.apply(Math,ids),$lastVex=vex.getVexByID(id),$lastVex.data().vex.escapeButtonCloses!==!0?!1:vex.closeByID(id)):!1},setupBodyClassName:function($vex){return $vex.bind("vexOpen.vex",function(){return $("body").addClass(vex.baseClassNames.open)}).bind("vexClose.vex",function(){return vex.getAllVexes().length?void 0:$("body").removeClass(vex.baseClassNames.open)})},hideLoading:function(){return $(".vex-loading-spinner").remove()},showLoading:function(){return vex.hideLoading(),$("body").append('<div class="vex-loading-spinner '+vex.defaultOptions.className+'"></div>')}}},"function"==typeof define&&define.amd?define(["jquery"],vexFactory):"object"==typeof exports?module.exports=vexFactory(require("jquery")):window.vex=vexFactory(jQuery)}).call(this),function(){var vexDialogFactory;vexDialogFactory=function($,vex){var $formToObject,dialog;return null==vex?$.error("Vex is required to use vex.dialog"):($formToObject=function($form){var object;return object={},$.each($form.serializeArray(),function(){return object[this.name]?(object[this.name].push||(object[this.name]=[object[this.name]]),object[this.name].push(this.value||"")):object[this.name]=this.value||""}),object},dialog={},dialog.buttons={YES:{text:"OK",type:"submit",className:"vex-dialog-button-primary"},NO:{text:"Cancel",type:"button",className:"vex-dialog-button-secondary",click:function($vexContent){return $vexContent.data().vex.value=!1,vex.close($vexContent.data().vex.id)}}},dialog.defaultOptions={callback:function(){},afterOpen:function(){},message:"Message",input:'<input name="vex" type="hidden" value="_vex-empty-value" />',value:!1,buttons:[dialog.buttons.YES,dialog.buttons.NO],showCloseButton:!1,onSubmit:function(event){var $form,$vexContent;return $form=$(this),$vexContent=$form.parent(),event.preventDefault(),event.stopPropagation(),$vexContent.data().vex.value=dialog.getFormValueOnSubmit($formToObject($form)),vex.close($vexContent.data().vex.id)},focusFirstInput:!0},dialog.defaultAlertOptions={message:"Alert",buttons:[dialog.buttons.YES]},dialog.defaultConfirmOptions={message:"Confirm"},dialog.open=function(options){var $vexContent;return options=$.extend({},vex.defaultOptions,dialog.defaultOptions,options),options.content=dialog.buildDialogForm(options),options.beforeClose=function($vexContent){return options.callback($vexContent.data().vex.value)},$vexContent=vex.open(options),options.focusFirstInput&&$vexContent.find('input[type="submit"], textarea, input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"]').first().focus(),$vexContent},dialog.alert=function(options){return"string"==typeof options&&(options={message:options}),options=$.extend({},dialog.defaultAlertOptions,options),dialog.open(options)},dialog.confirm=function(options){return"string"==typeof options?$.error("dialog.confirm(options) requires options.callback."):(options=$.extend({},dialog.defaultConfirmOptions,options),dialog.open(options))},dialog.prompt=function(options){var defaultPromptOptions;return"string"==typeof options?$.error("dialog.prompt(options) requires options.callback."):(defaultPromptOptions={message:'<label for="vex">'+(options.label||"Prompt:")+"</label>",input:'<input name="vex" type="text" class="vex-dialog-prompt-input" placeholder="'+(options.placeholder||"")+'" value="'+(options.value||"")+'" />'},options=$.extend({},defaultPromptOptions,options),dialog.open(options))},dialog.buildDialogForm=function(options){var $form,$input,$message;return $form=$('<form class="vex-dialog-form" />'),$message=$('<div class="vex-dialog-message" />'),$input=$('<div class="vex-dialog-input" />'),$form.append($message.append(options.message)).append($input.append(options.input)).append(dialog.buttonsToDOM(options.buttons)).bind("submit.vex",options.onSubmit),$form},dialog.getFormValueOnSubmit=function(formData){return formData.vex||""===formData.vex?"_vex-empty-value"===formData.vex?!0:formData.vex:formData},dialog.buttonsToDOM=function(buttons){var $buttons;return $buttons=$('<div class="vex-dialog-buttons" />'),$.each(buttons,function(index,button){return $buttons.append($('<input type="'+button.type+'" />').val(button.text).addClass(button.className+" vex-dialog-button "+(0===index?"vex-first ":"")+(index===buttons.length-1?"vex-last ":"")).bind("click.vex",function(e){return button.click?button.click($(this).parents("."+vex.baseClassNames.content),e):void 0}))}),$buttons},dialog)},"function"==typeof define&&define.amd?define(["jquery","vex"],vexDialogFactory):"object"==typeof exports?module.exports=vexDialogFactory(require("jquery"),require("vex")):window.vex.dialog=vexDialogFactory(window.jQuery,window.vex)}.call(this);var ignore_date=new Date;ignore_date.setTime(ignore_date.getTime()+12096e5),jQuery(document).ready(function($){var li_subscribe_flag=$.cookie("li_subscribe"),preview_subscribe=leadin_get_parameter_by_name("preview-subscribe");leadin_subscribe_check_mobile($)||preview_subscribe?preview_subscribe&&(bind_leadin_subscribe_widget(leadin_get_parameter_by_name("lis_heading"),leadin_get_parameter_by_name("lis_desc"),leadin_get_parameter_by_name("lis_show_names"),leadin_get_parameter_by_name("lis_show_phone"),leadin_get_parameter_by_name("lis_btn_label"),leadin_get_parameter_by_name("lis_vex_class")),subscribe.open()):li_subscribe_flag?"show"==li_subscribe_flag&&bind_leadin_subscribe_widget($("#leadin-subscribe-heading").val(),$("#leadin-subscribe-text").val(),$("#leadin-subscribe-name-fields").val(),$("#leadin-subscribe-phone-field").val(),$("#leadin-subscribe-btn-label").val(),$("#leadin-subscribe-vex-class").val()):leadin_check_visitor_status($.cookie("li_hash"),function(data){"vex_set"!=data?($.cookie("li_subscribe","show",{path:"/",domain:""}),bind_leadin_subscribe_widget($("#leadin-subscribe-heading").val(),$("#leadin-subscribe-text").val(),$("#leadin-subscribe-name-fields").val(),$("#leadin-subscribe-phone-field").val(),$("#leadin-subscribe-btn-label").val(),$("#leadin-subscribe-vex-class").val())):$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date})})});
|
1 |
+
function bind_leadin_subscribe_widget(lis_heading,lis_desc,lis_show_names,lis_show_phone,lis_btn_label,lis_vex_class){!function(){var $=jQuery,subscribe={};subscribe.vex=void 0,subscribe.init=function(){$(window).scrollTop()+$(window).height()>$(document).height()/2&&subscribe.open(),$(window).scroll(function(){$(window).scrollTop()+$(window).height()>$(document).height()/2&&subscribe.open()})},subscribe.open=function(){return subscribe.vex?subscribe._open():(subscribe.vex=vex.dialog.open({showCloseButton:!0,className:"leadin-subscribe "+lis_vex_class,message:"<h4>"+lis_heading+"</h4><p>"+lis_desc+"</p>",input:'<input id="leadin-subscribe-email" name="email" type="email" placeholder="Email address" />'+(parseInt(lis_show_names)?'<input id="leadin-subscribe-fname" name="fname" type="text" placeholder="First Name" /><input id="leadin-subscribe-lname" name="lname" type="text" placeholder="Last Name" />':"")+(parseInt(lis_show_phone)?'<input id="leadin-subscribe-phone" name="phone" type="tel" placeholder="Phone" />':""),buttons:[$.extend({},vex.dialog.buttons.YES,{text:lis_btn_label?lis_btn_label:"SUBSCRIBE"})],onSubmit:function(){$subscribe_form=$(this),$subscribe_form.find("input.error").removeClass("error");var form_validated=!0;return $subscribe_form.find("input").each(function(){var $input=$(this);$input.val()||($input.addClass("error"),form_validated=!1)}),form_validated?($(".vex-dialog-form").fadeOut(300,function(){$(".vex-dialog-form").html('<div class="vex-close"></div><h3>Thanks!<br>You should receive a confirmation email in your inbox shortly.</h3><div><span class="powered-by">Powered by Leadin</span><a href="http://leadin.com/wordpress-subscribe-widget/?utm_campaign=subscribe_widget&utm_medium=email&utm_source='+window.location.host+'"><img alt="Leadin" height="20px" width="99px" src="'+document.location.protocol+'//leadin.com/wp-content/themes/LeadIn-WP-Theme/library/images/logos/Leadin_logo@2x.png" alt="leadin.com"/></a></div>').css("text-align","center").fadeIn(250)}),leadin_submit_form($(".leadin-subscribe form"),$),$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date}),!1):!1},callback:function(data){data===!1&&$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date}),$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date})}}),void $(".leadin-subscribe form.vex-dialog-form").append('<a href="http://leadin.com/wordpress-subscribe-widget/?utm_campaign=subscribe_widget&utm_medium=widget&utm_source='+document.URL+'" id="leadin-subscribe-powered-by" class="leadin-subscribe-powered-by">Powered by Leadin</a>'))},subscribe._open=function(){subscribe.vex.parent().removeClass("vex-closing")},subscribe.close=function(){subscribe.vex&&subscribe.vex.parent().addClass("vex-closing")},subscribe.init(),window.subscribe=subscribe}()}function leadin_subscribe_check_mobile($){var is_mobile=!1;return"none"==$("#leadin-subscribe-mobile-check").css("display")&&(is_mobile=!0),is_mobile}function leadin_subscribe_show(){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_subscribe_show"},success:function(){},error:function(){}})}function leadin_get_parameter_by_name(name){name=name.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var regex=new RegExp("[\\?&]"+name+"=([^&#]*)"),results=regex.exec(location.search);return null==results?"":decodeURIComponent(results[1].replace(/\+/g," "))}(function(){var vexFactory;vexFactory=function($){var animationEndSupport,vex;return animationEndSupport=!1,$(function(){var s;return s=(document.body||document.documentElement).style,animationEndSupport=void 0!==s.animation||void 0!==s.WebkitAnimation||void 0!==s.MozAnimation||void 0!==s.MsAnimation||void 0!==s.OAnimation,$(window).bind("keyup.vex",function(event){return 27===event.keyCode?vex.closeByEscape():void 0})}),vex={globalID:1,animationEndEvent:"animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",baseClassNames:{vex:"vex",content:"vex-content",overlay:"vex-overlay",close:"vex-close",closing:"vex-closing",open:"vex-open"},defaultOptions:{content:"",showCloseButton:!0,escapeButtonCloses:!0,overlayClosesOnClick:!0,appendLocation:"body",className:"",css:{},overlayClassName:"",overlayCSS:{},contentClassName:"",contentCSS:{},closeClassName:"",closeCSS:{}},open:function(options){return options=$.extend({},vex.defaultOptions,options),options.id=vex.globalID,vex.globalID+=1,options.$vex=$("<div>").addClass(vex.baseClassNames.vex).addClass(options.className).css(options.css).data({vex:options}),options.$vexOverlay=$("<div>").addClass(vex.baseClassNames.overlay).addClass(options.overlayClassName).css(options.overlayCSS).data({vex:options}),options.overlayClosesOnClick&&options.$vexOverlay.bind("click.vex",function(e){return e.target===this?vex.close($(this).data().vex.id):void 0}),options.$vex.append(options.$vexOverlay),options.$vexContent=$("<div>").addClass(vex.baseClassNames.content).addClass(options.contentClassName).css(options.contentCSS).append(options.content).data({vex:options}),options.$vex.append(options.$vexContent),options.showCloseButton&&(options.$closeButton=$("<div>").addClass(vex.baseClassNames.close).addClass(options.closeClassName).css(options.closeCSS).data({vex:options}).bind("click.vex",function(){return vex.close($(this).data().vex.id)}),options.$vexContent.append(options.$closeButton)),$(options.appendLocation).append(options.$vex),vex.setupBodyClassName(options.$vex),options.afterOpen&&options.afterOpen(options.$vexContent,options),setTimeout(function(){return options.$vexContent.trigger("vexOpen",options)},0),options.$vexContent},getAllVexes:function(){return $("."+vex.baseClassNames.vex+':not(".'+vex.baseClassNames.closing+'") .'+vex.baseClassNames.content)},getVexByID:function(id){return vex.getAllVexes().filter(function(){return $(this).data().vex.id===id})},close:function(id){var $lastVex;if(!id){if($lastVex=vex.getAllVexes().last(),!$lastVex.length)return!1;id=$lastVex.data().vex.id}return vex.closeByID(id)},closeAll:function(){var ids;return ids=vex.getAllVexes().map(function(){return $(this).data().vex.id}).toArray(),(null!=ids?ids.length:void 0)?($.each(ids.reverse(),function(index,id){return vex.closeByID(id)}),!0):!1},closeByID:function(id){var $vex,$vexContent,beforeClose,close,options;return $vexContent=vex.getVexByID(id),$vexContent.length?($vex=$vexContent.data().vex.$vex,options=$.extend({},$vexContent.data().vex),beforeClose=function(){return options.beforeClose?options.beforeClose($vexContent,options):void 0},close=function(){return $vexContent.trigger("vexClose",options),$vex.remove(),options.afterClose?options.afterClose($vexContent,options):void 0},animationEndSupport?(beforeClose(),$vex.unbind(vex.animationEndEvent).bind(vex.animationEndEvent,function(){return close()}).addClass(vex.baseClassNames.closing)):(beforeClose(),close()),!0):void 0},closeByEscape:function(){var $lastVex,id,ids;return ids=vex.getAllVexes().map(function(){return $(this).data().vex.id}).toArray(),(null!=ids?ids.length:void 0)?(id=Math.max.apply(Math,ids),$lastVex=vex.getVexByID(id),$lastVex.data().vex.escapeButtonCloses!==!0?!1:vex.closeByID(id)):!1},setupBodyClassName:function($vex){return $vex.bind("vexOpen.vex",function(){return $("body").addClass(vex.baseClassNames.open)}).bind("vexClose.vex",function(){return vex.getAllVexes().length?void 0:$("body").removeClass(vex.baseClassNames.open)})},hideLoading:function(){return $(".vex-loading-spinner").remove()},showLoading:function(){return vex.hideLoading(),$("body").append('<div class="vex-loading-spinner '+vex.defaultOptions.className+'"></div>')}}},"function"==typeof define&&define.amd?define(["jquery"],vexFactory):"object"==typeof exports?module.exports=vexFactory(require("jquery")):window.vex=vexFactory(jQuery)}).call(this),function(){var vexDialogFactory;vexDialogFactory=function($,vex){var $formToObject,dialog;return null==vex?$.error("Vex is required to use vex.dialog"):($formToObject=function($form){var object;return object={},$.each($form.serializeArray(),function(){return object[this.name]?(object[this.name].push||(object[this.name]=[object[this.name]]),object[this.name].push(this.value||"")):object[this.name]=this.value||""}),object},dialog={},dialog.buttons={YES:{text:"OK",type:"submit",className:"vex-dialog-button-primary"},NO:{text:"Cancel",type:"button",className:"vex-dialog-button-secondary",click:function($vexContent){return $vexContent.data().vex.value=!1,vex.close($vexContent.data().vex.id)}}},dialog.defaultOptions={callback:function(){},afterOpen:function(){},message:"Message",input:'<input name="vex" type="hidden" value="_vex-empty-value" />',value:!1,buttons:[dialog.buttons.YES,dialog.buttons.NO],showCloseButton:!1,onSubmit:function(event){var $form,$vexContent;return $form=$(this),$vexContent=$form.parent(),event.preventDefault(),event.stopPropagation(),$vexContent.data().vex.value=dialog.getFormValueOnSubmit($formToObject($form)),vex.close($vexContent.data().vex.id)},focusFirstInput:!0},dialog.defaultAlertOptions={message:"Alert",buttons:[dialog.buttons.YES]},dialog.defaultConfirmOptions={message:"Confirm"},dialog.open=function(options){var $vexContent;return options=$.extend({},vex.defaultOptions,dialog.defaultOptions,options),options.content=dialog.buildDialogForm(options),options.beforeClose=function($vexContent){return options.callback($vexContent.data().vex.value)},$vexContent=vex.open(options),options.focusFirstInput&&$vexContent.find('input[type="submit"], textarea, input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"]').first().focus(),$vexContent},dialog.alert=function(options){return"string"==typeof options&&(options={message:options}),options=$.extend({},dialog.defaultAlertOptions,options),dialog.open(options)},dialog.confirm=function(options){return"string"==typeof options?$.error("dialog.confirm(options) requires options.callback."):(options=$.extend({},dialog.defaultConfirmOptions,options),dialog.open(options))},dialog.prompt=function(options){var defaultPromptOptions;return"string"==typeof options?$.error("dialog.prompt(options) requires options.callback."):(defaultPromptOptions={message:'<label for="vex">'+(options.label||"Prompt:")+"</label>",input:'<input name="vex" type="text" class="vex-dialog-prompt-input" placeholder="'+(options.placeholder||"")+'" value="'+(options.value||"")+'" />'},options=$.extend({},defaultPromptOptions,options),dialog.open(options))},dialog.buildDialogForm=function(options){var $form,$input,$message;return $form=$('<form class="vex-dialog-form" />'),$message=$('<div class="vex-dialog-message" />'),$input=$('<div class="vex-dialog-input" />'),$form.append($message.append(options.message)).append($input.append(options.input)).append(dialog.buttonsToDOM(options.buttons)).bind("submit.vex",options.onSubmit),$form},dialog.getFormValueOnSubmit=function(formData){return formData.vex||""===formData.vex?"_vex-empty-value"===formData.vex?!0:formData.vex:formData},dialog.buttonsToDOM=function(buttons){var $buttons;return $buttons=$('<div class="vex-dialog-buttons" />'),$.each(buttons,function(index,button){return $buttons.append($('<input type="'+button.type+'" />').val(button.text).addClass(button.className+" vex-dialog-button "+(0===index?"vex-first ":"")+(index===buttons.length-1?"vex-last ":"")).bind("click.vex",function(e){return button.click?button.click($(this).parents("."+vex.baseClassNames.content),e):void 0}))}),$buttons},dialog)},"function"==typeof define&&define.amd?define(["jquery","vex"],vexDialogFactory):"object"==typeof exports?module.exports=vexDialogFactory(require("jquery"),require("vex")):window.vex.dialog=vexDialogFactory(window.jQuery,window.vex)}.call(this);var ignore_date=new Date;ignore_date.setTime(ignore_date.getTime()+12096e5),jQuery(document).ready(function($){var li_subscribe_flag=$.cookie("li_subscribe"),preview_subscribe=leadin_get_parameter_by_name("preview-subscribe");leadin_subscribe_check_mobile($)||preview_subscribe?preview_subscribe&&(bind_leadin_subscribe_widget(leadin_get_parameter_by_name("lis_heading"),leadin_get_parameter_by_name("lis_desc"),leadin_get_parameter_by_name("lis_show_names"),leadin_get_parameter_by_name("lis_show_phone"),leadin_get_parameter_by_name("lis_btn_label"),leadin_get_parameter_by_name("lis_vex_class")),subscribe.open()):li_subscribe_flag?"show"==li_subscribe_flag&&bind_leadin_subscribe_widget($("#leadin-subscribe-heading").val(),$("#leadin-subscribe-text").val(),$("#leadin-subscribe-name-fields").val(),$("#leadin-subscribe-phone-field").val(),$("#leadin-subscribe-btn-label").val(),$("#leadin-subscribe-vex-class").val()):leadin_check_visitor_status($.cookie("li_hash"),function(data){"vex_set"!=data?($.cookie("li_subscribe","show",{path:"/",domain:""}),bind_leadin_subscribe_widget($("#leadin-subscribe-heading").val(),$("#leadin-subscribe-text").val(),$("#leadin-subscribe-name-fields").val(),$("#leadin-subscribe-phone-field").val(),$("#leadin-subscribe-btn-label").val(),$("#leadin-subscribe-vex-class").val())):$.cookie("li_subscribe","ignore",{path:"/",domain:"",expires:ignore_date})})});
|
assets/js/build/leadin-tracking.js
CHANGED
@@ -210,6 +210,13 @@ function leadin_submit_form ( $form, $ )
|
|
210 |
// Check if input has an attached lable using for= tag
|
211 |
var $label = $("label[for='" + $element.attr('id') + "']").text();
|
212 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
// Check for label in same container immediately before input
|
214 |
if ($label.length == 0)
|
215 |
{
|
@@ -391,7 +398,6 @@ function leadin_submit_form ( $form, $ )
|
|
391 |
else
|
392 |
{
|
393 |
if ( $select.find('option:selected').text() )
|
394 |
-
|
395 |
select_value = $select.find('option:selected').text();
|
396 |
else
|
397 |
select_value = $select.val();
|
210 |
// Check if input has an attached lable using for= tag
|
211 |
var $label = $("label[for='" + $element.attr('id') + "']").text();
|
212 |
|
213 |
+
// Ninja Forms hack
|
214 |
+
if ($label.length == 0)
|
215 |
+
{
|
216 |
+
if ( $('#' + $element.attr('id') + "_label").length )
|
217 |
+
$label = $('#' + $element.attr('id') + "_label").text();
|
218 |
+
}
|
219 |
+
|
220 |
// Check for label in same container immediately before input
|
221 |
if ($label.length == 0)
|
222 |
{
|
398 |
else
|
399 |
{
|
400 |
if ( $select.find('option:selected').text() )
|
|
|
401 |
select_value = $select.find('option:selected').text();
|
402 |
else
|
403 |
select_value = $select.val();
|
assets/js/build/leadin-tracking.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function leadin_submit_form($form,$){var $this=$form,form_fields=[],lead_email="",lead_first_name="",lead_last_name="",lead_phone="",form_selector_id=$form.attr("id")?$form.attr("id"):"",form_selector_classes=$form.classes()?$form.classes().join(","):"";$this.find('input[type!="submit"], textarea').not('input[type="hidden"], input[type="radio"], input[type="password"]').each(function(){var $element=$(this),$value=$element.val();if(!$element.is(":visible"))return!0;var $label=$("label[for='"+$element.attr("id")+"']").text();0==$label.length&&($label=$element.prev("label").not(".li_used").addClass("li_used").first().text(),$label.length||($label=$element.prevAll("b, strong, span").text())),0==$label.length&&($label=$element.next("label").not(".li_used").addClass("li_used").first().text(),$label.length||($label=$element.nextAll("b, strong, span").text())),0==$label.length&&($label=$element.parent().find("label, b, strong").not(".li_used").first().text()),0==$label.length&&$.contains($this,$element.parent().parent())&&($label=$element.parent().parent().find("label, b, strong").first().text()),0==$label.length&&($p=$element.closest("p").not(".li_used").addClass("li_used"),$p.length&&($label=$p.text(),$label=$.trim($label.replace($value,"")))),0==$label.length&&void 0!==$element.attr("placeholder")&&($label=$element.attr("placeholder").toString()),0==$label.length&&void 0!==$element.attr("name")&&($label=$element.attr("name").toString()),$element.is(":checkbox")&&($value=$element.is(":checked")?"Checked":"Not checked"),$value=$value.replace("C:\\fakepath\\","");var $label_text=$.trim($label.replaceArray(["(",")","required","Required","*",":"],[""]));ignore_field($label_text,$value)||push_form_field($label_text,$value,form_fields),-1==$value.indexOf("@")||-1==$value.indexOf(".")||lead_email||(lead_email=$value),"leadin-subscribe-fname"==$element.attr("id")&&(lead_first_name=$value),"leadin-subscribe-lname"==$element.attr("id")&&(lead_last_name=$value),"leadin-subscribe-phone"==$element.attr("id")&&(lead_phone=$value)});var radio_groups=[],rbg_label_values=[];$this.find(":radio").each(function(){-1==$.inArray(this.name,radio_groups)&&radio_groups.push(this.name),rbg_label_values.push($(this).val())});for(var i=0;i<radio_groups.length;i++){{var $rbg=$("input:radio[name='"+radio_groups[i]+"']");$("input:radio[name='"+radio_groups[i]+"']:checked").val()}$p=$this.find(".gfield").length?$rbg.closest(".gfield").not(".li_used").addClass("li_used"):$this.find(".frm_form_field").length?$rbg.closest(".frm_form_field").not(".li_used").addClass("li_used"):$rbg.closest("div, p").not(".li_used").addClass("li_used"),$p.length&&($rbg_label=$p.text(),$rbg_label=$.trim($rbg_label.replaceArray(rbg_label_values,[""]).replace($p.find(".gfield_description").text(),"")));var rgb_selected=$("input:radio[name='"+radio_groups[i]+"']:checked").val()?$("input:radio[name='"+radio_groups[i]+"']:checked").val():"not selected";ignore_field($rbg_label,rgb_selected)||push_form_field($rbg_label,rgb_selected,form_fields)}if($this.find("select").each(function(){var $select=$(this),$select_label=$("label[for='"+$select.attr("id")+"']").text();if(!$select_label.length){var select_values=[];$select.find("option").each(function(){-1==$.inArray($(this).val(),select_values)&&select_values.push($(this).val())}),$p=$select.closest("div, p").not(".li_used").addClass("li_used"),$p=$this.find(".gfield").length?$select.closest(".gfield").not(".li_used").addClass("li_used"):$select.closest("div, p").addClass("li_used"),$p.length&&($select_label=$p.text(),$select_label=$.trim($select_label.replaceArray(select_values,[""]).replace($p.find(".gfield_description").text(),"")))}var select_value="";if($select.val()instanceof Array){var select_vals=$select.val();for(i=0;i<select_vals.length;i++)select_value+=select_vals[i],i!=select_vals.length-1&&(select_value+=", ")}else select_value=$select.find("option:selected").text()?$select.find("option:selected").text():$select.val();ignore_field($select_label,select_value)||push_form_field($select_label,select_value,form_fields)}),$this.find(".li_used").removeClass("li_used"),lead_email){ignore_form&&push_form_field("Credit card form submitted","Payment fields not collected for security",form_fields);var submission_hash=Math.random().toString(36).slice(2),hashkey=$.cookie("li_hash"),json_form_fields=JSON.stringify(form_fields),form_submission={};form_submission={submission_hash:submission_hash,hashkey:hashkey,lead_email:lead_email,lead_first_name:lead_first_name,lead_last_name:lead_last_name,lead_phone:lead_phone,page_title:page_title,page_url:page_url,json_form_fields:json_form_fields,form_selector_id:form_selector_id,form_selector_classes:form_selector_classes},$.cookie("li_submission",JSON.stringify(form_submission),{path:"/",domain:""}),leadin_insert_form_submission(submission_hash,hashkey,page_title,page_url,json_form_fields,lead_email,lead_first_name,lead_last_name,lead_phone,form_selector_id,form_selector_classes,function(){$.removeCookie("li_submission",{path:"/",domain:""})})}else form_saved=!0}function leadin_check_merged_contact(hashkey){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_check_merged_contact",li_id:hashkey},success:function(data){var json_data=jQuery.parseJSON(data);json_data&&jQuery.cookie("li_hash",json_data,{path:"/",domain:""})},error:function(){}})}function leadin_check_visitor_status(hashkey,callback){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_check_visitor_status",li_id:hashkey},success:function(data){var json_data=jQuery.parseJSON(data);callback&&callback(json_data)},error:function(){}})}function leadin_log_pageview(hashkey,page_title,page_url,page_referrer,last_visit){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_log_pageview",li_id:hashkey,li_title:page_title,li_url:page_url,li_referrer:page_referrer,li_last_visit:last_visit},success:function(){},error:function(){}})}function leadin_insert_lead(hashkey,page_referrer){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_insert_lead",li_id:hashkey,li_referrer:page_referrer},success:function(){},error:function(){}})}function leadin_insert_form_submission(submission_haskey,hashkey,page_title,page_url,json_fields,lead_email,lead_first_name,lead_last_name,lead_phone,form_selector_id,form_selector_classes,Callback){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_insert_form_submission",li_submission_id:submission_haskey,li_id:hashkey,li_title:page_title,li_url:page_url,li_fields:json_fields,li_email:lead_email,li_first_name:lead_first_name,li_last_name:lead_last_name,li_phone:lead_phone,li_form_selector_id:form_selector_id,li_form_selector_classes:form_selector_classes},success:function(data){Callback&&Callback(data)},error:function(){}})}function push_form_field(label,value,form_fields){var field={label:label,value:value};form_fields.push(field)}function ignore_field(label,value){var bool_ignore_field=!1;(-1!=label.toLowerCase().indexOf("credit card")||-1!=label.toLowerCase().indexOf("card number"))&&(bool_ignore_field=!0),(-1!=label.toLowerCase().indexOf("expiration")||-1!=label.toLowerCase().indexOf("expiry"))&&(bool_ignore_field=!0),("month"==label.toLowerCase()||"mm"==label.toLowerCase()||"yy"==label.toLowerCase()||"yyyy"==label.toLowerCase()||"year"==label.toLowerCase())&&(bool_ignore_field=!0),(-1!=label.toLowerCase().indexOf("cvv")||-1!=label.toLowerCase().indexOf("cvc")||-1!=label.toLowerCase().indexOf("secure code")||-1!=label.toLowerCase().indexOf("security code"))&&(bool_ignore_field=!0),("visa"==value.toLowerCase()||"mastercard"==value.toLowerCase()||"american express"==value.toLowerCase()||"amex"==value.toLowerCase()||"discover"==value.toLowerCase())&&(bool_ignore_field=!0);var int_regex=new RegExp("/^[0-9]+$/");if(int_regex.test(value)){var value_no_spaces=value.replace(" ","");isInt(value_no_spaces)&&value_no_spaces.length>=16&&(bool_ignore_field=!0)}return label.length>250&&(bool_ignore_field=!0),bool_ignore_field?(ignore_form||(ignore_form=!0),!0):!1}function isInt(n){return"number"==typeof n&&isFinite(n)&&n%1===0}!function(factory){"function"==typeof define&&define.amd?define(["jquery"],factory):factory(jQuery)}(function($){function encode(s){return config.raw?s:encodeURIComponent(s)}function decode(s){return config.raw?s:decodeURIComponent(s)}function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value))}function parseCookieValue(s){0===s.indexOf('"')&&(s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return s=decodeURIComponent(s.replace(pluses," ")),config.json?JSON.parse(s):s}catch(e){}}function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value}var pluses=/\+/g,config=$.cookie=function(key,value,options){if(void 0!==value&&!$.isFunction(value)){if(options=$.extend({},config.defaults,options),"number"==typeof options.expires){var days=options.expires,t=options.expires=new Date;t.setDate(t.getDate()+days)}return document.cookie=[encode(key),"=",stringifyCookieValue(value),options.expires?"; expires="+options.expires.toUTCString():"",options.path?"; path="+options.path:"",options.domain?"; domain="+options.domain:"",options.secure?"; secure":""].join("")}for(var result=key?void 0:{},cookies=document.cookie?document.cookie.split("; "):[],i=0,l=cookies.length;l>i;i++){var parts=cookies[i].split("="),name=decode(parts.shift()),cookie=parts.join("=");if(key&&key===name){result=read(cookie,value);break}key||void 0===(cookie=read(cookie))||(result[name]=cookie)}return result};config.defaults={},$.removeCookie=function(key,options){return void 0===$.cookie(key)?!1:($.cookie(key,"",$.extend({},options,{expires:-1})),!$.cookie(key))}});var page_title=jQuery(document).find("title").text(),page_url=window.location.href,page_referrer=document.referrer,form_saved=!1,ignore_form=!1;jQuery(document).ready(function($){var hashkey=$.cookie("li_hash"),li_submission_cookie=$.cookie("li_submission");if(li_submission_cookie){var submission_data=JSON.parse(li_submission_cookie);leadin_insert_form_submission(submission_data.submission_hash,submission_data.hashkey,submission_data.page_title,submission_data.page_url,submission_data.json_form_fields,submission_data.lead_email,submission_data.lead_first_name,submission_data.lead_last_name,submission_data.lead_phone,submission_data.form_selector_id,submission_data.form_selector_classes,function(){$.removeCookie("li_submission",{path:"/",domain:""})})}hashkey||(hashkey=Math.random().toString(36).slice(2),$.cookie("li_hash",hashkey,{path:"/",domain:""}),leadin_insert_lead(hashkey,page_referrer)),leadin_log_pageview(hashkey,page_title,page_url,page_referrer,$.cookie("li_last_visit"));var date=new Date,current_time=date.getTime();date.setTime(date.getTime()+36e5),$.cookie("li_last_visit")||leadin_check_merged_contact(hashkey),$.cookie("li_last_visit",current_time,{path:"/",domain:"",expires:date})}),jQuery(function($){-1!=$.versioncompare($.fn.jquery,"1.7.0")?$(document).on("submit","form",function(){var $form=$(this).closest("form");leadin_submit_form($form,$)}):$(document).bind("submit","form",function(){var $form=$(this).closest("form");leadin_submit_form($form,$)})}),String.prototype.replaceArray=function(find,replace){for(var replaceString=this,i=0;i<find.length;i++)replaceString=1!=replace.length?replaceString.replace(find[i],replace[i]):replaceString.replace(find[i],replace[0]);return replaceString},function($){function normalize(version){return $.map(version.split("."),function(value){return parseInt(value,10)})}$.versioncompare=function(version1,version2){if("undefined"==typeof version1)throw new Error("$.versioncompare needs at least one parameter.");if(version2=version2||$.fn.jquery,version1==version2)return 0;for(var v1=normalize(version1),v2=normalize(version2),len=Math.max(v1.length,v2.length),i=0;len>i;i++)if(v1[i]=v1[i]||0,v2[i]=v2[i]||0,v1[i]!=v2[i])return v1[i]>v2[i]?1:-1;return 0}}(jQuery),function($){$.fn.classes=function(callback){var classes=[];if($.each(this,function(i,v){var splitClassName=v.className.split(/\s+/);for(var j in splitClassName){var className=splitClassName[j];-1===classes.indexOf(className)&&classes.push(className)}}),"function"==typeof callback)for(var i in classes)callback(classes[i]);return classes}}(jQuery);
|
1 |
+
function leadin_submit_form($form,$){var $this=$form,form_fields=[],lead_email="",lead_first_name="",lead_last_name="",lead_phone="",form_selector_id=$form.attr("id")?$form.attr("id"):"",form_selector_classes=$form.classes()?$form.classes().join(","):"";$this.find('input[type!="submit"], textarea').not('input[type="hidden"], input[type="radio"], input[type="password"]').each(function(){var $element=$(this),$value=$element.val();if(!$element.is(":visible"))return!0;var $label=$("label[for='"+$element.attr("id")+"']").text();0==$label.length&&$("#"+$element.attr("id")+"_label").length&&($label=$("#"+$element.attr("id")+"_label").text()),0==$label.length&&($label=$element.prev("label").not(".li_used").addClass("li_used").first().text(),$label.length||($label=$element.prevAll("b, strong, span").text())),0==$label.length&&($label=$element.next("label").not(".li_used").addClass("li_used").first().text(),$label.length||($label=$element.nextAll("b, strong, span").text())),0==$label.length&&($label=$element.parent().find("label, b, strong").not(".li_used").first().text()),0==$label.length&&$.contains($this,$element.parent().parent())&&($label=$element.parent().parent().find("label, b, strong").first().text()),0==$label.length&&($p=$element.closest("p").not(".li_used").addClass("li_used"),$p.length&&($label=$p.text(),$label=$.trim($label.replace($value,"")))),0==$label.length&&void 0!==$element.attr("placeholder")&&($label=$element.attr("placeholder").toString()),0==$label.length&&void 0!==$element.attr("name")&&($label=$element.attr("name").toString()),$element.is(":checkbox")&&($value=$element.is(":checked")?"Checked":"Not checked"),$value=$value.replace("C:\\fakepath\\","");var $label_text=$.trim($label.replaceArray(["(",")","required","Required","*",":"],[""]));ignore_field($label_text,$value)||push_form_field($label_text,$value,form_fields),-1==$value.indexOf("@")||-1==$value.indexOf(".")||lead_email||(lead_email=$value),"leadin-subscribe-fname"==$element.attr("id")&&(lead_first_name=$value),"leadin-subscribe-lname"==$element.attr("id")&&(lead_last_name=$value),"leadin-subscribe-phone"==$element.attr("id")&&(lead_phone=$value)});var radio_groups=[],rbg_label_values=[];$this.find(":radio").each(function(){-1==$.inArray(this.name,radio_groups)&&radio_groups.push(this.name),rbg_label_values.push($(this).val())});for(var i=0;i<radio_groups.length;i++){{var $rbg=$("input:radio[name='"+radio_groups[i]+"']");$("input:radio[name='"+radio_groups[i]+"']:checked").val()}$p=$this.find(".gfield").length?$rbg.closest(".gfield").not(".li_used").addClass("li_used"):$this.find(".frm_form_field").length?$rbg.closest(".frm_form_field").not(".li_used").addClass("li_used"):$rbg.closest("div, p").not(".li_used").addClass("li_used"),$p.length&&($rbg_label=$p.text(),$rbg_label=$.trim($rbg_label.replaceArray(rbg_label_values,[""]).replace($p.find(".gfield_description").text(),"")));var rgb_selected=$("input:radio[name='"+radio_groups[i]+"']:checked").val()?$("input:radio[name='"+radio_groups[i]+"']:checked").val():"not selected";ignore_field($rbg_label,rgb_selected)||push_form_field($rbg_label,rgb_selected,form_fields)}if($this.find("select").each(function(){var $select=$(this),$select_label=$("label[for='"+$select.attr("id")+"']").text();if(!$select_label.length){var select_values=[];$select.find("option").each(function(){-1==$.inArray($(this).val(),select_values)&&select_values.push($(this).val())}),$p=$select.closest("div, p").not(".li_used").addClass("li_used"),$p=$this.find(".gfield").length?$select.closest(".gfield").not(".li_used").addClass("li_used"):$select.closest("div, p").addClass("li_used"),$p.length&&($select_label=$p.text(),$select_label=$.trim($select_label.replaceArray(select_values,[""]).replace($p.find(".gfield_description").text(),"")))}var select_value="";if($select.val()instanceof Array){var select_vals=$select.val();for(i=0;i<select_vals.length;i++)select_value+=select_vals[i],i!=select_vals.length-1&&(select_value+=", ")}else select_value=$select.find("option:selected").text()?$select.find("option:selected").text():$select.val();ignore_field($select_label,select_value)||push_form_field($select_label,select_value,form_fields)}),$this.find(".li_used").removeClass("li_used"),lead_email){ignore_form&&push_form_field("Credit card form submitted","Payment fields not collected for security",form_fields);var submission_hash=Math.random().toString(36).slice(2),hashkey=$.cookie("li_hash"),json_form_fields=JSON.stringify(form_fields),form_submission={};form_submission={submission_hash:submission_hash,hashkey:hashkey,lead_email:lead_email,lead_first_name:lead_first_name,lead_last_name:lead_last_name,lead_phone:lead_phone,page_title:page_title,page_url:page_url,json_form_fields:json_form_fields,form_selector_id:form_selector_id,form_selector_classes:form_selector_classes},$.cookie("li_submission",JSON.stringify(form_submission),{path:"/",domain:""}),leadin_insert_form_submission(submission_hash,hashkey,page_title,page_url,json_form_fields,lead_email,lead_first_name,lead_last_name,lead_phone,form_selector_id,form_selector_classes,function(){$.removeCookie("li_submission",{path:"/",domain:""})})}else form_saved=!0}function leadin_check_merged_contact(hashkey){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_check_merged_contact",li_id:hashkey},success:function(data){var json_data=jQuery.parseJSON(data);json_data&&jQuery.cookie("li_hash",json_data,{path:"/",domain:""})},error:function(){}})}function leadin_check_visitor_status(hashkey,callback){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_check_visitor_status",li_id:hashkey},success:function(data){var json_data=jQuery.parseJSON(data);callback&&callback(json_data)},error:function(){}})}function leadin_log_pageview(hashkey,page_title,page_url,page_referrer,last_visit){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_log_pageview",li_id:hashkey,li_title:page_title,li_url:page_url,li_referrer:page_referrer,li_last_visit:last_visit},success:function(){},error:function(){}})}function leadin_insert_lead(hashkey,page_referrer){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_insert_lead",li_id:hashkey,li_referrer:page_referrer},success:function(){},error:function(){}})}function leadin_insert_form_submission(submission_haskey,hashkey,page_title,page_url,json_fields,lead_email,lead_first_name,lead_last_name,lead_phone,form_selector_id,form_selector_classes,Callback){jQuery.ajax({type:"POST",url:li_ajax.ajax_url,data:{action:"leadin_insert_form_submission",li_submission_id:submission_haskey,li_id:hashkey,li_title:page_title,li_url:page_url,li_fields:json_fields,li_email:lead_email,li_first_name:lead_first_name,li_last_name:lead_last_name,li_phone:lead_phone,li_form_selector_id:form_selector_id,li_form_selector_classes:form_selector_classes},success:function(data){Callback&&Callback(data)},error:function(){}})}function push_form_field(label,value,form_fields){var field={label:label,value:value};form_fields.push(field)}function ignore_field(label,value){var bool_ignore_field=!1;(-1!=label.toLowerCase().indexOf("credit card")||-1!=label.toLowerCase().indexOf("card number"))&&(bool_ignore_field=!0),(-1!=label.toLowerCase().indexOf("expiration")||-1!=label.toLowerCase().indexOf("expiry"))&&(bool_ignore_field=!0),("month"==label.toLowerCase()||"mm"==label.toLowerCase()||"yy"==label.toLowerCase()||"yyyy"==label.toLowerCase()||"year"==label.toLowerCase())&&(bool_ignore_field=!0),(-1!=label.toLowerCase().indexOf("cvv")||-1!=label.toLowerCase().indexOf("cvc")||-1!=label.toLowerCase().indexOf("secure code")||-1!=label.toLowerCase().indexOf("security code"))&&(bool_ignore_field=!0),("visa"==value.toLowerCase()||"mastercard"==value.toLowerCase()||"american express"==value.toLowerCase()||"amex"==value.toLowerCase()||"discover"==value.toLowerCase())&&(bool_ignore_field=!0);var int_regex=new RegExp("/^[0-9]+$/");if(int_regex.test(value)){var value_no_spaces=value.replace(" ","");isInt(value_no_spaces)&&value_no_spaces.length>=16&&(bool_ignore_field=!0)}return label.length>250&&(bool_ignore_field=!0),bool_ignore_field?(ignore_form||(ignore_form=!0),!0):!1}function isInt(n){return"number"==typeof n&&isFinite(n)&&n%1===0}!function(factory){"function"==typeof define&&define.amd?define(["jquery"],factory):factory(jQuery)}(function($){function encode(s){return config.raw?s:encodeURIComponent(s)}function decode(s){return config.raw?s:decodeURIComponent(s)}function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value))}function parseCookieValue(s){0===s.indexOf('"')&&(s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return s=decodeURIComponent(s.replace(pluses," ")),config.json?JSON.parse(s):s}catch(e){}}function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value}var pluses=/\+/g,config=$.cookie=function(key,value,options){if(void 0!==value&&!$.isFunction(value)){if(options=$.extend({},config.defaults,options),"number"==typeof options.expires){var days=options.expires,t=options.expires=new Date;t.setDate(t.getDate()+days)}return document.cookie=[encode(key),"=",stringifyCookieValue(value),options.expires?"; expires="+options.expires.toUTCString():"",options.path?"; path="+options.path:"",options.domain?"; domain="+options.domain:"",options.secure?"; secure":""].join("")}for(var result=key?void 0:{},cookies=document.cookie?document.cookie.split("; "):[],i=0,l=cookies.length;l>i;i++){var parts=cookies[i].split("="),name=decode(parts.shift()),cookie=parts.join("=");if(key&&key===name){result=read(cookie,value);break}key||void 0===(cookie=read(cookie))||(result[name]=cookie)}return result};config.defaults={},$.removeCookie=function(key,options){return void 0===$.cookie(key)?!1:($.cookie(key,"",$.extend({},options,{expires:-1})),!$.cookie(key))}});var page_title=jQuery(document).find("title").text(),page_url=window.location.href,page_referrer=document.referrer,form_saved=!1,ignore_form=!1;jQuery(document).ready(function($){var hashkey=$.cookie("li_hash"),li_submission_cookie=$.cookie("li_submission");if(li_submission_cookie){var submission_data=JSON.parse(li_submission_cookie);leadin_insert_form_submission(submission_data.submission_hash,submission_data.hashkey,submission_data.page_title,submission_data.page_url,submission_data.json_form_fields,submission_data.lead_email,submission_data.lead_first_name,submission_data.lead_last_name,submission_data.lead_phone,submission_data.form_selector_id,submission_data.form_selector_classes,function(){$.removeCookie("li_submission",{path:"/",domain:""})})}hashkey||(hashkey=Math.random().toString(36).slice(2),$.cookie("li_hash",hashkey,{path:"/",domain:""}),leadin_insert_lead(hashkey,page_referrer)),leadin_log_pageview(hashkey,page_title,page_url,page_referrer,$.cookie("li_last_visit"));var date=new Date,current_time=date.getTime();date.setTime(date.getTime()+36e5),$.cookie("li_last_visit")||leadin_check_merged_contact(hashkey),$.cookie("li_last_visit",current_time,{path:"/",domain:"",expires:date})}),jQuery(function($){-1!=$.versioncompare($.fn.jquery,"1.7.0")?$(document).on("submit","form",function(){var $form=$(this).closest("form");leadin_submit_form($form,$)}):$(document).bind("submit","form",function(){var $form=$(this).closest("form");leadin_submit_form($form,$)})}),String.prototype.replaceArray=function(find,replace){for(var replaceString=this,i=0;i<find.length;i++)replaceString=1!=replace.length?replaceString.replace(find[i],replace[i]):replaceString.replace(find[i],replace[0]);return replaceString},function($){function normalize(version){return $.map(version.split("."),function(value){return parseInt(value,10)})}$.versioncompare=function(version1,version2){if("undefined"==typeof version1)throw new Error("$.versioncompare needs at least one parameter.");if(version2=version2||$.fn.jquery,version1==version2)return 0;for(var v1=normalize(version1),v2=normalize(version2),len=Math.max(v1.length,v2.length),i=0;len>i;i++)if(v1[i]=v1[i]||0,v2[i]=v2[i]||0,v1[i]!=v2[i])return v1[i]>v2[i]?1:-1;return 0}}(jQuery),function($){$.fn.classes=function(callback){var classes=[];if($.each(this,function(i,v){var splitClassName=v.className.split(/\s+/);for(var j in splitClassName){var className=splitClassName[j];-1===classes.indexOf(className)&&classes.push(className)}}),"function"==typeof callback)for(var i in classes)callback(classes[i]);return classes}}(jQuery);
|
inc/class-leadin.php
CHANGED
@@ -64,7 +64,7 @@ class WPLeadIn {
|
|
64 |
|
65 |
$args = array(
|
66 |
'id' => 'leadin-admin-menu',
|
67 |
-
'title' => '<span class="ab-icon" '. ( $wp_version < 3.8 && !is_plugin_active('mp6/mp6.php') ? ' style="margin-top: 3px;"' : ''). '><img src="/
|
68 |
'parent' => FALSE, // set parent to false to make it a top level (parent) node
|
69 |
'href' => get_bloginfo('wpurl') . '/wp-admin/admin.php?page=leadin_stats',
|
70 |
'meta' => array('title' => 'Leadin')
|
64 |
|
65 |
$args = array(
|
66 |
'id' => 'leadin-admin-menu',
|
67 |
+
'title' => '<span class="ab-icon" '. ( $wp_version < 3.8 && !is_plugin_active('mp6/mp6.php') ? ' style="margin-top: 3px;"' : ''). '><img src="' . content_url() . '/plugins/leadin/images/leadin-svg-icon.svg" style="height:16px; width:16px;"></span><span class="ab-label">Leadin</span>', // alter the title of existing node
|
68 |
'parent' => FALSE, // set parent to false to make it a top level (parent) node
|
69 |
'href' => get_bloginfo('wpurl') . '/wp-admin/admin.php?page=leadin_stats',
|
70 |
'meta' => array('title' => 'Leadin')
|
inc/leadin-ajax-functions.php
CHANGED
@@ -338,7 +338,7 @@ function leadin_check_visitor_status ()
|
|
338 |
$hash = $_POST['li_id'];
|
339 |
|
340 |
// SELECT whether the hashkey is tied to the li_tags list that is for the subscriber
|
341 |
-
$q = $wpdb->prepare("SELECT contact_hashkey FROM $wpdb->li_tag_relationships ltr, $wpdb->li_tags lt WHERE lt.tag_form_selectors LIKE '
|
342 |
$vex_set = $wpdb->get_var($q);
|
343 |
|
344 |
if ( $vex_set )
|
338 |
$hash = $_POST['li_id'];
|
339 |
|
340 |
// SELECT whether the hashkey is tied to the li_tags list that is for the subscriber
|
341 |
+
$q = $wpdb->prepare("SELECT contact_hashkey FROM $wpdb->li_tag_relationships ltr, $wpdb->li_tags lt WHERE lt.tag_form_selectors LIKE '%%%s%%' AND lt.tag_id = ltr.tag_id AND ltr.contact_hashkey = %s AND lt.tag_deleted = 0", 'vex-dialog-form', $hash);
|
342 |
$vex_set = $wpdb->get_var($q);
|
343 |
|
344 |
if ( $vex_set )
|
inc/leadin-functions.php
CHANGED
@@ -133,7 +133,8 @@ function leadin_register_user ()
|
|
133 |
));
|
134 |
|
135 |
$mp->people->setOnce( $leadin_user['user_id'], array(
|
136 |
-
'$li-source' => LEADIN_SOURCE
|
|
|
137 |
));
|
138 |
|
139 |
return true;
|
@@ -215,17 +216,24 @@ function leadin_set_beta_tester_property ( $beta_tester )
|
|
215 |
*
|
216 |
* @return bool
|
217 |
*/
|
218 |
-
function leadin_set_install_status ( $
|
219 |
{
|
220 |
if ( ! function_exists('curl_init') )
|
221 |
return false;
|
222 |
|
223 |
$leadin_user = leadin_get_current_user();
|
224 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
225 |
$mp = new LI_Mixpanel(MIXPANEL_PROJECT_TOKEN);
|
226 |
-
$mp->people->set( $leadin_user['user_id'],
|
227 |
-
'$li-status' => $activated
|
228 |
-
));
|
229 |
}
|
230 |
|
231 |
|
@@ -874,7 +882,7 @@ function leadin_set_mysql_timezone_offset ()
|
|
874 |
global $wpdb;
|
875 |
|
876 |
$mysql_timestamp = $wpdb->get_var("SELECT CURRENT_TIMESTAMP");
|
877 |
-
$diff = strtotime($mysql_timestamp) - strtotime(current_time('
|
878 |
$hours = $diff / (60 * 60);
|
879 |
|
880 |
$wpdb->db_hour_offset = $hours;
|
@@ -887,7 +895,7 @@ function leadin_set_mysql_timezone_offset ()
|
|
887 |
*/
|
888 |
function leadin_get_current_url ( )
|
889 |
{
|
890 |
-
return ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']
|
891 |
}
|
892 |
|
893 |
|
133 |
));
|
134 |
|
135 |
$mp->people->setOnce( $leadin_user['user_id'], array(
|
136 |
+
'$li-source' => LEADIN_SOURCE,
|
137 |
+
'$created' => date('Y-m-d H:i:s')
|
138 |
));
|
139 |
|
140 |
return true;
|
216 |
*
|
217 |
* @return bool
|
218 |
*/
|
219 |
+
function leadin_set_install_status ( $li_status )
|
220 |
{
|
221 |
if ( ! function_exists('curl_init') )
|
222 |
return false;
|
223 |
|
224 |
$leadin_user = leadin_get_current_user();
|
225 |
|
226 |
+
$properties = array(
|
227 |
+
'$li-status' => $li_status
|
228 |
+
);
|
229 |
+
|
230 |
+
if ( $li_status == 'activated' )
|
231 |
+
$properties['$last_activated'] = date('Y-m-d H:i:s');
|
232 |
+
else
|
233 |
+
$properties['$last_deactivated'] = date('Y-m-d H:i:s');
|
234 |
+
|
235 |
$mp = new LI_Mixpanel(MIXPANEL_PROJECT_TOKEN);
|
236 |
+
$mp->people->set( $leadin_user['user_id'], $properties);
|
|
|
|
|
237 |
}
|
238 |
|
239 |
|
882 |
global $wpdb;
|
883 |
|
884 |
$mysql_timestamp = $wpdb->get_var("SELECT CURRENT_TIMESTAMP");
|
885 |
+
$diff = strtotime($mysql_timestamp) - strtotime(current_time('mysql'));
|
886 |
$hours = $diff / (60 * 60);
|
887 |
|
888 |
$wpdb->db_hour_offset = $hours;
|
895 |
*/
|
896 |
function leadin_get_current_url ( )
|
897 |
{
|
898 |
+
return ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
|
899 |
}
|
900 |
|
901 |
|
leadin.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Leadin
|
4 |
Plugin URI: http://leadin.com
|
5 |
Description: Leadin is an easy-to-use marketing automation and lead tracking plugin for WordPress that helps you better understand your web site visitors.
|
6 |
-
Version: 2.2.
|
7 |
Author: Andy Cook, Nelson Joyce
|
8 |
Author URI: http://leadin.com
|
9 |
License: GPL2
|
@@ -26,10 +26,10 @@ if ( !defined('LEADIN_DB_VERSION') )
|
|
26 |
define('LEADIN_DB_VERSION', '2.0.0');
|
27 |
|
28 |
if ( !defined('LEADIN_PLUGIN_VERSION') )
|
29 |
-
define('LEADIN_PLUGIN_VERSION', '2.2.
|
30 |
|
31 |
if ( !defined('MIXPANEL_PROJECT_TOKEN') )
|
32 |
-
define('MIXPANEL_PROJECT_TOKEN', '
|
33 |
|
34 |
if ( !defined('MC_KEY') )
|
35 |
define('MC_KEY', '934aaed05049dde737d308be26167eef-us3');
|
@@ -92,6 +92,7 @@ function activate_leadin ( $network_wide )
|
|
92 |
switch_to_blog($blog_id);
|
93 |
add_leadin_defaults();
|
94 |
$activated[] = $blog_id;
|
|
|
95 |
}
|
96 |
|
97 |
// Switch back to the current blog
|
@@ -101,7 +102,11 @@ function activate_leadin ( $network_wide )
|
|
101 |
update_site_option('leadin_activated', $activated);
|
102 |
}
|
103 |
else
|
|
|
|
|
|
|
104 |
add_leadin_defaults();
|
|
|
105 |
}
|
106 |
|
107 |
/**
|
@@ -141,8 +146,6 @@ function add_leadin_defaults ( )
|
|
141 |
('Contacted', 'contacted', '', '', 3),
|
142 |
('Customers', 'customers', '', '', 4)", "");
|
143 |
$wpdb->query($q);
|
144 |
-
|
145 |
-
leadin_track_plugin_registration_hook(TRUE);
|
146 |
}
|
147 |
|
148 |
$leadin_active_power_ups = get_option('leadin_active_power_ups');
|
@@ -250,7 +253,7 @@ function leadin_db_install ()
|
|
250 |
`blog_id` int(11) unsigned NOT NULL,
|
251 |
PRIMARY KEY (`pageview_id`),
|
252 |
KEY `lead_hashkey` (`lead_hashkey`)
|
253 |
-
) ENGINE=InnoDB DEFAULT CHARSET=
|
254 |
|
255 |
CREATE TABLE " . $multisite_prefix . "li_submissions (
|
256 |
`form_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
3 |
Plugin Name: Leadin
|
4 |
Plugin URI: http://leadin.com
|
5 |
Description: Leadin is an easy-to-use marketing automation and lead tracking plugin for WordPress that helps you better understand your web site visitors.
|
6 |
+
Version: 2.2.2
|
7 |
Author: Andy Cook, Nelson Joyce
|
8 |
Author URI: http://leadin.com
|
9 |
License: GPL2
|
26 |
define('LEADIN_DB_VERSION', '2.0.0');
|
27 |
|
28 |
if ( !defined('LEADIN_PLUGIN_VERSION') )
|
29 |
+
define('LEADIN_PLUGIN_VERSION', '2.2.2');
|
30 |
|
31 |
if ( !defined('MIXPANEL_PROJECT_TOKEN') )
|
32 |
+
define('MIXPANEL_PROJECT_TOKEN', 'c2ad133b991102f633df3aec96485bab');
|
33 |
|
34 |
if ( !defined('MC_KEY') )
|
35 |
define('MC_KEY', '934aaed05049dde737d308be26167eef-us3');
|
92 |
switch_to_blog($blog_id);
|
93 |
add_leadin_defaults();
|
94 |
$activated[] = $blog_id;
|
95 |
+
leadin_track_plugin_registration_hook(TRUE);
|
96 |
}
|
97 |
|
98 |
// Switch back to the current blog
|
102 |
update_site_option('leadin_activated', $activated);
|
103 |
}
|
104 |
else
|
105 |
+
{
|
106 |
+
leadin_track_plugin_registration_hook(TRUE);
|
107 |
+
|
108 |
add_leadin_defaults();
|
109 |
+
}
|
110 |
}
|
111 |
|
112 |
/**
|
146 |
('Contacted', 'contacted', '', '', 3),
|
147 |
('Customers', 'customers', '', '', 4)", "");
|
148 |
$wpdb->query($q);
|
|
|
|
|
149 |
}
|
150 |
|
151 |
$leadin_active_power_ups = get_option('leadin_active_power_ups');
|
253 |
`blog_id` int(11) unsigned NOT NULL,
|
254 |
PRIMARY KEY (`pageview_id`),
|
255 |
KEY `lead_hashkey` (`lead_hashkey`)
|
256 |
+
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
|
257 |
|
258 |
CREATE TABLE " . $multisite_prefix . "li_submissions (
|
259 |
`form_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
power-ups/constant-contact-connect.php
CHANGED
@@ -112,7 +112,11 @@ class WPConstantContactConnect extends WPLeadIn {
|
|
112 |
}
|
113 |
|
114 |
if ( $this->cc_id )
|
|
|
|
|
|
|
115 |
return $this->constant_contact->add_subscription($this->cc_id, $list_id, 'ACTION_BY_CLIENT');
|
|
|
116 |
else
|
117 |
{
|
118 |
$contact = array();
|
@@ -131,6 +135,8 @@ class WPConstantContactConnect extends WPLeadIn {
|
|
131 |
if ( $phone )
|
132 |
$contact['WorkPhone'] = $phone;
|
133 |
|
|
|
|
|
134 |
return $this->constant_contact->add_contact($contact, array($list_id));
|
135 |
}
|
136 |
}
|
@@ -154,7 +160,11 @@ class WPConstantContactConnect extends WPLeadIn {
|
|
154 |
$cc_id = $this->constant_contact->search_contact_by_email($email);
|
155 |
|
156 |
if ( $cc_id )
|
|
|
|
|
|
|
157 |
return $this->constant_contact->remove_subscription($cc_id, $list_id);
|
|
|
158 |
else
|
159 |
return FALSE;
|
160 |
}
|
112 |
}
|
113 |
|
114 |
if ( $this->cc_id )
|
115 |
+
{
|
116 |
+
leadin_track_plugin_activity('Contact Pushed to List', array('esp_connector' => 'constant_contact'));
|
117 |
+
|
118 |
return $this->constant_contact->add_subscription($this->cc_id, $list_id, 'ACTION_BY_CLIENT');
|
119 |
+
}
|
120 |
else
|
121 |
{
|
122 |
$contact = array();
|
135 |
if ( $phone )
|
136 |
$contact['WorkPhone'] = $phone;
|
137 |
|
138 |
+
leadin_track_plugin_activity('Contact Pushed to List', array('esp_connector' => 'constant_contact'));
|
139 |
+
|
140 |
return $this->constant_contact->add_contact($contact, array($list_id));
|
141 |
}
|
142 |
}
|
160 |
$cc_id = $this->constant_contact->search_contact_by_email($email);
|
161 |
|
162 |
if ( $cc_id )
|
163 |
+
{
|
164 |
+
leadin_track_plugin_activity('Contact Removed from List', array('esp_connector' => 'constant_contact'));
|
165 |
+
|
166 |
return $this->constant_contact->remove_subscription($cc_id, $list_id);
|
167 |
+
}
|
168 |
else
|
169 |
return FALSE;
|
170 |
}
|
power-ups/mailchimp-connect.php
CHANGED
@@ -111,6 +111,8 @@ class WPMailChimpConnect extends WPLeadIn {
|
|
111 |
)
|
112 |
));
|
113 |
|
|
|
|
|
114 |
return $contact_synced;
|
115 |
}
|
116 |
|
@@ -137,6 +139,8 @@ class WPMailChimpConnect extends WPLeadIn {
|
|
137 |
"send_notify" => FALSE
|
138 |
));
|
139 |
|
|
|
|
|
140 |
return $contact_removed;
|
141 |
}
|
142 |
|
@@ -170,6 +174,8 @@ class WPMailChimpConnect extends WPLeadIn {
|
|
170 |
"batch" => $batch_contacts
|
171 |
));
|
172 |
|
|
|
|
|
173 |
return $list_updated;
|
174 |
}
|
175 |
|
111 |
)
|
112 |
));
|
113 |
|
114 |
+
leadin_track_plugin_activity('Contact Pushed to List', array('esp_connector' => 'mailchimp'));
|
115 |
+
|
116 |
return $contact_synced;
|
117 |
}
|
118 |
|
139 |
"send_notify" => FALSE
|
140 |
));
|
141 |
|
142 |
+
leadin_track_plugin_activity('Contact Removed from List', array('esp_connector' => 'mailchimp'));
|
143 |
+
|
144 |
return $contact_removed;
|
145 |
}
|
146 |
|
174 |
"batch" => $batch_contacts
|
175 |
));
|
176 |
|
177 |
+
leadin_track_plugin_activity('Bulk Contacts Pushed to List', array('esp_connector' => 'mailchimp'));
|
178 |
+
|
179 |
return $list_updated;
|
180 |
}
|
181 |
|
power-ups/subscribe-widget.php
CHANGED
@@ -154,7 +154,9 @@ class WPLeadInSubscribe extends WPLeadIn {
|
|
154 |
|
155 |
$options = $this->options;
|
156 |
|
157 |
-
|
|
|
|
|
158 |
if ( isset ($options['li_subscribe_template_posts']) || isset ($options['li_subscribe_template_pages']) || isset ($options['li_subscribe_template_archives']) || isset ($options['li_subscribe_template_home']) )
|
159 |
{
|
160 |
// disable pop-up on posts if setting not set
|
@@ -173,6 +175,8 @@ class WPLeadInSubscribe extends WPLeadIn {
|
|
173 |
if ( $_SERVER["REQUEST_URI"] == '/' && ! isset ($options['li_subscribe_template_home']) )
|
174 |
return FALSE;
|
175 |
}
|
|
|
|
|
176 |
|
177 |
if ( ! is_admin() && $pagenow != 'wp-login.php' )
|
178 |
{
|
154 |
|
155 |
$options = $this->options;
|
156 |
|
157 |
+
if ( ! isset ($options['li_subscribe_template_posts']) && ! isset ($options['li_subscribe_template_pages']) && ! isset ($options['li_subscribe_template_archives']) && ! isset ($options['li_subscribe_template_home']) )
|
158 |
+
return FALSE;
|
159 |
+
|
160 |
if ( isset ($options['li_subscribe_template_posts']) || isset ($options['li_subscribe_template_pages']) || isset ($options['li_subscribe_template_archives']) || isset ($options['li_subscribe_template_home']) )
|
161 |
{
|
162 |
// disable pop-up on posts if setting not set
|
175 |
if ( $_SERVER["REQUEST_URI"] == '/' && ! isset ($options['li_subscribe_template_home']) )
|
176 |
return FALSE;
|
177 |
}
|
178 |
+
|
179 |
+
|
180 |
|
181 |
if ( ! is_admin() && $pagenow != 'wp-login.php' )
|
182 |
{
|
power-ups/subscribe-widget/admin/subscribe-widget-admin.php
CHANGED
@@ -153,7 +153,7 @@ class WPLeadInSubscribeAdmin extends WPLeadInAdmin {
|
|
153 |
$new_input['li_subscribe_template_archives'] = sanitize_text_field( $input['li_subscribe_template_archives'] );
|
154 |
|
155 |
if( isset( $input['li_subscribe_confirmation'] ) )
|
156 |
-
$new_input['li_subscribe_confirmation'] = sanitize_text_field( $input['
|
157 |
else
|
158 |
$new_input['li_subscribe_confirmation'] = '0';
|
159 |
|
@@ -255,15 +255,6 @@ class WPLeadInSubscribeAdmin extends WPLeadInAdmin {
|
|
255 |
{
|
256 |
$options = $this->options;
|
257 |
|
258 |
-
// If none of the values are set it's safe to assume the user hasn't toggled any yet so we should default them all
|
259 |
-
if ( ! isset ($options['li_subscribe_template_posts']) && ! isset ($options['li_subscribe_template_pages']) && ! isset ($options['li_subscribe_template_archives']) && ! isset ($options['li_subscribe_template_home']) )
|
260 |
-
{
|
261 |
-
$options['li_subscribe_template_posts'] = 1;
|
262 |
-
$options['li_subscribe_template_pages'] = 1;
|
263 |
-
$options['li_subscribe_template_archives'] = 1;
|
264 |
-
$options['li_subscribe_template_home'] = 1;
|
265 |
-
}
|
266 |
-
|
267 |
printf(
|
268 |
'<p><input id="li_subscribe_template_posts" type="checkbox" name="leadin_subscribe_options[li_subscribe_template_posts]" value="1"' . checked( 1, ( isset($options['li_subscribe_template_posts']) ? $options['li_subscribe_template_posts'] : '0' ), false ) . '/>' .
|
269 |
'<label for="li_subscribe_template_posts">Posts</label></p>'
|
153 |
$new_input['li_subscribe_template_archives'] = sanitize_text_field( $input['li_subscribe_template_archives'] );
|
154 |
|
155 |
if( isset( $input['li_subscribe_confirmation'] ) )
|
156 |
+
$new_input['li_subscribe_confirmation'] = sanitize_text_field( $input['li_subscribe_confirmation'] );
|
157 |
else
|
158 |
$new_input['li_subscribe_confirmation'] = '0';
|
159 |
|
255 |
{
|
256 |
$options = $this->options;
|
257 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
258 |
printf(
|
259 |
'<p><input id="li_subscribe_template_posts" type="checkbox" name="leadin_subscribe_options[li_subscribe_template_posts]" value="1"' . checked( 1, ( isset($options['li_subscribe_template_posts']) ? $options['li_subscribe_template_posts'] : '0' ), false ) . '/>' .
|
260 |
'<label for="li_subscribe_template_posts">Posts</label></p>'
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: andygcook, nelsonjoyce
|
|
3 |
Tags: crm, contacts, lead tracking, click tracking, visitor tracking, analytics, marketing automation, inbound marketing, subscription, marketing, lead generation, mailchimp, constant contact, newsletter, popup, popover, email list, email, contacts database, contact form, forms, form widget, popup form
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 4.0
|
6 |
-
Stable tag: 2.2.
|
7 |
|
8 |
Leadin is an easy-to-use marketing automation and lead tracking plugin for WordPress that helps you better understand your web site visitors.
|
9 |
|
@@ -80,7 +80,6 @@ To ensure quality we've tested the most popular WordPress form builder plugins.
|
|
80 |
- Formidable
|
81 |
- Ninja Forms
|
82 |
- Contact Form Clean and Simple
|
83 |
-
- SumoMe
|
84 |
- HubSpot
|
85 |
- Native WordPress comment forms
|
86 |
- Most custom forms
|
@@ -90,6 +89,7 @@ To ensure quality we've tested the most popular WordPress form builder plugins.
|
|
90 |
- Wufoo
|
91 |
- Easy Contact Forms
|
92 |
- Disqus comments
|
|
|
93 |
- Forms contained in an iFrame
|
94 |
|
95 |
= Does Leadin work on Multisite? =
|
@@ -107,8 +107,20 @@ You betcha! Leadin should work just fine on Multisite right out-of-the-box witho
|
|
107 |
|
108 |
== Changelog ==
|
109 |
|
110 |
-
- Current version: 2.2.
|
111 |
-
- Current version release: 2014-10-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
|
113 |
= 2.2.1 (2014.10.01) =
|
114 |
= Enhancements =
|
3 |
Tags: crm, contacts, lead tracking, click tracking, visitor tracking, analytics, marketing automation, inbound marketing, subscription, marketing, lead generation, mailchimp, constant contact, newsletter, popup, popover, email list, email, contacts database, contact form, forms, form widget, popup form
|
4 |
Requires at least: 3.7
|
5 |
Tested up to: 4.0
|
6 |
+
Stable tag: 2.2.2
|
7 |
|
8 |
Leadin is an easy-to-use marketing automation and lead tracking plugin for WordPress that helps you better understand your web site visitors.
|
9 |
|
80 |
- Formidable
|
81 |
- Ninja Forms
|
82 |
- Contact Form Clean and Simple
|
|
|
83 |
- HubSpot
|
84 |
- Native WordPress comment forms
|
85 |
- Most custom forms
|
89 |
- Wufoo
|
90 |
- Easy Contact Forms
|
91 |
- Disqus comments
|
92 |
+
- SumoMe
|
93 |
- Forms contained in an iFrame
|
94 |
|
95 |
= Does Leadin work on Multisite? =
|
107 |
|
108 |
== Changelog ==
|
109 |
|
110 |
+
- Current version: 2.2.2
|
111 |
+
- Current version release: 2014-10-16
|
112 |
+
|
113 |
+
= 2.2.2 (2014.10.16) =
|
114 |
+
= Enhancements =
|
115 |
+
- Leadin now include the utm_ tags from the original first page view when parsing the sources
|
116 |
+
|
117 |
+
- Bug fixes
|
118 |
+
- Unchecking all the template checkboxes for the popup then saving no longer rechecks them all
|
119 |
+
- Added in current_time fix for older versions of WordPress
|
120 |
+
- Retooled tag editor to only pull down unique selectors
|
121 |
+
- Contact list now will go back to the previous page when clicking the back link
|
122 |
+
- Fixed mysterious bug where popup ignored new visitors
|
123 |
+
- NOW the subscription confirmation stays checked/uncheckedon save (Thanks Kate!)
|
124 |
|
125 |
= 2.2.1 (2014.10.01) =
|
126 |
= Enhancements =
|