Version Description
- New Feature: Bulk Lead management with leads plugin wordpress.org/plugins/leads/
- Added tags to lead profiles for improved management/categorization
- Added new compatibility options to fix third party plugin conflicts!
- Added new debugging javascript debugging tools for users
- Fixed Email Sending Error on forms
- Improved support for master license keys
Download this release
Release Info
Developer | DavidWells |
Plugin | WordPress Landing Pages |
Version | 1.4.6 |
Comparing to | |
See all releases |
Code changes from version 1.4.5 to 1.4.6
- css/admin-lp-cpt-only-style.css +31 -1
- css/new-customizer-admin.css +6 -0
- images/localhost.png +0 -0
- js/admin/admin.post-edit.js +92 -92
- js/admin/admin.post-new.js +3 -3
- js/libraries/isotope/css/style.css +0 -752
- js/libraries/isotope/jquery.isotope.js +0 -1406
- js/libraries/isotope/jquery.isotope.min.js +0 -11
- js/libraries/isotope/js/fake-element.js +0 -38
- js/libraries/isotope/js/jquery-1.7.1.min.js +0 -4
- js/libraries/isotope/js/jquery.ba-bbq.min.js +0 -18
- js/libraries/isotope/js/jquery.infinitescroll.min.js +0 -47
- js/libraries/isotope/js/make-big-graph-projects.js +0 -43
- js/libraries/jquery-datepicker/picker_functions.js +26 -14
- landing-pages.php +23 -8
- libraries/library.shareme.php +1 -1
- modules/module.activate.php +1 -1
- modules/module.clone.php +1 -1
- modules/module.extension-licensing.php +5 -3
- modules/module.extension-updater.php +6 -7
- modules/module.global-settings.php +85 -44
- modules/module.javascript-admin.php +1 -3
- modules/module.landing-page.php +6 -2
- modules/module.load-extensions.php +1 -1
- modules/module.post-type.php +529 -1
- modules/module.track.php +1 -1
- modules/module.utils.php +16 -4
- readme.txt +10 -2
- shared/classes/chart.class.php +291 -0
- shared/classes/compatibility.class.php +134 -0
- shared/classes/debug.class.php +379 -0
- shared/classes/feedback.class.php +1 -1
- shared/classes/form.class.php +2 -2
- shared/classes/js/debug.js +37 -0
- shared/classes/js/inbound-dequeue-scripts.js +49 -0
- shared/classes/menu.class.php +61 -4
- shared/docs/shortcodes.md +3 -0
- shared/inbound-shortcodes/css/frontend-render.css +22 -14
- shared/inbound-shortcodes/images/facebook@2x.png +0 -0
- shared/inbound-shortcodes/images/google@2x.png +0 -0
- shared/inbound-shortcodes/images/linkedin@2x.png +0 -0
- shared/inbound-shortcodes/images/pinterest@2x.png +0 -0
- shared/inbound-shortcodes/images/twitter@2x.png +0 -0
- shared/inbound-shortcodes/inbound-shortcodes.php +109 -115
- shared/inbound-shortcodes/js/shortcodes.js +3 -2
- shared/inbound-shortcodes/popup.php +1 -1
- shared/inbound-shortcodes/shortcodes-fields.php +23 -22
- shared/inbound-shortcodes/shortcodes-includes.php +10 -23
- shared/inbound-shortcodes/shortcodes/forms.php +2 -1
- shared/inbound-shortcodes/shortcodes/quick-forms.php +1 -1
- shared/inboundnow/inboundnow.extend.php +348 -0
- shared/inboundnow/inboundnow.extension-licensing.php +145 -132
- shared/inboundnow/inboundnow.extension-updating.php +26 -13
- shared/inboundnow/inboundnow.global-settings.php +32 -0
- shared/languages/landing-pages.po +2437 -0
- shared/languages/landing-pages/_get-translations.bat +12 -0
- shared/languages/landing-pages/ach.mo +0 -0
- shared/languages/landing-pages/af.mo +0 -0
- shared/languages/landing-pages/ar.mo +0 -0
- shared/languages/landing-pages/az.mo +0 -0
- shared/languages/landing-pages/be_BY.mo +0 -0
- shared/languages/landing-pages/bg_BG.mo +0 -0
- shared/languages/landing-pages/bn_BD.mo +0 -0
- shared/languages/landing-pages/br.mo +0 -0
- shared/languages/landing-pages/bs_BA.mo +0 -0
- shared/languages/landing-pages/ca.mo +0 -0
- shared/languages/landing-pages/co.mo +0 -0
- shared/languages/landing-pages/cs_CZ.mo +0 -0
- shared/languages/landing-pages/cy.mo +0 -0
- shared/languages/landing-pages/da_DK.mo +0 -0
- shared/languages/landing-pages/de_DE.mo +0 -0
- shared/languages/landing-pages/el.mo +0 -0
- shared/languages/landing-pages/en_GB.mo +0 -0
- shared/languages/landing-pages/eo.mo +0 -0
- shared/languages/landing-pages/es_CL.mo +0 -0
- shared/languages/landing-pages/es_ES.mo +0 -0
- shared/languages/landing-pages/es_MX.mo +0 -0
- shared/languages/landing-pages/es_PE.mo +0 -0
- shared/languages/landing-pages/es_VE.mo +0 -0
- shared/languages/landing-pages/et.mo +0 -0
- shared/languages/landing-pages/eu.mo +0 -0
- shared/languages/landing-pages/fa.mo +0 -0
- shared/languages/landing-pages/fa_IR.mo +0 -0
- shared/languages/landing-pages/fi.mo +0 -0
- shared/languages/landing-pages/fo.mo +0 -0
- shared/languages/landing-pages/fr_FR.mo +0 -0
- shared/languages/landing-pages/gl_ES.mo +0 -0
- shared/languages/landing-pages/gu_IN.mo +0 -0
- shared/languages/landing-pages/he_IL.mo +0 -0
- shared/languages/landing-pages/hi_IN.mo +0 -0
- shared/languages/landing-pages/hr.mo +0 -0
- shared/languages/landing-pages/hu_HU.mo +0 -0
- shared/languages/landing-pages/id_ID.mo +0 -0
- shared/languages/landing-pages/is_IS.mo +0 -0
- shared/languages/landing-pages/it_IT.mo +0 -0
- shared/languages/landing-pages/ja.mo +0 -0
- shared/languages/landing-pages/jv.mo +0 -0
- shared/languages/landing-pages/ka.mo +0 -0
- shared/languages/landing-pages/ko_KR.mo +0 -0
- shared/languages/landing-pages/ku.mo +0 -0
- shared/languages/landing-pages/ky.mo +0 -0
- shared/languages/landing-pages/landing-pages.po +1 -1
- shared/languages/landing-pages/lv.mo +0 -0
- shared/languages/landing-pages/lv_LV.mo +0 -0
- shared/languages/landing-pages/mg.mo +0 -0
- shared/languages/landing-pages/mk_MK.mo +0 -0
- shared/languages/landing-pages/mn.mo +0 -0
- shared/languages/landing-pages/my_MM.mo +0 -0
- shared/languages/landing-pages/nb_NO.mo +0 -0
- shared/languages/landing-pages/ne_NP.mo +0 -0
- shared/languages/landing-pages/nl_NL.mo +0 -0
- shared/languages/landing-pages/nn_NO.mo +0 -0
- shared/languages/landing-pages/oc.mo +0 -0
- shared/languages/landing-pages/pap.mo +0 -0
- shared/languages/landing-pages/pl_PL.mo +0 -0
- shared/languages/landing-pages/pt_BR.mo +0 -0
- shared/languages/landing-pages/pt_PT.mo +0 -0
- shared/languages/landing-pages/ro_RO.mo +0 -0
- shared/languages/landing-pages/ru_RU.mo +0 -0
- shared/languages/landing-pages/sah.mo +0 -0
- shared/languages/landing-pages/sk_SK.mo +0 -0
- shared/languages/landing-pages/sq.mo +0 -0
- shared/languages/landing-pages/sr_RS.mo +0 -0
- shared/languages/landing-pages/su.mo +0 -0
- shared/languages/landing-pages/sv_SE.mo +0 -0
- shared/languages/landing-pages/sw.mo +0 -0
- shared/languages/landing-pages/te.mo +0 -0
- shared/languages/landing-pages/th.mo +0 -0
- shared/languages/landing-pages/tk_TM.mo +0 -0
- shared/languages/landing-pages/tr_TR.mo +0 -0
- shared/languages/landing-pages/ug.mo +0 -0
- shared/languages/landing-pages/uk.mo +0 -0
- shared/languages/landing-pages/uz.mo +0 -0
- shared/languages/landing-pages/vi.mo +0 -0
- shared/languages/landing-pages/zh_CN.mo +0 -0
- shared/languages/landing-pages/zh_TW.mo +0 -0
- shared/metaboxes/inbound-metaboxes.css +5 -22
- shared/metaboxes/template.metaboxes.php +181 -0
- shared/tracking/js/inprogress.store.lead.ajax.js +2 -1
- shared/tracking/js/store.lead.ajax.js +13 -5
- shared/tracking/store.lead.php +235 -215
- templates/rsvp-envelope/index.php +1 -1
css/admin-lp-cpt-only-style.css
CHANGED
@@ -35,11 +35,12 @@ padding: 5px;
|
|
35 |
padding-top: 0px;
|
36 |
margin-right: 5px;
|
37 |
text-align: center;
|
|
|
38 |
}
|
39 |
.lp-template-selector-container ul#template-filter {
|
40 |
line-height: 30px;
|
41 |
margin-top: 10px;
|
42 |
-
margin-bottom:
|
43 |
}
|
44 |
.lp-template-selector-container ul#template-filter a {
|
45 |
margin-right: 0px;
|
@@ -59,4 +60,33 @@ ul#template-filter .button-primary a {
|
|
59 |
}
|
60 |
#lp_2_form_content .hndle em {
|
61 |
font-size: 13px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
}
|
35 |
padding-top: 0px;
|
36 |
margin-right: 5px;
|
37 |
text-align: center;
|
38 |
+
margin-bottom: 10px;
|
39 |
}
|
40 |
.lp-template-selector-container ul#template-filter {
|
41 |
line-height: 30px;
|
42 |
margin-top: 10px;
|
43 |
+
margin-bottom: 0px;
|
44 |
}
|
45 |
.lp-template-selector-container ul#template-filter a {
|
46 |
margin-right: 0px;
|
60 |
}
|
61 |
#lp_2_form_content .hndle em {
|
62 |
font-size: 13px;
|
63 |
+
}
|
64 |
+
.template-thumbnail
|
65 |
+
{
|
66 |
+
width:100%;
|
67 |
+
height:190px;
|
68 |
+
-webkit-border-radius: 4px;
|
69 |
+
-khtml-border-radius: 4px;
|
70 |
+
-moz-border-radius: 4px;
|
71 |
+
border-radius: 4px;
|
72 |
+
background-color: #A9A9A9;
|
73 |
+
-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px,rgba(0, 0, 0, 0.3) 0 2px 5px;
|
74 |
+
-moz-box-shadow: rgba(0,0,0,0.2) 0 0 0 1px,rgba(0,0,0,0.3) 0 2px 5px;
|
75 |
+
box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px,rgba(0, 0, 0, 0.3) 0 2px 5px;
|
76 |
+
}
|
77 |
+
|
78 |
+
ul#template-filter{ margin: 0px 0; padding: 0; padding-left: 0px; line-height: 64px; }
|
79 |
+
ul#template-filter li{ display: inline; }
|
80 |
+
ul#template-filter a{ margin-right: 0.5em; padding: 0em 1em; font-weight: bold; text-decoration: none; }
|
81 |
+
ul#template-filter .button-primary a:hover { color:#fff;}
|
82 |
+
ul#template-filter a.current{ background-color: #DDD; }
|
83 |
+
|
84 |
+
#template-item{ float: left; margin-right: 18px; overflow: hidden; margin: 0px 0 0 0; padding: 0; list-style: none; width: 300px; margin-bottom: 10px; }
|
85 |
+
#template-item div{ display: block; }
|
86 |
+
/* #template-item div a{ display: block; width: 163px; height: 120px; overflow: hidden; border: 1px solid #CDCDCD; background: #eee; }*/
|
87 |
+
#template-item li p{ font-size: 11px; line-height: 15px; color: #AAA; margin: 5px 0; }
|
88 |
+
#template-box .lp_tooltip_templates{
|
89 |
+
bottom: 6px;
|
90 |
+
position: absolute;
|
91 |
+
right: 8px;
|
92 |
}
|
css/new-customizer-admin.css
CHANGED
@@ -196,6 +196,12 @@ margin-left: -10px !important;
|
|
196 |
.mceIframeContainer.mceFirst.mceLast iframe {
|
197 |
width: 100% !important;
|
198 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
199 |
#lp_metabox_select_template {
|
200 |
margin-left: -20px !important;
|
201 |
width: 108%;
|
196 |
.mceIframeContainer.mceFirst.mceLast iframe {
|
197 |
width: 100% !important;
|
198 |
}
|
199 |
+
.mceIframeContainer.mceFirst.mceLast {
|
200 |
+
margin-top: 30px;
|
201 |
+
}
|
202 |
+
.mceToolbar.mceLeft.mceFirst.mceLast div {
|
203 |
+
background: #F5F5F5;
|
204 |
+
}
|
205 |
#lp_metabox_select_template {
|
206 |
margin-left: -20px !important;
|
207 |
width: 108%;
|
images/localhost.png
ADDED
Binary file
|
js/admin/admin.post-edit.js
CHANGED
@@ -1,41 +1,41 @@
|
|
1 |
jQuery(document).ready(function ($) {
|
2 |
|
3 |
-
|
4 |
// Isotope Styling
|
5 |
jQuery('#template-filter li').first().addClass('button-primary');
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
jQuery(this).parent().addClass('button-primary');
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
/*
|
40 |
|
41 |
var chtml= jQuery('#content-html');
|
@@ -46,16 +46,16 @@ jQuery(document).ready(function ($) {
|
|
46 |
switchEditors.switchto(ctmce[0]); // switch to tinymce
|
47 |
|
48 |
*/
|
49 |
-
|
50 |
-
|
51 |
|
52 |
var ctmce= jQuery('#content-tmce');
|
53 |
switchEditors.switchto(ctmce[0]); // switch to tinymce
|
54 |
|
55 |
var conversion_area = jQuery("#landing-page-myeditor-tmce");
|
56 |
switchEditors.switchto(conversion_area[0]); // switch to tinymce
|
57 |
-
|
58 |
-
|
59 |
jQuery('.inbound-wysiwyg-option textarea').each(function(){
|
60 |
var chtml= "#" + jQuery(this).attr('id') + '-html';
|
61 |
var ctmce= "#" + jQuery(this).attr('id') + '-tmce';
|
@@ -63,8 +63,8 @@ jQuery(document).ready(function ($) {
|
|
63 |
var tinymce_box = jQuery(ctmce);
|
64 |
switchEditors.switchto(tinymce_box[0]); // switch to tinymce
|
65 |
});
|
66 |
-
|
67 |
-
|
68 |
|
69 |
/* Tour Start JS */
|
70 |
var tourbutton = '<a class="" id="lp-tour" style="font-size:13px;">Need help? Take the tour</a>';
|
@@ -90,10 +90,10 @@ jQuery(document).ready(function ($) {
|
|
90 |
// Fix inactivate theme display
|
91 |
jQuery("#template-box a").live('click', function () {
|
92 |
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
|
98 |
});
|
99 |
|
@@ -177,62 +177,62 @@ jQuery(document).ready(function ($) {
|
|
177 |
jQuery('.lp_select_template').click(function(){
|
178 |
var template = jQuery(this).attr('id');
|
179 |
var label = jQuery(this).attr('label');
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
var current_template_meta = "#lp_" + current_template + "_custom_meta_box";
|
184 |
var current_template_h3 = "#lp_" + current_template + "_custom_meta_box h3";
|
185 |
var current_template_div = "#lp_" + current_template + "_custom_meta_box .handlediv";
|
186 |
var open_variation = jQuery("#open_variation").val();
|
187 |
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
|
197 |
-
|
198 |
|
199 |
jQuery(selected_template_id).parent().addClass("default_template_highlight").prepend(currentlabel);
|
200 |
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
jQuery(".wrap").fadeIn(500, function(){
|
237 |
});
|
238 |
});
|
@@ -324,7 +324,7 @@ jQuery(document).ready(function ($) {
|
|
324 |
|
325 |
jQuery('#lp-change-template-button').live('click', function () {
|
326 |
jQuery(".wrap").fadeOut(500,function(){
|
327 |
-
|
328 |
jQuery(".lp-template-selector-container").fadeIn(500, function(){
|
329 |
jQuery(".currently_selected").show();
|
330 |
jQuery('#lp-cancel-selection').show();
|
@@ -474,7 +474,7 @@ jQuery(document).ready(function ($) {
|
|
474 |
*/
|
475 |
|
476 |
|
477 |
-
|
478 |
var nonce_val = lp_post_edit_ui.wp_landing_page_meta_nonce; // NEED CORRECT NONCE
|
479 |
jQuery(document).on('mousedown', '.new-save-lp', function () {
|
480 |
var type_input = jQuery(this).parent().find("input").attr("type");
|
1 |
jQuery(document).ready(function ($) {
|
2 |
|
3 |
+
|
4 |
// Isotope Styling
|
5 |
jQuery('#template-filter li').first().addClass('button-primary');
|
6 |
+
// filter items when filter link is clicked
|
7 |
+
jQuery('#template-filter a').click(function(){
|
8 |
+
var selector = jQuery(this).attr('data-filter');
|
9 |
+
jQuery("ul#template-filter li").removeClass('button-primary');
|
10 |
jQuery(this).parent().addClass('button-primary');
|
11 |
+
|
12 |
+
return false;
|
13 |
+
});
|
14 |
+
|
15 |
+
/* Ajax loading tabs
|
16 |
+
jQuery.koolSwap({
|
17 |
+
swapBox : '#poststuff',
|
18 |
+
outDuration : 550,
|
19 |
+
inDuration : 600,
|
20 |
+
});
|
21 |
+
*/
|
22 |
+
|
23 |
+
jQuery("body").on('click', '#content-tmce, .wp-switch-editor.switch-tmce', function () {
|
24 |
+
$.cookie("lp-edit-view-choice", "editor", { path: '/', expires: 7 });
|
25 |
+
});
|
26 |
+
|
27 |
+
jQuery("body").on('click', '#content-html, .wp-switch-editor.switch-html', function () {
|
28 |
+
$.cookie("lp-edit-view-choice", "html", { path: '/', expires: 7 });
|
29 |
+
});
|
30 |
+
|
31 |
+
var which_editor = $.cookie("lp-edit-view-choice");
|
32 |
+
if(which_editor === null){
|
33 |
+
setTimeout(function() {
|
34 |
+
//jQuery("#content-tmce").click();
|
35 |
+
//jQuery(".wp-switch-editor.switch-tmce").click();
|
36 |
+
}, 1000);
|
37 |
+
|
38 |
+
}
|
39 |
/*
|
40 |
|
41 |
var chtml= jQuery('#content-html');
|
46 |
switchEditors.switchto(ctmce[0]); // switch to tinymce
|
47 |
|
48 |
*/
|
49 |
+
if(which_editor === 'editor'){
|
50 |
+
setTimeout(function() {
|
51 |
|
52 |
var ctmce= jQuery('#content-tmce');
|
53 |
switchEditors.switchto(ctmce[0]); // switch to tinymce
|
54 |
|
55 |
var conversion_area = jQuery("#landing-page-myeditor-tmce");
|
56 |
switchEditors.switchto(conversion_area[0]); // switch to tinymce
|
57 |
+
//jQuery("#content-tmce").click();
|
58 |
+
//jQuery(".wp-switch-editor.switch-tmce").click();
|
59 |
jQuery('.inbound-wysiwyg-option textarea').each(function(){
|
60 |
var chtml= "#" + jQuery(this).attr('id') + '-html';
|
61 |
var ctmce= "#" + jQuery(this).attr('id') + '-tmce';
|
63 |
var tinymce_box = jQuery(ctmce);
|
64 |
switchEditors.switchto(tinymce_box[0]); // switch to tinymce
|
65 |
});
|
66 |
+
}, 1000);
|
67 |
+
}
|
68 |
|
69 |
/* Tour Start JS */
|
70 |
var tourbutton = '<a class="" id="lp-tour" style="font-size:13px;">Need help? Take the tour</a>';
|
90 |
// Fix inactivate theme display
|
91 |
jQuery("#template-box a").live('click', function () {
|
92 |
|
93 |
+
setTimeout(function() {
|
94 |
+
jQuery('#TB_window iframe').contents().find("#customize-controls").hide();
|
95 |
+
jQuery('#TB_window iframe').contents().find(".wp-full-overlay.expanded").css("margin-left", "0px");
|
96 |
+
}, 600);
|
97 |
|
98 |
});
|
99 |
|
177 |
jQuery('.lp_select_template').click(function(){
|
178 |
var template = jQuery(this).attr('id');
|
179 |
var label = jQuery(this).attr('label');
|
180 |
+
var selected_template_id = "#" + template;
|
181 |
+
var currentlabel = jQuery(".currently_selected").show();
|
182 |
+
var current_template = jQuery("input#lp_select_template ").val();
|
183 |
var current_template_meta = "#lp_" + current_template + "_custom_meta_box";
|
184 |
var current_template_h3 = "#lp_" + current_template + "_custom_meta_box h3";
|
185 |
var current_template_div = "#lp_" + current_template + "_custom_meta_box .handlediv";
|
186 |
var open_variation = jQuery("#open_variation").val();
|
187 |
|
188 |
+
if (open_variation>0)
|
189 |
+
{
|
190 |
+
var variation_tag = "-"+open_variation;
|
191 |
+
}
|
192 |
+
else
|
193 |
+
{
|
194 |
+
var variation_tag = "";
|
195 |
+
}
|
196 |
|
197 |
+
jQuery("#template-box.default_template_highlight").removeClass("default_template_highlight");
|
198 |
|
199 |
jQuery(selected_template_id).parent().addClass("default_template_highlight").prepend(currentlabel);
|
200 |
|
201 |
+
jQuery(".lp-template-selector-container").fadeOut(500,function(){
|
202 |
+
jQuery('#lp_metabox_select_template input').remove();
|
203 |
+
jQuery('#lp_metabox_select_template .form-table').remove();
|
204 |
+
|
205 |
+
var ajax_data = {
|
206 |
+
action: 'lp_get_template_meta',
|
207 |
+
selected_template: template,
|
208 |
+
post_id: lp_post_edit_ui.post_id,
|
209 |
+
};
|
210 |
+
|
211 |
+
jQuery.ajax({
|
212 |
+
type: "POST",
|
213 |
+
url: lp_post_edit_ui.ajaxurl,
|
214 |
+
data: ajax_data,
|
215 |
+
dataType: 'html',
|
216 |
+
timeout: 7000,
|
217 |
+
success: function (response) {
|
218 |
+
//alert(response);
|
219 |
+
var html = '<input id="lp_select_template" type="hidden" value="'+template+'" name="lp-selected-template'+variation_tag+'">'
|
220 |
+
+ '<input type="hidden" value="'+lp_post_edit_ui.lp_template_nonce+'" name="lp_lp_custom_fields_nonce">'
|
221 |
+
+ '<h3 class="hndle" style="cursor: default;">'
|
222 |
+
+ '<span>'
|
223 |
+
+ '<small>'+ template +' Options:</small>'
|
224 |
+
+ '</span>'
|
225 |
+
+ '</h3>'
|
226 |
+
+ response;
|
227 |
+
|
228 |
+
jQuery('#lp_metabox_select_template #template-display-options').html(html);
|
229 |
+
jQuery('.time-picker').timepicker({ 'timeFormat': 'H:i' });
|
230 |
+
|
231 |
+
},
|
232 |
+
error: function(request, status, err) {
|
233 |
+
alert(status);
|
234 |
+
}
|
235 |
+
});
|
236 |
jQuery(".wrap").fadeIn(500, function(){
|
237 |
});
|
238 |
});
|
324 |
|
325 |
jQuery('#lp-change-template-button').live('click', function () {
|
326 |
jQuery(".wrap").fadeOut(500,function(){
|
327 |
+
|
328 |
jQuery(".lp-template-selector-container").fadeIn(500, function(){
|
329 |
jQuery(".currently_selected").show();
|
330 |
jQuery('#lp-cancel-selection').show();
|
474 |
*/
|
475 |
|
476 |
|
477 |
+
// SAVE META
|
478 |
var nonce_val = lp_post_edit_ui.wp_landing_page_meta_nonce; // NEED CORRECT NONCE
|
479 |
jQuery(document).on('mousedown', '.new-save-lp', function () {
|
480 |
var type_input = jQuery(this).parent().find("input").attr("type");
|
js/admin/admin.post-new.js
CHANGED
@@ -8,7 +8,7 @@ jQuery(document).ready(function ($) {
|
|
8 |
});
|
9 |
|
10 |
jQuery("#submitdiv").siblings().hide();
|
11 |
-
|
12 |
jQuery("#title-prompt-text").text("Name Your New Landing Page");
|
13 |
|
14 |
var titledescription = jQuery("<span id='descriptor'>This will be the administrative title your landing page, the main headline is created in the next step</span>");
|
@@ -52,7 +52,7 @@ jQuery(document).ready(function ($) {
|
|
52 |
|
53 |
jQuery('#lp-change-template-button').live('click', function () {
|
54 |
jQuery(".wrap").fadeOut(500,function(){
|
55 |
-
|
56 |
jQuery(".lp-template-selector-container").fadeIn(500, function(){
|
57 |
jQuery('#lp-cancel-selection').show();
|
58 |
});
|
@@ -65,7 +65,7 @@ jQuery(document).ready(function ($) {
|
|
65 |
var selector = jQuery(this).attr('data-filter');
|
66 |
jQuery("ul#template-filter li").removeClass('button-primary');
|
67 |
jQuery(this).parent().addClass('button-primary');
|
68 |
-
|
69 |
return false;
|
70 |
});
|
71 |
|
8 |
});
|
9 |
|
10 |
jQuery("#submitdiv").siblings().hide();
|
11 |
+
|
12 |
jQuery("#title-prompt-text").text("Name Your New Landing Page");
|
13 |
|
14 |
var titledescription = jQuery("<span id='descriptor'>This will be the administrative title your landing page, the main headline is created in the next step</span>");
|
52 |
|
53 |
jQuery('#lp-change-template-button').live('click', function () {
|
54 |
jQuery(".wrap").fadeOut(500,function(){
|
55 |
+
|
56 |
jQuery(".lp-template-selector-container").fadeIn(500, function(){
|
57 |
jQuery('#lp-cancel-selection').show();
|
58 |
});
|
65 |
var selector = jQuery(this).attr('data-filter');
|
66 |
jQuery("ul#template-filter li").removeClass('button-primary');
|
67 |
jQuery(this).parent().addClass('button-primary');
|
68 |
+
|
69 |
return false;
|
70 |
});
|
71 |
|
js/libraries/isotope/css/style.css
DELETED
@@ -1,752 +0,0 @@
|
|
1 |
-
|
2 |
-
/**** Isotope Filtering ****/
|
3 |
-
|
4 |
-
.isotope-item {
|
5 |
-
z-index: 2;
|
6 |
-
}
|
7 |
-
|
8 |
-
.isotope-hidden.isotope-item {
|
9 |
-
pointer-events: none;
|
10 |
-
z-index: 1;
|
11 |
-
}
|
12 |
-
|
13 |
-
/**** Isotope CSS3 transitions ****/
|
14 |
-
|
15 |
-
.isotope,
|
16 |
-
.isotope .isotope-item {
|
17 |
-
-webkit-transition-duration: 0.8s;
|
18 |
-
-moz-transition-duration: 0.8s;
|
19 |
-
-ms-transition-duration: 0.8s;
|
20 |
-
-o-transition-duration: 0.8s;
|
21 |
-
transition-duration: 0.8s;
|
22 |
-
}
|
23 |
-
|
24 |
-
.isotope {
|
25 |
-
-webkit-transition-property: height, width;
|
26 |
-
-moz-transition-property: height, width;
|
27 |
-
-ms-transition-property: height, width;
|
28 |
-
-o-transition-property: height, width;
|
29 |
-
transition-property: height, width;
|
30 |
-
}
|
31 |
-
|
32 |
-
.isotope .isotope-item {
|
33 |
-
-webkit-transition-property: -webkit-transform, opacity;
|
34 |
-
-moz-transition-property: -moz-transform, opacity;
|
35 |
-
-ms-transition-property: -ms-transform, opacity;
|
36 |
-
-o-transition-property: -o-transform, opacity;
|
37 |
-
transition-property: transform, opacity;
|
38 |
-
}
|
39 |
-
|
40 |
-
/**** disabling Isotope CSS3 transitions ****/
|
41 |
-
|
42 |
-
.isotope.no-transition,
|
43 |
-
.isotope.no-transition .isotope-item,
|
44 |
-
.isotope .isotope-item.no-transition {
|
45 |
-
-webkit-transition-duration: 0s;
|
46 |
-
-moz-transition-duration: 0s;
|
47 |
-
-ms-transition-duration: 0s;
|
48 |
-
-o-transition-duration: 0s;
|
49 |
-
transition-duration: 0s;
|
50 |
-
}
|
51 |
-
|
52 |
-
/* End: Recommended Isotope styles */
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
/* disable CSS transitions for containers with infinite scrolling*/
|
57 |
-
.isotope.infinite-scrolling {
|
58 |
-
-webkit-transition: none;
|
59 |
-
-moz-transition: none;
|
60 |
-
-ms-transition: none;
|
61 |
-
-o-transition: none;
|
62 |
-
transition: none;
|
63 |
-
}
|
64 |
-
|
65 |
-
|
66 |
-
/**** Base styles ****/
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
#container {
|
71 |
-
border: 1px solid #666;
|
72 |
-
padding: 5px;
|
73 |
-
margin-bottom: 20px;
|
74 |
-
}
|
75 |
-
|
76 |
-
.element {
|
77 |
-
width: 110px;
|
78 |
-
height: 110px;
|
79 |
-
margin: 5px;
|
80 |
-
float: left;
|
81 |
-
overflow: hidden;
|
82 |
-
position: relative;
|
83 |
-
background: #888;
|
84 |
-
color: #222;
|
85 |
-
-webkit-border-top-right-radius: 1.2em;
|
86 |
-
-moz-border-radius-topright: 1.2em;
|
87 |
-
border-top-right-radius: 1.2em;
|
88 |
-
}
|
89 |
-
|
90 |
-
.element.alkali { background: #F00; background: hsl( 0, 100%, 50%); }
|
91 |
-
.element.alkaline-earth { background: #F80; background: hsl( 36, 100%, 50%); }
|
92 |
-
.element.lanthanoid { background: #FF0; background: hsl( 72, 100%, 50%); }
|
93 |
-
.element.actinoid { background: #0F0; background: hsl( 108, 100%, 50%); }
|
94 |
-
.element.transition { background: #0F8; background: hsl( 144, 100%, 50%); }
|
95 |
-
.element.post-transition { background: #0FF; background: hsl( 180, 100%, 50%); }
|
96 |
-
.element.metalloid { background: #08F; background: hsl( 216, 100%, 50%); }
|
97 |
-
.element.other.nonmetal { background: #00F; background: hsl( 252, 100%, 50%); }
|
98 |
-
.element.halogen { background: #F0F; background: hsl( 288, 100%, 50%); }
|
99 |
-
.element.noble-gas { background: #F08; background: hsl( 324, 100%, 50%); }
|
100 |
-
|
101 |
-
|
102 |
-
.element * {
|
103 |
-
position: absolute;
|
104 |
-
margin: 0;
|
105 |
-
}
|
106 |
-
|
107 |
-
.element .symbol {
|
108 |
-
left: 0.2em;
|
109 |
-
top: 0.4em;
|
110 |
-
font-size: 3.8em;
|
111 |
-
line-height: 1.0em;
|
112 |
-
color: #FFF;
|
113 |
-
}
|
114 |
-
.element.large .symbol {
|
115 |
-
font-size: 4.5em;
|
116 |
-
}
|
117 |
-
|
118 |
-
.element.fake .symbol {
|
119 |
-
color: #000;
|
120 |
-
}
|
121 |
-
|
122 |
-
.element .name {
|
123 |
-
left: 0.5em;
|
124 |
-
bottom: 1.6em;
|
125 |
-
font-size: 1.05em;
|
126 |
-
}
|
127 |
-
|
128 |
-
.element .weight {
|
129 |
-
font-size: 0.9em;
|
130 |
-
left: 0.5em;
|
131 |
-
bottom: 0.5em;
|
132 |
-
}
|
133 |
-
|
134 |
-
.element .number {
|
135 |
-
font-size: 1.25em;
|
136 |
-
font-weight: bold;
|
137 |
-
color: hsla(0,0%,0%,.5);
|
138 |
-
right: 0.5em;
|
139 |
-
top: 0.5em;
|
140 |
-
}
|
141 |
-
|
142 |
-
.variable-sizes .element.width2 { width: 230px; }
|
143 |
-
|
144 |
-
.variable-sizes .element.height2 { height: 230px; }
|
145 |
-
|
146 |
-
.variable-sizes .element.width2.height2 {
|
147 |
-
font-size: 2.0em;
|
148 |
-
}
|
149 |
-
|
150 |
-
.element.large,
|
151 |
-
.variable-sizes .element.large,
|
152 |
-
.variable-sizes .element.large.width2.height2 {
|
153 |
-
font-size: 3.0em;
|
154 |
-
width: 350px;
|
155 |
-
height: 350px;
|
156 |
-
z-index: 100;
|
157 |
-
}
|
158 |
-
|
159 |
-
.clickable .element:hover {
|
160 |
-
cursor: pointer;
|
161 |
-
}
|
162 |
-
|
163 |
-
.clickable .element:hover h3 {
|
164 |
-
text-shadow:
|
165 |
-
0 0 10px white,
|
166 |
-
0 0 10px white
|
167 |
-
;
|
168 |
-
}
|
169 |
-
|
170 |
-
.clickable .element:hover h2 {
|
171 |
-
color: white;
|
172 |
-
}
|
173 |
-
|
174 |
-
/**** Example Options ****/
|
175 |
-
|
176 |
-
#options {
|
177 |
-
padding-bottom: 1.0em;
|
178 |
-
}
|
179 |
-
|
180 |
-
#options h3 {
|
181 |
-
margin-bottom: 0.2em;
|
182 |
-
font-size: 15px;
|
183 |
-
}
|
184 |
-
|
185 |
-
#options h4 {
|
186 |
-
font-weight: bold;
|
187 |
-
}
|
188 |
-
|
189 |
-
#options ul {
|
190 |
-
margin: 0;
|
191 |
-
list-style: none;
|
192 |
-
}
|
193 |
-
|
194 |
-
#options ul ul {
|
195 |
-
margin-left: 1.5em;
|
196 |
-
}
|
197 |
-
|
198 |
-
#options li {
|
199 |
-
float: left;
|
200 |
-
margin-bottom: 0.2em;
|
201 |
-
}
|
202 |
-
|
203 |
-
#options li a {
|
204 |
-
display: block;
|
205 |
-
padding: 0.4em 0.5em;
|
206 |
-
background-color: #DDD;
|
207 |
-
color: #222;
|
208 |
-
font-weight: bold;
|
209 |
-
text-shadow: 0 1px hsla( 0, 0%, 100%, 0.5 );
|
210 |
-
background-image: -webkit-linear-gradient( top, hsla( 0, 0%, 100%, 0.5 ), hsla( 0, 0%, 100%, 0.0 ) );
|
211 |
-
background-image: -moz-linear-gradient( top, hsla( 0, 0%, 100%, 0.5 ), hsla( 0, 0%, 100%, 0.0 ) );
|
212 |
-
background-image: -ms-linear-gradient( top, hsla( 0, 0%, 100%, 0.5 ), hsla( 0, 0%, 100%, 0.0 ) );
|
213 |
-
background-image: -o-linear-gradient( top, hsla( 0, 0%, 100%, 0.5 ), hsla( 0, 0%, 100%, 0.0 ) );
|
214 |
-
background-image: linear-gradient( top, hsla( 0, 0%, 100%, 0.5 ), hsla( 0, 0%, 100%, 0.0 ) );
|
215 |
-
}
|
216 |
-
|
217 |
-
#options li a:hover {
|
218 |
-
background-color: #5BF;
|
219 |
-
}
|
220 |
-
|
221 |
-
#options li a:active {
|
222 |
-
background-color: #39D;
|
223 |
-
-webkit-box-shadow: inset 0 2px 8px hsla( 0, 0%, 0%, 0.6 );
|
224 |
-
-moz-box-shadow: inset 0 2px 8px hsla( 0, 0%, 0%, 0.6 );
|
225 |
-
-o-box-shadow: inset 0 2px 8px hsla( 0, 0%, 0%, 0.6 );
|
226 |
-
box-shadow: inset 0 2px 8px hsla( 0, 0%, 0%, 0.6 );
|
227 |
-
}
|
228 |
-
|
229 |
-
#options li a {
|
230 |
-
border-left: 1px solid hsla( 0, 0%, 100%, 0.3 );
|
231 |
-
border-right: 1px solid hsla( 0, 0%, 0%, 0.2 );
|
232 |
-
}
|
233 |
-
|
234 |
-
#options li:first-child a {
|
235 |
-
border-radius: 7px 0 0 7px;
|
236 |
-
border-left: none;
|
237 |
-
}
|
238 |
-
|
239 |
-
#options li:last-child a {
|
240 |
-
border-radius: 0 7px 7px 0;
|
241 |
-
}
|
242 |
-
|
243 |
-
#options li a.selected {
|
244 |
-
background-color: #13F;
|
245 |
-
text-shadow: none;
|
246 |
-
color: white;
|
247 |
-
}
|
248 |
-
|
249 |
-
/* Combination filter options*/
|
250 |
-
|
251 |
-
#options .option-combo {
|
252 |
-
display: inline-block;
|
253 |
-
float: left;
|
254 |
-
margin-right: 10px;
|
255 |
-
}
|
256 |
-
|
257 |
-
#options .option-combo ul {
|
258 |
-
margin-right: 20px;
|
259 |
-
display: inline-block;
|
260 |
-
}
|
261 |
-
|
262 |
-
#options .option-combo h2,
|
263 |
-
#options .option-combo h4 {
|
264 |
-
line-height: 34px;
|
265 |
-
margin-bottom: 0;
|
266 |
-
margin-right: 5px;
|
267 |
-
display: inline-block;
|
268 |
-
vertical-align: top;
|
269 |
-
}
|
270 |
-
|
271 |
-
/* Color shapes */
|
272 |
-
|
273 |
-
.color-shape {
|
274 |
-
width: 70px;
|
275 |
-
height: 70px;
|
276 |
-
margin: 5px;
|
277 |
-
float: left;
|
278 |
-
}
|
279 |
-
|
280 |
-
.color-shape.round {
|
281 |
-
-webkit-border-radius: 35px;
|
282 |
-
-moz-border-radius: 35px;
|
283 |
-
border-radius: 35px;
|
284 |
-
}
|
285 |
-
|
286 |
-
.color-shape.big.round {
|
287 |
-
-webkit-border-radius: 75px;
|
288 |
-
-moz-border-radius: 75px;
|
289 |
-
border-radius: 75px;
|
290 |
-
}
|
291 |
-
|
292 |
-
.color-shape.red { background: red; }
|
293 |
-
.color-shape.blue { background: blue; }
|
294 |
-
.color-shape.yellow { background: yellow; }
|
295 |
-
|
296 |
-
.color-shape.wide, .color-shape.big { width: 150px; }
|
297 |
-
.color-shape.tall, .color-shape.big { height: 150px; }
|
298 |
-
|
299 |
-
.color-shape a {
|
300 |
-
display: block;
|
301 |
-
height: 100%;
|
302 |
-
}
|
303 |
-
|
304 |
-
.color-shape a:hover {
|
305 |
-
background: white;
|
306 |
-
background: hsla( 0, 0%, 100%, 0.5 );
|
307 |
-
}
|
308 |
-
|
309 |
-
/**** Horizontal ****/
|
310 |
-
|
311 |
-
.horizontal #container {
|
312 |
-
height: 80%;
|
313 |
-
}
|
314 |
-
|
315 |
-
#copy {
|
316 |
-
max-width: 640px;
|
317 |
-
}
|
318 |
-
|
319 |
-
/**** Photo demo ****/
|
320 |
-
|
321 |
-
.photos .photo {
|
322 |
-
width: 320px;
|
323 |
-
margin: 5px;
|
324 |
-
float: left;
|
325 |
-
}
|
326 |
-
|
327 |
-
.photos .photo img {
|
328 |
-
display: block;
|
329 |
-
width: 100%;
|
330 |
-
}
|
331 |
-
|
332 |
-
|
333 |
-
.demos #content {
|
334 |
-
height: 100%;
|
335 |
-
}
|
336 |
-
|
337 |
-
/**** Docs ****/
|
338 |
-
|
339 |
-
.docs #content {
|
340 |
-
max-width: 640px;
|
341 |
-
}
|
342 |
-
|
343 |
-
.docs #content a:hover {
|
344 |
-
border-bottom: 1px dotted;
|
345 |
-
}
|
346 |
-
|
347 |
-
/**** Doc page nav ****/
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
#site-nav {
|
352 |
-
width: 200px;
|
353 |
-
position: absolute;
|
354 |
-
left: 10px;
|
355 |
-
top: 0px;
|
356 |
-
padding-top: 20px;
|
357 |
-
font-size: 12px;
|
358 |
-
}
|
359 |
-
|
360 |
-
#site-nav h1 {
|
361 |
-
font-size: 24px;
|
362 |
-
margin-bottom: 0.5em;
|
363 |
-
margin-top: 0;
|
364 |
-
font-weight: bold;
|
365 |
-
font-family: 'Helvetica Neue', Arial, sans-serif;
|
366 |
-
}
|
367 |
-
|
368 |
-
#site-nav h2 {
|
369 |
-
font-size: 17px;
|
370 |
-
font-weight: normal;
|
371 |
-
margin: 0 0 0.3em;
|
372 |
-
border-top: none;
|
373 |
-
}
|
374 |
-
|
375 |
-
#site-nav h1 a { color: #4FB; }
|
376 |
-
#site-nav h1 a:hover { color: #4BF; }
|
377 |
-
|
378 |
-
#site-nav ul {
|
379 |
-
list-style: none;
|
380 |
-
margin: 0 0 1.0em;
|
381 |
-
font-weight: bold;
|
382 |
-
}
|
383 |
-
|
384 |
-
#site-nav ul ul { margin-bottom: 0; }
|
385 |
-
|
386 |
-
#site-nav ul a {
|
387 |
-
display: block;
|
388 |
-
border: none;
|
389 |
-
padding: 1px 5px;
|
390 |
-
}
|
391 |
-
|
392 |
-
#site-nav ul .current a {
|
393 |
-
background: hsla( 0, 0%, 0%, 0.3 );
|
394 |
-
color: #1BF;
|
395 |
-
}
|
396 |
-
#site-nav ul a:hover,
|
397 |
-
#site-nav ul .current a:hover { color: white; }
|
398 |
-
|
399 |
-
#site-nav ul .current .toc a {
|
400 |
-
font-size: 12px;
|
401 |
-
padding-left: 1.2em;
|
402 |
-
font-weight: normal;
|
403 |
-
}
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
footer {
|
409 |
-
font-size: 12px;
|
410 |
-
font-style: italic;
|
411 |
-
border-top: 1px solid #333;
|
412 |
-
padding: 0.8em 0;
|
413 |
-
}
|
414 |
-
|
415 |
-
pre {
|
416 |
-
padding: 10px;
|
417 |
-
}
|
418 |
-
|
419 |
-
pre, code {
|
420 |
-
background: black;
|
421 |
-
color: white;
|
422 |
-
font-family: 'Monaco', monospace, sans-serif;
|
423 |
-
}
|
424 |
-
|
425 |
-
#content code {
|
426 |
-
font-size: 12px;
|
427 |
-
}
|
428 |
-
|
429 |
-
#content pre {
|
430 |
-
line-height: 1.6em;
|
431 |
-
}
|
432 |
-
|
433 |
-
h3#options {
|
434 |
-
padding-bottom: 0;
|
435 |
-
}
|
436 |
-
|
437 |
-
.option-def dl dt,
|
438 |
-
.option-def dl dd {
|
439 |
-
float: left;
|
440 |
-
padding: 0 1.2em;;
|
441 |
-
background: #161616;
|
442 |
-
line-height: 36px;
|
443 |
-
height: 36px;
|
444 |
-
}
|
445 |
-
|
446 |
-
.option-def dl.header dt,
|
447 |
-
.option-def dl.header dd {
|
448 |
-
background: #444;
|
449 |
-
}
|
450 |
-
|
451 |
-
.option-def dl .option-type {
|
452 |
-
font-size: 13px;
|
453 |
-
color: #AAA;
|
454 |
-
font-style: italic;
|
455 |
-
}
|
456 |
-
|
457 |
-
.option-def dl dd {
|
458 |
-
border-left: 1px solid #222;
|
459 |
-
}
|
460 |
-
|
461 |
-
/* Tagline */
|
462 |
-
|
463 |
-
.docs .tagline {
|
464 |
-
font-size: 22px;
|
465 |
-
font-weight: 300;
|
466 |
-
}
|
467 |
-
|
468 |
-
/* as-is from MIT */
|
469 |
-
|
470 |
-
.docs .as-is {
|
471 |
-
font-size: 95%;
|
472 |
-
}
|
473 |
-
|
474 |
-
/* Commercial license blurb */
|
475 |
-
|
476 |
-
.docs #commercial {
|
477 |
-
background: white;
|
478 |
-
padding: 10px;
|
479 |
-
font-size: 14px;
|
480 |
-
color: #1F1F1D;
|
481 |
-
}
|
482 |
-
|
483 |
-
.docs #commercial a { font-weight: bold;}
|
484 |
-
|
485 |
-
/**** Pygments ****/
|
486 |
-
|
487 |
-
code .s1,
|
488 |
-
code .s { color: #78BD55; } /* string */
|
489 |
-
code .mi, /* integer */
|
490 |
-
code .cp, /* doctype */
|
491 |
-
code .kc { color: #5298D4; } /*boolean*/
|
492 |
-
code .k { color: #E39B79; } /* keyword */
|
493 |
-
code .kd, /* storage */
|
494 |
-
code .na { color: #A9D866; } /* markup attribute */
|
495 |
-
code .p { color: #EDB; } /* punctuation */
|
496 |
-
code .o { color: #F63; } /* operator */
|
497 |
-
code .nb { color: #AA97AC;} /* support */
|
498 |
-
|
499 |
-
/* comment */
|
500 |
-
code .c,
|
501 |
-
code .c1 { color: #666; font-style: italic; }
|
502 |
-
|
503 |
-
code .nt { color: #A0C8FC; } /* Markup open tag */
|
504 |
-
|
505 |
-
code .nf { color: #9EA8B8; } /* css id */
|
506 |
-
code .nc { color: #A78352; } /* CSS class */
|
507 |
-
code .m { color: #DE8E50; } /* CSS value */
|
508 |
-
code .nd { color: #9FAD7E; } /* CSS pseudo selector */
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
/**** Super list ****/
|
513 |
-
|
514 |
-
|
515 |
-
/**** Sites using Isotope ****/
|
516 |
-
|
517 |
-
#sites h2 {
|
518 |
-
display: none;
|
519 |
-
padding: 0.4em;
|
520 |
-
line-height: 32px;
|
521 |
-
margin-bottom: 0.4em;
|
522 |
-
-webkit-transition: background-color 0.8s;
|
523 |
-
-moz-transition: background-color 0.8s;
|
524 |
-
-o-transition: background-color 0.8s;
|
525 |
-
transition: background-color 0.8s;
|
526 |
-
}
|
527 |
-
|
528 |
-
#sites h2 img {
|
529 |
-
display: inline-block;
|
530 |
-
margin-right: 0.4em;
|
531 |
-
vertical-align: bottom;
|
532 |
-
}
|
533 |
-
|
534 |
-
#sites h2.loading {
|
535 |
-
background: white;
|
536 |
-
color: #222;
|
537 |
-
}
|
538 |
-
#sites h2.error {
|
539 |
-
background: red;
|
540 |
-
color: #222;
|
541 |
-
}
|
542 |
-
|
543 |
-
|
544 |
-
#sites ul {
|
545 |
-
margin: 0;
|
546 |
-
}
|
547 |
-
|
548 |
-
.super-list .example {
|
549 |
-
list-style: none;
|
550 |
-
float: left;
|
551 |
-
width: 230px;
|
552 |
-
margin: 5px;
|
553 |
-
}
|
554 |
-
|
555 |
-
.super-list .example a,
|
556 |
-
.super-list .example b,
|
557 |
-
.super-list .example img {
|
558 |
-
display: block;
|
559 |
-
}
|
560 |
-
|
561 |
-
.super-list .example img { width: 100%; }
|
562 |
-
|
563 |
-
.super-list .example a {
|
564 |
-
background: #1F1E1D;
|
565 |
-
}
|
566 |
-
|
567 |
-
.super-list .example a:hover {
|
568 |
-
background: white;
|
569 |
-
color: #111;
|
570 |
-
}
|
571 |
-
|
572 |
-
.super-list .example b {
|
573 |
-
font-weight: bold;
|
574 |
-
line-height: 1.3em;
|
575 |
-
padding: 3px;
|
576 |
-
padding-top: 8px;
|
577 |
-
}
|
578 |
-
|
579 |
-
.super-list .link {
|
580 |
-
float: left;
|
581 |
-
position: relative;
|
582 |
-
font-size: 24px;
|
583 |
-
line-height: 1.2em;
|
584 |
-
font-weight: 300;
|
585 |
-
margin: 5px;
|
586 |
-
}
|
587 |
-
|
588 |
-
.super-list .link {
|
589 |
-
width: 230px;
|
590 |
-
height: 110px;
|
591 |
-
}
|
592 |
-
|
593 |
-
.super-list .link a {
|
594 |
-
display: block;
|
595 |
-
padding: 10px;
|
596 |
-
padding-left: 65px;
|
597 |
-
height: 90px;
|
598 |
-
background: #1F1E1D;
|
599 |
-
color: #FE5;
|
600 |
-
-webkit-border-radius: 14px;
|
601 |
-
-moz-border-radius: 14px;
|
602 |
-
border-radius: 14px;
|
603 |
-
}
|
604 |
-
|
605 |
-
.super-list .link a:before {
|
606 |
-
content: '➔';
|
607 |
-
font-size: 70px;
|
608 |
-
position: absolute;
|
609 |
-
top: 30px;
|
610 |
-
left: 5px;
|
611 |
-
-webkit-transform: rotate(90deg);
|
612 |
-
-moz-transform: rotate(90deg);
|
613 |
-
-ms-transform: rotate(90deg);
|
614 |
-
-o-transform: rotate(90deg);
|
615 |
-
transform: rotate(90deg);
|
616 |
-
}
|
617 |
-
|
618 |
-
.super-list .link.away a:before {
|
619 |
-
top: 25px;
|
620 |
-
left: 0px;
|
621 |
-
-webkit-transform: rotate(-45deg);
|
622 |
-
-moz-transform: rotate(-45deg);
|
623 |
-
-ms-transform: rotate(-45deg);
|
624 |
-
-o-transform: rotate(-45deg);
|
625 |
-
transform: rotate(-45deg);
|
626 |
-
}
|
627 |
-
|
628 |
-
.super-list .link a:hover {
|
629 |
-
background: #E58;
|
630 |
-
color: white;
|
631 |
-
}
|
632 |
-
|
633 |
-
.super-list .feature .name {
|
634 |
-
bottom: auto;
|
635 |
-
top: 140px;
|
636 |
-
left: 18px;
|
637 |
-
font-size: 20px;
|
638 |
-
}
|
639 |
-
|
640 |
-
/**** BIG Graph ****/
|
641 |
-
|
642 |
-
.big-graph {
|
643 |
-
background: white;
|
644 |
-
height: 600px;
|
645 |
-
margin: 20px auto;
|
646 |
-
}
|
647 |
-
|
648 |
-
.big-graph .project {
|
649 |
-
width: 45px;
|
650 |
-
height: 45px;
|
651 |
-
float: left;
|
652 |
-
}
|
653 |
-
|
654 |
-
.big-graph .project .icon {
|
655 |
-
pointer-events: none;
|
656 |
-
width: 31px;
|
657 |
-
height: 31px;
|
658 |
-
background: white;
|
659 |
-
margin-left: 7px;
|
660 |
-
-webkit-transition: -webkit-transform 0.25s;
|
661 |
-
-moz-transition: -moz-transform 0.25s;
|
662 |
-
-ms-transition: -ms-transform 0.25s;
|
663 |
-
-o-transition: -o-transform 0.25s;
|
664 |
-
transition: transform 0.25s;
|
665 |
-
}
|
666 |
-
|
667 |
-
.big-graph .project:hover {
|
668 |
-
z-index: 5;
|
669 |
-
|
670 |
-
}
|
671 |
-
|
672 |
-
.big-graph .project:hover .icon {
|
673 |
-
-webkit-transform: scale(3);
|
674 |
-
-moz-transform: scale(3);
|
675 |
-
-ms-transform: scale(3);
|
676 |
-
-o-transform: scale(3);
|
677 |
-
transform: scale(3);
|
678 |
-
}
|
679 |
-
|
680 |
-
.big-graph .project.commercial .icon { background: #6B6B6B; }
|
681 |
-
.big-graph .project.urbanism .icon { background: #00CF00; }
|
682 |
-
.big-graph .project.public-space .icon { background: #FF8D00; }
|
683 |
-
.big-graph .project.culture .icon { background: #D61919; }
|
684 |
-
.big-graph .project.body-culture .icon { background: #00ECFF; }
|
685 |
-
.big-graph .project.health .icon { background: #FF2251; }
|
686 |
-
.big-graph .project.education .icon { background: #00A700; }
|
687 |
-
.big-graph .project.housing .icon { background: #FF02FF; }
|
688 |
-
.big-graph .project.hotel .icon { background: #0000C3; }
|
689 |
-
.big-graph .project.media .icon { background: #292929; }
|
690 |
-
|
691 |
-
.big-graph .project p {
|
692 |
-
line-height: 14px;
|
693 |
-
font-size: 10.5px;
|
694 |
-
color: black;
|
695 |
-
margin-left: 7px;
|
696 |
-
}
|
697 |
-
|
698 |
-
/**** Infinite Scroll ****/
|
699 |
-
|
700 |
-
#infscr-loading {
|
701 |
-
position: fixed;
|
702 |
-
text-align: center;
|
703 |
-
bottom: 30px;
|
704 |
-
left: 42%;
|
705 |
-
z-index: 100;
|
706 |
-
background: white;
|
707 |
-
background: hsla( 0, 0%, 100%, 0.9 );
|
708 |
-
padding: 20px;
|
709 |
-
color: #222;
|
710 |
-
font-size: 15px;
|
711 |
-
font-weight: bold;
|
712 |
-
-webkit-border-radius: 10px;
|
713 |
-
-moz-border-radius: 10px;
|
714 |
-
border-radius: 10px;
|
715 |
-
}
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
/* The Magnificent Clearfix: nicolasgallagher.com/micro-clearfix-hack/ */
|
720 |
-
.clearfix:before, .clearfix:after { content: ""; display: table; }
|
721 |
-
.clearfix:after { clear: both; }
|
722 |
-
.clearfix { zoom: 1; }
|
723 |
-
|
724 |
-
.template-thumbnail
|
725 |
-
{
|
726 |
-
width:100%;
|
727 |
-
height:190px;
|
728 |
-
-webkit-border-radius: 4px;
|
729 |
-
-khtml-border-radius: 4px;
|
730 |
-
-moz-border-radius: 4px;
|
731 |
-
border-radius: 4px;
|
732 |
-
background-color: #A9A9A9;
|
733 |
-
-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px,rgba(0, 0, 0, 0.3) 0 2px 5px;
|
734 |
-
-moz-box-shadow: rgba(0,0,0,0.2) 0 0 0 1px,rgba(0,0,0,0.3) 0 2px 5px;
|
735 |
-
box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px,rgba(0, 0, 0, 0.3) 0 2px 5px;
|
736 |
-
}
|
737 |
-
|
738 |
-
ul#template-filter{ margin: 0px 0; padding: 0; padding-left: 0px; line-height: 64px; }
|
739 |
-
ul#template-filter li{ display: inline; }
|
740 |
-
ul#template-filter a{ margin-right: 0.5em; padding: 0em 1em; font-weight: bold; text-decoration: none; }
|
741 |
-
ul#template-filter .button-primary a:hover { color:#fff;}
|
742 |
-
ul#template-filter a.current{ background-color: #DDD; }
|
743 |
-
|
744 |
-
#template-item{ float: left; margin-right: 18px; overflow: hidden; margin: 0px 0 0 0; padding: 0; list-style: none; width: 300px; margin-bottom: 10px; }
|
745 |
-
#template-item div{ display: block; }
|
746 |
-
/* #template-item div a{ display: block; width: 163px; height: 120px; overflow: hidden; border: 1px solid #CDCDCD; background: #eee; }*/
|
747 |
-
#template-item li p{ font-size: 11px; line-height: 15px; color: #AAA; margin: 5px 0; }
|
748 |
-
#template-box .lp_tooltip_templates{
|
749 |
-
bottom: 6px;
|
750 |
-
position: absolute;
|
751 |
-
right: 8px;
|
752 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/jquery.isotope.js
DELETED
@@ -1,1406 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* Isotope v1.5.23
|
3 |
-
* An exquisite jQuery plugin for magical layouts
|
4 |
-
* http://isotope.metafizzy.co
|
5 |
-
*
|
6 |
-
* Commercial use requires one-time license fee
|
7 |
-
* http://metafizzy.co/#licenses
|
8 |
-
*
|
9 |
-
* Copyright 2012 David DeSandro / Metafizzy
|
10 |
-
*/
|
11 |
-
|
12 |
-
/*jshint asi: true, browser: true, curly: true, eqeqeq: true, forin: false, immed: false, newcap: true, noempty: true, strict: true, undef: true */
|
13 |
-
/*global jQuery: false */
|
14 |
-
|
15 |
-
(function( window, $, undefined ){
|
16 |
-
|
17 |
-
'use strict';
|
18 |
-
|
19 |
-
// get global vars
|
20 |
-
var document = window.document;
|
21 |
-
var Modernizr = window.Modernizr;
|
22 |
-
|
23 |
-
// helper function
|
24 |
-
var capitalize = function( str ) {
|
25 |
-
return str.charAt(0).toUpperCase() + str.slice(1);
|
26 |
-
};
|
27 |
-
|
28 |
-
// ========================= getStyleProperty by kangax ===============================
|
29 |
-
// http://perfectionkills.com/feature-testing-css-properties/
|
30 |
-
|
31 |
-
var prefixes = 'Moz Webkit O Ms'.split(' ');
|
32 |
-
|
33 |
-
var getStyleProperty = function( propName ) {
|
34 |
-
var style = document.documentElement.style,
|
35 |
-
prefixed;
|
36 |
-
|
37 |
-
// test standard property first
|
38 |
-
if ( typeof style[propName] === 'string' ) {
|
39 |
-
return propName;
|
40 |
-
}
|
41 |
-
|
42 |
-
// capitalize
|
43 |
-
propName = capitalize( propName );
|
44 |
-
|
45 |
-
// test vendor specific properties
|
46 |
-
for ( var i=0, len = prefixes.length; i < len; i++ ) {
|
47 |
-
prefixed = prefixes[i] + propName;
|
48 |
-
if ( typeof style[ prefixed ] === 'string' ) {
|
49 |
-
return prefixed;
|
50 |
-
}
|
51 |
-
}
|
52 |
-
};
|
53 |
-
|
54 |
-
var transformProp = getStyleProperty('transform'),
|
55 |
-
transitionProp = getStyleProperty('transitionProperty');
|
56 |
-
|
57 |
-
|
58 |
-
// ========================= miniModernizr ===============================
|
59 |
-
// <3<3<3 and thanks to Faruk and Paul for doing the heavy lifting
|
60 |
-
|
61 |
-
/*!
|
62 |
-
* Modernizr v1.6ish: miniModernizr for Isotope
|
63 |
-
* http://www.modernizr.com
|
64 |
-
*
|
65 |
-
* Developed by:
|
66 |
-
* - Faruk Ates http://farukat.es/
|
67 |
-
* - Paul Irish http://paulirish.com/
|
68 |
-
*
|
69 |
-
* Copyright (c) 2009-2010
|
70 |
-
* Dual-licensed under the BSD or MIT licenses.
|
71 |
-
* http://www.modernizr.com/license/
|
72 |
-
*/
|
73 |
-
|
74 |
-
/*
|
75 |
-
* This version whittles down the script just to check support for
|
76 |
-
* CSS transitions, transforms, and 3D transforms.
|
77 |
-
*/
|
78 |
-
|
79 |
-
var tests = {
|
80 |
-
csstransforms: function() {
|
81 |
-
return !!transformProp;
|
82 |
-
},
|
83 |
-
|
84 |
-
csstransforms3d: function() {
|
85 |
-
var test = !!getStyleProperty('perspective');
|
86 |
-
// double check for Chrome's false positive
|
87 |
-
if ( test ) {
|
88 |
-
var vendorCSSPrefixes = ' -o- -moz- -ms- -webkit- -khtml- '.split(' '),
|
89 |
-
mediaQuery = '@media (' + vendorCSSPrefixes.join('transform-3d),(') + 'modernizr)',
|
90 |
-
$style = $('<style>' + mediaQuery + '{#modernizr{height:3px}}' + '</style>')
|
91 |
-
.appendTo('head'),
|
92 |
-
$div = $('<div id="modernizr" />').appendTo('html');
|
93 |
-
|
94 |
-
test = $div.height() === 3;
|
95 |
-
|
96 |
-
$div.remove();
|
97 |
-
$style.remove();
|
98 |
-
}
|
99 |
-
return test;
|
100 |
-
},
|
101 |
-
|
102 |
-
csstransitions: function() {
|
103 |
-
return !!transitionProp;
|
104 |
-
}
|
105 |
-
};
|
106 |
-
|
107 |
-
var testName;
|
108 |
-
|
109 |
-
if ( Modernizr ) {
|
110 |
-
// if there's a previous Modernzir, check if there are necessary tests
|
111 |
-
for ( testName in tests) {
|
112 |
-
if ( !Modernizr.hasOwnProperty( testName ) ) {
|
113 |
-
// if test hasn't been run, use addTest to run it
|
114 |
-
Modernizr.addTest( testName, tests[ testName ] );
|
115 |
-
}
|
116 |
-
}
|
117 |
-
} else {
|
118 |
-
// or create new mini Modernizr that just has the 3 tests
|
119 |
-
Modernizr = window.Modernizr = {
|
120 |
-
_version : '1.6ish: miniModernizr for Isotope'
|
121 |
-
};
|
122 |
-
|
123 |
-
var classes = ' ';
|
124 |
-
var result;
|
125 |
-
|
126 |
-
// Run through tests
|
127 |
-
for ( testName in tests) {
|
128 |
-
result = tests[ testName ]();
|
129 |
-
Modernizr[ testName ] = result;
|
130 |
-
classes += ' ' + ( result ? '' : 'no-' ) + testName;
|
131 |
-
}
|
132 |
-
|
133 |
-
// Add the new classes to the <html> element.
|
134 |
-
$('html').addClass( classes );
|
135 |
-
}
|
136 |
-
|
137 |
-
|
138 |
-
// ========================= isoTransform ===============================
|
139 |
-
|
140 |
-
/**
|
141 |
-
* provides hooks for .css({ scale: value, translate: [x, y] })
|
142 |
-
* Progressively enhanced CSS transforms
|
143 |
-
* Uses hardware accelerated 3D transforms for Safari
|
144 |
-
* or falls back to 2D transforms.
|
145 |
-
*/
|
146 |
-
|
147 |
-
if ( Modernizr.csstransforms ) {
|
148 |
-
|
149 |
-
// i.e. transformFnNotations.scale(0.5) >> 'scale3d( 0.5, 0.5, 1)'
|
150 |
-
var transformFnNotations = Modernizr.csstransforms3d ?
|
151 |
-
{ // 3D transform functions
|
152 |
-
translate : function ( position ) {
|
153 |
-
return 'translate3d(' + position[0] + 'px, ' + position[1] + 'px, 0) ';
|
154 |
-
},
|
155 |
-
scale : function ( scale ) {
|
156 |
-
return 'scale3d(' + scale + ', ' + scale + ', 1) ';
|
157 |
-
}
|
158 |
-
} :
|
159 |
-
{ // 2D transform functions
|
160 |
-
translate : function ( position ) {
|
161 |
-
return 'translate(' + position[0] + 'px, ' + position[1] + 'px) ';
|
162 |
-
},
|
163 |
-
scale : function ( scale ) {
|
164 |
-
return 'scale(' + scale + ') ';
|
165 |
-
}
|
166 |
-
}
|
167 |
-
;
|
168 |
-
|
169 |
-
var setIsoTransform = function ( elem, name, value ) {
|
170 |
-
// unpack current transform data
|
171 |
-
var data = jQuery.data( elem, 'isoTransform' ) || {},
|
172 |
-
newData = {},
|
173 |
-
fnName,
|
174 |
-
transformObj = {},
|
175 |
-
transformValue;
|
176 |
-
|
177 |
-
// i.e. newData.scale = 0.5
|
178 |
-
newData[ name ] = value;
|
179 |
-
// extend new value over current data
|
180 |
-
jQuery.extend( data, newData );
|
181 |
-
|
182 |
-
for ( fnName in data ) {
|
183 |
-
transformValue = data[ fnName ];
|
184 |
-
transformObj[ fnName ] = transformFnNotations[ fnName ]( transformValue );
|
185 |
-
}
|
186 |
-
|
187 |
-
// get proper order
|
188 |
-
// ideally, we could loop through this give an array, but since we only have
|
189 |
-
// a couple transforms we're keeping track of, we'll do it like so
|
190 |
-
var translateFn = transformObj.translate || '',
|
191 |
-
scaleFn = transformObj.scale || '',
|
192 |
-
// sorting so translate always comes first
|
193 |
-
valueFns = translateFn + scaleFn;
|
194 |
-
|
195 |
-
// set data back in elem
|
196 |
-
jQuery.data( elem, 'isoTransform', data );
|
197 |
-
|
198 |
-
// set name to vendor specific property
|
199 |
-
elem.style[ transformProp ] = valueFns;
|
200 |
-
};
|
201 |
-
|
202 |
-
// ==================== scale ===================
|
203 |
-
|
204 |
-
jQuery.cssNumber.scale = true;
|
205 |
-
|
206 |
-
jQuery.cssHooks.scale = {
|
207 |
-
set: function( elem, value ) {
|
208 |
-
// uncomment this bit if you want to properly parse strings
|
209 |
-
// if ( typeof value === 'string' ) {
|
210 |
-
// value = parseFloat( value );
|
211 |
-
// }
|
212 |
-
setIsoTransform( elem, 'scale', value );
|
213 |
-
},
|
214 |
-
get: function( elem, computed ) {
|
215 |
-
var transform = jQuery.data( elem, 'isoTransform' );
|
216 |
-
return transform && transform.scale ? transform.scale : 1;
|
217 |
-
}
|
218 |
-
};
|
219 |
-
|
220 |
-
jQuery.fx.step.scale = function( fx ) {
|
221 |
-
jQuery.cssHooks.scale.set( fx.elem, fx.now+fx.unit );
|
222 |
-
};
|
223 |
-
|
224 |
-
|
225 |
-
// ==================== translate ===================
|
226 |
-
|
227 |
-
jQuery.cssNumber.translate = true;
|
228 |
-
|
229 |
-
jQuery.cssHooks.translate = {
|
230 |
-
set: function( elem, value ) {
|
231 |
-
|
232 |
-
// uncomment this bit if you want to properly parse strings
|
233 |
-
// if ( typeof value === 'string' ) {
|
234 |
-
// value = value.split(' ');
|
235 |
-
// }
|
236 |
-
//
|
237 |
-
// var i, val;
|
238 |
-
// for ( i = 0; i < 2; i++ ) {
|
239 |
-
// val = value[i];
|
240 |
-
// if ( typeof val === 'string' ) {
|
241 |
-
// val = parseInt( val );
|
242 |
-
// }
|
243 |
-
// }
|
244 |
-
|
245 |
-
setIsoTransform( elem, 'translate', value );
|
246 |
-
},
|
247 |
-
|
248 |
-
get: function( elem, computed ) {
|
249 |
-
var transform = jQuery.data( elem, 'isoTransform' );
|
250 |
-
return transform && transform.translate ? transform.translate : [ 0, 0 ];
|
251 |
-
}
|
252 |
-
};
|
253 |
-
|
254 |
-
}
|
255 |
-
|
256 |
-
// ========================= get transition-end event ===============================
|
257 |
-
var transitionEndEvent, transitionDurProp;
|
258 |
-
|
259 |
-
if ( Modernizr.csstransitions ) {
|
260 |
-
transitionEndEvent = {
|
261 |
-
WebkitTransitionProperty: 'webkitTransitionEnd', // webkit
|
262 |
-
MozTransitionProperty: 'transitionend',
|
263 |
-
OTransitionProperty: 'oTransitionEnd otransitionend',
|
264 |
-
transitionProperty: 'transitionend'
|
265 |
-
}[ transitionProp ];
|
266 |
-
|
267 |
-
transitionDurProp = getStyleProperty('transitionDuration');
|
268 |
-
}
|
269 |
-
|
270 |
-
// ========================= smartresize ===============================
|
271 |
-
|
272 |
-
/*
|
273 |
-
* smartresize: debounced resize event for jQuery
|
274 |
-
*
|
275 |
-
* latest version and complete README available on Github:
|
276 |
-
* https://github.com/louisremi/jquery.smartresize.js
|
277 |
-
*
|
278 |
-
* Copyright 2011 @louis_remi
|
279 |
-
* Licensed under the MIT license.
|
280 |
-
*/
|
281 |
-
|
282 |
-
var $event = jQuery.event,
|
283 |
-
resizeTimeout;
|
284 |
-
|
285 |
-
$event.special.smartresize = {
|
286 |
-
setup: function() {
|
287 |
-
$(this).bind( "resize", $event.special.smartresize.handler );
|
288 |
-
},
|
289 |
-
teardown: function() {
|
290 |
-
$(this).unbind( "resize", $event.special.smartresize.handler );
|
291 |
-
},
|
292 |
-
handler: function( event, execAsap ) {
|
293 |
-
// Save the context
|
294 |
-
var context = this,
|
295 |
-
args = arguments;
|
296 |
-
|
297 |
-
// set correct event type
|
298 |
-
event.type = "smartresize";
|
299 |
-
|
300 |
-
if ( resizeTimeout ) { clearTimeout( resizeTimeout ); }
|
301 |
-
resizeTimeout = setTimeout(function() {
|
302 |
-
jQuery.event.handle.apply( context, args );
|
303 |
-
}, execAsap === "execAsap"? 0 : 100 );
|
304 |
-
}
|
305 |
-
};
|
306 |
-
|
307 |
-
jQuery.fn.smartresize = function( fn ) {
|
308 |
-
return fn ? this.bind( "smartresize", fn ) : this.trigger( "smartresize", ["execAsap"] );
|
309 |
-
};
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
// ========================= Isotope ===============================
|
314 |
-
|
315 |
-
|
316 |
-
// our "Widget" object constructor
|
317 |
-
jQuery.Isotope = function( options, element, callback ){
|
318 |
-
this.element = $( element );
|
319 |
-
|
320 |
-
this._create( options );
|
321 |
-
this._init( callback );
|
322 |
-
};
|
323 |
-
|
324 |
-
// styles of container element we want to keep track of
|
325 |
-
var isoContainerStyles = [ 'width', 'height' ];
|
326 |
-
|
327 |
-
var $window = $(window);
|
328 |
-
|
329 |
-
jQuery.Isotope.settings = {
|
330 |
-
resizable: true,
|
331 |
-
layoutMode : 'masonry',
|
332 |
-
containerClass : 'isotope',
|
333 |
-
itemClass : 'isotope-item',
|
334 |
-
hiddenClass : 'isotope-hidden',
|
335 |
-
hiddenStyle: { opacity: 0, scale: 0.001 },
|
336 |
-
visibleStyle: { opacity: 1, scale: 1 },
|
337 |
-
containerStyle: {
|
338 |
-
position: 'relative',
|
339 |
-
overflow: 'hidden'
|
340 |
-
},
|
341 |
-
animationEngine: 'best-available',
|
342 |
-
animationOptions: {
|
343 |
-
queue: false,
|
344 |
-
duration: 800
|
345 |
-
},
|
346 |
-
sortBy : 'original-order',
|
347 |
-
sortAscending : true,
|
348 |
-
resizesContainer : true,
|
349 |
-
transformsEnabled: true,
|
350 |
-
itemPositionDataEnabled: false
|
351 |
-
};
|
352 |
-
|
353 |
-
jQuery.Isotope.prototype = {
|
354 |
-
|
355 |
-
// sets up widget
|
356 |
-
_create : function( options ) {
|
357 |
-
|
358 |
-
this.options = jQuery.extend( {}, jQuery.Isotope.settings, options );
|
359 |
-
|
360 |
-
this.styleQueue = [];
|
361 |
-
this.elemCount = 0;
|
362 |
-
|
363 |
-
// get original styles in case we re-apply them in .destroy()
|
364 |
-
var elemStyle = this.element[0].style;
|
365 |
-
this.originalStyle = {};
|
366 |
-
// keep track of container styles
|
367 |
-
var containerStyles = isoContainerStyles.slice(0);
|
368 |
-
for ( var prop in this.options.containerStyle ) {
|
369 |
-
containerStyles.push( prop );
|
370 |
-
}
|
371 |
-
for ( var i=0, len = containerStyles.length; i < len; i++ ) {
|
372 |
-
prop = containerStyles[i];
|
373 |
-
this.originalStyle[ prop ] = elemStyle[ prop ] || '';
|
374 |
-
}
|
375 |
-
// apply container style from options
|
376 |
-
this.element.css( this.options.containerStyle );
|
377 |
-
|
378 |
-
this._updateAnimationEngine();
|
379 |
-
this._updateUsingTransforms();
|
380 |
-
|
381 |
-
// sorting
|
382 |
-
var originalOrderSorter = {
|
383 |
-
'original-order' : function( $elem, instance ) {
|
384 |
-
instance.elemCount ++;
|
385 |
-
return instance.elemCount;
|
386 |
-
},
|
387 |
-
random : function() {
|
388 |
-
return Math.random();
|
389 |
-
}
|
390 |
-
};
|
391 |
-
|
392 |
-
this.options.getSortData = jQuery.extend( this.options.getSortData, originalOrderSorter );
|
393 |
-
|
394 |
-
// need to get atoms
|
395 |
-
this.reloadItems();
|
396 |
-
|
397 |
-
// get top left position of where the bricks should be
|
398 |
-
this.offset = {
|
399 |
-
left: parseInt( ( this.element.css('padding-left') || 0 ), 10 ),
|
400 |
-
top: parseInt( ( this.element.css('padding-top') || 0 ), 10 )
|
401 |
-
};
|
402 |
-
|
403 |
-
// add isotope class first time around
|
404 |
-
var instance = this;
|
405 |
-
setTimeout( function() {
|
406 |
-
instance.element.addClass( instance.options.containerClass );
|
407 |
-
}, 0 );
|
408 |
-
|
409 |
-
// bind resize method
|
410 |
-
if ( this.options.resizable ) {
|
411 |
-
$window.bind( 'smartresize.isotope', function() {
|
412 |
-
instance.resize();
|
413 |
-
});
|
414 |
-
}
|
415 |
-
|
416 |
-
// dismiss all click events from hidden events
|
417 |
-
this.element.delegate( '.' + this.options.hiddenClass, 'click', function(){
|
418 |
-
return false;
|
419 |
-
});
|
420 |
-
|
421 |
-
},
|
422 |
-
|
423 |
-
_getAtoms : function( $elems ) {
|
424 |
-
var selector = this.options.itemSelector,
|
425 |
-
// filter & find
|
426 |
-
$atoms = selector ? $elems.filter( selector ).add( $elems.find( selector ) ) : $elems,
|
427 |
-
// base style for atoms
|
428 |
-
atomStyle = { position: 'absolute' };
|
429 |
-
|
430 |
-
// filter out text nodes
|
431 |
-
$atoms = $atoms.filter( function( i, atom ) {
|
432 |
-
return atom.nodeType === 1;
|
433 |
-
});
|
434 |
-
|
435 |
-
if ( this.usingTransforms ) {
|
436 |
-
atomStyle.left = 0;
|
437 |
-
atomStyle.top = 0;
|
438 |
-
}
|
439 |
-
|
440 |
-
$atoms.css( atomStyle ).addClass( this.options.itemClass );
|
441 |
-
|
442 |
-
this.updateSortData( $atoms, true );
|
443 |
-
|
444 |
-
return $atoms;
|
445 |
-
},
|
446 |
-
|
447 |
-
// _init fires when your instance is first created
|
448 |
-
// (from the constructor above), and when you
|
449 |
-
// attempt to initialize the widget again (by the bridge)
|
450 |
-
// after it has already been initialized.
|
451 |
-
_init : function( callback ) {
|
452 |
-
|
453 |
-
this.$filteredAtoms = this._filter( this.$allAtoms );
|
454 |
-
this._sort();
|
455 |
-
this.reLayout( callback );
|
456 |
-
|
457 |
-
},
|
458 |
-
|
459 |
-
option : function( opts ){
|
460 |
-
// change options AFTER initialization:
|
461 |
-
// signature: $('#foo').bar({ cool:false });
|
462 |
-
if ( jQuery.isPlainObject( opts ) ){
|
463 |
-
this.options = jQuery.extend( true, this.options, opts );
|
464 |
-
|
465 |
-
// trigger _updateOptionName if it exists
|
466 |
-
var updateOptionFn;
|
467 |
-
for ( var optionName in opts ) {
|
468 |
-
updateOptionFn = '_update' + capitalize( optionName );
|
469 |
-
if ( this[ updateOptionFn ] ) {
|
470 |
-
this[ updateOptionFn ]();
|
471 |
-
}
|
472 |
-
}
|
473 |
-
}
|
474 |
-
},
|
475 |
-
|
476 |
-
// ====================== updaters ====================== //
|
477 |
-
// kind of like setters
|
478 |
-
|
479 |
-
_updateAnimationEngine : function() {
|
480 |
-
var animationEngine = this.options.animationEngine.toLowerCase().replace( /[ _\-]/g, '');
|
481 |
-
var isUsingJQueryAnimation;
|
482 |
-
// set applyStyleFnName
|
483 |
-
switch ( animationEngine ) {
|
484 |
-
case 'css' :
|
485 |
-
case 'none' :
|
486 |
-
isUsingJQueryAnimation = false;
|
487 |
-
break;
|
488 |
-
case 'jquery' :
|
489 |
-
isUsingJQueryAnimation = true;
|
490 |
-
break;
|
491 |
-
default : // best available
|
492 |
-
isUsingJQueryAnimation = !Modernizr.csstransitions;
|
493 |
-
}
|
494 |
-
this.isUsingJQueryAnimation = isUsingJQueryAnimation;
|
495 |
-
this._updateUsingTransforms();
|
496 |
-
},
|
497 |
-
|
498 |
-
_updateTransformsEnabled : function() {
|
499 |
-
this._updateUsingTransforms();
|
500 |
-
},
|
501 |
-
|
502 |
-
_updateUsingTransforms : function() {
|
503 |
-
var usingTransforms = this.usingTransforms = this.options.transformsEnabled &&
|
504 |
-
Modernizr.csstransforms && Modernizr.csstransitions && !this.isUsingJQueryAnimation;
|
505 |
-
|
506 |
-
// prevent scales when transforms are disabled
|
507 |
-
if ( !usingTransforms ) {
|
508 |
-
delete this.options.hiddenStyle.scale;
|
509 |
-
delete this.options.visibleStyle.scale;
|
510 |
-
}
|
511 |
-
|
512 |
-
this.getPositionStyles = usingTransforms ? this._translate : this._positionAbs;
|
513 |
-
},
|
514 |
-
|
515 |
-
|
516 |
-
// ====================== Filtering ======================
|
517 |
-
|
518 |
-
_filter : function( $atoms ) {
|
519 |
-
var filter = this.options.filter === '' ? '*' : this.options.filter;
|
520 |
-
|
521 |
-
if ( !filter ) {
|
522 |
-
return $atoms;
|
523 |
-
}
|
524 |
-
|
525 |
-
var hiddenClass = this.options.hiddenClass,
|
526 |
-
hiddenSelector = '.' + hiddenClass,
|
527 |
-
$hiddenAtoms = $atoms.filter( hiddenSelector ),
|
528 |
-
$atomsToShow = $hiddenAtoms;
|
529 |
-
|
530 |
-
if ( filter !== '*' ) {
|
531 |
-
$atomsToShow = $hiddenAtoms.filter( filter );
|
532 |
-
var $atomsToHide = $atoms.not( hiddenSelector ).not( filter ).addClass( hiddenClass );
|
533 |
-
this.styleQueue.push({ $el: $atomsToHide, style: this.options.hiddenStyle });
|
534 |
-
}
|
535 |
-
|
536 |
-
this.styleQueue.push({ $el: $atomsToShow, style: this.options.visibleStyle });
|
537 |
-
$atomsToShow.removeClass( hiddenClass );
|
538 |
-
|
539 |
-
return $atoms.filter( filter );
|
540 |
-
},
|
541 |
-
|
542 |
-
// ====================== Sorting ======================
|
543 |
-
|
544 |
-
updateSortData : function( $atoms, isIncrementingElemCount ) {
|
545 |
-
var instance = this,
|
546 |
-
getSortData = this.options.getSortData,
|
547 |
-
$this, sortData;
|
548 |
-
$atoms.each(function(){
|
549 |
-
$this = $(this);
|
550 |
-
sortData = {};
|
551 |
-
// get value for sort data based on fn( $elem ) passed in
|
552 |
-
for ( var key in getSortData ) {
|
553 |
-
if ( !isIncrementingElemCount && key === 'original-order' ) {
|
554 |
-
// keep original order original
|
555 |
-
sortData[ key ] = jQuery.data( this, 'isotope-sort-data' )[ key ];
|
556 |
-
} else {
|
557 |
-
sortData[ key ] = getSortData[ key ]( $this, instance );
|
558 |
-
}
|
559 |
-
}
|
560 |
-
// apply sort data to element
|
561 |
-
jQuery.data( this, 'isotope-sort-data', sortData );
|
562 |
-
});
|
563 |
-
},
|
564 |
-
|
565 |
-
// used on all the filtered atoms
|
566 |
-
_sort : function() {
|
567 |
-
|
568 |
-
var sortBy = this.options.sortBy,
|
569 |
-
getSorter = this._getSorter,
|
570 |
-
sortDir = this.options.sortAscending ? 1 : -1,
|
571 |
-
sortFn = function( alpha, beta ) {
|
572 |
-
var a = getSorter( alpha, sortBy ),
|
573 |
-
b = getSorter( beta, sortBy );
|
574 |
-
// fall back to original order if data matches
|
575 |
-
if ( a === b && sortBy !== 'original-order') {
|
576 |
-
a = getSorter( alpha, 'original-order' );
|
577 |
-
b = getSorter( beta, 'original-order' );
|
578 |
-
}
|
579 |
-
return ( ( a > b ) ? 1 : ( a < b ) ? -1 : 0 ) * sortDir;
|
580 |
-
};
|
581 |
-
|
582 |
-
this.$filteredAtoms.sort( sortFn );
|
583 |
-
},
|
584 |
-
|
585 |
-
_getSorter : function( elem, sortBy ) {
|
586 |
-
return jQuery.data( elem, 'isotope-sort-data' )[ sortBy ];
|
587 |
-
},
|
588 |
-
|
589 |
-
// ====================== Layout Helpers ======================
|
590 |
-
|
591 |
-
_translate : function( x, y ) {
|
592 |
-
return { translate : [ x, y ] };
|
593 |
-
},
|
594 |
-
|
595 |
-
_positionAbs : function( x, y ) {
|
596 |
-
return { left: x, top: y };
|
597 |
-
},
|
598 |
-
|
599 |
-
_pushPosition : function( $elem, x, y ) {
|
600 |
-
x = Math.round( x + this.offset.left );
|
601 |
-
y = Math.round( y + this.offset.top );
|
602 |
-
var position = this.getPositionStyles( x, y );
|
603 |
-
this.styleQueue.push({ $el: $elem, style: position });
|
604 |
-
if ( this.options.itemPositionDataEnabled ) {
|
605 |
-
$elem.data('isotope-item-position', {x: x, y: y} );
|
606 |
-
}
|
607 |
-
},
|
608 |
-
|
609 |
-
|
610 |
-
// ====================== General Layout ======================
|
611 |
-
|
612 |
-
// used on collection of atoms (should be filtered, and sorted before )
|
613 |
-
// accepts atoms-to-be-laid-out to start with
|
614 |
-
layout : function( $elems, callback ) {
|
615 |
-
|
616 |
-
var layoutMode = this.options.layoutMode;
|
617 |
-
|
618 |
-
// layout logic
|
619 |
-
this[ '_' + layoutMode + 'Layout' ]( $elems );
|
620 |
-
|
621 |
-
// set the size of the container
|
622 |
-
if ( this.options.resizesContainer ) {
|
623 |
-
var containerStyle = this[ '_' + layoutMode + 'GetContainerSize' ]();
|
624 |
-
this.styleQueue.push({ $el: this.element, style: containerStyle });
|
625 |
-
}
|
626 |
-
|
627 |
-
this._processStyleQueue( $elems, callback );
|
628 |
-
|
629 |
-
this.isLaidOut = true;
|
630 |
-
},
|
631 |
-
|
632 |
-
_processStyleQueue : function( $elems, callback ) {
|
633 |
-
// are we animating the layout arrangement?
|
634 |
-
// use plugin-ish syntax for css or animate
|
635 |
-
var styleFn = !this.isLaidOut ? 'css' : (
|
636 |
-
this.isUsingJQueryAnimation ? 'animate' : 'css'
|
637 |
-
),
|
638 |
-
animOpts = this.options.animationOptions,
|
639 |
-
onLayout = this.options.onLayout,
|
640 |
-
objStyleFn, processor,
|
641 |
-
triggerCallbackNow, callbackFn;
|
642 |
-
|
643 |
-
// default styleQueue processor, may be overwritten down below
|
644 |
-
processor = function( i, obj ) {
|
645 |
-
obj.$el[ styleFn ]( obj.style, animOpts );
|
646 |
-
};
|
647 |
-
|
648 |
-
if ( this._isInserting && this.isUsingJQueryAnimation ) {
|
649 |
-
// if using styleQueue to insert items
|
650 |
-
processor = function( i, obj ) {
|
651 |
-
// only animate if it not being inserted
|
652 |
-
objStyleFn = obj.$el.hasClass('no-transition') ? 'css' : styleFn;
|
653 |
-
obj.$el[ objStyleFn ]( obj.style, animOpts );
|
654 |
-
};
|
655 |
-
|
656 |
-
} else if ( callback || onLayout || animOpts.complete ) {
|
657 |
-
// has callback
|
658 |
-
var isCallbackTriggered = false,
|
659 |
-
// array of possible callbacks to trigger
|
660 |
-
callbacks = [ callback, onLayout, animOpts.complete ],
|
661 |
-
instance = this;
|
662 |
-
triggerCallbackNow = true;
|
663 |
-
// trigger callback only once
|
664 |
-
callbackFn = function() {
|
665 |
-
if ( isCallbackTriggered ) {
|
666 |
-
return;
|
667 |
-
}
|
668 |
-
var hollaback;
|
669 |
-
for (var i=0, len = callbacks.length; i < len; i++) {
|
670 |
-
hollaback = callbacks[i];
|
671 |
-
if ( typeof hollaback === 'function' ) {
|
672 |
-
hollaback.call( instance.element, $elems, instance );
|
673 |
-
}
|
674 |
-
}
|
675 |
-
isCallbackTriggered = true;
|
676 |
-
};
|
677 |
-
|
678 |
-
if ( this.isUsingJQueryAnimation && styleFn === 'animate' ) {
|
679 |
-
// add callback to animation options
|
680 |
-
animOpts.complete = callbackFn;
|
681 |
-
triggerCallbackNow = false;
|
682 |
-
|
683 |
-
} else if ( Modernizr.csstransitions ) {
|
684 |
-
// detect if first item has transition
|
685 |
-
var i = 0,
|
686 |
-
firstItem = this.styleQueue[0],
|
687 |
-
testElem = firstItem && firstItem.$el,
|
688 |
-
styleObj;
|
689 |
-
// get first non-empty jQ object
|
690 |
-
while ( !testElem || !testElem.length ) {
|
691 |
-
styleObj = this.styleQueue[ i++ ];
|
692 |
-
// HACK: sometimes styleQueue[i] is undefined
|
693 |
-
if ( !styleObj ) {
|
694 |
-
return;
|
695 |
-
}
|
696 |
-
testElem = styleObj.$el;
|
697 |
-
}
|
698 |
-
// get transition duration of the first element in that object
|
699 |
-
// yeah, this is inexact
|
700 |
-
var duration = parseFloat( getComputedStyle( testElem[0] )[ transitionDurProp ] );
|
701 |
-
if ( duration > 0 ) {
|
702 |
-
processor = function( i, obj ) {
|
703 |
-
obj.$el[ styleFn ]( obj.style, animOpts )
|
704 |
-
// trigger callback at transition end
|
705 |
-
.one( transitionEndEvent, callbackFn );
|
706 |
-
};
|
707 |
-
triggerCallbackNow = false;
|
708 |
-
}
|
709 |
-
}
|
710 |
-
}
|
711 |
-
|
712 |
-
// process styleQueue
|
713 |
-
jQuery.each( this.styleQueue, processor );
|
714 |
-
|
715 |
-
if ( triggerCallbackNow ) {
|
716 |
-
callbackFn();
|
717 |
-
}
|
718 |
-
|
719 |
-
// clear out queue for next time
|
720 |
-
this.styleQueue = [];
|
721 |
-
},
|
722 |
-
|
723 |
-
|
724 |
-
resize : function() {
|
725 |
-
if ( this[ '_' + this.options.layoutMode + 'ResizeChanged' ]() ) {
|
726 |
-
this.reLayout();
|
727 |
-
}
|
728 |
-
},
|
729 |
-
|
730 |
-
|
731 |
-
reLayout : function( callback ) {
|
732 |
-
|
733 |
-
this[ '_' + this.options.layoutMode + 'Reset' ]();
|
734 |
-
this.layout( this.$filteredAtoms, callback );
|
735 |
-
|
736 |
-
},
|
737 |
-
|
738 |
-
// ====================== Convenience methods ======================
|
739 |
-
|
740 |
-
// ====================== Adding items ======================
|
741 |
-
|
742 |
-
// adds a jQuery object of items to a isotope container
|
743 |
-
addItems : function( $content, callback ) {
|
744 |
-
var $newAtoms = this._getAtoms( $content );
|
745 |
-
// add new atoms to atoms pools
|
746 |
-
this.$allAtoms = this.$allAtoms.add( $newAtoms );
|
747 |
-
|
748 |
-
if ( callback ) {
|
749 |
-
callback( $newAtoms );
|
750 |
-
}
|
751 |
-
},
|
752 |
-
|
753 |
-
// convienence method for adding elements properly to any layout
|
754 |
-
// positions items, hides them, then animates them back in <--- very sezzy
|
755 |
-
insert : function( $content, callback ) {
|
756 |
-
// position items
|
757 |
-
this.element.append( $content );
|
758 |
-
|
759 |
-
var instance = this;
|
760 |
-
this.addItems( $content, function( $newAtoms ) {
|
761 |
-
var $newFilteredAtoms = instance._filter( $newAtoms );
|
762 |
-
instance._addHideAppended( $newFilteredAtoms );
|
763 |
-
instance._sort();
|
764 |
-
instance.reLayout();
|
765 |
-
instance._revealAppended( $newFilteredAtoms, callback );
|
766 |
-
});
|
767 |
-
|
768 |
-
},
|
769 |
-
|
770 |
-
// convienence method for working with Infinite Scroll
|
771 |
-
appended : function( $content, callback ) {
|
772 |
-
var instance = this;
|
773 |
-
this.addItems( $content, function( $newAtoms ) {
|
774 |
-
instance._addHideAppended( $newAtoms );
|
775 |
-
instance.layout( $newAtoms );
|
776 |
-
instance._revealAppended( $newAtoms, callback );
|
777 |
-
});
|
778 |
-
},
|
779 |
-
|
780 |
-
// adds new atoms, then hides them before positioning
|
781 |
-
_addHideAppended : function( $newAtoms ) {
|
782 |
-
this.$filteredAtoms = this.$filteredAtoms.add( $newAtoms );
|
783 |
-
$newAtoms.addClass('no-transition');
|
784 |
-
|
785 |
-
this._isInserting = true;
|
786 |
-
|
787 |
-
// apply hidden styles
|
788 |
-
this.styleQueue.push({ $el: $newAtoms, style: this.options.hiddenStyle });
|
789 |
-
},
|
790 |
-
|
791 |
-
// sets visible style on new atoms
|
792 |
-
_revealAppended : function( $newAtoms, callback ) {
|
793 |
-
var instance = this;
|
794 |
-
// apply visible style after a sec
|
795 |
-
setTimeout( function() {
|
796 |
-
// enable animation
|
797 |
-
$newAtoms.removeClass('no-transition');
|
798 |
-
// reveal newly inserted filtered elements
|
799 |
-
instance.styleQueue.push({ $el: $newAtoms, style: instance.options.visibleStyle });
|
800 |
-
instance._isInserting = false;
|
801 |
-
instance._processStyleQueue( $newAtoms, callback );
|
802 |
-
}, 10 );
|
803 |
-
},
|
804 |
-
|
805 |
-
// gathers all atoms
|
806 |
-
reloadItems : function() {
|
807 |
-
this.$allAtoms = this._getAtoms( this.element.children() );
|
808 |
-
},
|
809 |
-
|
810 |
-
// removes elements from Isotope widget
|
811 |
-
remove: function( $content, callback ) {
|
812 |
-
// remove elements immediately from Isotope instance
|
813 |
-
this.$allAtoms = this.$allAtoms.not( $content );
|
814 |
-
this.$filteredAtoms = this.$filteredAtoms.not( $content );
|
815 |
-
// remove() as a callback, for after transition / animation
|
816 |
-
var instance = this;
|
817 |
-
var removeContent = function() {
|
818 |
-
$content.remove();
|
819 |
-
if ( callback ) {
|
820 |
-
callback.call( instance.element );
|
821 |
-
}
|
822 |
-
};
|
823 |
-
|
824 |
-
if ( $content.filter( ':not(.' + this.options.hiddenClass + ')' ).length ) {
|
825 |
-
// if any non-hidden content needs to be removed
|
826 |
-
this.styleQueue.push({ $el: $content, style: this.options.hiddenStyle });
|
827 |
-
this._sort();
|
828 |
-
this.reLayout( removeContent );
|
829 |
-
} else {
|
830 |
-
// remove it now
|
831 |
-
removeContent();
|
832 |
-
}
|
833 |
-
|
834 |
-
},
|
835 |
-
|
836 |
-
shuffle : function( callback ) {
|
837 |
-
this.updateSortData( this.$allAtoms );
|
838 |
-
this.options.sortBy = 'random';
|
839 |
-
this._sort();
|
840 |
-
this.reLayout( callback );
|
841 |
-
},
|
842 |
-
|
843 |
-
// destroys widget, returns elements and container back (close) to original style
|
844 |
-
destroy : function() {
|
845 |
-
|
846 |
-
var usingTransforms = this.usingTransforms;
|
847 |
-
var options = this.options;
|
848 |
-
|
849 |
-
this.$allAtoms
|
850 |
-
.removeClass( options.hiddenClass + ' ' + options.itemClass )
|
851 |
-
.each(function(){
|
852 |
-
var style = this.style;
|
853 |
-
style.position = '';
|
854 |
-
style.top = '';
|
855 |
-
style.left = '';
|
856 |
-
style.opacity = '';
|
857 |
-
if ( usingTransforms ) {
|
858 |
-
style[ transformProp ] = '';
|
859 |
-
}
|
860 |
-
});
|
861 |
-
|
862 |
-
// re-apply saved container styles
|
863 |
-
var elemStyle = this.element[0].style;
|
864 |
-
for ( var prop in this.originalStyle ) {
|
865 |
-
elemStyle[ prop ] = this.originalStyle[ prop ];
|
866 |
-
}
|
867 |
-
|
868 |
-
this.element
|
869 |
-
.unbind('.isotope')
|
870 |
-
.undelegate( '.' + options.hiddenClass, 'click' )
|
871 |
-
.removeClass( options.containerClass )
|
872 |
-
.removeData('isotope');
|
873 |
-
|
874 |
-
$window.unbind('.isotope');
|
875 |
-
|
876 |
-
},
|
877 |
-
|
878 |
-
|
879 |
-
// ====================== LAYOUTS ======================
|
880 |
-
|
881 |
-
// calculates number of rows or columns
|
882 |
-
// requires columnWidth or rowHeight to be set on namespaced object
|
883 |
-
// i.e. this.masonry.columnWidth = 200
|
884 |
-
_getSegments : function( isRows ) {
|
885 |
-
var namespace = this.options.layoutMode,
|
886 |
-
measure = isRows ? 'rowHeight' : 'columnWidth',
|
887 |
-
size = isRows ? 'height' : 'width',
|
888 |
-
segmentsName = isRows ? 'rows' : 'cols',
|
889 |
-
containerSize = this.element[ size ](),
|
890 |
-
segments,
|
891 |
-
// i.e. options.masonry && options.masonry.columnWidth
|
892 |
-
segmentSize = this.options[ namespace ] && this.options[ namespace ][ measure ] ||
|
893 |
-
// or use the size of the first item, i.e. outerWidth
|
894 |
-
this.$filteredAtoms[ 'outer' + capitalize(size) ](true) ||
|
895 |
-
// if there's no items, use size of container
|
896 |
-
containerSize;
|
897 |
-
|
898 |
-
segments = Math.floor( containerSize / segmentSize );
|
899 |
-
segments = Math.max( segments, 1 );
|
900 |
-
|
901 |
-
// i.e. this.masonry.cols = ....
|
902 |
-
this[ namespace ][ segmentsName ] = segments;
|
903 |
-
// i.e. this.masonry.columnWidth = ...
|
904 |
-
this[ namespace ][ measure ] = segmentSize;
|
905 |
-
|
906 |
-
},
|
907 |
-
|
908 |
-
_checkIfSegmentsChanged : function( isRows ) {
|
909 |
-
var namespace = this.options.layoutMode,
|
910 |
-
segmentsName = isRows ? 'rows' : 'cols',
|
911 |
-
prevSegments = this[ namespace ][ segmentsName ];
|
912 |
-
// update cols/rows
|
913 |
-
this._getSegments( isRows );
|
914 |
-
// return if updated cols/rows is not equal to previous
|
915 |
-
return ( this[ namespace ][ segmentsName ] !== prevSegments );
|
916 |
-
},
|
917 |
-
|
918 |
-
// ====================== Masonry ======================
|
919 |
-
|
920 |
-
_masonryReset : function() {
|
921 |
-
// layout-specific props
|
922 |
-
this.masonry = {};
|
923 |
-
// FIXME shouldn't have to call this again
|
924 |
-
this._getSegments();
|
925 |
-
var i = this.masonry.cols;
|
926 |
-
this.masonry.colYs = [];
|
927 |
-
while (i--) {
|
928 |
-
this.masonry.colYs.push( 0 );
|
929 |
-
}
|
930 |
-
},
|
931 |
-
|
932 |
-
_masonryLayout : function( $elems ) {
|
933 |
-
var instance = this,
|
934 |
-
props = instance.masonry;
|
935 |
-
$elems.each(function(){
|
936 |
-
var $this = $(this),
|
937 |
-
//how many columns does this brick span
|
938 |
-
colSpan = Math.ceil( $this.outerWidth(true) / props.columnWidth );
|
939 |
-
colSpan = Math.min( colSpan, props.cols );
|
940 |
-
|
941 |
-
if ( colSpan === 1 ) {
|
942 |
-
// if brick spans only one column, just like singleMode
|
943 |
-
instance._masonryPlaceBrick( $this, props.colYs );
|
944 |
-
} else {
|
945 |
-
// brick spans more than one column
|
946 |
-
// how many different places could this brick fit horizontally
|
947 |
-
var groupCount = props.cols + 1 - colSpan,
|
948 |
-
groupY = [],
|
949 |
-
groupColY,
|
950 |
-
i;
|
951 |
-
|
952 |
-
// for each group potential horizontal position
|
953 |
-
for ( i=0; i < groupCount; i++ ) {
|
954 |
-
// make an array of colY values for that one group
|
955 |
-
groupColY = props.colYs.slice( i, i+colSpan );
|
956 |
-
// and get the max value of the array
|
957 |
-
groupY[i] = Math.max.apply( Math, groupColY );
|
958 |
-
}
|
959 |
-
|
960 |
-
instance._masonryPlaceBrick( $this, groupY );
|
961 |
-
}
|
962 |
-
});
|
963 |
-
},
|
964 |
-
|
965 |
-
// worker method that places brick in the columnSet
|
966 |
-
// with the the minY
|
967 |
-
_masonryPlaceBrick : function( $brick, setY ) {
|
968 |
-
// get the minimum Y value from the columns
|
969 |
-
var minimumY = Math.min.apply( Math, setY ),
|
970 |
-
shortCol = 0;
|
971 |
-
|
972 |
-
// Find index of short column, the first from the left
|
973 |
-
for (var i=0, len = setY.length; i < len; i++) {
|
974 |
-
if ( setY[i] === minimumY ) {
|
975 |
-
shortCol = i;
|
976 |
-
break;
|
977 |
-
}
|
978 |
-
}
|
979 |
-
|
980 |
-
// position the brick
|
981 |
-
var x = this.masonry.columnWidth * shortCol,
|
982 |
-
y = minimumY;
|
983 |
-
this._pushPosition( $brick, x, y );
|
984 |
-
|
985 |
-
// apply setHeight to necessary columns
|
986 |
-
var setHeight = minimumY + $brick.outerHeight(true),
|
987 |
-
setSpan = this.masonry.cols + 1 - len;
|
988 |
-
for ( i=0; i < setSpan; i++ ) {
|
989 |
-
this.masonry.colYs[ shortCol + i ] = setHeight;
|
990 |
-
}
|
991 |
-
|
992 |
-
},
|
993 |
-
|
994 |
-
_masonryGetContainerSize : function() {
|
995 |
-
var containerHeight = Math.max.apply( Math, this.masonry.colYs );
|
996 |
-
return { height: containerHeight };
|
997 |
-
},
|
998 |
-
|
999 |
-
_masonryResizeChanged : function() {
|
1000 |
-
return this._checkIfSegmentsChanged();
|
1001 |
-
},
|
1002 |
-
|
1003 |
-
// ====================== fitRows ======================
|
1004 |
-
|
1005 |
-
_fitRowsReset : function() {
|
1006 |
-
this.fitRows = {
|
1007 |
-
x : 0,
|
1008 |
-
y : 0,
|
1009 |
-
height : 0
|
1010 |
-
};
|
1011 |
-
},
|
1012 |
-
|
1013 |
-
_fitRowsLayout : function( $elems ) {
|
1014 |
-
var instance = this,
|
1015 |
-
containerWidth = this.element.width(),
|
1016 |
-
props = this.fitRows;
|
1017 |
-
|
1018 |
-
$elems.each( function() {
|
1019 |
-
var $this = $(this),
|
1020 |
-
atomW = $this.outerWidth(true),
|
1021 |
-
atomH = $this.outerHeight(true);
|
1022 |
-
|
1023 |
-
if ( props.x !== 0 && atomW + props.x > containerWidth ) {
|
1024 |
-
// if this element cannot fit in the current row
|
1025 |
-
props.x = 0;
|
1026 |
-
props.y = props.height;
|
1027 |
-
}
|
1028 |
-
|
1029 |
-
// position the atom
|
1030 |
-
instance._pushPosition( $this, props.x, props.y );
|
1031 |
-
|
1032 |
-
props.height = Math.max( props.y + atomH, props.height );
|
1033 |
-
props.x += atomW;
|
1034 |
-
|
1035 |
-
});
|
1036 |
-
},
|
1037 |
-
|
1038 |
-
_fitRowsGetContainerSize : function () {
|
1039 |
-
return { height : this.fitRows.height };
|
1040 |
-
},
|
1041 |
-
|
1042 |
-
_fitRowsResizeChanged : function() {
|
1043 |
-
return true;
|
1044 |
-
},
|
1045 |
-
|
1046 |
-
|
1047 |
-
// ====================== cellsByRow ======================
|
1048 |
-
|
1049 |
-
_cellsByRowReset : function() {
|
1050 |
-
this.cellsByRow = {
|
1051 |
-
index : 0
|
1052 |
-
};
|
1053 |
-
// get this.cellsByRow.columnWidth
|
1054 |
-
this._getSegments();
|
1055 |
-
// get this.cellsByRow.rowHeight
|
1056 |
-
this._getSegments(true);
|
1057 |
-
},
|
1058 |
-
|
1059 |
-
_cellsByRowLayout : function( $elems ) {
|
1060 |
-
var instance = this,
|
1061 |
-
props = this.cellsByRow;
|
1062 |
-
$elems.each( function(){
|
1063 |
-
var $this = $(this),
|
1064 |
-
col = props.index % props.cols,
|
1065 |
-
row = Math.floor( props.index / props.cols ),
|
1066 |
-
x = ( col + 0.5 ) * props.columnWidth - $this.outerWidth(true) / 2,
|
1067 |
-
y = ( row + 0.5 ) * props.rowHeight - $this.outerHeight(true) / 2;
|
1068 |
-
instance._pushPosition( $this, x, y );
|
1069 |
-
props.index ++;
|
1070 |
-
});
|
1071 |
-
},
|
1072 |
-
|
1073 |
-
_cellsByRowGetContainerSize : function() {
|
1074 |
-
return { height : Math.ceil( this.$filteredAtoms.length / this.cellsByRow.cols ) * this.cellsByRow.rowHeight + this.offset.top };
|
1075 |
-
},
|
1076 |
-
|
1077 |
-
_cellsByRowResizeChanged : function() {
|
1078 |
-
return this._checkIfSegmentsChanged();
|
1079 |
-
},
|
1080 |
-
|
1081 |
-
|
1082 |
-
// ====================== straightDown ======================
|
1083 |
-
|
1084 |
-
_straightDownReset : function() {
|
1085 |
-
this.straightDown = {
|
1086 |
-
y : 0
|
1087 |
-
};
|
1088 |
-
},
|
1089 |
-
|
1090 |
-
_straightDownLayout : function( $elems ) {
|
1091 |
-
var instance = this;
|
1092 |
-
$elems.each( function( i ){
|
1093 |
-
var $this = $(this);
|
1094 |
-
instance._pushPosition( $this, 0, instance.straightDown.y );
|
1095 |
-
instance.straightDown.y += $this.outerHeight(true);
|
1096 |
-
});
|
1097 |
-
},
|
1098 |
-
|
1099 |
-
_straightDownGetContainerSize : function() {
|
1100 |
-
return { height : this.straightDown.y };
|
1101 |
-
},
|
1102 |
-
|
1103 |
-
_straightDownResizeChanged : function() {
|
1104 |
-
return true;
|
1105 |
-
},
|
1106 |
-
|
1107 |
-
|
1108 |
-
// ====================== masonryHorizontal ======================
|
1109 |
-
|
1110 |
-
_masonryHorizontalReset : function() {
|
1111 |
-
// layout-specific props
|
1112 |
-
this.masonryHorizontal = {};
|
1113 |
-
// FIXME shouldn't have to call this again
|
1114 |
-
this._getSegments( true );
|
1115 |
-
var i = this.masonryHorizontal.rows;
|
1116 |
-
this.masonryHorizontal.rowXs = [];
|
1117 |
-
while (i--) {
|
1118 |
-
this.masonryHorizontal.rowXs.push( 0 );
|
1119 |
-
}
|
1120 |
-
},
|
1121 |
-
|
1122 |
-
_masonryHorizontalLayout : function( $elems ) {
|
1123 |
-
var instance = this,
|
1124 |
-
props = instance.masonryHorizontal;
|
1125 |
-
$elems.each(function(){
|
1126 |
-
var $this = $(this),
|
1127 |
-
//how many rows does this brick span
|
1128 |
-
rowSpan = Math.ceil( $this.outerHeight(true) / props.rowHeight );
|
1129 |
-
rowSpan = Math.min( rowSpan, props.rows );
|
1130 |
-
|
1131 |
-
if ( rowSpan === 1 ) {
|
1132 |
-
// if brick spans only one column, just like singleMode
|
1133 |
-
instance._masonryHorizontalPlaceBrick( $this, props.rowXs );
|
1134 |
-
} else {
|
1135 |
-
// brick spans more than one row
|
1136 |
-
// how many different places could this brick fit horizontally
|
1137 |
-
var groupCount = props.rows + 1 - rowSpan,
|
1138 |
-
groupX = [],
|
1139 |
-
groupRowX, i;
|
1140 |
-
|
1141 |
-
// for each group potential horizontal position
|
1142 |
-
for ( i=0; i < groupCount; i++ ) {
|
1143 |
-
// make an array of colY values for that one group
|
1144 |
-
groupRowX = props.rowXs.slice( i, i+rowSpan );
|
1145 |
-
// and get the max value of the array
|
1146 |
-
groupX[i] = Math.max.apply( Math, groupRowX );
|
1147 |
-
}
|
1148 |
-
|
1149 |
-
instance._masonryHorizontalPlaceBrick( $this, groupX );
|
1150 |
-
}
|
1151 |
-
});
|
1152 |
-
},
|
1153 |
-
|
1154 |
-
_masonryHorizontalPlaceBrick : function( $brick, setX ) {
|
1155 |
-
// get the minimum Y value from the columns
|
1156 |
-
var minimumX = Math.min.apply( Math, setX ),
|
1157 |
-
smallRow = 0;
|
1158 |
-
// Find index of smallest row, the first from the top
|
1159 |
-
for (var i=0, len = setX.length; i < len; i++) {
|
1160 |
-
if ( setX[i] === minimumX ) {
|
1161 |
-
smallRow = i;
|
1162 |
-
break;
|
1163 |
-
}
|
1164 |
-
}
|
1165 |
-
|
1166 |
-
// position the brick
|
1167 |
-
var x = minimumX,
|
1168 |
-
y = this.masonryHorizontal.rowHeight * smallRow;
|
1169 |
-
this._pushPosition( $brick, x, y );
|
1170 |
-
|
1171 |
-
// apply setHeight to necessary columns
|
1172 |
-
var setWidth = minimumX + $brick.outerWidth(true),
|
1173 |
-
setSpan = this.masonryHorizontal.rows + 1 - len;
|
1174 |
-
for ( i=0; i < setSpan; i++ ) {
|
1175 |
-
this.masonryHorizontal.rowXs[ smallRow + i ] = setWidth;
|
1176 |
-
}
|
1177 |
-
},
|
1178 |
-
|
1179 |
-
_masonryHorizontalGetContainerSize : function() {
|
1180 |
-
var containerWidth = Math.max.apply( Math, this.masonryHorizontal.rowXs );
|
1181 |
-
return { width: containerWidth };
|
1182 |
-
},
|
1183 |
-
|
1184 |
-
_masonryHorizontalResizeChanged : function() {
|
1185 |
-
return this._checkIfSegmentsChanged(true);
|
1186 |
-
},
|
1187 |
-
|
1188 |
-
|
1189 |
-
// ====================== fitColumns ======================
|
1190 |
-
|
1191 |
-
_fitColumnsReset : function() {
|
1192 |
-
this.fitColumns = {
|
1193 |
-
x : 0,
|
1194 |
-
y : 0,
|
1195 |
-
width : 0
|
1196 |
-
};
|
1197 |
-
},
|
1198 |
-
|
1199 |
-
_fitColumnsLayout : function( $elems ) {
|
1200 |
-
var instance = this,
|
1201 |
-
containerHeight = this.element.height(),
|
1202 |
-
props = this.fitColumns;
|
1203 |
-
$elems.each( function() {
|
1204 |
-
var $this = $(this),
|
1205 |
-
atomW = $this.outerWidth(true),
|
1206 |
-
atomH = $this.outerHeight(true);
|
1207 |
-
|
1208 |
-
if ( props.y !== 0 && atomH + props.y > containerHeight ) {
|
1209 |
-
// if this element cannot fit in the current column
|
1210 |
-
props.x = props.width;
|
1211 |
-
props.y = 0;
|
1212 |
-
}
|
1213 |
-
|
1214 |
-
// position the atom
|
1215 |
-
instance._pushPosition( $this, props.x, props.y );
|
1216 |
-
|
1217 |
-
props.width = Math.max( props.x + atomW, props.width );
|
1218 |
-
props.y += atomH;
|
1219 |
-
|
1220 |
-
});
|
1221 |
-
},
|
1222 |
-
|
1223 |
-
_fitColumnsGetContainerSize : function () {
|
1224 |
-
return { width : this.fitColumns.width };
|
1225 |
-
},
|
1226 |
-
|
1227 |
-
_fitColumnsResizeChanged : function() {
|
1228 |
-
return true;
|
1229 |
-
},
|
1230 |
-
|
1231 |
-
|
1232 |
-
|
1233 |
-
// ====================== cellsByColumn ======================
|
1234 |
-
|
1235 |
-
_cellsByColumnReset : function() {
|
1236 |
-
this.cellsByColumn = {
|
1237 |
-
index : 0
|
1238 |
-
};
|
1239 |
-
// get this.cellsByColumn.columnWidth
|
1240 |
-
this._getSegments();
|
1241 |
-
// get this.cellsByColumn.rowHeight
|
1242 |
-
this._getSegments(true);
|
1243 |
-
},
|
1244 |
-
|
1245 |
-
_cellsByColumnLayout : function( $elems ) {
|
1246 |
-
var instance = this,
|
1247 |
-
props = this.cellsByColumn;
|
1248 |
-
$elems.each( function(){
|
1249 |
-
var $this = $(this),
|
1250 |
-
col = Math.floor( props.index / props.rows ),
|
1251 |
-
row = props.index % props.rows,
|
1252 |
-
x = ( col + 0.5 ) * props.columnWidth - $this.outerWidth(true) / 2,
|
1253 |
-
y = ( row + 0.5 ) * props.rowHeight - $this.outerHeight(true) / 2;
|
1254 |
-
instance._pushPosition( $this, x, y );
|
1255 |
-
props.index ++;
|
1256 |
-
});
|
1257 |
-
},
|
1258 |
-
|
1259 |
-
_cellsByColumnGetContainerSize : function() {
|
1260 |
-
return { width : Math.ceil( this.$filteredAtoms.length / this.cellsByColumn.rows ) * this.cellsByColumn.columnWidth };
|
1261 |
-
},
|
1262 |
-
|
1263 |
-
_cellsByColumnResizeChanged : function() {
|
1264 |
-
return this._checkIfSegmentsChanged(true);
|
1265 |
-
},
|
1266 |
-
|
1267 |
-
// ====================== straightAcross ======================
|
1268 |
-
|
1269 |
-
_straightAcrossReset : function() {
|
1270 |
-
this.straightAcross = {
|
1271 |
-
x : 0
|
1272 |
-
};
|
1273 |
-
},
|
1274 |
-
|
1275 |
-
_straightAcrossLayout : function( $elems ) {
|
1276 |
-
var instance = this;
|
1277 |
-
$elems.each( function( i ){
|
1278 |
-
var $this = $(this);
|
1279 |
-
instance._pushPosition( $this, instance.straightAcross.x, 0 );
|
1280 |
-
instance.straightAcross.x += $this.outerWidth(true);
|
1281 |
-
});
|
1282 |
-
},
|
1283 |
-
|
1284 |
-
_straightAcrossGetContainerSize : function() {
|
1285 |
-
return { width : this.straightAcross.x };
|
1286 |
-
},
|
1287 |
-
|
1288 |
-
_straightAcrossResizeChanged : function() {
|
1289 |
-
return true;
|
1290 |
-
}
|
1291 |
-
|
1292 |
-
};
|
1293 |
-
|
1294 |
-
|
1295 |
-
// ======================= imagesLoaded Plugin ===============================
|
1296 |
-
/*!
|
1297 |
-
* jQuery imagesLoaded plugin v1.1.0
|
1298 |
-
* http://github.com/desandro/imagesloaded
|
1299 |
-
*
|
1300 |
-
* MIT License. by Paul Irish et al.
|
1301 |
-
*/
|
1302 |
-
|
1303 |
-
|
1304 |
-
// $('#my-container').imagesLoaded(myFunction)
|
1305 |
-
// or
|
1306 |
-
// $('img').imagesLoaded(myFunction)
|
1307 |
-
|
1308 |
-
// execute a callback when all images have loaded.
|
1309 |
-
// needed because .load() doesn't work on cached images
|
1310 |
-
|
1311 |
-
// callback function gets image collection as argument
|
1312 |
-
// `this` is the container
|
1313 |
-
|
1314 |
-
jQuery.fn.imagesLoaded = function( callback ) {
|
1315 |
-
var $this = this,
|
1316 |
-
$images = $this.find('img').add( $this.filter('img') ),
|
1317 |
-
len = $images.length,
|
1318 |
-
blank = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==',
|
1319 |
-
loaded = [];
|
1320 |
-
|
1321 |
-
function triggerCallback() {
|
1322 |
-
callback.call( $this, $images );
|
1323 |
-
}
|
1324 |
-
|
1325 |
-
function imgLoaded( event ) {
|
1326 |
-
var img = event.target;
|
1327 |
-
if ( img.src !== blank && jQuery.inArray( img, loaded ) === -1 ){
|
1328 |
-
loaded.push( img );
|
1329 |
-
if ( --len <= 0 ){
|
1330 |
-
setTimeout( triggerCallback );
|
1331 |
-
$images.unbind( '.imagesLoaded', imgLoaded );
|
1332 |
-
}
|
1333 |
-
}
|
1334 |
-
}
|
1335 |
-
|
1336 |
-
// if no images, trigger immediately
|
1337 |
-
if ( !len ) {
|
1338 |
-
triggerCallback();
|
1339 |
-
}
|
1340 |
-
|
1341 |
-
$images.bind( 'load.imagesLoaded error.imagesLoaded', imgLoaded ).each( function() {
|
1342 |
-
// cached images don't fire load sometimes, so we reset src.
|
1343 |
-
var src = this.src;
|
1344 |
-
// webkit hack from http://groups.google.com/group/jquery-dev/browse_thread/thread/eee6ab7b2da50e1f
|
1345 |
-
// data uri bypasses webkit log warning (thx doug jones)
|
1346 |
-
this.src = blank;
|
1347 |
-
this.src = src;
|
1348 |
-
});
|
1349 |
-
|
1350 |
-
return $this;
|
1351 |
-
};
|
1352 |
-
|
1353 |
-
|
1354 |
-
// helper function for logging errors
|
1355 |
-
// jQuery.error breaks jQuery chaining
|
1356 |
-
var logError = function( message ) {
|
1357 |
-
if ( window.console ) {
|
1358 |
-
window.console.error( message );
|
1359 |
-
}
|
1360 |
-
};
|
1361 |
-
|
1362 |
-
// ======================= Plugin bridge ===============================
|
1363 |
-
// leverages data method to either create or return jQuery.Isotope constructor
|
1364 |
-
// A bit from jQuery UI
|
1365 |
-
// https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.widget.js
|
1366 |
-
// A bit from jcarousel
|
1367 |
-
// https://github.com/jsor/jcarousel/blob/master/lib/jquery.jcarousel.js
|
1368 |
-
|
1369 |
-
jQuery.fn.isotope = function( options, callback ) {
|
1370 |
-
if ( typeof options === 'string' ) {
|
1371 |
-
// call method
|
1372 |
-
var args = Array.prototype.slice.call( arguments, 1 );
|
1373 |
-
|
1374 |
-
this.each(function(){
|
1375 |
-
var instance = jQuery.data( this, 'isotope' );
|
1376 |
-
if ( !instance ) {
|
1377 |
-
logError( "cannot call methods on isotope prior to initialization; " +
|
1378 |
-
"attempted to call method '" + options + "'" );
|
1379 |
-
return;
|
1380 |
-
}
|
1381 |
-
if ( !jQuery.isFunction( instance[options] ) || options.charAt(0) === "_" ) {
|
1382 |
-
logError( "no such method '" + options + "' for isotope instance" );
|
1383 |
-
return;
|
1384 |
-
}
|
1385 |
-
// apply method
|
1386 |
-
instance[ options ].apply( instance, args );
|
1387 |
-
});
|
1388 |
-
} else {
|
1389 |
-
this.each(function() {
|
1390 |
-
var instance = jQuery.data( this, 'isotope' );
|
1391 |
-
if ( instance ) {
|
1392 |
-
// apply options & init
|
1393 |
-
instance.option( options );
|
1394 |
-
instance._init( callback );
|
1395 |
-
} else {
|
1396 |
-
// initialize new instance
|
1397 |
-
jQuery.data( this, 'isotope', new jQuery.Isotope( options, this, callback ) );
|
1398 |
-
}
|
1399 |
-
});
|
1400 |
-
}
|
1401 |
-
// return jQuery object
|
1402 |
-
// so plugin methods do not have to
|
1403 |
-
return this;
|
1404 |
-
};
|
1405 |
-
|
1406 |
-
})( window, jQuery );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/jquery.isotope.min.js
DELETED
@@ -1,11 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* Isotope v1.5.23
|
3 |
-
* An exquisite jQuery plugin for magical layouts
|
4 |
-
* http://isotope.metafizzy.co
|
5 |
-
*
|
6 |
-
* Commercial use requires one-time license fee
|
7 |
-
* http://metafizzy.co/#licenses
|
8 |
-
*
|
9 |
-
* Copyright 2012 David DeSandro / Metafizzy
|
10 |
-
*/
|
11 |
-
(function(a,b,c){"use strict";var d=a.document,e=a.Modernizr,f=function(a){return a.charAt(0).toUpperCase()+a.slice(1)},g="Moz Webkit O Ms".split(" "),h=function(a){var b=d.documentElement.style,c;if(typeof b[a]=="string")return a;a=f(a);for(var e=0,h=g.length;e<h;e++){c=g[e]+a;if(typeof b[c]=="string")return c}},i=h("transform"),j=h("transitionProperty"),k={csstransforms:function(){return!!i},csstransforms3d:function(){var a=!!h("perspective");if(a){var c=" -o- -moz- -ms- -webkit- -khtml- ".split(" "),d="@media ("+c.join("transform-3d),(")+"modernizr)",e=b("<style>"+d+"{#modernizr{height:3px}}"+"</style>").appendTo("head"),f=b('<div id="modernizr" />').appendTo("html");a=f.height()===3,f.remove(),e.remove()}return a},csstransitions:function(){return!!j}},l;if(e)for(l in k)e.hasOwnProperty(l)||e.addTest(l,k[l]);else{e=a.Modernizr={_version:"1.6ish: miniModernizr for Isotope"};var m=" ",n;for(l in k)n=k[l](),e[l]=n,m+=" "+(n?"":"no-")+l;b("html").addClass(m)}if(e.csstransforms){var o=e.csstransforms3d?{translate:function(a){return"translate3d("+a[0]+"px, "+a[1]+"px, 0) "},scale:function(a){return"scale3d("+a+", "+a+", 1) "}}:{translate:function(a){return"translate("+a[0]+"px, "+a[1]+"px) "},scale:function(a){return"scale("+a+") "}},p=function(a,c,d){var e=b.data(a,"isoTransform")||{},f={},g,h={},j;f[c]=d,b.extend(e,f);for(g in e)j=e[g],h[g]=o[g](j);var k=h.translate||"",l=h.scale||"",m=k+l;b.data(a,"isoTransform",e),a.style[i]=m};b.cssNumber.scale=!0,b.cssHooks.scale={set:function(a,b){p(a,"scale",b)},get:function(a,c){var d=b.data(a,"isoTransform");return d&&d.scale?d.scale:1}},b.fx.step.scale=function(a){b.cssHooks.scale.set(a.elem,a.now+a.unit)},b.cssNumber.translate=!0,b.cssHooks.translate={set:function(a,b){p(a,"translate",b)},get:function(a,c){var d=b.data(a,"isoTransform");return d&&d.translate?d.translate:[0,0]}}}var q,r;e.csstransitions&&(q={WebkitTransitionProperty:"webkitTransitionEnd",MozTransitionProperty:"transitionend",OTransitionProperty:"oTransitionEnd otransitionend",transitionProperty:"transitionend"}[j],r=h("transitionDuration"));var s=b.event,t;s.special.smartresize={setup:function(){b(this).bind("resize",s.special.smartresize.handler)},teardown:function(){b(this).unbind("resize",s.special.smartresize.handler)},handler:function(a,b){var c=this,d=arguments;a.type="smartresize",t&&clearTimeout(t),t=setTimeout(function(){jQuery.event.handle.apply(c,d)},b==="execAsap"?0:100)}},b.fn.smartresize=function(a){return a?this.bind("smartresize",a):this.trigger("smartresize",["execAsap"])},b.Isotope=function(a,c,d){this.element=b(c),this._create(a),this._init(d)};var u=["width","height"],v=b(a);b.Isotope.settings={resizable:!0,layoutMode:"masonry",containerClass:"isotope",itemClass:"isotope-item",hiddenClass:"isotope-hidden",hiddenStyle:{opacity:0,scale:.001},visibleStyle:{opacity:1,scale:1},containerStyle:{position:"relative",overflow:"hidden"},animationEngine:"best-available",animationOptions:{queue:!1,duration:800},sortBy:"original-order",sortAscending:!0,resizesContainer:!0,transformsEnabled:!0,itemPositionDataEnabled:!1},b.Isotope.prototype={_create:function(a){this.options=b.extend({},b.Isotope.settings,a),this.styleQueue=[],this.elemCount=0;var c=this.element[0].style;this.originalStyle={};var d=u.slice(0);for(var e in this.options.containerStyle)d.push(e);for(var f=0,g=d.length;f<g;f++)e=d[f],this.originalStyle[e]=c[e]||"";this.element.css(this.options.containerStyle),this._updateAnimationEngine(),this._updateUsingTransforms();var h={"original-order":function(a,b){return b.elemCount++,b.elemCount},random:function(){return Math.random()}};this.options.getSortData=b.extend(this.options.getSortData,h),this.reloadItems(),this.offset={left:parseInt(this.element.css("padding-left")||0,10),top:parseInt(this.element.css("padding-top")||0,10)};var i=this;setTimeout(function(){i.element.addClass(i.options.containerClass)},0),this.options.resizable&&v.bind("smartresize.isotope",function(){i.resize()}),this.element.delegate("."+this.options.hiddenClass,"click",function(){return!1})},_getAtoms:function(a){var b=this.options.itemSelector,c=b?a.filter(b).add(a.find(b)):a,d={position:"absolute"};return c=c.filter(function(a,b){return b.nodeType===1}),this.usingTransforms&&(d.left=0,d.top=0),c.css(d).addClass(this.options.itemClass),this.updateSortData(c,!0),c},_init:function(a){this.$filteredAtoms=this._filter(this.$allAtoms),this._sort(),this.reLayout(a)},option:function(a){if(b.isPlainObject(a)){this.options=b.extend(!0,this.options,a);var c;for(var d in a)c="_update"+f(d),this[c]&&this[c]()}},_updateAnimationEngine:function(){var a=this.options.animationEngine.toLowerCase().replace(/[ _\-]/g,""),b;switch(a){case"css":case"none":b=!1;break;case"jquery":b=!0;break;default:b=!e.csstransitions}this.isUsingJQueryAnimation=b,this._updateUsingTransforms()},_updateTransformsEnabled:function(){this._updateUsingTransforms()},_updateUsingTransforms:function(){var a=this.usingTransforms=this.options.transformsEnabled&&e.csstransforms&&e.csstransitions&&!this.isUsingJQueryAnimation;a||(delete this.options.hiddenStyle.scale,delete this.options.visibleStyle.scale),this.getPositionStyles=a?this._translate:this._positionAbs},_filter:function(a){var b=this.options.filter===""?"*":this.options.filter;if(!b)return a;var c=this.options.hiddenClass,d="."+c,e=a.filter(d),f=e;if(b!=="*"){f=e.filter(b);var g=a.not(d).not(b).addClass(c);this.styleQueue.push({$el:g,style:this.options.hiddenStyle})}return this.styleQueue.push({$el:f,style:this.options.visibleStyle}),f.removeClass(c),a.filter(b)},updateSortData:function(a,c){var d=this,e=this.options.getSortData,f,g;a.each(function(){f=b(this),g={};for(var a in e)!c&&a==="original-order"?g[a]=b.data(this,"isotope-sort-data")[a]:g[a]=e[a](f,d);b.data(this,"isotope-sort-data",g)})},_sort:function(){var a=this.options.sortBy,b=this._getSorter,c=this.options.sortAscending?1:-1,d=function(d,e){var f=b(d,a),g=b(e,a);return f===g&&a!=="original-order"&&(f=b(d,"original-order"),g=b(e,"original-order")),(f>g?1:f<g?-1:0)*c};this.$filteredAtoms.sort(d)},_getSorter:function(a,c){return b.data(a,"isotope-sort-data")[c]},_translate:function(a,b){return{translate:[a,b]}},_positionAbs:function(a,b){return{left:a,top:b}},_pushPosition:function(a,b,c){b=Math.round(b+this.offset.left),c=Math.round(c+this.offset.top);var d=this.getPositionStyles(b,c);this.styleQueue.push({$el:a,style:d}),this.options.itemPositionDataEnabled&&a.data("isotope-item-position",{x:b,y:c})},layout:function(a,b){var c=this.options.layoutMode;this["_"+c+"Layout"](a);if(this.options.resizesContainer){var d=this["_"+c+"GetContainerSize"]();this.styleQueue.push({$el:this.element,style:d})}this._processStyleQueue(a,b),this.isLaidOut=!0},_processStyleQueue:function(a,c){var d=this.isLaidOut?this.isUsingJQueryAnimation?"animate":"css":"css",f=this.options.animationOptions,g=this.options.onLayout,h,i,j,k;i=function(a,b){b.$el[d](b.style,f)};if(this._isInserting&&this.isUsingJQueryAnimation)i=function(a,b){h=b.$el.hasClass("no-transition")?"css":d,b.$el[h](b.style,f)};else if(c||g||f.complete){var l=!1,m=[c,g,f.complete],n=this;j=!0,k=function(){if(l)return;var b;for(var c=0,d=m.length;c<d;c++)b=m[c],typeof b=="function"&&b.call(n.element,a,n);l=!0};if(this.isUsingJQueryAnimation&&d==="animate")f.complete=k,j=!1;else if(e.csstransitions){var o=0,p=this.styleQueue[0],s=p&&p.$el,t;while(!s||!s.length){t=this.styleQueue[o++];if(!t)return;s=t.$el}var u=parseFloat(getComputedStyle(s[0])[r]);u>0&&(i=function(a,b){b.$el[d](b.style,f).one(q,k)},j=!1)}}b.each(this.styleQueue,i),j&&k(),this.styleQueue=[]},resize:function(){this["_"+this.options.layoutMode+"ResizeChanged"]()&&this.reLayout()},reLayout:function(a){this["_"+this.options.layoutMode+"Reset"](),this.layout(this.$filteredAtoms,a)},addItems:function(a,b){var c=this._getAtoms(a);this.$allAtoms=this.$allAtoms.add(c),b&&b(c)},insert:function(a,b){this.element.append(a);var c=this;this.addItems(a,function(a){var d=c._filter(a);c._addHideAppended(d),c._sort(),c.reLayout(),c._revealAppended(d,b)})},appended:function(a,b){var c=this;this.addItems(a,function(a){c._addHideAppended(a),c.layout(a),c._revealAppended(a,b)})},_addHideAppended:function(a){this.$filteredAtoms=this.$filteredAtoms.add(a),a.addClass("no-transition"),this._isInserting=!0,this.styleQueue.push({$el:a,style:this.options.hiddenStyle})},_revealAppended:function(a,b){var c=this;setTimeout(function(){a.removeClass("no-transition"),c.styleQueue.push({$el:a,style:c.options.visibleStyle}),c._isInserting=!1,c._processStyleQueue(a,b)},10)},reloadItems:function(){this.$allAtoms=this._getAtoms(this.element.children())},remove:function(a,b){this.$allAtoms=this.$allAtoms.not(a),this.$filteredAtoms=this.$filteredAtoms.not(a);var c=this,d=function(){a.remove(),b&&b.call(c.element)};a.filter(":not(."+this.options.hiddenClass+")").length?(this.styleQueue.push({$el:a,style:this.options.hiddenStyle}),this._sort(),this.reLayout(d)):d()},shuffle:function(a){this.updateSortData(this.$allAtoms),this.options.sortBy="random",this._sort(),this.reLayout(a)},destroy:function(){var a=this.usingTransforms,b=this.options;this.$allAtoms.removeClass(b.hiddenClass+" "+b.itemClass).each(function(){var b=this.style;b.position="",b.top="",b.left="",b.opacity="",a&&(b[i]="")});var c=this.element[0].style;for(var d in this.originalStyle)c[d]=this.originalStyle[d];this.element.unbind(".isotope").undelegate("."+b.hiddenClass,"click").removeClass(b.containerClass).removeData("isotope"),v.unbind(".isotope")},_getSegments:function(a){var b=this.options.layoutMode,c=a?"rowHeight":"columnWidth",d=a?"height":"width",e=a?"rows":"cols",g=this.element[d](),h,i=this.options[b]&&this.options[b][c]||this.$filteredAtoms["outer"+f(d)](!0)||g;h=Math.floor(g/i),h=Math.max(h,1),this[b][e]=h,this[b][c]=i},_checkIfSegmentsChanged:function(a){var b=this.options.layoutMode,c=a?"rows":"cols",d=this[b][c];return this._getSegments(a),this[b][c]!==d},_masonryReset:function(){this.masonry={},this._getSegments();var a=this.masonry.cols;this.masonry.colYs=[];while(a--)this.masonry.colYs.push(0)},_masonryLayout:function(a){var c=this,d=c.masonry;a.each(function(){var a=b(this),e=Math.ceil(a.outerWidth(!0)/d.columnWidth);e=Math.min(e,d.cols);if(e===1)c._masonryPlaceBrick(a,d.colYs);else{var f=d.cols+1-e,g=[],h,i;for(i=0;i<f;i++)h=d.colYs.slice(i,i+e),g[i]=Math.max.apply(Math,h);c._masonryPlaceBrick(a,g)}})},_masonryPlaceBrick:function(a,b){var c=Math.min.apply(Math,b),d=0;for(var e=0,f=b.length;e<f;e++)if(b[e]===c){d=e;break}var g=this.masonry.columnWidth*d,h=c;this._pushPosition(a,g,h);var i=c+a.outerHeight(!0),j=this.masonry.cols+1-f;for(e=0;e<j;e++)this.masonry.colYs[d+e]=i},_masonryGetContainerSize:function(){var a=Math.max.apply(Math,this.masonry.colYs);return{height:a}},_masonryResizeChanged:function(){return this._checkIfSegmentsChanged()},_fitRowsReset:function(){this.fitRows={x:0,y:0,height:0}},_fitRowsLayout:function(a){var c=this,d=this.element.width(),e=this.fitRows;a.each(function(){var a=b(this),f=a.outerWidth(!0),g=a.outerHeight(!0);e.x!==0&&f+e.x>d&&(e.x=0,e.y=e.height),c._pushPosition(a,e.x,e.y),e.height=Math.max(e.y+g,e.height),e.x+=f})},_fitRowsGetContainerSize:function(){return{height:this.fitRows.height}},_fitRowsResizeChanged:function(){return!0},_cellsByRowReset:function(){this.cellsByRow={index:0},this._getSegments(),this._getSegments(!0)},_cellsByRowLayout:function(a){var c=this,d=this.cellsByRow;a.each(function(){var a=b(this),e=d.index%d.cols,f=Math.floor(d.index/d.cols),g=(e+.5)*d.columnWidth-a.outerWidth(!0)/2,h=(f+.5)*d.rowHeight-a.outerHeight(!0)/2;c._pushPosition(a,g,h),d.index++})},_cellsByRowGetContainerSize:function(){return{height:Math.ceil(this.$filteredAtoms.length/this.cellsByRow.cols)*this.cellsByRow.rowHeight+this.offset.top}},_cellsByRowResizeChanged:function(){return this._checkIfSegmentsChanged()},_straightDownReset:function(){this.straightDown={y:0}},_straightDownLayout:function(a){var c=this;a.each(function(a){var d=b(this);c._pushPosition(d,0,c.straightDown.y),c.straightDown.y+=d.outerHeight(!0)})},_straightDownGetContainerSize:function(){return{height:this.straightDown.y}},_straightDownResizeChanged:function(){return!0},_masonryHorizontalReset:function(){this.masonryHorizontal={},this._getSegments(!0);var a=this.masonryHorizontal.rows;this.masonryHorizontal.rowXs=[];while(a--)this.masonryHorizontal.rowXs.push(0)},_masonryHorizontalLayout:function(a){var c=this,d=c.masonryHorizontal;a.each(function(){var a=b(this),e=Math.ceil(a.outerHeight(!0)/d.rowHeight);e=Math.min(e,d.rows);if(e===1)c._masonryHorizontalPlaceBrick(a,d.rowXs);else{var f=d.rows+1-e,g=[],h,i;for(i=0;i<f;i++)h=d.rowXs.slice(i,i+e),g[i]=Math.max.apply(Math,h);c._masonryHorizontalPlaceBrick(a,g)}})},_masonryHorizontalPlaceBrick:function(a,b){var c=Math.min.apply(Math,b),d=0;for(var e=0,f=b.length;e<f;e++)if(b[e]===c){d=e;break}var g=c,h=this.masonryHorizontal.rowHeight*d;this._pushPosition(a,g,h);var i=c+a.outerWidth(!0),j=this.masonryHorizontal.rows+1-f;for(e=0;e<j;e++)this.masonryHorizontal.rowXs[d+e]=i},_masonryHorizontalGetContainerSize:function(){var a=Math.max.apply(Math,this.masonryHorizontal.rowXs);return{width:a}},_masonryHorizontalResizeChanged:function(){return this._checkIfSegmentsChanged(!0)},_fitColumnsReset:function(){this.fitColumns={x:0,y:0,width:0}},_fitColumnsLayout:function(a){var c=this,d=this.element.height(),e=this.fitColumns;a.each(function(){var a=b(this),f=a.outerWidth(!0),g=a.outerHeight(!0);e.y!==0&&g+e.y>d&&(e.x=e.width,e.y=0),c._pushPosition(a,e.x,e.y),e.width=Math.max(e.x+f,e.width),e.y+=g})},_fitColumnsGetContainerSize:function(){return{width:this.fitColumns.width}},_fitColumnsResizeChanged:function(){return!0},_cellsByColumnReset:function(){this.cellsByColumn={index:0},this._getSegments(),this._getSegments(!0)},_cellsByColumnLayout:function(a){var c=this,d=this.cellsByColumn;a.each(function(){var a=b(this),e=Math.floor(d.index/d.rows),f=d.index%d.rows,g=(e+.5)*d.columnWidth-a.outerWidth(!0)/2,h=(f+.5)*d.rowHeight-a.outerHeight(!0)/2;c._pushPosition(a,g,h),d.index++})},_cellsByColumnGetContainerSize:function(){return{width:Math.ceil(this.$filteredAtoms.length/this.cellsByColumn.rows)*this.cellsByColumn.columnWidth}},_cellsByColumnResizeChanged:function(){return this._checkIfSegmentsChanged(!0)},_straightAcrossReset:function(){this.straightAcross={x:0}},_straightAcrossLayout:function(a){var c=this;a.each(function(a){var d=b(this);c._pushPosition(d,c.straightAcross.x,0),c.straightAcross.x+=d.outerWidth(!0)})},_straightAcrossGetContainerSize:function(){return{width:this.straightAcross.x}},_straightAcrossResizeChanged:function(){return!0}},b.fn.imagesLoaded=function(a){function h(){a.call(c,d)}function i(a){var c=a.target;c.src!==f&&b.inArray(c,g)===-1&&(g.push(c),--e<=0&&(setTimeout(h),d.unbind(".imagesLoaded",i)))}var c=this,d=c.find("img").add(c.filter("img")),e=d.length,f="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",g=[];return e||h(),d.bind("load.imagesLoaded error.imagesLoaded",i).each(function(){var a=this.src;this.src=f,this.src=a}),c};var w=function(b){a.console&&a.console.error(b)};b.fn.isotope=function(a,c){if(typeof a=="string"){var d=Array.prototype.slice.call(arguments,1);this.each(function(){var c=b.data(this,"isotope");if(!c){w("cannot call methods on isotope prior to initialization; attempted to call method '"+a+"'");return}if(!b.isFunction(c[a])||a.charAt(0)==="_"){w("no such method '"+a+"' for isotope instance");return}c[a].apply(c,d)})}else this.each(function(){var d=b.data(this,"isotope");d?(d.option(a),d._init(c)):b.data(this,"isotope",new b.Isotope(a,this,c))});return this}})(window,jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/js/fake-element.js
DELETED
@@ -1,38 +0,0 @@
|
|
1 |
-
var fakeElement = {};
|
2 |
-
|
3 |
-
fakeElement.constanants = 'b c d f g k l m n p q r s t v x z'.split(' ');
|
4 |
-
fakeElement.vowels = 'a e i o u y'.split(' ');
|
5 |
-
fakeElement.categories = 'alkali alkaline-earth lanthanoid actinoid transition post-transition'.split(' ');
|
6 |
-
fakeElement.suffices = 'on ium ogen'.split(' ');
|
7 |
-
|
8 |
-
fakeElement.getRandom = function( property ) {
|
9 |
-
var values = fakeElement[ property ];
|
10 |
-
return values[ Math.floor( Math.random() * values.length ) ];
|
11 |
-
};
|
12 |
-
|
13 |
-
fakeElement.create = function() {
|
14 |
-
var widthClass = Math.random()*10 > 6 ? 'width2' : 'width1';
|
15 |
-
heightClass = Math.random()*10 > 6 ? 'height2' : 'height1';
|
16 |
-
category = fakeElement.getRandom('categories');
|
17 |
-
className = 'element fake metal ' + category + ' ' + widthClass + ' ' + heightClass;
|
18 |
-
letter1 = fakeElement.getRandom('constanants').toUpperCase();
|
19 |
-
letter2 = fakeElement.getRandom('constanants');
|
20 |
-
symbol = letter1 + letter2;
|
21 |
-
name = letter1 + fakeElement.getRandom('vowels') + letter2 + fakeElement.getRandom('vowels') + fakeElement.getRandom('constanants') + fakeElement.getRandom('suffices');
|
22 |
-
number = ~~( 21 + Math.random() * 100 );
|
23 |
-
weight = ~~( number * 2 + Math.random() * 15 );
|
24 |
-
|
25 |
-
return '<div class="' + className + '" data-symbol="' + symbol +
|
26 |
-
'" data-category="' + category + '"><p class="number">' + number +
|
27 |
-
'</p><h3 class="symbol">' + symbol + '</h3><h2 class="name">' + name +
|
28 |
-
'</h2><p class="weight">' + weight + '</p></div>';
|
29 |
-
};
|
30 |
-
|
31 |
-
fakeElement.getGroup = function() {
|
32 |
-
var i = Math.ceil( Math.random()*3 + 1 ),
|
33 |
-
newEls = '';
|
34 |
-
while ( i-- ) {
|
35 |
-
newEls += fakeElement.create();
|
36 |
-
}
|
37 |
-
return newEls;
|
38 |
-
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/js/jquery-1.7.1.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery v1.7.1 jquery.com | jquery.org/license */
|
2 |
-
(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function cb(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function ca(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bE.test(a)?d(a,e):ca(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)ca(a+"["+e+"]",b[e],c,d);else d(a,b)}function b_(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bT,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bP),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bC(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bx:by,g=0,h=e.length;if(d>0){if(c!=="border")for(;g<h;g++)c||(d-=parseFloat(f.css(a,"padding"+e[g]))||0),c==="margin"?d+=parseFloat(f.css(a,c+e[g]))||0:d-=parseFloat(f.css(a,"border"+e[g]+"Width"))||0;return d+"px"}d=bz(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0;if(c)for(;g<h;g++)d+=parseFloat(f.css(a,"padding"+e[g]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+e[g]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+e[g]))||0);return d+"px"}function bp(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c+(i[c][d].namespace?".":"")+i[c][d].namespace,i[c][d],i[c][d].data)}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?m(g):h==="function"&&(!a.unique||!o.has(g))&&c.push(g)},n=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,l=j||0,j=0,k=c.length;for(;c&&l<k;l++)if(c[l].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}i=!1,c&&(a.once?e===!0?o.disable():c=[]:d&&d.length&&(e=d.shift(),o.fireWith(e[0],e[1])))},o={add:function(){if(c){var a=c.length;m(arguments),i?k=c.length:e&&e!==!0&&(j=a,n(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){i&&f<=k&&(k--,f<=l&&l--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&o.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(i?a.once||d.push([b,c]):(!a.once||!e)&&n(b,c));return this},fire:function(){o.fireWith(this,arguments);return this},fired:function(){return!!e}};return o};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function(){g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p,q=c.createElement("div"),r=c.documentElement;q.setAttribute("className","t"),q.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="<div "+n+"><div></div></div>"+"<table "+n+" cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="<div style='width:4px;'></div>",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var i=0,j=e.length;i<j;i++)g=e[i].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),l(this[0],g,h[g]));f._data(this[0],"parsedAttrs",!0)}}return h}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split("."),d[1]=d[1]?"."+d[1]:"";if(c===b){h=this.triggerHandler("getData"+d[1]+"!",[d[0]]),h===b&&this.length&&(h=f.data(this[0],a),h=l(this[0],a,h));return h===b&&d[1]?this.data(d[0]):h}return this.each(function(){var b=f(this),e=[d[0],c];b.triggerHandler("setData"+d[1]+"!",e),f.data(this,a,c),b.triggerHandler("changeData"+d[1]+"!",e)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise()}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h<g;h++)e=d[h],e&&(c=f.propFix[e]||e,f.attr(a,e,""),a.removeAttribute(v?e:c),u.test(e)&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};
|
3 |
-
f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=[],j,k,l,m,n,o,p,q,r,s,t;g[0]=c,c.delegateTarget=this;if(e&&!c.target.disabled&&(!c.button||c.type!=="click")){m=f(this),m.context=this.ownerDocument||this;for(l=c.target;l!=this;l=l.parentNode||this){o={},q=[],m[0]=l;for(j=0;j<e;j++)r=d[j],s=r.selector,o[s]===b&&(o[s]=r.quick?H(l,r.quick):m.is(s)),o[s]&&q.push(r);q.length&&i.push({elem:l,matches:q})}}d.length>e&&i.push({elem:this,matches:d.slice(e)});for(j=0;j<i.length&&!c.isPropagationStopped();j++){p=i[j],c.currentTarget=p.elem;for(k=0;k<p.matches.length&&!c.isImmediatePropagationStopped();k++){r=p.matches[k];if(h||!c.namespace&&!r.namespace||c.namespace_re&&c.namespace_re.test(r.namespace))c.data=r.data,c.handleObj=r,n=((f.event.special[r.origType]||{}).handle||r.handler).apply(p.elem,g),n!==b&&(c.result=n,n===!1&&(c.preventDefault(),c.stopPropagation()))}}return c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0)}),d._submit_attached=!0)})},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on.call(this,a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.type+"."+e.namespace:e.type,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.POS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function()
|
4 |
-
{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bp)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bn(k[i]);else bn(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bq=/alpha\([^)]*\)/i,br=/opacity=([^)]*)/,bs=/([A-Z]|^ms)/g,bt=/^-?\d+(?:px)?$/i,bu=/^-?\d/,bv=/^([\-+])=([\-+.\de]+)/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bv.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bC(a,b,d);f.swap(a,bw,function(){e=bC(a,b,d)});return e}},set:function(a,b){if(!bt.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cv(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cn.test(h)?(o=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),o?(f._data(this,"toggle"+i,o==="show"?"hide":"show"),j[o]()):j[h]()):(k=co.exec(h),l=j.cur(),k?(m=parseFloat(k[2]),n=k[3]||(f.cssNumber[i]?"":"px"),n!=="px"&&(f.style(this,i,(m||1)+n),l=(m||1)/j.cur()*l,f.style(this,i,l+n)),k[1]&&(m=(k[1]==="-="?-1:1)*m+l),j.custom(l,m,n)):j.custom(l,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cr||cs(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){e.options.hide&&f._data(e.elem,"fxshow"+e.prop)===b&&f._data(e.elem,"fxshow"+e.prop,e.start)},h()&&f.timers.push(h)&&!cp&&(cp=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cr||cs(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cp),cp=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(["width","height"],function(a,b){f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.support.fixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.support.fixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);
|
|
|
|
|
|
|
|
js/libraries/isotope/js/jquery.ba-bbq.min.js
DELETED
@@ -1,18 +0,0 @@
|
|
1 |
-
/*
|
2 |
-
* jQuery BBQ: Back Button & Query Library - v1.2.1 - 2/17/2010
|
3 |
-
* http://benalman.com/projects/jquery-bbq-plugin/
|
4 |
-
*
|
5 |
-
* Copyright (c) 2010 "Cowboy" Ben Alman
|
6 |
-
* Dual licensed under the MIT and GPL licenses.
|
7 |
-
* http://benalman.com/about/license/
|
8 |
-
*/
|
9 |
-
(function($,p){var i,m=Array.prototype.slice,r=decodeURIComponent,a=$.param,c,l,v,b=$.bbq=$.bbq||{},q,u,j,e=$.event.special,d="hashchange",A="querystring",D="fragment",y="elemUrlAttr",g="location",k="href",t="src",x=/^.*\?|#.*$/g,w=/^.*\#/,h,C={};function E(F){return typeof F==="string"}function B(G){var F=m.call(arguments,1);return function(){return G.apply(this,F.concat(m.call(arguments)))}}function n(F){return F.replace(/^[^#]*#?(.*)$/,"$1")}function o(F){return F.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(H,M,F,I,G){var O,L,K,N,J;if(I!==i){K=F.match(H?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);J=K[3]||"";if(G===2&&E(I)){L=I.replace(H?w:x,"")}else{N=l(K[2]);I=E(I)?l[H?D:A](I):I;L=G===2?I:G===1?$.extend({},I,N):$.extend({},N,I);L=a(L);if(H){L=L.replace(h,r)}}O=K[1]+(H?"#":L||!K[1]?"?":"")+L+J}else{O=M(F!==i?F:p[g][k])}return O}a[A]=B(f,0,o);a[D]=c=B(f,1,n);c.noEscape=function(G){G=G||"";var F=$.map(G.split(""),encodeURIComponent);h=new RegExp(F.join("|"),"g")};c.noEscape(",/");$.deparam=l=function(I,F){var H={},G={"true":!0,"false":!1,"null":null};$.each(I.replace(/\+/g," ").split("&"),function(L,Q){var K=Q.split("="),P=r(K[0]),J,O=H,M=0,R=P.split("]["),N=R.length-1;if(/\[/.test(R[0])&&/\]$/.test(R[N])){R[N]=R[N].replace(/\]$/,"");R=R.shift().split("[").concat(R);N=R.length-1}else{N=0}if(K.length===2){J=r(K[1]);if(F){J=J&&!isNaN(J)?+J:J==="undefined"?i:G[J]!==i?G[J]:J}if(N){for(;M<=N;M++){P=R[M]===""?O.length:R[M];O=O[P]=M<N?O[P]||(R[M+1]&&isNaN(R[M+1])?{}:[]):J}}else{if($.isArray(H[P])){H[P].push(J)}else{if(H[P]!==i){H[P]=[H[P],J]}else{H[P]=J}}}}else{if(P){H[P]=F?i:""}}});return H};function z(H,F,G){if(F===i||typeof F==="boolean"){G=F;F=a[H?D:A]()}else{F=E(F)?F.replace(H?w:x,""):F}return l(F,G)}l[A]=B(z,0);l[D]=v=B(z,1);$[y]||($[y]=function(F){return $.extend(C,F)})({a:k,base:k,iframe:t,img:t,input:t,form:"action",link:k,script:t});j=$[y];function s(I,G,H,F){if(!E(H)&&typeof H!=="object"){F=H;H=G;G=i}return this.each(function(){var L=$(this),J=G||j()[(this.nodeName||"").toLowerCase()]||"",K=J&&L.attr(J)||"";L.attr(J,a[I](K,H,F))})}$.fn[A]=B(s,A);$.fn[D]=B(s,D);b.pushState=q=function(I,F){if(E(I)&&/^#/.test(I)&&F===i){F=2}var H=I!==i,G=c(p[g][k],H?I:{},H?F:2);p[g][k]=G+(/#/.test(G)?"":"#")};b.getState=u=function(F,G){return F===i||typeof F==="boolean"?v(F):v(G)[F]};b.removeState=function(F){var G={};if(F!==i){G=u();$.each($.isArray(F)?F:arguments,function(I,H){delete G[H]})}q(G,2)};e[d]=$.extend(e[d],{add:function(F){var H;function G(J){var I=J[D]=c();J.getState=function(K,L){return K===i||typeof K==="boolean"?l(I,K):l(I,L)[K]};H.apply(this,arguments)}if($.isFunction(F)){H=F;return G}else{H=F.handler;F.handler=G}}})})(jQuery,this);
|
10 |
-
/*
|
11 |
-
* jQuery hashchange event - v1.2 - 2/11/2010
|
12 |
-
* http://benalman.com/projects/jquery-hashchange-plugin/
|
13 |
-
*
|
14 |
-
* Copyright (c) 2010 "Cowboy" Ben Alman
|
15 |
-
* Dual licensed under the MIT and GPL licenses.
|
16 |
-
* http://benalman.com/about/license/
|
17 |
-
*/
|
18 |
-
(function($,i,b){var j,k=$.event.special,c="location",d="hashchange",l="href",f=$.browser,g=document.documentMode,h=f.msie&&(g===b||g<8),e="on"+d in i&&!h;function a(m){m=m||i[c][l];return m.replace(/^[^#]*#?(.*)$/,"$1")}$[d+"Delay"]=100;k[d]=$.extend(k[d],{setup:function(){if(e){return false}$(j.start)},teardown:function(){if(e){return false}$(j.stop)}});j=(function(){var m={},r,n,o,q;function p(){o=q=function(s){return s};if(h){n=$('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/js/jquery.infinitescroll.min.js
DELETED
@@ -1,47 +0,0 @@
|
|
1 |
-
/*
|
2 |
-
--------------------------------
|
3 |
-
Infinite Scroll
|
4 |
-
--------------------------------
|
5 |
-
+ https://github.com/paulirish/infinitescroll
|
6 |
-
+ version 2.0b2.110713
|
7 |
-
+ Copyright 2011 Paul Irish & Luke Shumard
|
8 |
-
+ Licensed under the MIT license
|
9 |
-
|
10 |
-
+ Documentation: http://infinite-scroll.com/
|
11 |
-
|
12 |
-
*/
|
13 |
-
|
14 |
-
(function(window,$,undefined){$.infinitescroll=function infscr(options,callback,element){this.element=$(element);this._create(options,callback);};$.infinitescroll.defaults={loading:{finished:undefined,finishedMsg:"<em>Congratulations, you've reached the end of the internet.</em>",img:"http://www.infinite-scroll.com/loading.gif",msg:null,msgText:"<em>Loading the next set of posts...</em>",selector:null,speed:'fast',start:undefined},state:{isDuringAjax:false,isInvalidPage:false,isDestroyed:false,isDone:false,isPaused:false,currPage:1},callback:undefined,debug:false,behavior:undefined,binder:$(window),nextSelector:"div.navigation a:first",navSelector:"div.navigation",contentSelector:null,extraScrollPx:150,itemSelector:"div.post",animate:false,pathParse:undefined,dataType:'html',appendCallback:true,bufferPx:40,errorCallback:function(){},infid:0,pixelsFromNavToBottom:undefined,path:undefined};$.infinitescroll.prototype={_binding:function infscr_binding(binding){var instance=this,opts=instance.options;if(!!opts.behavior&&this['_binding_'+opts.behavior]!==undefined){this['_binding_'+opts.behavior].call(this);return;}
|
15 |
-
if(binding!=='bind'&&binding!=='unbind'){this._debug('Binding value '+binding+' not valid')
|
16 |
-
return false;}
|
17 |
-
if(binding=='unbind'){(this.options.binder).unbind('smartscroll.infscr.'+instance.options.infid);}else{(this.options.binder)[binding]('smartscroll.infscr.'+instance.options.infid,function(){instance.scroll();});};this._debug('Binding',binding);},_create:function infscr_create(options,callback){if(!this._validate(options)){return false;}
|
18 |
-
var opts=this.options=$.extend(true,{},$.infinitescroll.defaults,options),relurl=/(.*?\/\/).*?(\/.*)/,path=$(opts.nextSelector).attr('href');opts.contentSelector=opts.contentSelector||this.element;opts.loading.selector=opts.loading.selector||opts.contentSelector;if(!path){this._debug('Navigation selector not found');return;}
|
19 |
-
opts.path=this._determinepath(path);opts.loading.msg=$('<div id="infscr-loading"><img alt="Loading..." src="'+opts.loading.img+'" /><div>'+opts.loading.msgText+'</div></div>');(new Image()).src=opts.loading.img;opts.pixelsFromNavToBottom=$(document).height()-$(opts.navSelector).offset().top;opts.loading.start=opts.loading.start||function(){$(opts.navSelector).hide();opts.loading.msg.appendTo(opts.loading.selector).show(opts.loading.speed,function(){beginAjax(opts);});};opts.loading.finished=opts.loading.finished||function(){opts.loading.msg.fadeOut('normal');};opts.callback=function(instance,data){if(!!opts.behavior&&instance['_callback_'+opts.behavior]!==undefined){instance['_callback_'+opts.behavior].call($(opts.contentSelector)[0],data);}
|
20 |
-
if(callback){callback.call($(opts.contentSelector)[0],data);}};this._setup();},_debug:function infscr_debug(){if(this.options.debug){return window.console&&console.log.call(console,arguments);}},_determinepath:function infscr_determinepath(path){var opts=this.options;if(!!opts.behavior&&this['_determinepath_'+opts.behavior]!==undefined){this['_determinepath_'+opts.behavior].call(this,path);return;}
|
21 |
-
if(!!opts.pathParse){this._debug('pathParse manual');return opts.pathParse;}else if(path.match(/^(.*?)\b2\b(.*?$)/)){path=path.match(/^(.*?)\b2\b(.*?$)/).slice(1);}else if(path.match(/^(.*?)2(.*?$)/)){if(path.match(/^(.*?page=)2(\/.*|$)/)){path=path.match(/^(.*?page=)2(\/.*|$)/).slice(1);return path;}
|
22 |
-
path=path.match(/^(.*?)2(.*?$)/).slice(1);}else{if(path.match(/^(.*?page=)1(\/.*|$)/)){path=path.match(/^(.*?page=)1(\/.*|$)/).slice(1);return path;}else{this._debug('Sorry, we couldn\'t parse your Next (Previous Posts) URL. Verify your the css selector points to the correct A tag. If you still get this error: yell, scream, and kindly ask for help at infinite-scroll.com.');opts.state.isInvalidPage=true;}}
|
23 |
-
this._debug('determinePath',path);return path;},_error:function infscr_error(xhr){var opts=this.options;if(!!opts.behavior&&this['_error_'+opts.behavior]!==undefined){this['_error_'+opts.behavior].call(this,xhr);return;}
|
24 |
-
if(xhr!=='destroy'&&xhr!=='end'){xhr='unknown';}
|
25 |
-
this._debug('Error',xhr);if(xhr=='end'){this._showdonemsg();}
|
26 |
-
opts.state.isDone=true;opts.state.currPage=1;opts.state.isPaused=false;this._binding('unbind');},_loadcallback:function infscr_loadcallback(box,data){var opts=this.options,callback=this.options.callback,result=(opts.state.isDone)?'done':(!opts.appendCallback)?'no-append':'append',frag;if(!!opts.behavior&&this['_loadcallback_'+opts.behavior]!==undefined){this['_loadcallback_'+opts.behavior].call(this,box,data);return;}
|
27 |
-
switch(result){case'done':this._showdonemsg();return false;break;case'no-append':if(opts.dataType=='html'){data='<div>'+data+'</div>';data=$(data).find(opts.itemSelector);};break;case'append':var children=box.children();if(children.length==0){return this._error('end');}
|
28 |
-
frag=document.createDocumentFragment();while(box[0].firstChild){frag.appendChild(box[0].firstChild);}
|
29 |
-
this._debug('contentSelector',$(opts.contentSelector)[0])
|
30 |
-
$(opts.contentSelector)[0].appendChild(frag);data=children.get();break;}
|
31 |
-
opts.loading.finished.call($(opts.contentSelector)[0],opts)
|
32 |
-
if(opts.animate){var scrollTo=$(window).scrollTop()+$('#infscr-loading').height()+opts.extraScrollPx+'px';$('html,body').animate({scrollTop:scrollTo},800,function(){opts.state.isDuringAjax=false;});}
|
33 |
-
if(!opts.animate)opts.state.isDuringAjax=false;callback(this,data);},_nearbottom:function infscr_nearbottom(){var opts=this.options,pixelsFromWindowBottomToBottom=0+$(document).height()-(opts.binder.scrollTop())-$(window).height();if(!!opts.behavior&&this['_nearbottom_'+opts.behavior]!==undefined){this['_nearbottom_'+opts.behavior].call(this);return;}
|
34 |
-
this._debug('math:',pixelsFromWindowBottomToBottom,opts.pixelsFromNavToBottom);return(pixelsFromWindowBottomToBottom-opts.bufferPx<opts.pixelsFromNavToBottom);},_pausing:function infscr_pausing(pause){var opts=this.options;if(!!opts.behavior&&this['_pausing_'+opts.behavior]!==undefined){this['_pausing_'+opts.behavior].call(this,pause);return;}
|
35 |
-
if(pause!=='pause'&&pause!=='resume'&&pause!==null){this._debug('Invalid argument. Toggling pause value instead');};pause=(pause&&(pause=='pause'||pause=='resume'))?pause:'toggle';switch(pause){case'pause':opts.state.isPaused=true;break;case'resume':opts.state.isPaused=false;break;case'toggle':opts.state.isPaused=!opts.state.isPaused;break;}
|
36 |
-
this._debug('Paused',opts.state.isPaused);return false;},_setup:function infscr_setup(){var opts=this.options;if(!!opts.behavior&&this['_setup_'+opts.behavior]!==undefined){this['_setup_'+opts.behavior].call(this);return;}
|
37 |
-
this._binding('bind');return false;},_showdonemsg:function infscr_showdonemsg(){var opts=this.options;if(!!opts.behavior&&this['_showdonemsg_'+opts.behavior]!==undefined){this['_showdonemsg_'+opts.behavior].call(this);return;}
|
38 |
-
opts.loading.msg.find('img').hide().parent().find('div').html(opts.loading.finishedMsg).animate({opacity:1},2000,function(){$(this).parent().fadeOut('normal');});opts.errorCallback.call($(opts.contentSelector)[0],'done');},_validate:function infscr_validate(opts){for(var key in opts){if(key.indexOf&&key.indexOf('Selector')>-1&&$(opts[key]).length===0){this._debug('Your '+key+' found no elements.');return false;}
|
39 |
-
return true;}},bind:function infscr_bind(){this._binding('bind');},destroy:function infscr_destroy(){this.options.state.isDestroyed=true;return this._error('destroy');},pause:function infscr_pause(){this._pausing('pause');},resume:function infscr_resume(){this._pausing('resume');},retrieve:function infscr_retrieve(pageNum){var instance=this,opts=instance.options,path=opts.path,box,frag,desturl,method,condition,pageNum=pageNum||null,getPage=(!!pageNum)?pageNum:opts.state.currPage;beginAjax=function infscr_ajax(opts){opts.state.currPage++;instance._debug('heading into ajax',path);box=$(opts.contentSelector).is('table')?$('<tbody/>'):$('<div/>');desturl=path.join(opts.state.currPage);method=(opts.dataType=='html'||opts.dataType=='json')?opts.dataType:'html+callback';if(opts.appendCallback&&opts.dataType=='html')method+='+callback'
|
40 |
-
switch(method){case'html+callback':instance._debug('Using HTML via .load() method');box.load(desturl+' '+opts.itemSelector,null,function infscr_ajax_callback(responseText){instance._loadcallback(box,responseText);});break;case'html':case'json':instance._debug('Using '+(method.toUpperCase())+' via $.ajax() method');$.ajax({url:desturl,dataType:opts.dataType,complete:function infscr_ajax_callback(jqXHR,textStatus){condition=(typeof(jqXHR.isResolved)!=='undefined')?(jqXHR.isResolved()):(textStatus==="success"||textStatus==="notmodified");(condition)?instance._loadcallback(box,jqXHR.responseText):instance._error('end');}});break;}};if(!!opts.behavior&&this['retrieve_'+opts.behavior]!==undefined){this['retrieve_'+opts.behavior].call(this,pageNum);return;}
|
41 |
-
if(opts.state.isDestroyed){this._debug('Instance is destroyed');return false;};opts.state.isDuringAjax=true;opts.loading.start.call($(opts.contentSelector)[0],opts);},scroll:function infscr_scroll(){var opts=this.options,state=opts.state;if(!!opts.behavior&&this['scroll_'+opts.behavior]!==undefined){this['scroll_'+opts.behavior].call(this);return;}
|
42 |
-
if(state.isDuringAjax||state.isInvalidPage||state.isDone||state.isDestroyed||state.isPaused)return;if(!this._nearbottom())return;this.retrieve();},toggle:function infscr_toggle(){this._pausing();},unbind:function infscr_unbind(){this._binding('unbind');},update:function infscr_options(key){if($.isPlainObject(key)){this.options=$.extend(true,this.options,key);}}}
|
43 |
-
$.fn.infinitescroll=function infscr_init(options,callback){var thisCall=typeof options;switch(thisCall){case'string':var args=Array.prototype.slice.call(arguments,1);this.each(function(){var instance=$.data(this,'infinitescroll');if(!instance){return false;}
|
44 |
-
if(!$.isFunction(instance[options])||options.charAt(0)==="_"){return false;}
|
45 |
-
instance[options].apply(instance,args);});break;case'object':this.each(function(){var instance=$.data(this,'infinitescroll');if(instance){instance.update(options);}else{$.data(this,'infinitescroll',new $.infinitescroll(options,callback,this));}});break;}
|
46 |
-
return this;};var event=$.event,scrollTimeout;event.special.smartscroll={setup:function(){$(this).bind("scroll",event.special.smartscroll.handler);},teardown:function(){$(this).unbind("scroll",event.special.smartscroll.handler);},handler:function(event,execAsap){var context=this,args=arguments;event.type="smartscroll";if(scrollTimeout){clearTimeout(scrollTimeout);}
|
47 |
-
scrollTimeout=setTimeout(function(){$.event.handle.apply(context,args);},execAsap==="execAsap"?0:100);}};$.fn.smartscroll=function(fn){return fn?this.bind("smartscroll",fn):this.trigger("smartscroll",["execAsap"]);};})(window,jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/isotope/js/make-big-graph-projects.js
DELETED
@@ -1,43 +0,0 @@
|
|
1 |
-
var programs = 'commercial urbanism public-space culture body-culture health education housing hotel media'.split(' '),
|
2 |
-
programsLen = programs.length,
|
3 |
-
statuses = 'idea in-progress under-construction completed'.split(' '),
|
4 |
-
statusesLen = statuses.length;
|
5 |
-
|
6 |
-
function randInt(num) {
|
7 |
-
return Math.floor( Math.random() * num );
|
8 |
-
}
|
9 |
-
|
10 |
-
function getChar() {
|
11 |
-
var code;
|
12 |
-
if ( Math.random() < 0.05 ) {
|
13 |
-
// number
|
14 |
-
code = randInt(10) + 48;
|
15 |
-
} else {
|
16 |
-
// alpha
|
17 |
-
code = randInt(24) + 65;
|
18 |
-
}
|
19 |
-
return String.fromCharCode(code);
|
20 |
-
}
|
21 |
-
|
22 |
-
function makeBigGraphProject() {
|
23 |
-
var year = 2001 + randInt(11),
|
24 |
-
i = Math.floor( Math.random() * 2 + 3 ),
|
25 |
-
title = '';
|
26 |
-
while (i--) {
|
27 |
-
title += getChar();
|
28 |
-
}
|
29 |
-
var program = programs[ randInt( programsLen ) ];
|
30 |
-
status = statuses[ randInt( statusesLen ) ];
|
31 |
-
scale = randInt(20);
|
32 |
-
|
33 |
-
project = '<div class="project ' + program + '" ' +
|
34 |
-
'data-year="' + year + '" ' +
|
35 |
-
'data-program="' + program + '" ' +
|
36 |
-
'data-scale="' + scale + '" ' +
|
37 |
-
'data-status="' + status + '" ' +
|
38 |
-
'><div class="icon"></div>' +
|
39 |
-
'<p class="title">' + title + '</p>' +
|
40 |
-
'</div>';
|
41 |
-
|
42 |
-
return project;
|
43 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/libraries/jquery-datepicker/picker_functions.js
CHANGED
@@ -1,5 +1,7 @@
|
|
1 |
jQuery(document).ready(function ($) {
|
2 |
|
|
|
|
|
3 |
jQuery('.time-picker').timepicker({ 'timeFormat': 'H:i' });
|
4 |
|
5 |
if ($('.current_lander .new-date').length) { // implies *not* zero
|
@@ -12,24 +14,34 @@ jQuery(document).ready(function ($) {
|
|
12 |
var current_val = '';
|
13 |
}
|
14 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
|
16 |
-
var ret = current_val.split(" ");
|
17 |
-
var current_date = ret[0];
|
18 |
-
var current_time = ret[1];
|
19 |
-
jQuery(".jquery-date-picker .date.start").val(current_date);
|
20 |
-
jQuery(".jquery-date-picker .time-picker").val(current_time);
|
21 |
-
|
22 |
-
jQuery('.lp_select_template').live('click', function() {
|
23 |
-
var template = jQuery(this).attr('id');
|
24 |
-
jQuery("#date-picker-"+template).val(current_date).addClass("live_date");
|
25 |
-
jQuery("#time-picker-"+template).val(current_time).addClass("live_time");
|
26 |
});
|
27 |
|
28 |
-
jQuery("body").on('change', '.jquery-date-picker .
|
29 |
-
var date_chosen = jQuery(".jquery-date-picker .date.start").val();
|
30 |
-
var time_chosen = jQuery(
|
|
|
|
|
|
|
31 |
var total_time = date_chosen + " " + time_chosen;
|
32 |
-
jQuery(".new-date").val(total_time);
|
33 |
|
34 |
});
|
35 |
|
1 |
jQuery(document).ready(function ($) {
|
2 |
|
3 |
+
/* Populates timepicker values */
|
4 |
+
|
5 |
jQuery('.time-picker').timepicker({ 'timeFormat': 'H:i' });
|
6 |
|
7 |
if ($('.current_lander .new-date').length) { // implies *not* zero
|
14 |
var current_val = '';
|
15 |
}
|
16 |
|
17 |
+
jQuery('.new-date').each(function(){
|
18 |
+
var the_val = $(this).val();
|
19 |
+
if (typeof (the_val) == "undefined" || the_val === null || the_val == "") {
|
20 |
+
var the_val = '';
|
21 |
+
}
|
22 |
+
var ret = the_val.split(" ");
|
23 |
+
var current_date = ret[0];
|
24 |
+
var current_time = ret[1];
|
25 |
+
jQuery(this).parent().parent().find(".date.start").val(current_date);
|
26 |
+
jQuery(this).parent().parent().find(".time-picker").val(current_time);
|
27 |
+
});
|
28 |
+
|
29 |
+
jQuery("body").on('change', '.jquery-date-picker .date.start', function () {
|
30 |
+
var date_chosen = jQuery(this).val();
|
31 |
+
var time_chosen = jQuery(this).parent().parent().find(".jquery-date-picker .time-picker").val();
|
32 |
+
var total_time = date_chosen + " " + time_chosen;
|
33 |
+
jQuery(this).parent().parent().find(".new-date").val(total_time);
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
});
|
36 |
|
37 |
+
jQuery("body").on('change', '.jquery-date-picker .time-picker', function () {
|
38 |
+
var date_chosen = jQuery(this).parent().parent().find(".jquery-date-picker .date.start").val();
|
39 |
+
var time_chosen = jQuery(this).val();
|
40 |
+
if (typeof (time_chosen) === "undefined" && time_chosen == null && time_chosen === "") {
|
41 |
+
var time_chosen = "00:00";
|
42 |
+
}
|
43 |
var total_time = date_chosen + " " + time_chosen;
|
44 |
+
jQuery(this).parent().find(".new-date").val(total_time);
|
45 |
|
46 |
});
|
47 |
|
landing-pages.php
CHANGED
@@ -3,14 +3,14 @@
|
|
3 |
Plugin Name: Landing Pages
|
4 |
Plugin URI: http://www.inboundnow.com/landing-pages/
|
5 |
Description: The first true all-in-one Landing Page solution for WordPress, including ongoing conversion metrics, a/b split testing, unlimited design options and so much more!
|
6 |
-
Version: 1.4.
|
7 |
-
Author:
|
8 |
Author URI: http://www.inboundnow.com/
|
9 |
Text Domain: landing-pages
|
10 |
Domain Path: shared/languages/landing-pages/
|
11 |
*/
|
12 |
|
13 |
-
define('LANDINGPAGES_CURRENT_VERSION', '1.4.
|
14 |
define('LANDINGPAGES_URLPATH', WP_PLUGIN_URL.'/'.plugin_basename( dirname(__FILE__) ).'/' );
|
15 |
define('LANDINGPAGES_PATH', WP_PLUGIN_DIR.'/'.plugin_basename( dirname(__FILE__) ).'/' );
|
16 |
define('LANDINGPAGES_PLUGIN_SLUG', plugin_basename( dirname(__FILE__) ) );
|
@@ -82,18 +82,33 @@ switch (is_admin()) :
|
|
82 |
BREAK;
|
83 |
endswitch;
|
84 |
|
85 |
-
|
86 |
-
include_once('shared/inbound-shortcodes/inbound-shortcodes.php'); // Shared Shortcodes
|
87 |
-
include_once('shared/classes/menu.class.php'); // Inbound Marketing Menu
|
88 |
-
include_once('shared/classes/feedback.class.php'); // Inbound Feedback Form
|
89 |
|
90 |
/* Inbound Core Shared Files. Lead files take presidence */
|
91 |
-
add_action( 'plugins_loaded', 'inbound_load_shared_landing_pages' );
|
92 |
function inbound_load_shared_landing_pages(){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
include_once('shared/tracking/store.lead.php'); // Lead Storage from landing pages
|
94 |
include_once('shared/classes/form.class.php'); // Mirrored forms
|
|
|
95 |
include_once('shared/inboundnow/inboundnow.extension-licensing.php'); // Inboundnow Package Licensing
|
96 |
include_once('shared/inboundnow/inboundnow.extension-updating.php'); // Inboundnow Package Updating
|
|
|
|
|
|
|
97 |
}
|
98 |
|
99 |
/* lagacy - Conditional check LP active */
|
3 |
Plugin Name: Landing Pages
|
4 |
Plugin URI: http://www.inboundnow.com/landing-pages/
|
5 |
Description: The first true all-in-one Landing Page solution for WordPress, including ongoing conversion metrics, a/b split testing, unlimited design options and so much more!
|
6 |
+
Version: 1.4.6
|
7 |
+
Author: Inbound Now
|
8 |
Author URI: http://www.inboundnow.com/
|
9 |
Text Domain: landing-pages
|
10 |
Domain Path: shared/languages/landing-pages/
|
11 |
*/
|
12 |
|
13 |
+
define('LANDINGPAGES_CURRENT_VERSION', '1.4.6' );
|
14 |
define('LANDINGPAGES_URLPATH', WP_PLUGIN_URL.'/'.plugin_basename( dirname(__FILE__) ).'/' );
|
15 |
define('LANDINGPAGES_PATH', WP_PLUGIN_DIR.'/'.plugin_basename( dirname(__FILE__) ).'/' );
|
16 |
define('LANDINGPAGES_PLUGIN_SLUG', plugin_basename( dirname(__FILE__) ) );
|
82 |
BREAK;
|
83 |
endswitch;
|
84 |
|
85 |
+
|
|
|
|
|
|
|
86 |
|
87 |
/* Inbound Core Shared Files. Lead files take presidence */
|
88 |
+
add_action( 'plugins_loaded', 'inbound_load_shared_landing_pages' , 11 );
|
89 |
function inbound_load_shared_landing_pages(){
|
90 |
+
|
91 |
+
/* Check if Shared Files Already Loaded */
|
92 |
+
if (defined('INBOUDNOW_SHARED'))
|
93 |
+
return;
|
94 |
+
|
95 |
+
/* Define Shared Constant for Load Prevention*/
|
96 |
+
define('INBOUDNOW_SHARED','loaded');
|
97 |
+
|
98 |
+
/* Singleton Shared Class Loads */
|
99 |
+
include_once('shared/inbound-shortcodes/inbound-shortcodes.php'); // Shared Shortcodes
|
100 |
+
include_once('shared/classes/menu.class.php'); // Inbound Marketing Menu
|
101 |
+
include_once('shared/classes/feedback.class.php'); // Inbound Feedback Form
|
102 |
+
include_once('shared/classes/debug.class.php'); // Inbound Debug & Scripts Class
|
103 |
+
include_once('shared/classes/compatibility.class.php'); // Inbound Compatibility Class
|
104 |
include_once('shared/tracking/store.lead.php'); // Lead Storage from landing pages
|
105 |
include_once('shared/classes/form.class.php'); // Mirrored forms
|
106 |
+
include_once('shared/inboundnow/inboundnow.extend.php'); // Legacy
|
107 |
include_once('shared/inboundnow/inboundnow.extension-licensing.php'); // Inboundnow Package Licensing
|
108 |
include_once('shared/inboundnow/inboundnow.extension-updating.php'); // Inboundnow Package Updating
|
109 |
+
include_once('shared/inboundnow/inboundnow.global-settings.php'); // Inboundnow Global Settings
|
110 |
+
|
111 |
+
|
112 |
}
|
113 |
|
114 |
/* lagacy - Conditional check LP active */
|
libraries/library.shareme.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php
|
1 |
+
<?php
|
modules/module.activate.php
CHANGED
@@ -25,7 +25,7 @@ function landing_page_activate($wp = '3.6', $php = '5.3', $cta = '1.2.1', $leads
|
|
25 |
$flag = __('WordPress Calls to Action' , LANDINGPAGES_TEXT_DOMAIN);
|
26 |
wp_die( __('<p>The <strong>WordPress Landing Pages</strong> plugin requires '.$flag.' version '.$cta.' or greater. <br><br>Please Update WordPress Call to Action Plugin to update & install WordPress Landing Pages</p>' , LANDINGPAGES_TEXT_DOMAIN) , __('Plugin Activation Error' , LANDINGPAGES_TEXT_DOMAIN) , array( 'response'=>200, 'back_link'=>TRUE ) );
|
27 |
}
|
28 |
-
elseif (defined('
|
29 |
{
|
30 |
$flag = 'WordPress Leads';
|
31 |
wp_die( __('<p>The <strong>WordPress Landing Pages</strong> plugin requires '.$flag.' version '.$leads.' or greater. <br><br>Please Update WordPress Leads Plugin to update & install WordPress Landing Pages</p>' , INBOUDNOW_LABEL ) , __( 'Plugin Activation Error' , LANDINGPAGES_TEXT_DOMAIN) , array( 'response'=>200, 'back_link'=>TRUE ) );
|
25 |
$flag = __('WordPress Calls to Action' , LANDINGPAGES_TEXT_DOMAIN);
|
26 |
wp_die( __('<p>The <strong>WordPress Landing Pages</strong> plugin requires '.$flag.' version '.$cta.' or greater. <br><br>Please Update WordPress Call to Action Plugin to update & install WordPress Landing Pages</p>' , LANDINGPAGES_TEXT_DOMAIN) , __('Plugin Activation Error' , LANDINGPAGES_TEXT_DOMAIN) , array( 'response'=>200, 'back_link'=>TRUE ) );
|
27 |
}
|
28 |
+
elseif (defined('WPL_CURRENT_VERSION') && version_compare( WPL_CURRENT_VERSION, $leads, '<' ))
|
29 |
{
|
30 |
$flag = 'WordPress Leads';
|
31 |
wp_die( __('<p>The <strong>WordPress Landing Pages</strong> plugin requires '.$flag.' version '.$leads.' or greater. <br><br>Please Update WordPress Leads Plugin to update & install WordPress Landing Pages</p>' , INBOUDNOW_LABEL ) , __( 'Plugin Activation Error' , LANDINGPAGES_TEXT_DOMAIN) , array( 'response'=>200, 'back_link'=>TRUE ) );
|
modules/module.clone.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php
|
1 |
+
<?php
|
modules/module.extension-licensing.php
CHANGED
@@ -20,6 +20,7 @@ class LP_EXTENSION_LICENSE {
|
|
20 |
private $item_slug;
|
21 |
private $item_shortname;
|
22 |
private $version;
|
|
|
23 |
|
24 |
/**
|
25 |
* Class constructor
|
@@ -37,7 +38,8 @@ class LP_EXTENSION_LICENSE {
|
|
37 |
|
38 |
$this->item_label = $_item_label;
|
39 |
$this->item_slug = $_item_slug;
|
40 |
-
|
|
|
41 |
// Setup hooks
|
42 |
$this->hooks();
|
43 |
}
|
@@ -51,7 +53,7 @@ class LP_EXTENSION_LICENSE {
|
|
51 |
|
52 |
private function hooks() {
|
53 |
// Register settings
|
54 |
-
add_filter( 'lp_define_global_settings', array( $this, 'settings' ),
|
55 |
|
56 |
}
|
57 |
|
@@ -70,7 +72,7 @@ class LP_EXTENSION_LICENSE {
|
|
70 |
'label' => sprintf( __( '%1$s', 'lp' ), $this->item_label ),
|
71 |
'description' => 'Head to http://www.inboundnow.com/ to retrieve your license key for Landing Page Customizer for Landing Pages',
|
72 |
'type' => 'license-key',
|
73 |
-
'default' =>
|
74 |
);
|
75 |
|
76 |
//print_r($lp_global_settings);exit;
|
20 |
private $item_slug;
|
21 |
private $item_shortname;
|
22 |
private $version;
|
23 |
+
private $global_license;
|
24 |
|
25 |
/**
|
26 |
* Class constructor
|
38 |
|
39 |
$this->item_label = $_item_label;
|
40 |
$this->item_slug = $_item_slug;
|
41 |
+
$this->global_license = get_option('inboundnow_master_license_key' , '');
|
42 |
+
|
43 |
// Setup hooks
|
44 |
$this->hooks();
|
45 |
}
|
53 |
|
54 |
private function hooks() {
|
55 |
// Register settings
|
56 |
+
add_filter( 'lp_define_global_settings', array( $this, 'settings' ), 2 );
|
57 |
|
58 |
}
|
59 |
|
72 |
'label' => sprintf( __( '%1$s', 'lp' ), $this->item_label ),
|
73 |
'description' => 'Head to http://www.inboundnow.com/ to retrieve your license key for Landing Page Customizer for Landing Pages',
|
74 |
'type' => 'license-key',
|
75 |
+
'default' => $this->global_license
|
76 |
);
|
77 |
|
78 |
//print_r($lp_global_settings);exit;
|
modules/module.extension-updater.php
CHANGED
@@ -22,15 +22,15 @@ class LP_EXTENSION_UPDATER {
|
|
22 |
* @uses hook()
|
23 |
*
|
24 |
* @param string $_api_url The URL pointing to the custom API endpoint.
|
25 |
-
* @param string $
|
26 |
* @param array $_api_data Optional data to send with API calls.
|
27 |
* @return void
|
28 |
*/
|
29 |
-
function __construct( $_api_url, $
|
30 |
$this->api_url = trailingslashit( $_api_url );
|
31 |
$this->api_data = urlencode_deep( $_api_data );
|
32 |
-
$this->name = plugin_basename( $
|
33 |
-
$this->slug = basename( $
|
34 |
$this->version = $_api_data['version'];
|
35 |
|
36 |
// Set up hooks.
|
@@ -47,8 +47,8 @@ class LP_EXTENSION_UPDATER {
|
|
47 |
private function hook() {
|
48 |
//update_option('_site_transient_update_plugins',''); //uncomment to force upload update check
|
49 |
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'pre_set_site_transient_update_plugins_filter' ) );
|
50 |
-
add_filter( 'plugins_api', array( $this, 'plugins_api_filter' ), 10, 3);
|
51 |
-
//
|
52 |
}
|
53 |
|
54 |
/**
|
@@ -143,7 +143,6 @@ class LP_EXTENSION_UPDATER {
|
|
143 |
'license' => $data['license'],
|
144 |
'name' => $data['item_name'],
|
145 |
'slug' => $this->slug,
|
146 |
-
//'author' => $data['author'],
|
147 |
'nature' => 'extension',
|
148 |
);
|
149 |
$request = wp_remote_post( $this->api_url, array( 'timeout' => 15, 'sslverify' => false, 'body' => $api_params ) );
|
22 |
* @uses hook()
|
23 |
*
|
24 |
* @param string $_api_url The URL pointing to the custom API endpoint.
|
25 |
+
* @param string $_remote_key permalink slug of remote download
|
26 |
* @param array $_api_data Optional data to send with API calls.
|
27 |
* @return void
|
28 |
*/
|
29 |
+
function __construct( $_api_url, $_remote_key, $_api_data = null ) {
|
30 |
$this->api_url = trailingslashit( $_api_url );
|
31 |
$this->api_data = urlencode_deep( $_api_data );
|
32 |
+
$this->name = plugin_basename( $_remote_key );
|
33 |
+
$this->slug = basename( $_remote_key, '.php');
|
34 |
$this->version = $_api_data['version'];
|
35 |
|
36 |
// Set up hooks.
|
47 |
private function hook() {
|
48 |
//update_option('_site_transient_update_plugins',''); //uncomment to force upload update check
|
49 |
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'pre_set_site_transient_update_plugins_filter' ) );
|
50 |
+
add_filter( 'plugins_api', array( $this, 'plugins_api_filter' ), 10, 3);
|
51 |
+
//print_r($this);exit;
|
52 |
}
|
53 |
|
54 |
/**
|
143 |
'license' => $data['license'],
|
144 |
'name' => $data['item_name'],
|
145 |
'slug' => $this->slug,
|
|
|
146 |
'nature' => 'extension',
|
147 |
);
|
148 |
$request = wp_remote_post( $this->api_url, array( 'timeout' => 15, 'sslverify' => false, 'body' => $api_params ) );
|
modules/module.global-settings.php
CHANGED
@@ -76,7 +76,15 @@ function lp_get_global_settings()
|
|
76 |
'type' => 'textarea',
|
77 |
'default' => '<button><script><textarea><style><input><form><select><label><a><p><b><u><strong><i><img><strong><span><font><h1><h2><h3><center><blockquote><embed><object><small>',
|
78 |
'options' => null
|
79 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
);
|
81 |
|
82 |
|
@@ -112,8 +120,9 @@ function lp_get_global_settings()
|
|
112 |
return $lp_global_settings;
|
113 |
}
|
114 |
|
|
|
115 |
/* Add Extensions License Key Header if Extensions are present */
|
116 |
-
add_filter('lp_define_global_settings', 'lp_add_extension_license_key_header',
|
117 |
function lp_add_extension_license_key_header($lp_global_settings)
|
118 |
{
|
119 |
if (array_key_exists('lp-license-keys',$lp_global_settings))
|
@@ -122,7 +131,7 @@ function lp_add_extension_license_key_header($lp_global_settings)
|
|
122 |
'id' => 'extensions-license-keys-header',
|
123 |
'description' => __( "Head to http://www.inboundnow.com/ to retrieve your license key for this template." , LANDINGPAGES_TEXT_DOMAIN),
|
124 |
'type' => 'header',
|
125 |
-
'default' => '<h3 class="lp_global_settings_header">'. __( 'Extension
|
126 |
);
|
127 |
}
|
128 |
|
@@ -228,7 +237,8 @@ function lp_display_global_settings()
|
|
228 |
$active_tab = $_REQUEST['open-tab'];
|
229 |
}
|
230 |
|
231 |
-
|
|
|
232 |
|
233 |
lp_display_global_settings_js();
|
234 |
lp_save_global_settings();
|
@@ -243,7 +253,7 @@ function lp_display_global_settings()
|
|
243 |
}
|
244 |
|
245 |
echo "</h2><div class='lp-settings-tab-sidebar'>";
|
246 |
-
|
247 |
echo "<div class='lp-sidebar-settings'><h2 style='font-size:16px;'>Like the Plugin? Leave us a review</h2><center><a class='review-button' href='http://wordpress.org/support/view/plugin-reviews/landing-pages?rate=5#postform' target='_blank'>Leave a Quick Review</a></center><small>Reviews help constantly improve the plugin & keep us motivated! <strong>Thank you for your support!</strong></small></div><div class='lp-sidebar-settings'><h2>Help keep the plugin up to date, awesome & free!</h2><form action='https://www.paypal.com/cgi-bin/webscr' method='post' target='_top'>
|
248 |
<input type='hidden' name='cmd' value='_s-xclick'>
|
249 |
<input type='hidden' name='hosted_button_id' value='GKQ2BR3RKB3YQ'>
|
@@ -577,10 +587,10 @@ function lp_save_global_settings()
|
|
577 |
(isset($_POST[$field['id'] ]))? $field['new_value'] = $_POST[$field['id'] ] : $field['new_value'] = null;
|
578 |
|
579 |
|
580 |
-
if ((
|
581 |
{
|
582 |
//echo $field['id'] ;exit;
|
583 |
-
|
584 |
if ($field['id'] =='main-landing-page-permalink-prefix')
|
585 |
{
|
586 |
//echo "here";
|
@@ -601,7 +611,7 @@ function lp_save_global_settings()
|
|
601 |
|
602 |
// Call the custom API.
|
603 |
$response = wp_remote_get( add_query_arg( $api_params, LANDINGPAGES_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
604 |
-
|
605 |
|
606 |
// make sure the response came back okay
|
607 |
if ( is_wp_error( $response ) )
|
@@ -617,26 +627,38 @@ function lp_save_global_settings()
|
|
617 |
//echo 'lp_license_status-'.$field['slug']." :".$license_data->license;exit;
|
618 |
}
|
619 |
}
|
620 |
-
|
621 |
{
|
622 |
-
|
623 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
624 |
}
|
625 |
else
|
626 |
{
|
627 |
-
//print_r($field);
|
628 |
-
if ($field['type']=='license-key'&& $field['new_value'] )
|
629 |
-
{
|
630 |
|
|
|
|
|
631 |
$license_status = get_option('lp_license_status-'.$field['slug']);
|
632 |
|
633 |
if ($license_status=='valid' && $field['new_value'] == $field['old_value'])
|
634 |
-
{
|
635 |
continue;
|
636 |
-
}
|
637 |
|
638 |
-
//
|
639 |
-
$license = trim( get_option( 'edd_sample_license_key' ) );
|
640 |
|
641 |
// data to send in our API request
|
642 |
$api_params = array(
|
@@ -648,8 +670,13 @@ function lp_save_global_settings()
|
|
648 |
|
649 |
// Call the custom API.
|
650 |
$response = wp_remote_get( add_query_arg( $api_params, LANDINGPAGES_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
651 |
-
|
652 |
-
|
|
|
|
|
|
|
|
|
|
|
653 |
|
654 |
// make sure the response came back okay
|
655 |
if ( is_wp_error( $response ) )
|
@@ -677,6 +704,8 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
677 |
if (!$custom_fields)
|
678 |
return;
|
679 |
|
|
|
|
|
680 |
if ($key==$active_tab)
|
681 |
{
|
682 |
$display = 'block';
|
@@ -705,6 +734,7 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
705 |
else
|
706 |
{
|
707 |
$default = null;
|
|
|
708 |
}
|
709 |
|
710 |
$field['id'] = $key."-".$field['id'];
|
@@ -735,41 +765,56 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
735 |
}
|
736 |
echo '<input type="text" class="jpicker" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="5" />
|
737 |
<div class="lp_tooltip tool_color" title="'.$field['description'].'"></div>';
|
738 |
-
|
739 |
case 'datepicker':
|
740 |
echo '<input id="datepicker-example2" class="Zebra_DatePicker_Icon" type="text" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="8" />
|
741 |
<div class="lp_tooltip tool_date" title="'.$field['description'].'"></div><p class="description">'.$field['description'].'</p>';
|
742 |
-
|
743 |
case 'license-key':
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
744 |
$license_status = lp_check_license_status($field);
|
745 |
|
746 |
-
echo '<input
|
747 |
-
|
748 |
-
|
|
|
749 |
|
750 |
if ($license_status=='valid')
|
751 |
{
|
752 |
-
echo '<div class="lp_license_status_valid">
|
753 |
}
|
754 |
else
|
755 |
{
|
756 |
-
echo '<div class="lp_license_status_invalid">
|
757 |
}
|
758 |
-
|
|
|
|
|
|
|
759 |
case 'text':
|
760 |
echo '<input type="text" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="30" />
|
761 |
<div class="lp_tooltip tool_text" title="'.$field['description'].'"></div>';
|
762 |
-
|
763 |
// textarea
|
764 |
case 'textarea':
|
765 |
echo '<textarea name="'.$field['id'] .'" id="'.$field['id'] .'" cols="106" rows="6">'.$field['value'].'</textarea>
|
766 |
<div class="lp_tooltip tool_textarea" title="'.$field['description'].'"></div>';
|
767 |
-
|
768 |
// wysiwyg
|
769 |
case 'wysiwyg':
|
770 |
wp_editor( $field['value'], $field['id'] , $settings = array() );
|
771 |
echo '<span class="description">'.$field['description'].'</span><br><br>';
|
772 |
-
|
773 |
// media
|
774 |
case 'media':
|
775 |
//echo 1; exit;
|
@@ -777,7 +822,7 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
777 |
echo '<input name="'.$field['id'] .'" id="'.$field['id'] .'" type="text" size="36" name="upload_image" value="'.$field['value'].'" />';
|
778 |
echo '<input class="upload_image_button" id="uploader_'.$field['id'] .'" type="button" value="Upload Image" />';
|
779 |
echo '<br /><div class="lp_tooltip tool_media" title="'.$field['description'].'"></div>';
|
780 |
-
|
781 |
// checkbox
|
782 |
case 'checkbox':
|
783 |
$i = 1;
|
@@ -802,7 +847,7 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
802 |
}
|
803 |
echo "</table>";
|
804 |
echo '<br><div class="lp_tooltip tool_checkbox" title="'.$field['description'].'"></div>';
|
805 |
-
|
806 |
// radio
|
807 |
case 'radio':
|
808 |
foreach ($field['options'] as $value=>$label) {
|
@@ -812,7 +857,7 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
812 |
echo '<label for="'.$value.'"> '.$label.'</label> ';
|
813 |
}
|
814 |
echo '<div class="lp_tooltip tool_radio" title="'.$field['description'].'"></div>';
|
815 |
-
|
816 |
// select
|
817 |
case 'dropdown':
|
818 |
echo '<select name="'.$field['id'] .'" id="'.$field['id'] .'">';
|
@@ -820,12 +865,12 @@ function lp_render_global_settings($key,$custom_fields,$active_tab)
|
|
820 |
echo '<option', $field['value'] == $value ? ' selected="selected"' : '', ' value="'.$value.'">'.$label.'</option>';
|
821 |
}
|
822 |
echo '</select><br /><div class="lp_tooltip tool_dropdown" title="'.$field['description'].'"></div>';
|
823 |
-
|
824 |
case 'html':
|
825 |
//print_r($field);
|
826 |
echo $field['value'];
|
827 |
echo '<br /><div class="lp_tooltip tool_dropdown" title="'.$field['description'].'"></div>';
|
828 |
-
|
829 |
|
830 |
|
831 |
|
@@ -851,14 +896,12 @@ function lp_check_license_status($field)
|
|
851 |
return "valid";
|
852 |
}
|
853 |
|
854 |
-
|
855 |
-
|
856 |
-
if ($license_key)
|
857 |
{
|
858 |
$api_params = array(
|
859 |
'edd_action' => 'check_license',
|
860 |
-
'license' => $
|
861 |
-
'key' => $
|
862 |
'item_name' => urlencode( $field['slug'] ),
|
863 |
'cache_bust'=> substr(md5(rand()),0,7)
|
864 |
);
|
@@ -871,10 +914,8 @@ function lp_check_license_status($field)
|
|
871 |
|
872 |
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
873 |
|
874 |
-
//var_dump($license_data);exit;
|
875 |
-
|
876 |
if( $license_data->license == 'valid' ) {
|
877 |
-
$newDate = date('Y-m-d', strtotime(
|
878 |
update_option($field['id']."-expire", $newDate);
|
879 |
return 'valid';
|
880 |
// this license is still valid
|
76 |
'type' => 'textarea',
|
77 |
'default' => '<button><script><textarea><style><input><form><select><label><a><p><b><u><strong><i><img><strong><span><font><h1><h2><h3><center><blockquote><embed><object><small>',
|
78 |
'options' => null
|
79 |
+
),
|
80 |
+
array(
|
81 |
+
'id' => 'inbound_compatibility_mode',
|
82 |
+
'label' => 'Turn on compability mode',
|
83 |
+
'description' => "<p>This option turns on compability mode for the inbound now plugins. This is typically used if you are experiencing bugs caused by third party plugin conflicts.</p>",
|
84 |
+
'type' => 'radio',
|
85 |
+
'default' => '0',
|
86 |
+
'options' => array('1'=>'On','0'=>'Off')
|
87 |
+
),
|
88 |
);
|
89 |
|
90 |
|
120 |
return $lp_global_settings;
|
121 |
}
|
122 |
|
123 |
+
|
124 |
/* Add Extensions License Key Header if Extensions are present */
|
125 |
+
add_filter('lp_define_global_settings', 'lp_add_extension_license_key_header', 2, 1);
|
126 |
function lp_add_extension_license_key_header($lp_global_settings)
|
127 |
{
|
128 |
if (array_key_exists('lp-license-keys',$lp_global_settings))
|
131 |
'id' => 'extensions-license-keys-header',
|
132 |
'description' => __( "Head to http://www.inboundnow.com/ to retrieve your license key for this template." , LANDINGPAGES_TEXT_DOMAIN),
|
133 |
'type' => 'header',
|
134 |
+
'default' => '<h3 class="lp_global_settings_header">'. __( 'Extension Licensing' , LANDINGPAGES_TEXT_DOMAIN) .'</h3>'
|
135 |
);
|
136 |
}
|
137 |
|
237 |
$active_tab = $_REQUEST['open-tab'];
|
238 |
}
|
239 |
|
240 |
+
|
241 |
+
do_action('lp_pre_display_global_settings');
|
242 |
|
243 |
lp_display_global_settings_js();
|
244 |
lp_save_global_settings();
|
253 |
}
|
254 |
|
255 |
echo "</h2><div class='lp-settings-tab-sidebar'>";
|
256 |
+
|
257 |
echo "<div class='lp-sidebar-settings'><h2 style='font-size:16px;'>Like the Plugin? Leave us a review</h2><center><a class='review-button' href='http://wordpress.org/support/view/plugin-reviews/landing-pages?rate=5#postform' target='_blank'>Leave a Quick Review</a></center><small>Reviews help constantly improve the plugin & keep us motivated! <strong>Thank you for your support!</strong></small></div><div class='lp-sidebar-settings'><h2>Help keep the plugin up to date, awesome & free!</h2><form action='https://www.paypal.com/cgi-bin/webscr' method='post' target='_top'>
|
258 |
<input type='hidden' name='cmd' value='_s-xclick'>
|
259 |
<input type='hidden' name='hosted_button_id' value='GKQ2BR3RKB3YQ'>
|
587 |
(isset($_POST[$field['id'] ]))? $field['new_value'] = $_POST[$field['id'] ] : $field['new_value'] = null;
|
588 |
|
589 |
|
590 |
+
if ((!empty($field['new_value']) && ($field['new_value'] !== $field['old_value'] ) ) || !isset($field['old_value']) )
|
591 |
{
|
592 |
//echo $field['id'] ;exit;
|
593 |
+
update_option($field['id'] ,$field['new_value']);
|
594 |
if ($field['id'] =='main-landing-page-permalink-prefix')
|
595 |
{
|
596 |
//echo "here";
|
611 |
|
612 |
// Call the custom API.
|
613 |
$response = wp_remote_get( add_query_arg( $api_params, LANDINGPAGES_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
614 |
+
|
615 |
|
616 |
// make sure the response came back okay
|
617 |
if ( is_wp_error( $response ) )
|
627 |
//echo 'lp_license_status-'.$field['slug']." :".$license_data->license;exit;
|
628 |
}
|
629 |
}
|
630 |
+
else if (!$field['new_value'] && $field['old_value'])
|
631 |
{
|
632 |
+
if ($field['type']=='license-key')
|
633 |
+
{
|
634 |
+
$master_key = get_option('inboundnow_master_license_key' , '');
|
635 |
+
if ($master_key)
|
636 |
+
{
|
637 |
+
$bool = update_option($field['id'], $master_key );
|
638 |
+
$license_status = update_option('lp_license_status-'.$field['slug'], $license_data->license);
|
639 |
+
}
|
640 |
+
else
|
641 |
+
{
|
642 |
+
update_option($field['id'], '' );
|
643 |
+
$license_status = update_option('lp_license_status-'.$field['slug'], $license_data->license);
|
644 |
+
}
|
645 |
+
}
|
646 |
+
else
|
647 |
+
{
|
648 |
+
$bool = update_option($field['id'],$field['default']);
|
649 |
+
}
|
650 |
}
|
651 |
else
|
652 |
{
|
|
|
|
|
|
|
653 |
|
654 |
+
if ($field['type']=='license-key' && $field['new_value'] )
|
655 |
+
{
|
656 |
$license_status = get_option('lp_license_status-'.$field['slug']);
|
657 |
|
658 |
if ($license_status=='valid' && $field['new_value'] == $field['old_value'])
|
|
|
659 |
continue;
|
|
|
660 |
|
661 |
+
//echo 'here:'.$license_status;
|
|
|
662 |
|
663 |
// data to send in our API request
|
664 |
$api_params = array(
|
670 |
|
671 |
// Call the custom API.
|
672 |
$response = wp_remote_get( add_query_arg( $api_params, LANDINGPAGES_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
673 |
+
|
674 |
+
/*
|
675 |
+
print_r($field);
|
676 |
+
echo '<br>';
|
677 |
+
echo $response['body'];
|
678 |
+
echo "<hr>";
|
679 |
+
*/
|
680 |
|
681 |
// make sure the response came back okay
|
682 |
if ( is_wp_error( $response ) )
|
704 |
if (!$custom_fields)
|
705 |
return;
|
706 |
|
707 |
+
$master_license_key = get_option('inboundnow_master_license_key' , '');
|
708 |
+
|
709 |
if ($key==$active_tab)
|
710 |
{
|
711 |
$display = 'block';
|
734 |
else
|
735 |
{
|
736 |
$default = null;
|
737 |
+
|
738 |
}
|
739 |
|
740 |
$field['id'] = $key."-".$field['id'];
|
765 |
}
|
766 |
echo '<input type="text" class="jpicker" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="5" />
|
767 |
<div class="lp_tooltip tool_color" title="'.$field['description'].'"></div>';
|
768 |
+
continue 2;
|
769 |
case 'datepicker':
|
770 |
echo '<input id="datepicker-example2" class="Zebra_DatePicker_Icon" type="text" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="8" />
|
771 |
<div class="lp_tooltip tool_date" title="'.$field['description'].'"></div><p class="description">'.$field['description'].'</p>';
|
772 |
+
continue 2;
|
773 |
case 'license-key':
|
774 |
+
|
775 |
+
if ($master_license_key)
|
776 |
+
{
|
777 |
+
$field['value'] = $master_license_key;
|
778 |
+
$input_type = 'hidden';
|
779 |
+
}
|
780 |
+
else
|
781 |
+
{
|
782 |
+
$input_type = 'text';
|
783 |
+
}
|
784 |
+
|
785 |
$license_status = lp_check_license_status($field);
|
786 |
|
787 |
+
echo '<input type="'.$input_type.'" name="'.$field['id'].'" id="'.$field['id'].'" value="'.$field['value'].'" size="30" />';
|
788 |
+
|
789 |
+
|
790 |
+
echo '<input type="hidden" name="lp_license_status-'.$field['slug'].'" id="'.$field['id'] .'" value="'.$license_status.'" size="30" />';
|
791 |
|
792 |
if ($license_status=='valid')
|
793 |
{
|
794 |
+
echo '<div class="lp_license_status_valid">Enabled</div>';
|
795 |
}
|
796 |
else
|
797 |
{
|
798 |
+
echo '<div class="lp_license_status_invalid">Disabled</div>';
|
799 |
}
|
800 |
+
|
801 |
+
echo '<div class="lp_tooltip tool_text" title="'.$field['description'].'"></div>';
|
802 |
+
|
803 |
+
continue 2;
|
804 |
case 'text':
|
805 |
echo '<input type="text" name="'.$field['id'] .'" id="'.$field['id'] .'" value="'.$field['value'].'" size="30" />
|
806 |
<div class="lp_tooltip tool_text" title="'.$field['description'].'"></div>';
|
807 |
+
continue 2;
|
808 |
// textarea
|
809 |
case 'textarea':
|
810 |
echo '<textarea name="'.$field['id'] .'" id="'.$field['id'] .'" cols="106" rows="6">'.$field['value'].'</textarea>
|
811 |
<div class="lp_tooltip tool_textarea" title="'.$field['description'].'"></div>';
|
812 |
+
continue 2;
|
813 |
// wysiwyg
|
814 |
case 'wysiwyg':
|
815 |
wp_editor( $field['value'], $field['id'] , $settings = array() );
|
816 |
echo '<span class="description">'.$field['description'].'</span><br><br>';
|
817 |
+
continue 2;
|
818 |
// media
|
819 |
case 'media':
|
820 |
//echo 1; exit;
|
822 |
echo '<input name="'.$field['id'] .'" id="'.$field['id'] .'" type="text" size="36" name="upload_image" value="'.$field['value'].'" />';
|
823 |
echo '<input class="upload_image_button" id="uploader_'.$field['id'] .'" type="button" value="Upload Image" />';
|
824 |
echo '<br /><div class="lp_tooltip tool_media" title="'.$field['description'].'"></div>';
|
825 |
+
continue 2;
|
826 |
// checkbox
|
827 |
case 'checkbox':
|
828 |
$i = 1;
|
847 |
}
|
848 |
echo "</table>";
|
849 |
echo '<br><div class="lp_tooltip tool_checkbox" title="'.$field['description'].'"></div>';
|
850 |
+
continue 2;
|
851 |
// radio
|
852 |
case 'radio':
|
853 |
foreach ($field['options'] as $value=>$label) {
|
857 |
echo '<label for="'.$value.'"> '.$label.'</label> ';
|
858 |
}
|
859 |
echo '<div class="lp_tooltip tool_radio" title="'.$field['description'].'"></div>';
|
860 |
+
continue 2;
|
861 |
// select
|
862 |
case 'dropdown':
|
863 |
echo '<select name="'.$field['id'] .'" id="'.$field['id'] .'">';
|
865 |
echo '<option', $field['value'] == $value ? ' selected="selected"' : '', ' value="'.$value.'">'.$label.'</option>';
|
866 |
}
|
867 |
echo '</select><br /><div class="lp_tooltip tool_dropdown" title="'.$field['description'].'"></div>';
|
868 |
+
continue 2;
|
869 |
case 'html':
|
870 |
//print_r($field);
|
871 |
echo $field['value'];
|
872 |
echo '<br /><div class="lp_tooltip tool_dropdown" title="'.$field['description'].'"></div>';
|
873 |
+
continue 2;
|
874 |
|
875 |
|
876 |
|
896 |
return "valid";
|
897 |
}
|
898 |
|
899 |
+
if ($field['value'])
|
|
|
|
|
900 |
{
|
901 |
$api_params = array(
|
902 |
'edd_action' => 'check_license',
|
903 |
+
'license' => $field['value'],
|
904 |
+
'key' => $field['value'],
|
905 |
'item_name' => urlencode( $field['slug'] ),
|
906 |
'cache_bust'=> substr(md5(rand()),0,7)
|
907 |
);
|
914 |
|
915 |
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
916 |
|
|
|
|
|
917 |
if( $license_data->license == 'valid' ) {
|
918 |
+
$newDate = date('Y-m-d', strtotime($license_data->expires) );
|
919 |
update_option($field['id']."-expire", $newDate);
|
920 |
return 'valid';
|
921 |
// this license is still valid
|
modules/module.javascript-admin.php
CHANGED
@@ -63,9 +63,7 @@ function lp_admin_enqueue($hook)
|
|
63 |
$params = array('selected_template'=>$template, 'templates'=>$template_data);
|
64 |
wp_localize_script('lp-js-metaboxes', 'data', $params);
|
65 |
|
66 |
-
|
67 |
-
wp_enqueue_script('isotope', LANDINGPAGES_URLPATH . 'js/libraries/isotope/jquery.isotope.js', array('jquery'), '1.0', true );
|
68 |
-
wp_enqueue_style('isotope', LANDINGPAGES_URLPATH . 'js/libraries/isotope/css/style.css');
|
69 |
|
70 |
// Conditional TINYMCE for landing pages
|
71 |
wp_dequeue_script('jquery-tinymce');
|
63 |
$params = array('selected_template'=>$template, 'templates'=>$template_data);
|
64 |
wp_localize_script('lp-js-metaboxes', 'data', $params);
|
65 |
|
66 |
+
|
|
|
|
|
67 |
|
68 |
// Conditional TINYMCE for landing pages
|
69 |
wp_dequeue_script('jquery-tinymce');
|
modules/module.landing-page.php
CHANGED
@@ -189,7 +189,11 @@ function lp_conversion_area($post = null, $content=null,$return=false, $doshortc
|
|
189 |
if(!$return)
|
190 |
{
|
191 |
|
|
|
|
|
|
|
192 |
echo do_shortcode($content);
|
|
|
193 |
}
|
194 |
else
|
195 |
{
|
@@ -208,8 +212,8 @@ function lp_conversion_area_shortcode( $atts, $content = null )
|
|
208 |
//'style' => ''
|
209 |
), $atts));
|
210 |
|
211 |
-
|
212 |
-
$conversion_area
|
213 |
|
214 |
|
215 |
return $conversion_area;
|
189 |
if(!$return)
|
190 |
{
|
191 |
|
192 |
+
$content = str_replace('<p><div id="inbound-form-wrapper"', '<div id="inbound-form-wrapper"', $content);
|
193 |
+
$content = preg_replace('/<p[^>]*><\/p[^>]*>/', '', $content); // remove empty p tags
|
194 |
+
$content = preg_replace('/<\/p>/', '', $content); // remove last empty p tag
|
195 |
echo do_shortcode($content);
|
196 |
+
|
197 |
}
|
198 |
else
|
199 |
{
|
212 |
//'style' => ''
|
213 |
), $atts));
|
214 |
|
215 |
+
|
216 |
+
$conversion_area = lp_conversion_area($post = null, $content=null,$return=true, $doshortcode = true, $rebuild_attributes = true);
|
217 |
|
218 |
|
219 |
return $conversion_area;
|
modules/module.load-extensions.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php
|
2 |
* LOAD NATIVE TEMPLATES FROM WP-CONTENT/PLUGINS LANDING-PAGES/TEMPLATES/
|
3 |
*/
|
4 |
* LOAD NON-NATIVE TEMPLATES FROM WP-CONTENT/UPLOADS/LANDING-PAGES/TEMPLATES/
|
5 |
*/
|
6 |
/**
|
7 |
* DECLARE HELPER FUNCTIONS
|
8 |
*/
|
|
|
9 |
* LOAD NATIVE TEMPLATES FROM WP-CONTENT/PLUGINS LANDING-PAGES/TEMPLATES/
|
10 |
*/
|
11 |
* LOAD NON-NATIVE TEMPLATES FROM WP-CONTENT/UPLOADS/LANDING-PAGES/TEMPLATES/
|
12 |
*/
|
13 |
/**
|
14 |
* DECLARE HELPER FUNCTIONS
|
15 |
*/
|
|
|
1 |
* LOAD NATIVE TEMPLATES FROM WP-CONTENT/PLUGINS LANDING-PAGES/TEMPLATES/
|
2 |
*/
|
3 |
* LOAD NON-NATIVE TEMPLATES FROM WP-CONTENT/UPLOADS/LANDING-PAGES/TEMPLATES/
|
4 |
*/
|
5 |
/**
|
6 |
* DECLARE HELPER FUNCTIONS
|
7 |
*/
|
8 |
+
<?php
|
9 |
* LOAD NATIVE TEMPLATES FROM WP-CONTENT/PLUGINS LANDING-PAGES/TEMPLATES/
|
10 |
*/
|
11 |
* LOAD NON-NATIVE TEMPLATES FROM WP-CONTENT/UPLOADS/LANDING-PAGES/TEMPLATES/
|
12 |
*/
|
13 |
/**
|
14 |
* DECLARE HELPER FUNCTIONS
|
15 |
*/
|
modules/module.post-type.php
CHANGED
@@ -1 +1,529 @@
|
|
1 |
-
<?php
|
2 |
$labels = array(
|
3 |
'name' => _x('Landing Pages', 'post type general name' , LANDINGPAGES_TEXT_DOMAIN),
|
4 |
'singular_name' => _x('Landing Page', 'post type singular name' , LANDINGPAGES_TEXT_DOMAIN),
|
5 |
'add_new' => _x('Add New', 'Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
6 |
'add_new_item' => __('Add New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
7 |
'edit_item' => __('Edit Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
8 |
'new_item' => __('New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
9 |
'view_item' => __('View Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
10 |
'search_items' => __('Search Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
11 |
'not_found' => __('Nothing found' , LANDINGPAGES_TEXT_DOMAIN),
|
12 |
'not_found_in_trash' => __('Nothing found in Trash' , LANDINGPAGES_TEXT_DOMAIN),
|
13 |
'parent_item_colon' => ''
|
14 |
);
|
15 |
$args = array(
|
16 |
'labels' => $labels,
|
17 |
'public' => true,
|
18 |
'publicly_queryable' => true,
|
19 |
'show_ui' => true,
|
20 |
'query_var' => true,
|
21 |
'menu_icon' => LANDINGPAGES_URLPATH . '/images/plus.gif',
|
22 |
'rewrite' => array("slug" => "$slug"),
|
23 |
'with_front' => false,
|
24 |
'capability_type' => 'post',
|
25 |
'hierarchical' => false,
|
26 |
'menu_position' => null,
|
27 |
'supports' => array('title','custom-fields','editor','thumbnail', 'excerpt')
|
28 |
);
|
29 |
register_post_type( 'landing-page' , $args );
|
30 |
$args = array(
|
31 |
'hierarchical' => true,
|
32 |
'label' => __("Categories" , LANDINGPAGES_TEXT_DOMAIN),
|
33 |
'singular_label' => __("Landing Page Category" , LANDINGPAGES_TEXT_DOMAIN),
|
34 |
'show_ui' => true,
|
35 |
'query_var' => true,
|
36 |
);
|
37 |
register_taxonomy('landing_page_category', array('landing-page'), $args);
|
38 |
// Set category transient for use in other areas
|
39 |
$terms = get_terms('landing_page_category', array('hide_empty' => false));
|
40 |
$lp_cats = get_transient( 'landing-page-cats' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
$labels = array(
|
2 |
'name' => _x('Landing Pages', 'post type general name' , LANDINGPAGES_TEXT_DOMAIN),
|
3 |
'singular_name' => _x('Landing Page', 'post type singular name' , LANDINGPAGES_TEXT_DOMAIN),
|
4 |
'add_new' => _x('Add New', 'Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
5 |
'add_new_item' => __('Add New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
6 |
'edit_item' => __('Edit Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
7 |
'new_item' => __('New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
8 |
'view_item' => __('View Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
9 |
'search_items' => __('Search Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
10 |
'not_found' => __('Nothing found' , LANDINGPAGES_TEXT_DOMAIN),
|
11 |
'not_found_in_trash' => __('Nothing found in Trash' , LANDINGPAGES_TEXT_DOMAIN),
|
12 |
'parent_item_colon' => ''
|
13 |
);
|
14 |
$args = array(
|
15 |
'labels' => $labels,
|
16 |
'public' => true,
|
17 |
'publicly_queryable' => true,
|
18 |
'show_ui' => true,
|
19 |
'query_var' => true,
|
20 |
'menu_icon' => LANDINGPAGES_URLPATH . '/images/plus.gif',
|
21 |
'rewrite' => array("slug" => "$slug"),
|
22 |
'with_front' => false,
|
23 |
'capability_type' => 'post',
|
24 |
'hierarchical' => false,
|
25 |
'menu_position' => null,
|
26 |
'supports' => array('title','custom-fields','editor','thumbnail', 'excerpt')
|
27 |
);
|
28 |
register_post_type( 'landing-page' , $args );
|
29 |
$args = array(
|
30 |
'hierarchical' => true,
|
31 |
'label' => __("Categories" , LANDINGPAGES_TEXT_DOMAIN),
|
32 |
'singular_label' => __("Landing Page Category" , LANDINGPAGES_TEXT_DOMAIN),
|
33 |
'show_ui' => true,
|
34 |
'query_var' => true,
|
35 |
);
|
36 |
register_taxonomy('landing_page_category', array('landing-page'), $args);
|
37 |
// Set category transient for use in other areas
|
38 |
$terms = get_terms('landing_page_category', array('hide_empty' => false));
|
39 |
$lp_cats = get_transient( 'landing-page-cats' );
|
40 |
+
<?php
|
41 |
+
|
42 |
+
add_action('admin_init', 'lp_rebuild_permalinks');
|
43 |
+
function lp_rebuild_permalinks()
|
44 |
+
{
|
45 |
+
$activation_check = get_option('lp_activate_rewrite_check',0);
|
46 |
+
|
47 |
+
if ($activation_check)
|
48 |
+
{
|
49 |
+
global $wp_rewrite;
|
50 |
+
$wp_rewrite->flush_rules();
|
51 |
+
update_option( 'lp_activate_rewrite_check', '0');
|
52 |
+
}
|
53 |
+
}
|
54 |
+
|
55 |
+
add_action('init', 'landing_page_register');
|
56 |
+
function landing_page_register() {
|
57 |
+
|
58 |
+
$slug = get_option( 'lp-main-landing-page-permalink-prefix', 'go' );
|
59 |
+
$labels = array(
|
60 |
+
'name' => _x('Landing Pages', 'post type general name' , LANDINGPAGES_TEXT_DOMAIN),
|
61 |
+
'singular_name' => _x('Landing Page', 'post type singular name' , LANDINGPAGES_TEXT_DOMAIN),
|
62 |
+
'add_new' => _x('Add New', 'Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
63 |
+
'add_new_item' => __('Add New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
64 |
+
'edit_item' => __('Edit Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
65 |
+
'new_item' => __('New Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
66 |
+
'view_item' => __('View Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
67 |
+
'search_items' => __('Search Landing Page' , LANDINGPAGES_TEXT_DOMAIN),
|
68 |
+
'not_found' => __('Nothing found' , LANDINGPAGES_TEXT_DOMAIN),
|
69 |
+
'not_found_in_trash' => __('Nothing found in Trash' , LANDINGPAGES_TEXT_DOMAIN),
|
70 |
+
'parent_item_colon' => ''
|
71 |
+
);
|
72 |
+
|
73 |
+
$args = array(
|
74 |
+
'labels' => $labels,
|
75 |
+
'public' => true,
|
76 |
+
'publicly_queryable' => true,
|
77 |
+
'show_ui' => true,
|
78 |
+
'query_var' => true,
|
79 |
+
'menu_icon' => LANDINGPAGES_URLPATH . '/images/plus.gif',
|
80 |
+
'rewrite' => array("slug" => "$slug"),
|
81 |
+
'with_front' => false,
|
82 |
+
'capability_type' => 'post',
|
83 |
+
'hierarchical' => false,
|
84 |
+
'menu_position' => null,
|
85 |
+
'supports' => array('title','custom-fields','editor','thumbnail', 'excerpt')
|
86 |
+
);
|
87 |
+
|
88 |
+
register_post_type( 'landing-page' , $args );
|
89 |
+
|
90 |
+
//flush_rewrite_rules( false );
|
91 |
+
}
|
92 |
+
|
93 |
+
add_action('init', 'landing_page_category_registerTaxonomy');
|
94 |
+
function landing_page_category_registerTaxonomy() {
|
95 |
+
$args = array(
|
96 |
+
'hierarchical' => true,
|
97 |
+
'label' => __("Categories" , LANDINGPAGES_TEXT_DOMAIN),
|
98 |
+
'singular_label' => __("Landing Page Category" , LANDINGPAGES_TEXT_DOMAIN),
|
99 |
+
'show_ui' => true,
|
100 |
+
'query_var' => true,
|
101 |
+
"rewrite" => true
|
102 |
+
);
|
103 |
+
|
104 |
+
register_taxonomy('landing_page_category', array('landing-page'), $args);
|
105 |
+
// Set category transient for use in other areas
|
106 |
+
$terms = get_terms('landing_page_category', array('hide_empty' => false));
|
107 |
+
$lp_cats = get_transient( 'landing-page-cats' );
|
108 |
+
if ( false === $lp_cats ) {
|
109 |
+
$options_categories = array();
|
110 |
+
$options_categories['all'] = __('All Landing Page Categories' , LANDINGPAGES_TEXT_DOMAIN);
|
111 |
+
foreach ($terms as $term) {
|
112 |
+
$options_categories[$term->term_id] = $term->name;
|
113 |
+
}
|
114 |
+
set_transient('landing-page-cats', $options_categories, 24 * HOUR_IN_SECONDS);
|
115 |
+
}
|
116 |
+
}
|
117 |
+
|
118 |
+
|
119 |
+
// Change except box title
|
120 |
+
add_action( 'admin_init', 'lp_change_excerpt_to_summary' );
|
121 |
+
function lp_change_excerpt_to_summary() {
|
122 |
+
$post_type = "landing-page";
|
123 |
+
if ( post_type_supports($post_type, 'excerpt') ) {
|
124 |
+
add_meta_box('postexcerpt', __('Short Description' , LANDINGPAGES_TEXT_DOMAIN), 'post_excerpt_meta_box', $post_type, 'normal', 'core'); }
|
125 |
+
}
|
126 |
+
|
127 |
+
|
128 |
+
/* This piece is for the customizer? I'm not sure - H */
|
129 |
+
add_filter('admin_url','lp_add_fullscreen_param');
|
130 |
+
function lp_add_fullscreen_param( $link )
|
131 |
+
{
|
132 |
+
if (isset($_GET['page']))
|
133 |
+
return $link;
|
134 |
+
|
135 |
+
if ( ( isset($post) && 'landing-page' == $post->post_type ) || ( isset($_REQUEST['post_type']) && $_REQUEST['post_type']=='landing-page' ) )
|
136 |
+
{
|
137 |
+
$params['frontend'] = 'false';
|
138 |
+
if(isset($_GET['frontend']) && $_GET['frontend'] == 'true') {
|
139 |
+
$params['frontend'] = 'true';
|
140 |
+
}
|
141 |
+
if(isset($_REQUEST['frontend']) && $_REQUEST['frontend'] == 'true') {
|
142 |
+
$params['frontend'] = 'true';
|
143 |
+
}
|
144 |
+
$link = add_query_arg( $params, $link );
|
145 |
+
|
146 |
+
}
|
147 |
+
|
148 |
+
return $link;
|
149 |
+
}
|
150 |
+
|
151 |
+
/*********PREPARE COLUMNS FOR IMPRESSIONS AND CONVERSIONS***************/
|
152 |
+
if (is_admin())
|
153 |
+
{
|
154 |
+
|
155 |
+
//include_once(LANDINGPAGES_PATH.'filters/filters.post-type.php');
|
156 |
+
|
157 |
+
//add_filter('manage_edit-landing-page_sortable_columns', 'lp_column_register_sortable');
|
158 |
+
add_filter("manage_edit-landing-page_columns", 'lp_columns');
|
159 |
+
add_action("manage_posts_custom_column", "lp_column");
|
160 |
+
add_filter('landing-page_orderby','lp_column_orderby', 10, 2);
|
161 |
+
|
162 |
+
// remove SEO filter
|
163 |
+
if ( (isset($_GET['post_type']) && ($_GET['post_type'] == 'landing-page') ) )
|
164 |
+
{ add_filter( 'wpseo_use_page_analysis', '__return_false' ); }
|
165 |
+
|
166 |
+
//define columns for landing pages
|
167 |
+
function lp_columns($columns)
|
168 |
+
{
|
169 |
+
$columns = array(
|
170 |
+
"cb" => "<input type=\"checkbox\" />",
|
171 |
+
//"ID" => "ID",
|
172 |
+
"thumbnail-lander" => __( "Preview" , LANDINGPAGES_TEXT_DOMAIN),
|
173 |
+
"title" => __( "Landing Page Title" , LANDINGPAGES_TEXT_DOMAIN),
|
174 |
+
"stats" => __( "Variation Testing Stats" , LANDINGPAGES_TEXT_DOMAIN),
|
175 |
+
"impressions" => __( "Total<br>Visits" , LANDINGPAGES_TEXT_DOMAIN),
|
176 |
+
"actions" => __( "Total<br>Conversions" , LANDINGPAGES_TEXT_DOMAIN),
|
177 |
+
"cr" => __( "Total<br>Conversion Rate" , LANDINGPAGES_TEXT_DOMAIN)
|
178 |
+
|
179 |
+
);
|
180 |
+
return $columns;
|
181 |
+
}
|
182 |
+
|
183 |
+
function lp_show_stats_list() {
|
184 |
+
|
185 |
+
global $post;
|
186 |
+
$permalink = get_permalink($post->ID);
|
187 |
+
$variations = get_post_meta($post->ID, 'lp-ab-variations', true);
|
188 |
+
if ($variations)
|
189 |
+
{
|
190 |
+
$variations = explode(",", $variations);
|
191 |
+
$variations = array_filter($variations,'is_numeric');
|
192 |
+
|
193 |
+
//echo "<b>".$lp_impressions."</b> visits";
|
194 |
+
echo "<span class='show-stats button'>Show Variation Stats</span>";
|
195 |
+
echo "<ul class='lp-varation-stat-ul'>";
|
196 |
+
|
197 |
+
$first_status = get_post_meta($post->ID,'lp_ab_variation_status', true); // Current status
|
198 |
+
$first_notes = get_post_meta($post->ID,'lp-variation-notes', true);
|
199 |
+
$cr_array = array();
|
200 |
+
$i = 0;
|
201 |
+
$impressions = 0;
|
202 |
+
$conversions = 0;
|
203 |
+
foreach ($variations as $vid)
|
204 |
+
{
|
205 |
+
$letter = lp_ab_key_to_letter($vid); // convert to letter
|
206 |
+
$each_impression = get_post_meta($post->ID,'lp-ab-variation-impressions-'.$vid, true); // get impressions
|
207 |
+
$v_status = get_post_meta($post->ID,'lp_ab_variation_status-'.$vid, true); // Current status
|
208 |
+
|
209 |
+
if ($i === 0) { $v_status = $first_status; } // get status of first
|
210 |
+
|
211 |
+
(($v_status === "")) ? $v_status = "1" : $v_status = $v_status; // Get on/off status
|
212 |
+
|
213 |
+
$each_notes = get_post_meta($post->ID,'lp-variation-notes-'.$vid, true); // Get Notes
|
214 |
+
|
215 |
+
if ($i === 0) { $each_notes = $first_notes; } // Get first notes
|
216 |
+
|
217 |
+
$each_conversion = get_post_meta($post->ID,'lp-ab-variation-conversions-'.$vid, true);
|
218 |
+
(($each_conversion === "")) ? $final_conversion = 0 : $final_conversion = $each_conversion;
|
219 |
+
|
220 |
+
$impressions += get_post_meta($post->ID,'lp-ab-variation-impressions-'.$vid, true);
|
221 |
+
|
222 |
+
$conversions += get_post_meta($post->ID,'lp-ab-variation-conversions-'.$vid, true);
|
223 |
+
|
224 |
+
if ($each_impression != 0)
|
225 |
+
{
|
226 |
+
$conversion_rate = $final_conversion / $each_impression;
|
227 |
+
}
|
228 |
+
else
|
229 |
+
{
|
230 |
+
$conversion_rate = 0;
|
231 |
+
}
|
232 |
+
|
233 |
+
$conversion_rate = round($conversion_rate,2) * 100;
|
234 |
+
$cr_array[] = $conversion_rate;
|
235 |
+
|
236 |
+
if ($v_status === "0")
|
237 |
+
{
|
238 |
+
$final_status = __( "(Paused)" , LANDINGPAGES_TEXT_DOMAIN);
|
239 |
+
}
|
240 |
+
else
|
241 |
+
{
|
242 |
+
$final_status = "";
|
243 |
+
}
|
244 |
+
/*if ($cr_array[$i] > $largest) {
|
245 |
+
$largest = $cr_array[$i];
|
246 |
+
}
|
247 |
+
(($largest === $conversion_rate)) ? $winner_class = 'lp-current-winner' : $winner_class = ""; */
|
248 |
+
(($final_conversion === "1")) ? $c_text = __( 'conversion' , LANDINGPAGES_TEXT_DOMAIN) : $c_text = __( "conversions" , LANDINGPAGES_TEXT_DOMAIN);
|
249 |
+
(($each_impression === "1")) ? $i_text = __( 'visit' , LANDINGPAGES_TEXT_DOMAIN) : $i_text = __( "visits" , LANDINGPAGES_TEXT_DOMAIN);
|
250 |
+
(($each_notes === "")) ? $each_notes = __( 'No notes' , LANDINGPAGES_TEXT_DOMAIN) : $each_notes = $each_notes;
|
251 |
+
$data_letter = "data-letter=\"".$letter."\"";
|
252 |
+
$popup = "data-notes=\"<span class='lp-pop-description'>".$each_notes."</span><span class='lp-pop-controls'><span class='lp-pop-edit button-primary'><a href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=".$vid."&action=edit'>Edit This variation</a></span><span class='lp-pop-preview button'><a title='Click to Preview this variation' class='thickbox' href='".$permalink."?lp-variation-id=".$vid."&iframe_window=on&post_id=".$post->ID."&TB_iframe=true&width=640&height=703' target='_blank'>Preview This variation</a></span><span class='lp-bottom-controls'><span class='lp-delete-var-stats' data-letter='".$letter."' data-vid='".$vid."' rel='".$post->ID."'>Clear These Stats</span></span></span>\"";
|
253 |
+
|
254 |
+
echo "<li rel='".$final_status."' data-postid='".$post->ID."' data-letter='".$letter."' data-lp='' class='lp-stat-row-".$vid." ".$post->ID. '-'. $conversion_rate ." status-".$v_status. "'><a ".$popup." ".$data_letter." class='lp-letter' title='click to edit this variation' href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=".$vid."&action=edit'>" . $letter . "</a><span class='lp-numbers'> <span class='lp-impress-num'>" . $each_impression . "</span><span class='visit-text'>".$i_text." with</span><span class='lp-con-num'>". $final_conversion . "</span> ".$c_text."</span><a ".$popup." ".$data_letter." class='cr-number cr-empty-".$conversion_rate."' href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=".$vid."&action=edit'>". $conversion_rate . "%</a></li>";
|
255 |
+
$i++;
|
256 |
+
}
|
257 |
+
echo "</ul>";
|
258 |
+
|
259 |
+
$winning_cr = max($cr_array); // best conversion rate
|
260 |
+
|
261 |
+
if ($winning_cr != 0) {
|
262 |
+
echo "<span class='variation-winner-is'>".$post->ID. "-".$winning_cr."</span>";
|
263 |
+
}
|
264 |
+
//echo "Total Visits: " . $impressions;
|
265 |
+
//echo "Total Conversions: " . $conversions;
|
266 |
+
}
|
267 |
+
else
|
268 |
+
{
|
269 |
+
$notes = get_post_meta($post->ID,'lp-variation-notes', true); // Get Notes
|
270 |
+
$cr = lp_show_aggregated_stats("cr");
|
271 |
+
(($notes === "")) ? $notes = __( 'No notes' , LANDINGPAGES_TEXT_DOMAIN) : $notes = $notes;
|
272 |
+
$popup = "data-notes=\"<span class='lp-pop-description'>".$notes."</span><span class='lp-pop-controls'><span class='lp-pop-edit button-primary'><a href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=0&action=edit'>Edit This variation</a></span><span class='lp-pop-preview button'><a title='Click to Preview this variation' class='thickbox' href='".$permalink."?lp-variation-id=0&iframe_window=on&post_id=".$post->ID."&TB_iframe=true&width=640&height=703' target='_blank'>". __( 'Preview This variation' , LANDINGPAGES_TEXT_DOMAIN) ."</a></span><span class='lp-bottom-controls'><span class='lp-delete-var-stats' data-letter='A' data-vid='0' rel='".$post->ID."'>". __( 'Clear These Stats' , LANDINGPAGES_TEXT_DOMAIN) ."</span></span></span>\"";
|
273 |
+
|
274 |
+
echo "<ul class='lp-varation-stat-ul'><li rel='' data-postid='".$post->ID."' data-letter='A' data-lp=''><a ".$popup." data-letter=\"A\" class='lp-letter' title='click to edit this variation' href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=0&action=edit'>A</a><span class='lp-numbers'> <span class='lp-impress-num'>" . lp_show_aggregated_stats("impressions") . "</span><span class='visit-text'>visits with</span><span class='lp-con-num'>". lp_show_aggregated_stats("actions") . "</span> conversions</span><a class='cr-number cr-empty-".$cr."' href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=0&action=edit'>". $cr . "%</a></li></ul>";
|
275 |
+
echo "<div class='no-stats-yet'>". __('No A/B Tests running for this landing page' , LANDINGPAGES_TEXT_DOMAIN).". <a href='/wp-admin/post.php?post=".$post->ID."&lp-variation-id=1&action=edit&new-variation=1&lp-message=go'>". __('Start one' , LANDINGPAGES_TEXT_DOMAIN) ."</a></div>";
|
276 |
+
|
277 |
+
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
+
function lp_show_aggregated_stats($type_of_stat)
|
282 |
+
{
|
283 |
+
global $post;
|
284 |
+
|
285 |
+
$variations = get_post_meta($post->ID, 'lp-ab-variations', true);
|
286 |
+
$variations = explode(",", $variations);
|
287 |
+
|
288 |
+
$impressions = 0;
|
289 |
+
$conversions = 0;
|
290 |
+
|
291 |
+
foreach ($variations as $vid)
|
292 |
+
{
|
293 |
+
$each_impression = get_post_meta($post->ID,'lp-ab-variation-impressions-'.$vid, true);
|
294 |
+
$each_conversion = get_post_meta($post->ID,'lp-ab-variation-conversions-'.$vid, true);
|
295 |
+
(($each_conversion === "")) ? $final_conversion = 0 : $final_conversion = $each_conversion;
|
296 |
+
$impressions += get_post_meta($post->ID,'lp-ab-variation-impressions-'.$vid, true);
|
297 |
+
$conversions += get_post_meta($post->ID,'lp-ab-variation-conversions-'.$vid, true);
|
298 |
+
}
|
299 |
+
|
300 |
+
if ($type_of_stat === "actions")
|
301 |
+
{
|
302 |
+
return $conversions;
|
303 |
+
}
|
304 |
+
if ($type_of_stat === "impressions")
|
305 |
+
{
|
306 |
+
return $impressions;
|
307 |
+
}
|
308 |
+
if ($type_of_stat === "cr")
|
309 |
+
{
|
310 |
+
if ($impressions != 0) {
|
311 |
+
$conversion_rate = $conversions / $impressions;
|
312 |
+
} else {
|
313 |
+
$conversion_rate = 0;
|
314 |
+
}
|
315 |
+
$conversion_rate = round($conversion_rate,2) * 100;
|
316 |
+
return $conversion_rate;
|
317 |
+
}
|
318 |
+
|
319 |
+
}
|
320 |
+
//populate collumsn for landing pages
|
321 |
+
function lp_column($column)
|
322 |
+
{
|
323 |
+
global $post;
|
324 |
+
|
325 |
+
if ($post->post_type!='landing-page')
|
326 |
+
return;
|
327 |
+
|
328 |
+
if ("ID" == $column)
|
329 |
+
{
|
330 |
+
echo $post->ID;
|
331 |
+
}
|
332 |
+
else if ("title" == $column)
|
333 |
+
{
|
334 |
+
}
|
335 |
+
else if ("author" == $column)
|
336 |
+
{
|
337 |
+
}
|
338 |
+
else if ("date" == $column)
|
339 |
+
{
|
340 |
+
}
|
341 |
+
else if ("thumbnail-lander" == $column)
|
342 |
+
{
|
343 |
+
$template = get_post_meta($post->ID, 'lp-selected-template', true);
|
344 |
+
$permalink = get_permalink($post->ID);
|
345 |
+
$datetime = the_modified_date('YmjH',null,null,false);
|
346 |
+
$permalink = $permalink = $permalink.'?dt='.$datetime;
|
347 |
+
$thumbnail = 'http://s.wordpress.com/mshots/v1/' . urlencode(esc_url($permalink)) . '?w=140';
|
348 |
+
if (in_array($_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1'))) {
|
349 |
+
$thumbnail = LANDINGPAGES_URLPATH . '/images/localhost.png';
|
350 |
+
}
|
351 |
+
echo "<a title='".__('Click to Preview this variation' , LANDINGPAGES_TEXT_DOMAIN) ."' class='thickbox' href='".$permalink."?lp-variation-id=0&iframe_window=on&post_id=".$post->ID."&TB_iframe=true&width=640&height=703' target='_blank'><img src=".$thumbnail."' style='width:150px;height:110px;' title='Click to Preview'></a>";
|
352 |
+
|
353 |
+
}
|
354 |
+
else if ('cr' == $column)
|
355 |
+
{
|
356 |
+
$lp_impressions = lp_get_page_views($post->ID);
|
357 |
+
$lp_conversions = lp_get_conversions($post->ID);
|
358 |
+
if ($lp_conversions>0){
|
359 |
+
$lp_cr = round(($lp_conversions/$lp_impressions), 2);
|
360 |
+
} else {
|
361 |
+
$lp_cr = "0.0";
|
362 |
+
}
|
363 |
+
}
|
364 |
+
else if ("stats" == $column)
|
365 |
+
{
|
366 |
+
$lp_impressions = lp_get_page_views($post->ID);
|
367 |
+
$lp_impressions = apply_filters('lp_col_impressions',$lp_impressions);
|
368 |
+
|
369 |
+
lp_show_stats_list();
|
370 |
+
|
371 |
+
|
372 |
+
}
|
373 |
+
else if ("impressions" == $column)
|
374 |
+
{
|
375 |
+
echo lp_show_aggregated_stats("impressions");
|
376 |
+
|
377 |
+
}
|
378 |
+
else if ("actions" == $column)
|
379 |
+
{
|
380 |
+
echo lp_show_aggregated_stats("actions");
|
381 |
+
}
|
382 |
+
else if ("cr" == $column)
|
383 |
+
{
|
384 |
+
echo lp_show_aggregated_stats("cr") . "%";
|
385 |
+
}
|
386 |
+
else if ("template" == $column) {
|
387 |
+
$template_used = get_post_meta($post->ID, 'lp-selected-template', true);
|
388 |
+
echo $template_used;
|
389 |
+
}
|
390 |
+
}
|
391 |
+
|
392 |
+
// Add category sort to landing page list
|
393 |
+
function lp_taxonomy_filter_restrict_manage_posts()
|
394 |
+
{
|
395 |
+
global $typenow;
|
396 |
+
|
397 |
+
if ($typenow === "landing-page") {
|
398 |
+
$post_types = get_post_types( array( '_builtin' => false ) );
|
399 |
+
if ( in_array( $typenow, $post_types ) ) {
|
400 |
+
$filters = get_object_taxonomies( $typenow );
|
401 |
+
|
402 |
+
foreach ( $filters as $tax_slug ) {
|
403 |
+
$tax_obj = get_taxonomy( $tax_slug );
|
404 |
+
(isset($_GET[$tax_slug])) ? $current = $_GET[$tax_slug] : $current = 0;
|
405 |
+
wp_dropdown_categories( array(
|
406 |
+
'show_option_all' => __('Show All '.$tax_obj->label ),
|
407 |
+
'taxonomy' => $tax_slug,
|
408 |
+
'name' => $tax_obj->name,
|
409 |
+
'orderby' => 'name',
|
410 |
+
'selected' => $current,
|
411 |
+
'hierarchical' => $tax_obj->hierarchical,
|
412 |
+
'show_count' => false,
|
413 |
+
'hide_empty' => true
|
414 |
+
) );
|
415 |
+
}
|
416 |
+
}
|
417 |
+
}
|
418 |
+
}
|
419 |
+
|
420 |
+
add_action( 'restrict_manage_posts', 'lp_taxonomy_filter_restrict_manage_posts' );
|
421 |
+
function convert_landing_page_category_id_to_taxonomy_term_in_query($query) {
|
422 |
+
global $pagenow;
|
423 |
+
$qv = &$query->query_vars;
|
424 |
+
if( $pagenow=='edit.php' && isset($qv['landing_page_category']) && is_numeric($qv['landing_page_category']) ) {
|
425 |
+
$term = get_term_by('id',$qv['landing_page_category'],'landing_page_category');
|
426 |
+
$qv['landing_page_category'] = $term->slug;
|
427 |
+
}
|
428 |
+
}
|
429 |
+
add_filter('parse_query','convert_landing_page_category_id_to_taxonomy_term_in_query');
|
430 |
+
|
431 |
+
// Make these columns sortable
|
432 |
+
add_filter( 'manage_edit-landing-page_sortable_columns', 'lp_sortable_columns' );
|
433 |
+
function lp_sortable_columns() {
|
434 |
+
return array(
|
435 |
+
'title' => 'title',
|
436 |
+
'impressions' => 'impressions',
|
437 |
+
'actions' => 'actions',
|
438 |
+
'cr' => 'cr'
|
439 |
+
);
|
440 |
+
}
|
441 |
+
|
442 |
+
|
443 |
+
//START Custom styling of post state (eg: pretty highlighting of post_status on landing pages page
|
444 |
+
add_filter( 'display_post_states', 'lp_custom_post_states' );
|
445 |
+
function lp_custom_post_states( $post_states ) {
|
446 |
+
foreach ( $post_states as &$state ){
|
447 |
+
$state = '<span class="'.strtolower( $state ).' states">' . str_replace( ' ', '-', $state ) . '</span>';
|
448 |
+
}
|
449 |
+
return $post_states;
|
450 |
+
}
|
451 |
+
|
452 |
+
//***********ADDS 'CLEAR STATS' BUTTON TO POSTS EDITING AREA******************/
|
453 |
+
add_filter('post_row_actions', 'lp_add_clear_tracking',10,2);
|
454 |
+
function lp_add_clear_tracking($actions, $post) {
|
455 |
+
if ($post->post_type=='landing-page')
|
456 |
+
{
|
457 |
+
$actions['clear'] = '<a href="#clear-stats" id="lp_clear_'.$post->ID.'" class="clear_stats" title="'
|
458 |
+
. esc_attr(__("Clear impression and conversion records", LANDINGPAGES_TEXT_DOMAIN))
|
459 |
+
. '" >' . __('Clear All Stats', LANDINGPAGES_TEXT_DOMAIN) . '</a><span class="hover-description">'. __('Hover over the letters to the right for more options' , LANDINGPAGES_TEXT_DOMAIN) .'</span>';
|
460 |
+
}
|
461 |
+
return $actions;
|
462 |
+
}
|
463 |
+
|
464 |
+
/* perform trash actions for landing pages */
|
465 |
+
add_action('wp_trash_post', 'lp_trash_lander');
|
466 |
+
function lp_trash_lander($post_id) {
|
467 |
+
global $post;
|
468 |
+
|
469 |
+
if (!isset($post)||isset($_POST['split_test']))
|
470 |
+
return;
|
471 |
+
|
472 |
+
if ($post->post_type=='revision')
|
473 |
+
{
|
474 |
+
return;
|
475 |
+
}
|
476 |
+
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ||(isset($_POST['post_type'])&&$_POST['post_type']=='revision'))
|
477 |
+
{
|
478 |
+
return;
|
479 |
+
}
|
480 |
+
|
481 |
+
if ($post->post_type=='landing-page')
|
482 |
+
{
|
483 |
+
|
484 |
+
$lp_id = $post->ID;
|
485 |
+
|
486 |
+
$args=array(
|
487 |
+
'post_type' => 'landing-page-group',
|
488 |
+
'post_satus'=>'publish'
|
489 |
+
);
|
490 |
+
|
491 |
+
$my_query = null;
|
492 |
+
$my_query = new WP_Query($args);
|
493 |
+
|
494 |
+
if( $my_query->have_posts() )
|
495 |
+
{
|
496 |
+
$i=1;
|
497 |
+
while ($my_query->have_posts()) : $my_query->the_post();
|
498 |
+
$group_id = get_the_ID();
|
499 |
+
$group_data = get_the_content();
|
500 |
+
$group_data = json_decode($group_data,true);
|
501 |
+
|
502 |
+
$lp_ids = array();
|
503 |
+
foreach ($group_data as $key=>$value)
|
504 |
+
{
|
505 |
+
$lp_ids[] = $key;
|
506 |
+
}
|
507 |
+
|
508 |
+
if (in_array($lp_id,$lp_ids))
|
509 |
+
{
|
510 |
+
unset($group_data[$lp_id]);
|
511 |
+
|
512 |
+
$this_data = json_encode($group_data);
|
513 |
+
//print_r($this_data);
|
514 |
+
$new_post = array(
|
515 |
+
'ID' => $group_id,
|
516 |
+
'post_title' => get_the_title(),
|
517 |
+
'post_content' => $this_data,
|
518 |
+
'post_status' => 'publish',
|
519 |
+
'post_date' => date('Y-m-d H:i:s'),
|
520 |
+
'post_author' => 1,
|
521 |
+
'post_type' => 'landing-page-group'
|
522 |
+
);
|
523 |
+
//print_r($new_post);
|
524 |
+
$post_id = wp_update_post($new_post);
|
525 |
+
}
|
526 |
+
endwhile;
|
527 |
+
}
|
528 |
+
}
|
529 |
+
}
|
530 |
+
|
531 |
+
}
|
532 |
+
|
533 |
+
if (!post_type_exists('wp-lead'))
|
534 |
+
{
|
535 |
+
add_action('init', 'lp_wpleads_register');
|
536 |
+
function lp_wpleads_register() {
|
537 |
+
//echo $slug;exit;
|
538 |
+
$labels = array(
|
539 |
+
'name' => _x('Leads', 'post type general name'),
|
540 |
+
'singular_name' => _x('Lead', 'post type singular name' , LANDINGPAGES_TEXT_DOMAIN),
|
541 |
+
'add_new' => _x('Add New', 'Lead' , LANDINGPAGES_TEXT_DOMAIN),
|
542 |
+
'add_new_item' => __('Add New Lead' , LANDINGPAGES_TEXT_DOMAIN),
|
543 |
+
'edit_item' => __('Edit Lead' , LANDINGPAGES_TEXT_DOMAIN),
|
544 |
+
'new_item' => __('New Leads' , LANDINGPAGES_TEXT_DOMAIN),
|
545 |
+
'view_item' => __('View Leads' , LANDINGPAGES_TEXT_DOMAIN),
|
546 |
+
'search_items' => __('Search Leads' , LANDINGPAGES_TEXT_DOMAIN),
|
547 |
+
'not_found' => __('Nothing found' , LANDINGPAGES_TEXT_DOMAIN),
|
548 |
+
'not_found_in_trash' => __('Nothing found in Trash' , LANDINGPAGES_TEXT_DOMAIN),
|
549 |
+
'parent_item_colon' => ''
|
550 |
+
);
|
551 |
+
|
552 |
+
$args = array(
|
553 |
+
'labels' => $labels,
|
554 |
+
'public' => false,
|
555 |
+
'publicly_queryable' => false,
|
556 |
+
'show_ui' => false,
|
557 |
+
'query_var' => true,
|
558 |
+
'capability_type' => 'post',
|
559 |
+
'hierarchical' => false,
|
560 |
+
'menu_position' => null,
|
561 |
+
'supports' => array('custom-fields','thumbnail')
|
562 |
+
);
|
563 |
+
|
564 |
+
register_post_type( 'wp-lead' , $args );
|
565 |
+
//flush_rewrite_rules( false );
|
566 |
+
|
567 |
+
}
|
568 |
+
}
|
modules/module.track.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php
|
2 |
$count_key = 'lp_page_views_count';
|
3 |
$count = get_post_meta($postID, $count_key, true);
|
4 |
if($count==''){
|
5 |
delete_post_meta($postID, $count_key);
|
6 |
add_post_meta($postID, $count_key, '0');
|
7 |
return;
|
8 |
}
|
9 |
return $count;
|
10 |
$count_key = 'lp_page_views_count';
|
11 |
$count = get_post_meta($postID, $count_key, true);
|
12 |
if($count==''){
|
13 |
$count = 0;
|
14 |
delete_post_meta($postID, $count_key);
|
15 |
add_post_meta($postID, $count_key, '0');
|
16 |
}else{
|
17 |
$count++;
|
18 |
update_post_meta($postID, $count_key, $count);
|
19 |
}
|
20 |
$count_key = 'lp_page_conversions_count';
|
21 |
$count = get_post_meta($postID, $count_key, true);
|
22 |
if($count==''){
|
23 |
delete_post_meta($postID, $count_key);
|
24 |
add_post_meta($postID, $count_key, '0');
|
25 |
return "0";
|
26 |
}
|
27 |
return $count;
|
28 |
$count_key = 'lp_page_conversions_count';
|
29 |
$count = get_post_meta($postID, $count_key, true);
|
30 |
if($count==''){
|
31 |
$count = 0;
|
32 |
delete_post_meta($postID, $count_key);
|
33 |
add_post_meta($postID, $count_key, '0');
|
34 |
}else{
|
35 |
$count++;
|
36 |
update_post_meta($postID, $count_key, $count);
|
37 |
}
|
|
|
38 |
$count_key = 'lp_page_views_count';
|
39 |
$count = get_post_meta($postID, $count_key, true);
|
40 |
if($count==''){
|
41 |
delete_post_meta($postID, $count_key);
|
42 |
add_post_meta($postID, $count_key, '0');
|
43 |
return;
|
44 |
}
|
45 |
return $count;
|
46 |
$count_key = 'lp_page_views_count';
|
47 |
$count = get_post_meta($postID, $count_key, true);
|
48 |
if($count==''){
|
49 |
$count = 0;
|
50 |
delete_post_meta($postID, $count_key);
|
51 |
add_post_meta($postID, $count_key, '0');
|
52 |
}else{
|
53 |
$count++;
|
54 |
update_post_meta($postID, $count_key, $count);
|
55 |
}
|
56 |
$count_key = 'lp_page_conversions_count';
|
57 |
$count = get_post_meta($postID, $count_key, true);
|
58 |
if($count==''){
|
59 |
delete_post_meta($postID, $count_key);
|
60 |
add_post_meta($postID, $count_key, '0');
|
61 |
return "0";
|
62 |
}
|
63 |
return $count;
|
64 |
$count_key = 'lp_page_conversions_count';
|
65 |
$count = get_post_meta($postID, $count_key, true);
|
66 |
if($count==''){
|
67 |
$count = 0;
|
68 |
delete_post_meta($postID, $count_key);
|
69 |
add_post_meta($postID, $count_key, '0');
|
70 |
}else{
|
71 |
$count++;
|
72 |
update_post_meta($postID, $count_key, $count);
|
73 |
}
|
|
|
1 |
$count_key = 'lp_page_views_count';
|
2 |
$count = get_post_meta($postID, $count_key, true);
|
3 |
if($count==''){
|
4 |
delete_post_meta($postID, $count_key);
|
5 |
add_post_meta($postID, $count_key, '0');
|
6 |
return;
|
7 |
}
|
8 |
return $count;
|
9 |
$count_key = 'lp_page_views_count';
|
10 |
$count = get_post_meta($postID, $count_key, true);
|
11 |
if($count==''){
|
12 |
$count = 0;
|
13 |
delete_post_meta($postID, $count_key);
|
14 |
add_post_meta($postID, $count_key, '0');
|
15 |
}else{
|
16 |
$count++;
|
17 |
update_post_meta($postID, $count_key, $count);
|
18 |
}
|
19 |
$count_key = 'lp_page_conversions_count';
|
20 |
$count = get_post_meta($postID, $count_key, true);
|
21 |
if($count==''){
|
22 |
delete_post_meta($postID, $count_key);
|
23 |
add_post_meta($postID, $count_key, '0');
|
24 |
return "0";
|
25 |
}
|
26 |
return $count;
|
27 |
$count_key = 'lp_page_conversions_count';
|
28 |
$count = get_post_meta($postID, $count_key, true);
|
29 |
if($count==''){
|
30 |
$count = 0;
|
31 |
delete_post_meta($postID, $count_key);
|
32 |
add_post_meta($postID, $count_key, '0');
|
33 |
}else{
|
34 |
$count++;
|
35 |
update_post_meta($postID, $count_key, $count);
|
36 |
}
|
37 |
+
<?php
|
38 |
$count_key = 'lp_page_views_count';
|
39 |
$count = get_post_meta($postID, $count_key, true);
|
40 |
if($count==''){
|
41 |
delete_post_meta($postID, $count_key);
|
42 |
add_post_meta($postID, $count_key, '0');
|
43 |
return;
|
44 |
}
|
45 |
return $count;
|
46 |
$count_key = 'lp_page_views_count';
|
47 |
$count = get_post_meta($postID, $count_key, true);
|
48 |
if($count==''){
|
49 |
$count = 0;
|
50 |
delete_post_meta($postID, $count_key);
|
51 |
add_post_meta($postID, $count_key, '0');
|
52 |
}else{
|
53 |
$count++;
|
54 |
update_post_meta($postID, $count_key, $count);
|
55 |
}
|
56 |
$count_key = 'lp_page_conversions_count';
|
57 |
$count = get_post_meta($postID, $count_key, true);
|
58 |
if($count==''){
|
59 |
delete_post_meta($postID, $count_key);
|
60 |
add_post_meta($postID, $count_key, '0');
|
61 |
return "0";
|
62 |
}
|
63 |
return $count;
|
64 |
$count_key = 'lp_page_conversions_count';
|
65 |
$count = get_post_meta($postID, $count_key, true);
|
66 |
if($count==''){
|
67 |
$count = 0;
|
68 |
delete_post_meta($postID, $count_key);
|
69 |
add_post_meta($postID, $count_key, '0');
|
70 |
}else{
|
71 |
$count++;
|
72 |
update_post_meta($postID, $count_key, $count);
|
73 |
}
|
modules/module.utils.php
CHANGED
@@ -116,10 +116,18 @@ if (!function_exists('inbound_meta_debug')) {
|
|
116 |
}
|
117 |
}
|
118 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
|
120 |
-
/* YOAST SEO PLUGIN - MAKE METABOX LOW PRIORITY */
|
121 |
-
add_filter( 'wpseo_metabox_prio', 'lp_wpseo_priority');
|
122 |
-
function lp_wpseo_priority(){return 'low';}
|
123 |
|
124 |
// Fix SEO Title Tags to not use the_title
|
125 |
//add_action('wp','landingpage_seo_title_filters');
|
@@ -267,4 +275,8 @@ function inbound_build_template_options() {
|
|
267 |
}
|
268 |
}
|
269 |
|
270 |
-
|
|
|
|
|
|
|
|
116 |
}
|
117 |
}
|
118 |
|
119 |
+
// Fix wp_title for known bad behavior themes */
|
120 |
+
add_action('wp','landingpage_fix_known_wp_title_isses' , 10);
|
121 |
+
function landingpage_fix_known_wp_title_isses() {
|
122 |
+
|
123 |
+
if ('landing-page' != get_post_type()){
|
124 |
+
return;
|
125 |
+
}
|
126 |
+
|
127 |
+
remove_filter( 'wp_title', 'genesis_doctitle_wrap' , 20 );
|
128 |
+
remove_filter( 'wp_title', 'genesis_default_title' , 10 );
|
129 |
+
}
|
130 |
|
|
|
|
|
|
|
131 |
|
132 |
// Fix SEO Title Tags to not use the_title
|
133 |
//add_action('wp','landingpage_seo_title_filters');
|
275 |
}
|
276 |
}
|
277 |
|
278 |
+
if (is_admin())
|
279 |
+
{
|
280 |
+
add_filter( 'wpseo_metabox_prio', 'lp_wpseo_priority');
|
281 |
+
function lp_wpseo_priority(){return 'low';}
|
282 |
+
}
|
readme.txt
CHANGED
@@ -7,7 +7,7 @@ License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
|
7 |
Tags: landing pages, inbound marketing, conversion pages, split testing, a b test, a b testing, a/b test, a/b testing, coming soon page, email list, landing page, list building, maintenance page, squeeze page, inbound now, landing-pages, splash pages, cpa, click tracking, goal tracking, analytics, free landing page templates
|
8 |
Requires at least: 3.7
|
9 |
Tested up to: 3.8
|
10 |
-
Stable Tag: 1.4.
|
11 |
|
12 |
Create landing pages for your WordPress site. Monitor and improve conversion rates, run A/B split tests, customize your own templates and more.
|
13 |
|
@@ -39,7 +39,7 @@ Recommended form plugins (Gravity forms, Ninja Forms or Contact form 7)
|
|
39 |
|
40 |
= About the Plugin =
|
41 |
|
42 |
-
http://www.youtube.com/watch?v=
|
43 |
|
44 |
= Developers & Designers =
|
45 |
|
@@ -68,6 +68,14 @@ The plugin is also fully extendable and has a number of <a href='http://docs.inb
|
|
68 |
4. Choose from a ton of pre-made templates, use your existing design, or design your own theme!
|
69 |
|
70 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
= 1.4.5 =
|
72 |
* Added New HTML Lead Email Template with clickable links for faster lead management
|
73 |
* Added Button Shortcodes!
|
7 |
Tags: landing pages, inbound marketing, conversion pages, split testing, a b test, a b testing, a/b test, a/b testing, coming soon page, email list, landing page, list building, maintenance page, squeeze page, inbound now, landing-pages, splash pages, cpa, click tracking, goal tracking, analytics, free landing page templates
|
8 |
Requires at least: 3.7
|
9 |
Tested up to: 3.8
|
10 |
+
Stable Tag: 1.4.6
|
11 |
|
12 |
Create landing pages for your WordPress site. Monitor and improve conversion rates, run A/B split tests, customize your own templates and more.
|
13 |
|
39 |
|
40 |
= About the Plugin =
|
41 |
|
42 |
+
http://www.youtube.com/watch?v=flEd0sRTFUo
|
43 |
|
44 |
= Developers & Designers =
|
45 |
|
68 |
4. Choose from a ton of pre-made templates, use your existing design, or design your own theme!
|
69 |
|
70 |
== Changelog ==
|
71 |
+
= 1.4.6 =
|
72 |
+
* New Feature: Bulk Lead management with leads plugin wordpress.org/plugins/leads/
|
73 |
+
* Added tags to lead profiles for improved management/categorization
|
74 |
+
* Added new compatibility options to fix third party plugin conflicts!
|
75 |
+
* Added new debugging javascript debugging tools for users
|
76 |
+
* Fixed Email Sending Error on forms
|
77 |
+
* Improved support for master license keys
|
78 |
+
|
79 |
= 1.4.5 =
|
80 |
* Added New HTML Lead Email Template with clickable links for faster lead management
|
81 |
* Added Button Shortcodes!
|
shared/classes/chart.class.php
ADDED
@@ -0,0 +1,291 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* NOT currently in use but will be soon
|
4 |
+
*
|
5 |
+
* Graphs
|
6 |
+
*
|
7 |
+
* This class handles building pretty report graphs
|
8 |
+
*
|
9 |
+
* @package EDD
|
10 |
+
* @subpackage Admin/Reports
|
11 |
+
* @copyright Copyright (c) 2012, Pippin Williamson
|
12 |
+
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
13 |
+
* @since 1.9
|
14 |
+
*/
|
15 |
+
|
16 |
+
// Exit if accessed directly
|
17 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
18 |
+
|
19 |
+
/**
|
20 |
+
* EDD_Graph Class
|
21 |
+
*
|
22 |
+
* @since 1.9
|
23 |
+
*/
|
24 |
+
if (!function_exists('Inbound_Graph')) {
|
25 |
+
class Inbound_Graph {
|
26 |
+
|
27 |
+
/*
|
28 |
+
|
29 |
+
Simple example:
|
30 |
+
|
31 |
+
data format for each point: array( location on x, location on y )
|
32 |
+
|
33 |
+
// Example with options set to other than default:
|
34 |
+
$data = array(
|
35 |
+
|
36 |
+
'Line Label' => array(
|
37 |
+
array( 1, 5 ),
|
38 |
+
array( 3, 8 ),
|
39 |
+
array( 10, 2 )
|
40 |
+
),
|
41 |
+
|
42 |
+
'Second Line Label' => array(
|
43 |
+
array( 1, 7 ),
|
44 |
+
array( 4, 5 ),
|
45 |
+
array( 12, 8 )
|
46 |
+
)
|
47 |
+
);
|
48 |
+
|
49 |
+
$graph = new Inbound_Graph( $data );
|
50 |
+
$graph->set( 'bgcolor' => '#000' );
|
51 |
+
$graph->set( 'color' => '#fff' );
|
52 |
+
$graph->display();
|
53 |
+
|
54 |
+
*/
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Data to graph
|
58 |
+
*
|
59 |
+
* @var array
|
60 |
+
* @since 1.9
|
61 |
+
*/
|
62 |
+
private $data;
|
63 |
+
|
64 |
+
/**
|
65 |
+
* Unique ID for the graph
|
66 |
+
*
|
67 |
+
* @var string
|
68 |
+
* @since 1.9
|
69 |
+
*/
|
70 |
+
private $id = '';
|
71 |
+
|
72 |
+
/**
|
73 |
+
* Graph options
|
74 |
+
*
|
75 |
+
* @var array
|
76 |
+
* @since 1.9
|
77 |
+
*/
|
78 |
+
private $options = array();
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Get things started
|
82 |
+
*
|
83 |
+
* @since 1.9
|
84 |
+
*/
|
85 |
+
public function __construct( $_data ) {
|
86 |
+
|
87 |
+
$this->data = $_data;
|
88 |
+
|
89 |
+
// Generate unique ID
|
90 |
+
$this->id = md5( rand() );
|
91 |
+
|
92 |
+
// Setup default options;
|
93 |
+
$this->options = array(
|
94 |
+
'y_mode' => null,
|
95 |
+
'x_mode' => null,
|
96 |
+
'y_decimals' => 0,
|
97 |
+
'x_decimals' => 0,
|
98 |
+
'y_position' => 'right',
|
99 |
+
'time_format' => '%d/%b',
|
100 |
+
'ticksize_unit' => 'day',
|
101 |
+
'ticksize_num' => 1,
|
102 |
+
'multiple_y_axes' => false,
|
103 |
+
'bgcolor' => '#f9f9f9',
|
104 |
+
'bordercolor' => '#ccc',
|
105 |
+
'color' => '#bbb',
|
106 |
+
'borderwidth' => 2,
|
107 |
+
'bars' => false,
|
108 |
+
'lines' => true,
|
109 |
+
'points' => true
|
110 |
+
);
|
111 |
+
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* Set an option
|
116 |
+
*
|
117 |
+
* @param $key The option key to set
|
118 |
+
* @param $value The value to assign to the key
|
119 |
+
* @since 1.9
|
120 |
+
*/
|
121 |
+
public function set( $key, $value ) {
|
122 |
+
$this->options[ $key ] = $value;
|
123 |
+
}
|
124 |
+
|
125 |
+
/**
|
126 |
+
* Get an option
|
127 |
+
*
|
128 |
+
* @param $key The option key to get
|
129 |
+
* @since 1.9
|
130 |
+
*/
|
131 |
+
public function get( $key ) {
|
132 |
+
return isset( $this->options[ $key ] ) ? $this->options[ $key ] : false;
|
133 |
+
}
|
134 |
+
|
135 |
+
/**
|
136 |
+
* Get graph data
|
137 |
+
*
|
138 |
+
* @since 1.9
|
139 |
+
*/
|
140 |
+
public function get_data() {
|
141 |
+
return apply_filters( 'edd_get_graph_data', $this->data, $this );
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* Load the graphing library script
|
146 |
+
*
|
147 |
+
* @since 1.9
|
148 |
+
*/
|
149 |
+
public function load_scripts() {
|
150 |
+
// Use minified libraries if SCRIPT_DEBUG is turned off
|
151 |
+
$suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
|
152 |
+
wp_enqueue_script( 'jquery-flot', EDD_PLUGIN_URL . 'assets/js/jquery.flot' . $suffix . '.js' );
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* Build the graph and return it as a string
|
157 |
+
*
|
158 |
+
* @var array
|
159 |
+
* @since 1.9
|
160 |
+
* @return string
|
161 |
+
*/
|
162 |
+
public function build_graph() {
|
163 |
+
|
164 |
+
$yaxis_count = 1;
|
165 |
+
|
166 |
+
$this->load_scripts();
|
167 |
+
|
168 |
+
ob_start();
|
169 |
+
|
170 |
+
?>
|
171 |
+
<script type="text/javascript">
|
172 |
+
jQuery( document ).ready( function($) {
|
173 |
+
$.plot(
|
174 |
+
$("#edd-graph-<?php echo $this->id; ?>"),
|
175 |
+
[
|
176 |
+
<?php foreach( $this->get_data() as $label => $data ) : ?>
|
177 |
+
{
|
178 |
+
label: "<?php echo esc_attr( $label ); ?>",
|
179 |
+
id: "<?php echo sanitize_key( $label ); ?>",
|
180 |
+
// data format is: [ point on x, value on y ]
|
181 |
+
data: [<?php foreach( $data as $point ) { echo '[' . implode( ',', $point ) . '],'; } ?>],
|
182 |
+
points: {
|
183 |
+
show: <?php echo $this->options['points'] ? 'true' : 'false'; ?>,
|
184 |
+
},
|
185 |
+
bars: {
|
186 |
+
show: <?php echo $this->options['bars'] ? 'true' : 'false'; ?>,
|
187 |
+
barWidth: 12,
|
188 |
+
aling: 'center'
|
189 |
+
},
|
190 |
+
lines: {
|
191 |
+
show: <?php echo $this->options['lines'] ? 'true' : 'false'; ?>
|
192 |
+
},
|
193 |
+
<?php if( $this->options[ 'multiple_y_axes' ] ) : ?>
|
194 |
+
yaxis: <?php echo $yaxis_count; ?>
|
195 |
+
<?php endif; ?>
|
196 |
+
},
|
197 |
+
<?php $yaxis_count++; endforeach; ?>
|
198 |
+
],
|
199 |
+
{
|
200 |
+
// Options
|
201 |
+
grid: {
|
202 |
+
show: true,
|
203 |
+
aboveData: false,
|
204 |
+
color: "<?php echo $this->options[ 'color' ]; ?>",
|
205 |
+
backgroundColor: "<?php echo $this->options[ 'bgcolor' ]; ?>",
|
206 |
+
borderColor: "<?php echo $this->options[ 'bordercolor' ]; ?>",
|
207 |
+
borderWidth: <?php echo absint( $this->options[ 'borderwidth' ] ); ?>,
|
208 |
+
clickable: false,
|
209 |
+
hoverable: true
|
210 |
+
},
|
211 |
+
xaxis: {
|
212 |
+
mode: "<?php echo $this->options['x_mode']; ?>",
|
213 |
+
timeFormat: "<?php echo $this->options['x_mode'] == 'time' ? $this->options['time_format'] : ''; ?>",
|
214 |
+
tickSize: "<?php echo $this->options['x_mode'] == 'time' ? '' : 1; ?>",
|
215 |
+
<?php if( $this->options['x_mode'] != 'time' ) : ?>
|
216 |
+
tickDecimals: <?php echo $this->options['x_decimals']; ?>
|
217 |
+
<?php endif; ?>
|
218 |
+
},
|
219 |
+
yaxis: {
|
220 |
+
position: 'right',
|
221 |
+
min: 0,
|
222 |
+
mode: "<?php echo $this->options['y_mode']; ?>",
|
223 |
+
timeFormat: "<?php echo $this->options['y_mode'] == 'time' ? $this->options['time_format'] : ''; ?>",
|
224 |
+
<?php if( $this->options['y_mode'] != 'time' ) : ?>
|
225 |
+
tickDecimals: <?php echo $this->options['y_decimals']; ?>
|
226 |
+
<?php endif; ?>
|
227 |
+
}
|
228 |
+
}
|
229 |
+
|
230 |
+
);
|
231 |
+
|
232 |
+
function edd_flot_tooltip(x, y, contents) {
|
233 |
+
$('<div id="edd-flot-tooltip">' + contents + '</div>').css( {
|
234 |
+
position: 'absolute',
|
235 |
+
display: 'none',
|
236 |
+
top: y + 5,
|
237 |
+
left: x + 5,
|
238 |
+
border: '1px solid #fdd',
|
239 |
+
padding: '2px',
|
240 |
+
'background-color': '#fee',
|
241 |
+
opacity: 0.80
|
242 |
+
}).appendTo("body").fadeIn(200);
|
243 |
+
}
|
244 |
+
|
245 |
+
var previousPoint = null;
|
246 |
+
$("#edd-graph-<?php echo $this->id; ?>").bind("plothover", function (event, pos, item) {
|
247 |
+
$("#x").text(pos.x.toFixed(2));
|
248 |
+
$("#y").text(pos.y.toFixed(2));
|
249 |
+
if (item) {
|
250 |
+
if (previousPoint != item.dataIndex) {
|
251 |
+
previousPoint = item.dataIndex;
|
252 |
+
$("#edd-flot-tooltip").remove();
|
253 |
+
var x = item.datapoint[0].toFixed(2),
|
254 |
+
y = item.datapoint[1].toFixed(2);
|
255 |
+
if( item.series.id == 'earnings' ) {
|
256 |
+
if( edd_vars.currency_pos == 'before' ) {
|
257 |
+
edd_flot_tooltip( item.pageX, item.pageY, item.series.label + ' ' + edd_vars.currency_sign + y );
|
258 |
+
} else {
|
259 |
+
edd_flot_tooltip( item.pageX, item.pageY, item.series.label + ' ' + y + edd_vars.currency_sign );
|
260 |
+
}
|
261 |
+
} else {
|
262 |
+
edd_flot_tooltip( item.pageX, item.pageY, item.series.label + ' ' + y.replace( '.00', '' ) );
|
263 |
+
}
|
264 |
+
}
|
265 |
+
} else {
|
266 |
+
$("#edd-flot-tooltip").remove();
|
267 |
+
previousPoint = null;
|
268 |
+
}
|
269 |
+
});
|
270 |
+
|
271 |
+
});
|
272 |
+
|
273 |
+
</script>
|
274 |
+
<div id="edd-graph-<?php echo $this->id; ?>" style="height: 300px;"></div>
|
275 |
+
<?php
|
276 |
+
return ob_get_clean();
|
277 |
+
}
|
278 |
+
|
279 |
+
/**
|
280 |
+
* Output the final graph
|
281 |
+
*
|
282 |
+
* @since 1.9
|
283 |
+
*/
|
284 |
+
public function display() {
|
285 |
+
do_action( 'edd_before_graph', $this );
|
286 |
+
echo $this->build_graph();
|
287 |
+
do_action( 'edd_after_graph', $this );
|
288 |
+
}
|
289 |
+
|
290 |
+
}
|
291 |
+
}
|
shared/classes/compatibility.class.php
ADDED
@@ -0,0 +1,134 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Compability Mode Deregisters All Third party scripts not in the whitelist
|
4 |
+
* - The class was made to cut down on third party support requests
|
5 |
+
*
|
6 |
+
* Call the dequeue manually InboundCompatibility::inbound_compatibilities_mode();
|
7 |
+
*/
|
8 |
+
|
9 |
+
/* From Global Settings if compat mode toggled on turn off third party scripts */
|
10 |
+
add_action('admin_enqueue_scripts', 'inbound_turn_on_compatiblity', 110);
|
11 |
+
if (!function_exists('inbound_turn_on_compatiblity')) {
|
12 |
+
function inbound_turn_on_compatiblity() {
|
13 |
+
$screen = get_current_screen();
|
14 |
+
|
15 |
+
// Add all Plugin Screens to Array
|
16 |
+
$inbound_screens = InboundCompatibility::return_inbound_now_screens(); // grabs our plugin screen ids
|
17 |
+
|
18 |
+
// If Not Inbound Now Screen Exit function
|
19 |
+
if (!in_array($screen->id, $inbound_screens)) {
|
20 |
+
return;
|
21 |
+
}
|
22 |
+
|
23 |
+
$lead_compatiblity = get_option( 'wpl-main-inbound_compatibility_mode', $default = false );
|
24 |
+
$cta_compatiblity = get_option( 'wp-cta-main-inbound_compatibility_mode', $default = false );
|
25 |
+
$lp_compatiblity = get_option( 'lp-main-inbound_compatibility_mode', $default = false );
|
26 |
+
if ( $lead_compatiblity || $cta_compatiblity || $lp_compatiblity ) {
|
27 |
+
InboundCompatibility::inbound_compatibilities_mode(); // kill third party scripts
|
28 |
+
}
|
29 |
+
}
|
30 |
+
}
|
31 |
+
|
32 |
+
add_action('admin_notices', 'inbound_compability_admin_notice'); // disable compat notice
|
33 |
+
if (!function_exists('inbound_compability_admin_notice')) {
|
34 |
+
function inbound_compability_admin_notice(){
|
35 |
+
$lead_compatiblity = get_option( 'wpl-main-inbound_compatibility_mode', $default = false );
|
36 |
+
$cta_compatiblity = get_option( 'wp-cta-main-inbound_compatibility_mode', $default = false );
|
37 |
+
$lp_compatiblity = get_option( 'lp-main-inbound_compatibility_mode', $default = false );
|
38 |
+
if ($lead_compatiblity) {
|
39 |
+
$link = admin_url( 'edit.php?post_type=wp-lead&page=wpleads_global_settings' );
|
40 |
+
} elseif ($cta_compatiblity) {
|
41 |
+
$link = admin_url( 'edit.php?post_type=wp-call-to-action&page=wp_cta_global_settings' );
|
42 |
+
} elseif ($lp_compatiblity) {
|
43 |
+
$link = admin_url( 'edit.php?post_type=landing-page&page=lp_global_settings' );
|
44 |
+
}
|
45 |
+
|
46 |
+
if ( $lead_compatiblity || $cta_compatiblity || $lp_compatiblity ) {
|
47 |
+
echo '<div class="updated">
|
48 |
+
<p>Inbound Now Compatibility Mode is currently activated. To turn off go to <a href="'.$link.'">global settings</a> and toggle off</p>
|
49 |
+
</div>';
|
50 |
+
}
|
51 |
+
}
|
52 |
+
}
|
53 |
+
|
54 |
+
if (!class_exists('InboundCompatibility')) {
|
55 |
+
class InboundCompatibility {
|
56 |
+
static $add_inbound_compatibility;
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Dequeue all third party scripts on page
|
60 |
+
* @return [type] [description]
|
61 |
+
*/
|
62 |
+
static function inbound_compatibilities_mode() {
|
63 |
+
|
64 |
+
if (is_admin()){
|
65 |
+
$screen = get_current_screen();
|
66 |
+
} else {
|
67 |
+
$screen = '';
|
68 |
+
}
|
69 |
+
global $wp_scripts;
|
70 |
+
|
71 |
+
// Match our plugins and whitelist them
|
72 |
+
$registered_scripts = $wp_scripts->registered;
|
73 |
+
$inbound_white_list = array();
|
74 |
+
foreach ($registered_scripts as $handle) {
|
75 |
+
if(preg_match("/\/plugins\/leads\//", $handle->src)) {
|
76 |
+
//echo $handle->handle;
|
77 |
+
$inbound_white_list[] = $handle->handle;
|
78 |
+
}
|
79 |
+
if(preg_match("/\/plugins\/cta\//", $handle->src)) {
|
80 |
+
//echo $handle->handle;
|
81 |
+
$inbound_white_list[]= $handle->handle;
|
82 |
+
}
|
83 |
+
if(preg_match("/\/plugins\/landing-pages\//", $handle->src)) {
|
84 |
+
//echo $handle->handle;
|
85 |
+
$inbound_white_list[]= $handle->handle;
|
86 |
+
}
|
87 |
+
}
|
88 |
+
//print_r($inbound_white_list);
|
89 |
+
|
90 |
+
/* NEED Filter for ADDONs */
|
91 |
+
|
92 |
+
|
93 |
+
$scripts_queued = $wp_scripts->queue; /* All Queued Scripts */ //print_r($wp_scripts->queue);
|
94 |
+
|
95 |
+
// Wordpress Core Scripts List
|
96 |
+
$wp_core_scripts = array("jcrop", "swfobject", "swfupload", "swfupload-degrade", "swfupload-queue", "swfupload-handlers", "jquery", "jquery-form", "jquery-color", "jquery-masonry", "jquery-ui-core", "jquery-ui-widget", "jquery-ui-mouse", "jquery-ui-accordion", "jquery-ui-autocomplete", "jquery-ui-slider", "jquery-ui-progressbar", "jquery-ui-tabs", "jquery-ui-sortable", "jquery-ui-draggable", "jquery-ui-droppable", "jquery-ui-selectable", "jquery-ui-position", "jquery-ui-datepicker", "jquery-ui-tooltip", "jquery-ui-resizable", "jquery-ui-dialog", "jquery-ui-button", "jquery-effects-core", "jquery-effects-blind", "jquery-effects-bounce", "jquery-effects-clip", "jquery-effects-drop", "jquery-effects-explode", "jquery-effects-fade", "jquery-effects-fold", "jquery-effects-highlight", "jquery-effects-pulsate", "jquery-effects-scale", "jquery-effects-shake", "jquery-effects-slide", "jquery-effects-transfer", "wp-mediaelement", "schedule", "suggest", "thickbox", "hoverIntent", "jquery-hotkeys", "sack", "quicktags", "iris", "farbtastic", "colorpicker", "tiny_mce", "autosave", "wp-ajax-response", "wp-lists", "common", "editorremov", "editor-functions", "ajaxcat", "admin-categories", "admin-tags", "admin-custom-fields", "password-strength-meter", "admin-comments", "admin-users", "admin-forms", "xfn", "upload", "postbox", "slug", "post", "page", "link", "comment", "comment-reply", "admin-gallery", "media-upload", "admin-widgets", "word-count", "theme-preview", "json2", "plupload", "plupload-all", "plupload-html4", "plupload-html5", "plupload-flash", "plupload-silverlight", "underscore", "backbone");
|
97 |
+
|
98 |
+
|
99 |
+
foreach ($scripts_queued as $key => $value) {
|
100 |
+
//echo $key . $value;
|
101 |
+
if (!in_array($value, $inbound_white_list) && !in_array($value, $wp_core_scripts)){
|
102 |
+
wp_dequeue_script( $value );
|
103 |
+
//echo $key . $value;
|
104 |
+
}
|
105 |
+
}
|
106 |
+
}
|
107 |
+
|
108 |
+
static function return_inbound_now_screens(){
|
109 |
+
$inbound_screens = array(
|
110 |
+
'wp-lead_page_wpleads_global_settings',
|
111 |
+
'wp-lead_page_lead_management',
|
112 |
+
'edit-list',
|
113 |
+
'edit-wp-lead',
|
114 |
+
'wp-lead',
|
115 |
+
'edit-wplead_list_category',
|
116 |
+
'edit-inbound-forms',
|
117 |
+
'inbound-forms',
|
118 |
+
'edit-landing-page',
|
119 |
+
'landing-page',
|
120 |
+
'edit-landing_page_category',
|
121 |
+
'landing-page_page_lp_manage_templates',
|
122 |
+
'landing-page_page_lp_global_settings',
|
123 |
+
'landing-page_page_lp_store',
|
124 |
+
'edit-wp-call-to-action',
|
125 |
+
'edit-wp_call_to_action_category',
|
126 |
+
'wp-call-to-action',
|
127 |
+
'wp-call-to-action_page_wp_cta_manage_templates',
|
128 |
+
'wp-call-to-action_page_wp_cta_global_settings',
|
129 |
+
);
|
130 |
+
// add filter
|
131 |
+
return $inbound_screens;
|
132 |
+
}
|
133 |
+
}
|
134 |
+
}
|
shared/classes/debug.class.php
ADDED
@@ -0,0 +1,379 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/* Inbound Now Debug Class
|
3 |
+
*
|
4 |
+
* This class enabled users to dequeue third party javascript from pages to stop JS errors
|
5 |
+
*/
|
6 |
+
|
7 |
+
if (!defined('INBOUND_CLASS_URL'))
|
8 |
+
define('INBOUND_CLASS_URL', plugin_dir_url(__FILE__));
|
9 |
+
|
10 |
+
//update_option( 'inbound_global_dequeue', "" );
|
11 |
+
/*
|
12 |
+
$global_array = get_option( 'inbound_global_dequeue' );
|
13 |
+
print_r($global_array);
|
14 |
+
/**/
|
15 |
+
|
16 |
+
if (!class_exists('InboundDebugScripts')) {
|
17 |
+
class InboundDebugScripts {
|
18 |
+
static $add_debug;
|
19 |
+
|
20 |
+
/* Contruct
|
21 |
+
* --------------------------------------------------------- */
|
22 |
+
static function init() {
|
23 |
+
self::$add_debug = true;
|
24 |
+
//add_action('wp_loaded', array(__CLASS__, 'inbound_check_for_error'));
|
25 |
+
//add_action('wp_footer', array(__CLASS__, 'display_errors'));
|
26 |
+
//add_action('init', array(__CLASS__, 'admin_display_errors'));
|
27 |
+
add_action('wp_enqueue_scripts', array(__CLASS__, 'inbound_kill_bogus_scripts'), 100);
|
28 |
+
add_action('wp_enqueue_scripts', array(__CLASS__, 'inbound_compatibilities'), 101);
|
29 |
+
add_action('admin_enqueue_scripts', array(__CLASS__, 'inbound_compatibilities'), 101);
|
30 |
+
add_action('admin_enqueue_scripts', array(__CLASS__, 'inbound_kill_bogus_admin_scripts'), 100);
|
31 |
+
add_action('wp_ajax_inbound_dequeue_js', array(__CLASS__, 'inbound_dequeue_js'));
|
32 |
+
add_action('wp_ajax_nopriv_inbound_dequeue_js', array(__CLASS__, 'inbound_dequeue_js'));
|
33 |
+
add_action('wp_ajax_inbound_dequeue_admin_js', array(__CLASS__, 'inbound_dequeue_admin_js'));
|
34 |
+
add_action('wp_ajax_nopriv_inbound_dequeue_admin_js', array(__CLASS__, 'inbound_dequeue_admin_js'));
|
35 |
+
if (isset($_GET['inbound_js'])){
|
36 |
+
add_action('wp_enqueue_scripts', array(__CLASS__, 'run_debug_script'), 102);
|
37 |
+
add_action('admin_enqueue_scripts', array(__CLASS__, 'run_debug_script'), 102);
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
+
// dequeue all js and set first script, then requeue scripts
|
42 |
+
static function run_debug_script() {
|
43 |
+
global $wp_scripts;
|
44 |
+
|
45 |
+
if ( !empty( $wp_scripts->queue ) ) {
|
46 |
+
$store = $wp_scripts->queue; // store the scripts
|
47 |
+
foreach ( $wp_scripts->queue as $handle ) {
|
48 |
+
wp_dequeue_script( $handle );
|
49 |
+
}
|
50 |
+
//wp_enqueue_script( 'jquery' );
|
51 |
+
wp_register_script('inbound-debug', WP_CTA_URLPATH . 'shared/classes/js/debug.js', array('jquery'));
|
52 |
+
wp_enqueue_script( 'inbound-debug' );
|
53 |
+
|
54 |
+
foreach ( $store as $handle ) {
|
55 |
+
wp_enqueue_script( $handle );
|
56 |
+
}
|
57 |
+
}
|
58 |
+
|
59 |
+
}
|
60 |
+
|
61 |
+
static function inbound_dequeue_js() {
|
62 |
+
if ( ! self::$add_debug )
|
63 |
+
return;
|
64 |
+
|
65 |
+
// Post Values
|
66 |
+
$post_id = (isset( $_POST['post_id'] )) ? $_POST['post_id'] : "";
|
67 |
+
$the_script = (isset( $_POST['the_script'] )) ? $_POST['the_script'] : "";
|
68 |
+
$status = (isset( $_POST['status'] )) ? $_POST['status'] : "";
|
69 |
+
$admin_screen = (isset( $_POST['admin_screen'] )) ? $_POST['admin_screen'] : "";
|
70 |
+
|
71 |
+
/* Store Script Data to Post */
|
72 |
+
$script_data = get_post_meta( $post_id, 'inbound_dequeue_js', TRUE );
|
73 |
+
$script_data = json_decode($script_data,true);
|
74 |
+
if(is_array($script_data)) {
|
75 |
+
|
76 |
+
if($status === 'off') {
|
77 |
+
// add or remove from list
|
78 |
+
$script_data[$the_script] = $status;
|
79 |
+
} else {
|
80 |
+
unset($script_data[$the_script]);
|
81 |
+
}
|
82 |
+
|
83 |
+
} else {
|
84 |
+
// Create the first item in array
|
85 |
+
if($status === 'off') {
|
86 |
+
$script_data[$the_script] = $status;
|
87 |
+
}
|
88 |
+
}
|
89 |
+
$script_save = json_encode($script_data);
|
90 |
+
|
91 |
+
update_post_meta( $post_id, 'inbound_dequeue_js', $script_save );
|
92 |
+
|
93 |
+
// Set global option inbound_global_dequeue_js
|
94 |
+
|
95 |
+
$output = array('encode'=> $script_save );
|
96 |
+
|
97 |
+
echo json_encode($output,JSON_FORCE_OBJECT);
|
98 |
+
wp_die();
|
99 |
+
}
|
100 |
+
|
101 |
+
static function inbound_dequeue_admin_js() {
|
102 |
+
if ( ! self::$add_debug )
|
103 |
+
return;
|
104 |
+
|
105 |
+
// Post Values
|
106 |
+
$post_id = (isset( $_POST['post_id'] )) ? $_POST['post_id'] : "";
|
107 |
+
$the_script = (isset( $_POST['the_script'] )) ? $_POST['the_script'] : "";
|
108 |
+
$status = (isset( $_POST['status'] )) ? $_POST['status'] : "";
|
109 |
+
$admin_screen = (isset( $_POST['admin_screen'] )) ? $_POST['admin_screen'] : "";
|
110 |
+
|
111 |
+
/* Store Script Data to Post */
|
112 |
+
$script_data = get_option( 'inbound_global_dequeue' );
|
113 |
+
|
114 |
+
if(is_array($script_data)) {
|
115 |
+
|
116 |
+
if($status === 'off') {
|
117 |
+
// add or remove from list
|
118 |
+
$script_data[$the_script] = $admin_screen;
|
119 |
+
} else {
|
120 |
+
unset($script_data[$the_script]);
|
121 |
+
}
|
122 |
+
|
123 |
+
} else {
|
124 |
+
// Create the first item in array
|
125 |
+
if($status === 'off') {
|
126 |
+
$script_data[$the_script] = $admin_screen;
|
127 |
+
}
|
128 |
+
}
|
129 |
+
update_option( 'inbound_global_dequeue', $script_data );
|
130 |
+
|
131 |
+
// Set global option inbound_global_dequeue_js
|
132 |
+
|
133 |
+
$output = array('encode'=> $script_data );
|
134 |
+
|
135 |
+
echo json_encode($output,JSON_FORCE_OBJECT);
|
136 |
+
wp_die();
|
137 |
+
}
|
138 |
+
|
139 |
+
static function wp_core_script_whitelist() {
|
140 |
+
// Wordpress Core Scripts List
|
141 |
+
$wp_core_scripts = array("jcrop", "swfobject", "swfupload", "swfupload-degrade", "swfupload-queue", "swfupload-handlers", "jquery", "jquery-form", "jquery-color", "jquery-masonry", "jquery-ui-core", "jquery-ui-widget", "jquery-ui-mouse", "jquery-ui-accordion", "jquery-ui-autocomplete", "jquery-ui-slider", "jquery-ui-progressbar", "jquery-ui-tabs", "jquery-ui-sortable", "jquery-ui-draggable", "jquery-ui-droppable", "jquery-ui-selectable", "jquery-ui-position", "jquery-ui-datepicker", "jquery-ui-tooltip", "jquery-ui-resizable", "jquery-ui-dialog", "jquery-ui-button", "jquery-effects-core", "jquery-effects-blind", "jquery-effects-bounce", "jquery-effects-clip", "jquery-effects-drop", "jquery-effects-explode", "jquery-effects-fade", "jquery-effects-fold", "jquery-effects-highlight", "jquery-effects-pulsate", "jquery-effects-scale", "jquery-effects-shake", "jquery-effects-slide", "jquery-effects-transfer", "wp-mediaelement", "schedule", "suggest", "thickbox", "hoverIntent", "jquery-hotkeys", "sack", "quicktags", "iris", "farbtastic", "colorpicker", "tiny_mce", "autosave", "wp-ajax-response", "wp-lists", "common", "editorremov", "editor-functions", "ajaxcat", "admin-categories", "admin-tags", "admin-custom-fields", "password-strength-meter", "admin-comments", "admin-users", "admin-forms", "xfn", "upload", "postbox", "slug", "post", "page", "link", "comment", "comment-reply", "admin-gallery", "media-upload", "admin-widgets", "word-count", "theme-preview", "json2", "plupload", "plupload-all", "plupload-html4", "plupload-html5", "plupload-flash", "plupload-silverlight", "underscore", "backbone", 'admin-bar', 'media-editor', 'svg-painter', 'wp-auth-check', 'editor', 'utils', 'customize-controls', 'plugin-install', 'customize-loader', 'dashboard');
|
142 |
+
|
143 |
+
// add filter;
|
144 |
+
|
145 |
+
return $wp_core_scripts;
|
146 |
+
}
|
147 |
+
|
148 |
+
static function inbound_now_script_whitelist() {
|
149 |
+
global $wp_scripts;
|
150 |
+
// Match our plugins and whitelist them
|
151 |
+
$registered_scripts = $wp_scripts->registered;
|
152 |
+
$inbound_white_list = array();
|
153 |
+
foreach ($registered_scripts as $handle) {
|
154 |
+
if(preg_match("/\/plugins\/leads\//", $handle->src)) {
|
155 |
+
//echo $handle->handle;
|
156 |
+
$inbound_white_list[] = $handle->handle;
|
157 |
+
}
|
158 |
+
if(preg_match("/\/plugins\/cta\//", $handle->src)) {
|
159 |
+
//echo $handle->handle;
|
160 |
+
$inbound_white_list[]= $handle->handle;
|
161 |
+
}
|
162 |
+
if(preg_match("/\/plugins\/landing-pages\//", $handle->src)) {
|
163 |
+
//echo $handle->handle;
|
164 |
+
$inbound_white_list[]= $handle->handle;
|
165 |
+
}
|
166 |
+
}
|
167 |
+
//print_r($inbound_white_list);
|
168 |
+
return $inbound_white_list;
|
169 |
+
}
|
170 |
+
// Destroy all bad frontend scripts
|
171 |
+
static function inbound_kill_bogus_scripts() {
|
172 |
+
if (!isset($_GET['inbound-dequeue-scripts'])) {
|
173 |
+
global $wp_scripts, $wp_query;
|
174 |
+
$script_list = $wp_scripts->queue; // All enqueued scripts
|
175 |
+
$current_page_id = $wp_query->get_queried_object_id();
|
176 |
+
$script_data = get_post_meta( $current_page_id , 'inbound_dequeue_js', TRUE );
|
177 |
+
$script_data = json_decode($script_data,true);
|
178 |
+
|
179 |
+
$inbound_white_list = self::inbound_now_script_whitelist();
|
180 |
+
$wp_core_scripts = self::wp_core_script_whitelist();
|
181 |
+
|
182 |
+
// dequeue frontent scripts
|
183 |
+
foreach ($script_list as $key => $value) {
|
184 |
+
if (!in_array($value, $inbound_white_list) && !in_array($value, $wp_core_scripts)){
|
185 |
+
// Kill bad scripts
|
186 |
+
if (isset($script_data[$value]) && in_array($script_data[$value], $script_data)) {
|
187 |
+
wp_dequeue_script( $value ); // Kill bad script
|
188 |
+
}
|
189 |
+
}
|
190 |
+
}
|
191 |
+
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
// Destroy all bad admin scripts
|
196 |
+
static function inbound_kill_bogus_admin_scripts() {
|
197 |
+
if (!isset($_GET['inbound-dequeue-scripts'])) {
|
198 |
+
// dequeue admin scripts
|
199 |
+
$screen = get_current_screen();
|
200 |
+
|
201 |
+
$array = array('load-qtip' => 'wp-call-to-action');
|
202 |
+
//update_option( 'inbound_global_dequeue', $array );
|
203 |
+
$global_array = get_option( 'inbound_global_dequeue' );
|
204 |
+
//print_r($global_array);
|
205 |
+
if (is_array($global_array)) {
|
206 |
+
foreach ($global_array as $key => $value) {
|
207 |
+
if ( $screen->id === $value) {
|
208 |
+
wp_dequeue_script( $key );
|
209 |
+
}
|
210 |
+
}
|
211 |
+
}
|
212 |
+
}
|
213 |
+
}
|
214 |
+
|
215 |
+
static function inbound_compatibilities() {
|
216 |
+
|
217 |
+
if (isset($_GET['inbound-dequeue-scripts']) && current_user_can( 'manage_options' ) ) {
|
218 |
+
|
219 |
+
global $wp_query;
|
220 |
+
$current_page_id = $wp_query->get_queried_object_id();
|
221 |
+
$global_array = get_option( 'inbound_global_dequeue' );
|
222 |
+
if( is_admin() ) {
|
223 |
+
global $post;
|
224 |
+
$screen = get_current_screen();
|
225 |
+
$current = $screen->id;
|
226 |
+
$page_id = (isset($post->ID)) ? $post->ID : '';
|
227 |
+
} else {
|
228 |
+
$current = '';
|
229 |
+
$screen = '';
|
230 |
+
$page_id = $current_page_id;
|
231 |
+
}
|
232 |
+
|
233 |
+
//show_admin_bar( false );
|
234 |
+
wp_enqueue_script('inbound-dequeue-scripts', INBOUND_CLASS_URL . 'js/inbound-dequeue-scripts.js', array( 'jquery' ));
|
235 |
+
wp_localize_script( 'inbound-dequeue-scripts' , 'inbound_debug' , array( 'admin_url' => admin_url( 'admin-ajax.php' ), 'admin_screen' => $current, 'page_id' => $page_id));
|
236 |
+
|
237 |
+
global $wp_scripts;
|
238 |
+
|
239 |
+
$scripts_registers = $wp_scripts->registered;
|
240 |
+
//echo "<pre>";
|
241 |
+
//print_r($scripts_registers);
|
242 |
+
//echo $scripts_registers['common']->src;
|
243 |
+
|
244 |
+
|
245 |
+
$script_list = $wp_scripts->queue; // All enqueued scripts
|
246 |
+
$inbound_white_list = self::inbound_now_script_whitelist();
|
247 |
+
$wp_core_scripts = self::wp_core_script_whitelist();
|
248 |
+
// TURN OFF ALL OTHER SCRIPTS FOR DISABLING
|
249 |
+
$count = 0;
|
250 |
+
foreach ($script_list as $key => $value) {
|
251 |
+
// echo $key . $value;
|
252 |
+
if (!in_array($value, $inbound_white_list) && !in_array($value, $wp_core_scripts)){
|
253 |
+
wp_dequeue_script( $value );
|
254 |
+
$count++;
|
255 |
+
}
|
256 |
+
|
257 |
+
}
|
258 |
+
// If no scripts third party enqueued scripts leave
|
259 |
+
|
260 |
+
/* echo "<pre>";
|
261 |
+
print_r($wp_scripts->queue);
|
262 |
+
echo "</pre>"; */
|
263 |
+
|
264 |
+
echo '<style type="text/css" media="screen">
|
265 |
+
#launch-feedback {
|
266 |
+
display:none;
|
267 |
+
}
|
268 |
+
#group{text-align: left;border-bottom: 1px solid #fff;position:relative;margin:0 auto;padding:6px 10px 10px;background-image:linear-gradient(top,rgba(255,255,255,.1),rgba(0,0,0,.1));background-color:#555;width:300px}#group:after{content:" ";position:absolute;z-index:1;top:0;left:0;right:0;bottom:0;border-radius:5px}.switch{margin: 0px;position:relative;border:0;padding:0;width:245px;font-family:helvetica;font-weight:700;font-size:22px;color:#222;text-shadow:0 1px 0 rgba(255,255,255,.3)}.switch legend{float:left;width: 98px;padding:7px 10% 3px 0;text-align:left;}.switch input{position:absolute;opacity:0}.switch legend:after{content:"";position:absolute;top:0;left:50%;z-index:0;width:50%;height:100%;padding:2px;background-color:#222;border-radius:3px;box-shadow:inset -1px 2px 5px rgba(0,0,0,.8),0 1px 0 rgba(255,255,255,.2)}.switch label{position:relative;z-index:2;float:left;width:25%;margin-top:2px;padding:5px 0 3px;text-align:center;color:#64676b;text-shadow:0 1px 0 #000;cursor:pointer;transition:color 0s ease .1s}.switch input:checked+label{color:#fff}.switch input:focus+label{outline:0}.switch .switch-button{clear:both;position:absolute;top:-1px;left:50%;z-index:1;width:25%;height:100%;margin:2px;background-color:#70c66b;background-image:linear-gradient(top,rgba(255,255,255,.2),rgba(0,0,0,0));border-radius:3px;box-shadow:0 0 0 2px #70c66b,-2px 3px 2px #000;transition:all .3s ease-out}.switch .switch-button:after{content:" ";position:absolute;z-index:1;top:0;left:0;right:0;bottom:0;border-radius:3px;border:1px dashed #fff}#inbound-dequeue-id{display:none}.switch input:last-of-type:checked~.switch-button{left:75%}.switch .switch-button.status-off{background-color:red;box-shadow:0 0 0 3px red,-2px 3px 5px #000}.switch label.turn-on{color:#fff}
|
269 |
+
.script-info {padding-left:5px; position: absolute; z-index:999999999;}
|
270 |
+
.debug-plugin-name { font-size:13px; color:#fff; text-shadow:none; padding-bottom: 6px;
|
271 |
+
display: inline-block; }
|
272 |
+
.debug-plugin-name span.debug-head, .debug-script-head {color:#ccc; width: 45px;
|
273 |
+
display: inline-block;}
|
274 |
+
.js-title { display:block; margin-bottom: 7px; color:#fff;}
|
275 |
+
.fa-info-circle:before{ content: "\f05a"; font-family: FontAwesome !important; font-style:normal;}
|
276 |
+
#group:last-of-type {
|
277 |
+
padding-bottom:80px;
|
278 |
+
}
|
279 |
+
#main-debug-title {
|
280 |
+
font-family: helvetica;
|
281 |
+
font-weight: 700;
|
282 |
+
font-size: 22px;
|
283 |
+
color: #222;
|
284 |
+
background: #ccc;
|
285 |
+
padding: 10px;
|
286 |
+
text-align: center;
|
287 |
+
text-shadow: 0 1px 0 rgba(255,255,255,.3);
|
288 |
+
}
|
289 |
+
#no-js-to-turn-off {width: 286px;}
|
290 |
+
#no-js-to-turn-off span {font-size:22px; line-height:25px; padding:10px; display:inline-block;}
|
291 |
+
#debug-close-link { color:red; float:right; font-size:10px; text-decoration:none;}
|
292 |
+
</style>';
|
293 |
+
|
294 |
+
$script_data = get_post_meta( $current_page_id , 'inbound_dequeue_js', TRUE );
|
295 |
+
$script_data = json_decode($script_data,true);
|
296 |
+
$close_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
297 |
+
$close_link = str_replace(array("&inbound-dequeue-scripts", "?inbound-dequeue-scripts"), "", $close_link);
|
298 |
+
|
299 |
+
echo '<div id="inbound-fix-page" class="'.$current_page_id.'" data-page-id="'.$page_id.'" data-admin-screen="'.$current.'" style="position:fixed; right:0px; padding-bottom: 80px; background-color: #555; overflow:auto; height: 100%; top: 32px; background:#fff; border: 1px solid; z-index: 999999999999; line-height: 1; width: 317px;">';
|
300 |
+
echo "<div id='main-debug-title'>Turn off Javascript<a id='debug-close-link' href='".$close_link."'>Close</a></div>";
|
301 |
+
if ($count === 0) {
|
302 |
+
echo "<div id='no-js-to-turn-off'><span style=''>No javascript files found to dequeue</span></div></div>";
|
303 |
+
return;
|
304 |
+
}
|
305 |
+
echo "<span id='inbound-dequeue-id'>".$current_page_id."</span>";
|
306 |
+
|
307 |
+
foreach ($script_list as $key => $value) {
|
308 |
+
if (!in_array($value, $inbound_white_list) && !in_array($value, $wp_core_scripts)){
|
309 |
+
$checked = "";
|
310 |
+
$status_class = "";
|
311 |
+
// Kill bad frontend script
|
312 |
+
if (isset($script_data[$value]) && in_array($script_data[$value], $script_data)){
|
313 |
+
$checked = "checked";
|
314 |
+
$status_class = "status-off";
|
315 |
+
wp_dequeue_script( $value ); // Kill bad script
|
316 |
+
}
|
317 |
+
// Kill bad admin script
|
318 |
+
if (is_array($global_array)) {
|
319 |
+
if (is_admin() && array_key_exists($value, $global_array)) {
|
320 |
+
|
321 |
+
if ($current === $global_array[$value] ) {
|
322 |
+
$checked = "checked";
|
323 |
+
$status_class = "status-off";
|
324 |
+
wp_dequeue_script( $value ); // Kill bad script
|
325 |
+
}
|
326 |
+
}
|
327 |
+
}
|
328 |
+
|
329 |
+
$actual_link = $scripts_registers[$value]->src;
|
330 |
+
str_replace("?frontend=false", "", $actual_link);
|
331 |
+
preg_match('/plugins\/([^\/]+?)\/(?:[^\/]+\/)?(.+)/', $actual_link, $matches);
|
332 |
+
preg_match('/themes\/([^\/]+?)\/(?:[^\/]+\/)?(.+)/', $actual_link, $matches_two);
|
333 |
+
|
334 |
+
$name_of_file = (isset($matches_two[1])) ? "<span class='debug-head'>Theme:</span> " . $matches_two[1] : '';
|
335 |
+
if ($name_of_file === "") {
|
336 |
+
$name_of_file = (isset($matches[1])) ? "<span class='debug-head'>Plugin:</span> " . $matches[1] : '<span class="debug-head">From:</span> Wordpress Core Script <span style="color:#db3d3d; font-size:12px;">(Don\'t turn off)</span>';
|
337 |
+
}
|
338 |
+
|
339 |
+
|
340 |
+
echo '<div id="group">';
|
341 |
+
echo '<span class="debug-plugin-name">'.$name_of_file.'</span>';
|
342 |
+
echo "<div class='js-title'><span class='debug-script-head'>Script:</span> ". $value ."<span title='".$scripts_registers[$value]->src."' class='script-info'><i class='fa fa-info-circle'></i></span></div>";
|
343 |
+
echo '<fieldset class="switch" id="'.$value.'">
|
344 |
+
<legend>Status:</legend>
|
345 |
+
|
346 |
+
<input id="'.$value.'-on" name="'.$value.'-status" type="radio" '.$checked.'>
|
347 |
+
<label for="'.$value.'-on" class="turn-on">On</label>
|
348 |
+
|
349 |
+
<input id="'.$value.'-off" name="'.$value.'-status" type="radio" '.$checked.'>
|
350 |
+
<label for="'.$value.'-off" class="turn-off">Off</label>
|
351 |
+
|
352 |
+
<span class="switch-button '.$status_class.'"></span>
|
353 |
+
</fieldset>
|
354 |
+
|
355 |
+
</div>';
|
356 |
+
}
|
357 |
+
}
|
358 |
+
echo "</div>";
|
359 |
+
|
360 |
+
// This will control the dequing
|
361 |
+
/*
|
362 |
+
foreach ($scripts_queued as $key => $value) {
|
363 |
+
//echo $key . $value;
|
364 |
+
if (!in_array($value, $white_list_scripts)){
|
365 |
+
wp_dequeue_script( $value );
|
366 |
+
}
|
367 |
+
|
368 |
+
} */
|
369 |
+
}
|
370 |
+
|
371 |
+
}
|
372 |
+
}
|
373 |
+
}
|
374 |
+
/* Initialize InboundNow Debug
|
375 |
+
* --------------------------------------------------------- */
|
376 |
+
|
377 |
+
InboundDebugScripts::init();
|
378 |
+
|
379 |
+
?>
|
shared/classes/feedback.class.php
CHANGED
@@ -26,7 +26,7 @@ if (!class_exists('InboundFeedback')) {
|
|
26 |
$leads_status = FALSE; $landing_page_status = FALSE; $cta_status = FALSE;
|
27 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('leads/wordpress-leads.php')) {
|
28 |
$leads_status = TRUE;
|
29 |
-
$leads_version_number = defined( '
|
30 |
}
|
31 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('landing-pages/landing-pages.php')) {
|
32 |
$landing_page_status = TRUE;
|
26 |
$leads_status = FALSE; $landing_page_status = FALSE; $cta_status = FALSE;
|
27 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('leads/wordpress-leads.php')) {
|
28 |
$leads_status = TRUE;
|
29 |
+
$leads_version_number = defined( 'WPL_CURRENT_VERSION' ) ? 'v' . WPL_CURRENT_VERSION : '';
|
30 |
}
|
31 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('landing-pages/landing-pages.php')) {
|
32 |
$landing_page_status = TRUE;
|
shared/classes/form.class.php
CHANGED
@@ -399,7 +399,7 @@ class InboundForms {
|
|
399 |
}
|
400 |
|
401 |
//print_r($form_meta_data); exit;
|
402 |
-
|
403 |
|
404 |
$form_email = false;
|
405 |
foreach ($form_data as $key => $value) {
|
@@ -704,7 +704,7 @@ class InboundForms {
|
|
704 |
$content_post = get_post($my_postid);
|
705 |
$content = $content_post->post_content;
|
706 |
$confirm_subject = get_post_meta( $my_postid, 'inbound_confirmation_subject', TRUE );
|
707 |
-
|
708 |
$content = str_replace(']]>', ']]>', $content);
|
709 |
$confirm_email_message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
710 |
<html>
|
399 |
}
|
400 |
|
401 |
//print_r($form_meta_data); exit;
|
402 |
+
//print_r($form_data); exit;
|
403 |
|
404 |
$form_email = false;
|
405 |
foreach ($form_data as $key => $value) {
|
704 |
$content_post = get_post($my_postid);
|
705 |
$content = $content_post->post_content;
|
706 |
$confirm_subject = get_post_meta( $my_postid, 'inbound_confirmation_subject', TRUE );
|
707 |
+
$content = apply_filters('the_content', $content);
|
708 |
$content = str_replace(']]>', ']]>', $content);
|
709 |
$confirm_email_message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
710 |
<html>
|
shared/classes/js/debug.js
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
var errors = [];
|
2 |
+
window.onerror = function(msg, url, linenumber) {
|
3 |
+
//alert('Error message: '+msg+' URL: '+url+' Line Number: '+linenumber);
|
4 |
+
errors.push(msg + ' from ' + url + ' on line ' +linenumber);
|
5 |
+
}
|
6 |
+
jQuery(document).ready(function($) {
|
7 |
+
var url = window.location.href;
|
8 |
+
var match = url.match(/\?inbound_js/);
|
9 |
+
var param = "?";
|
10 |
+
if(match) {
|
11 |
+
var param = "?";
|
12 |
+
}
|
13 |
+
var url = url.replace('?inbound_js', '');
|
14 |
+
var url = url.replace('&inbound_js', '') + param + "inbound-dequeue-scripts";
|
15 |
+
setTimeout(function() {
|
16 |
+
document.write("<strong>Below are the javascript errors on this page</strong> " + "<br>");
|
17 |
+
/*if (errors.length === 0 ) {
|
18 |
+
document.write("<strong style="color:green;">None Detected</strong> " + "<br>");
|
19 |
+
}*/
|
20 |
+
document.write("<div id='errors-here'>");
|
21 |
+
for (var i=0,len=errors.length; i<len; i++){
|
22 |
+
document.write(i + 1 + ". " + errors[i] + "<br>");
|
23 |
+
}
|
24 |
+
document.write("</div>");
|
25 |
+
document.write("<div style=\'margin-top:20px;\'><strong>You need to fix these errors for things to work. There are 3 options:</strong> " + "<br>");
|
26 |
+
document.write("<strong>1. <a href=\'" +url+ "\'>Click here and dequeue (turn off) the broken javascript files</a> from this page.</strong> " + "<br>");
|
27 |
+
document.write("<strong>2. Contact the original developer of the plugin/theme causing the error.</strong> " + "<br>");
|
28 |
+
document.write("<strong>3. Disable the plugin or theme causing the conflict.</strong> " + "<br></div>");
|
29 |
+
}, 500);
|
30 |
+
setTimeout(function() {
|
31 |
+
var theDiv = document.getElementById("errors-here");
|
32 |
+
if(theDiv.innerHTML.length == 0){
|
33 |
+
theDiv.innerHTML = "<strong style='color:green;''>No JS Errors Detected</strong> " + "<br><br>" + "Sometimes errors are not detectatble by this handy tool, to double check please <a href='http://www.youtube.com/watch?v=x19VOytW9DM'>follow these instructions</a>";
|
34 |
+
theDiv.style.display="inline";
|
35 |
+
}
|
36 |
+
}, 1000);
|
37 |
+
});
|
shared/classes/js/inbound-dequeue-scripts.js
ADDED
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function($) {
|
2 |
+
jQuery("body").on('click', 'label', function () {
|
3 |
+
|
4 |
+
var status = jQuery(this).attr('class');
|
5 |
+
var status = status.replace('turn-', "");
|
6 |
+
if (status === 'off') {
|
7 |
+
jQuery(this).parent().find('.switch-button').addClass('status-off');
|
8 |
+
} else {
|
9 |
+
jQuery(this).parent().find('.switch-button').removeClass('status-off');
|
10 |
+
}
|
11 |
+
var the_script = jQuery(this).parent().attr('id');
|
12 |
+
var post_id = $('#inbound-dequeue-id').text();
|
13 |
+
var admin_screen = $('#inbound-fix-page').attr('data-admin-screen');
|
14 |
+
if (typeof (admin_screen) != "undefined" && admin_screen != null && admin_screen != "") {
|
15 |
+
var admin_screen = admin_screen;
|
16 |
+
var action = 'inbound_dequeue_admin_js'
|
17 |
+
} else {
|
18 |
+
var admin_screen = "";
|
19 |
+
var action = 'inbound_dequeue_js'
|
20 |
+
}
|
21 |
+
console.log(the_script);
|
22 |
+
console.log(status);
|
23 |
+
|
24 |
+
jQuery.ajax({
|
25 |
+
type: 'POST',
|
26 |
+
url: inbound_debug.admin_url,
|
27 |
+
context: this,
|
28 |
+
data: {
|
29 |
+
action: action,
|
30 |
+
post_id: post_id,
|
31 |
+
status: status,
|
32 |
+
the_script: the_script,
|
33 |
+
admin_screen: admin_screen
|
34 |
+
},
|
35 |
+
|
36 |
+
success: function (data) {
|
37 |
+
console.log("The script " + the_script + " has been turned " + status);
|
38 |
+
var self = this;
|
39 |
+
var str = data;
|
40 |
+
var obj = JSON.parse(str);
|
41 |
+
console.log(obj);
|
42 |
+
},
|
43 |
+
|
44 |
+
error: function (MLHttpRequest, textStatus, errorThrown) {
|
45 |
+
alert("Ajax not enabled");
|
46 |
+
}
|
47 |
+
});
|
48 |
+
});
|
49 |
+
});
|
shared/classes/menu.class.php
CHANGED
@@ -37,7 +37,7 @@ if (!class_exists('InboundMenu')) {
|
|
37 |
$leads_status = FALSE; $landing_page_status = FALSE; $cta_status = FALSE;
|
38 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('leads/wordpress-leads.php')) {
|
39 |
$leads_status = TRUE;
|
40 |
-
$leads_version_number = defined( '
|
41 |
}
|
42 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('landing-pages/landing-pages.php')) {
|
43 |
$landing_page_status = TRUE;
|
@@ -99,6 +99,7 @@ if (!class_exists('InboundMenu')) {
|
|
99 |
$inboundsupportsections = $prefix . 'inboundsupportsections'; // third level: support sections
|
100 |
$inboundsupportaccount = $prefix . 'inboundsupportaccount'; // third level: support user account
|
101 |
$inboundsites = $prefix . 'inboundsites'; // sub level: edd sites
|
|
|
102 |
$inboundsitesaccount = $prefix . 'inboundsitesaccount';
|
103 |
$inboundsitesextensions = $prefix . 'inboundsitesextensions'; // third level: edd extensions
|
104 |
$landingpages_menu = $prefix . 'landingpages';
|
@@ -219,6 +220,18 @@ if (!class_exists('InboundMenu')) {
|
|
219 |
'title' => __( 'Leads', 'edd-toolbar' ),
|
220 |
'href' => admin_url( 'edit.php?post_type=inbound-forms' ),
|
221 |
'meta' => array( 'target' => '', 'title' => _x( 'Manage Forms', 'edd-toolbar' ) )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
);
|
223 |
$menu_items['leads-view'] = array(
|
224 |
'parent' => $leads_menu,
|
@@ -226,9 +239,15 @@ if (!class_exists('InboundMenu')) {
|
|
226 |
'href' => admin_url( 'edit.php?post_type=wp-lead' ),
|
227 |
'meta' => array( 'target' => '', 'title' => __( 'View All Forms', 'edd-toolbar' ) )
|
228 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
229 |
$menu_items['leads-add'] = array(
|
230 |
'parent' => $leads_menu,
|
231 |
-
'title' => __( '
|
232 |
'href' => admin_url( 'post-new.php?post_type=wp-lead' ),
|
233 |
'meta' => array( 'target' => '', 'title' => __( 'Add new lead', 'edd-toolbar' ) )
|
234 |
);
|
@@ -396,6 +415,42 @@ if (!class_exists('InboundMenu')) {
|
|
396 |
'meta' => array( 'title' => $eddtb_edd_name_tooltip . ' ' . __( 'Plugin HQ', 'edd-toolbar' ) )
|
397 |
);
|
398 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
399 |
/** HQ: GitHub */
|
400 |
$inboundsecondary_menu_items['inboundsites-dev'] = array(
|
401 |
'parent' => $inboundsites,
|
@@ -539,7 +594,7 @@ if (!class_exists('InboundMenu')) {
|
|
539 |
'meta' => array( 'class' => 'ab-sub-secondary' )
|
540 |
) );
|
541 |
|
542 |
-
|
543 |
// Load grey secondary items
|
544 |
foreach ( $inboundsecondary_menu_items as $id => $inboundgroup_menu_item ) {
|
545 |
|
@@ -565,7 +620,7 @@ if (!class_exists('InboundMenu')) {
|
|
565 |
$wp_admin_bar->add_menu( $inboundgroup_menu_item );
|
566 |
|
567 |
} // end foreach EDD Group
|
568 |
-
|
569 |
|
570 |
/**
|
571 |
* Action Hook 'eddtb_custom_group_items'
|
@@ -591,7 +646,9 @@ if (!class_exists('InboundMenu')) {
|
|
591 |
} else {
|
592 |
$final_path = preg_replace("/\/shared\/inbound-shortcodes\//", "/", INBOUND_FORMS);
|
593 |
}
|
|
|
594 |
?>
|
|
|
595 |
<script type="text/javascript">
|
596 |
/* <![CDATA[ */
|
597 |
// Load inline scripts var freshthemes_theme_dir = "<?php // echo INBOUND_FORMS; ?>", test = "<?php // _e('Insert Shortcode', INBOUND_LABEL); ?>";
|
37 |
$leads_status = FALSE; $landing_page_status = FALSE; $cta_status = FALSE;
|
38 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('leads/wordpress-leads.php')) {
|
39 |
$leads_status = TRUE;
|
40 |
+
$leads_version_number = defined( 'WPL_CURRENT_VERSION' ) ? 'v' . WPL_CURRENT_VERSION : '';
|
41 |
}
|
42 |
if (function_exists( 'is_plugin_active' ) && is_plugin_active('landing-pages/landing-pages.php')) {
|
43 |
$landing_page_status = TRUE;
|
99 |
$inboundsupportsections = $prefix . 'inboundsupportsections'; // third level: support sections
|
100 |
$inboundsupportaccount = $prefix . 'inboundsupportaccount'; // third level: support user account
|
101 |
$inboundsites = $prefix . 'inboundsites'; // sub level: edd sites
|
102 |
+
$inbounddebug = $prefix . 'inbounddebug';
|
103 |
$inboundsitesaccount = $prefix . 'inboundsitesaccount';
|
104 |
$inboundsitesextensions = $prefix . 'inboundsitesextensions'; // third level: edd extensions
|
105 |
$landingpages_menu = $prefix . 'landingpages';
|
220 |
'title' => __( 'Leads', 'edd-toolbar' ),
|
221 |
'href' => admin_url( 'edit.php?post_type=inbound-forms' ),
|
222 |
'meta' => array( 'target' => '', 'title' => _x( 'Manage Forms', 'edd-toolbar' ) )
|
223 |
+
);
|
224 |
+
/** Leads search form */
|
225 |
+
$leads_search_text = "Search All Leads";
|
226 |
+
$menu_items['leads-search'] = array(
|
227 |
+
'parent' => $leads_menu,
|
228 |
+
'title' => '<form method="get" action="'.admin_url( 'edit.php?post_type=wp-lead' ).'" class=" " target="_blank">
|
229 |
+
<input type="text" placeholder="' . $leads_search_text . '" onblur="this.value=(this.value==\'\') ? \'' . $leads_search_text . '\' : this.value;" onfocus="this.value=(this.value==\'' . $leads_search_text . '\') ? \'\' : this.value;" value="' . $leads_search_text . '" name="s" value="' . esc_attr( 'Search Leads', 'edd-toolbar' ) . '" class="text eddtb-search-input" />
|
230 |
+
<input type="hidden" name="post_type" value="wp-lead" />
|
231 |
+
<input type="hidden" name="post_status" value="all" />
|
232 |
+
' . $eddtb_go_button,
|
233 |
+
'href' => false,
|
234 |
+
'meta' => array( 'target' => '', 'title' => _x( 'Search Leads', 'Translators: For the tooltip', 'edd-toolbar' ) )
|
235 |
);
|
236 |
$menu_items['leads-view'] = array(
|
237 |
'parent' => $leads_menu,
|
239 |
'href' => admin_url( 'edit.php?post_type=wp-lead' ),
|
240 |
'meta' => array( 'target' => '', 'title' => __( 'View All Forms', 'edd-toolbar' ) )
|
241 |
);
|
242 |
+
$menu_items['leads-list'] = array(
|
243 |
+
'parent' => $leads_menu,
|
244 |
+
'title' => __( 'View Lead Lists', LANDINGPAGES_TEXT_DOMAIN ),
|
245 |
+
'href' => admin_url( 'edit.php?post_type=list' ),
|
246 |
+
'meta' => array( 'target' => '', 'title' => __( 'View Lead Lists', 'edd-toolbar' ) )
|
247 |
+
);
|
248 |
$menu_items['leads-add'] = array(
|
249 |
'parent' => $leads_menu,
|
250 |
+
'title' => __( 'Create New Lead', LANDINGPAGES_TEXT_DOMAIN ),
|
251 |
'href' => admin_url( 'post-new.php?post_type=wp-lead' ),
|
252 |
'meta' => array( 'target' => '', 'title' => __( 'Add new lead', 'edd-toolbar' ) )
|
253 |
);
|
415 |
'meta' => array( 'title' => $eddtb_edd_name_tooltip . ' ' . __( 'Plugin HQ', 'edd-toolbar' ) )
|
416 |
);
|
417 |
|
418 |
+
/** Easy Digital Downloads HQ menu items */
|
419 |
+
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
420 |
+
|
421 |
+
$param = (preg_match("/\?/", $actual_link)) ? "&" : '?';
|
422 |
+
if (preg_match("/inbound-dequeue-scripts/", $actual_link)) {
|
423 |
+
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
424 |
+
} else {
|
425 |
+
$actual_link = $actual_link . $param .'inbound-dequeue-scripts';
|
426 |
+
}
|
427 |
+
$actual_link_two = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
428 |
+
$param_two = (preg_match("/\?/", $actual_link_two)) ? "&" : '?';
|
429 |
+
if (preg_match("/inbound_js/", $actual_link_two)) {
|
430 |
+
$actual_link_two = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
431 |
+
} else {
|
432 |
+
$actual_link_two = $actual_link_two . $param_two .'inbound_js';
|
433 |
+
}
|
434 |
+
$inboundsecondary_menu_items['inbounddebug'] = array(
|
435 |
+
'parent' => $inboundgroup,
|
436 |
+
'title' => __( '<span style="color:red;">Debug Tools</span>', 'edd-toolbar' ),
|
437 |
+
'href' => "#",
|
438 |
+
'meta' => ""
|
439 |
+
);
|
440 |
+
$inboundsecondary_menu_items['inbounddebug-checkjs'] = array(
|
441 |
+
'parent' => $inbounddebug,
|
442 |
+
'title' => __( 'Check for Javascript Errors', 'edd-toolbar' ),
|
443 |
+
'href' => $actual_link_two,
|
444 |
+
'meta' => array( 'title' => __( 'Click here to check javascript errors on this page', 'edd-toolbar' ) )
|
445 |
+
);
|
446 |
+
|
447 |
+
$inboundsecondary_menu_items['inbounddebug-turnoffscripts'] = array(
|
448 |
+
'parent' => $inbounddebug,
|
449 |
+
'title' => __( 'Remove Javascript Errors', 'edd-toolbar' ),
|
450 |
+
'href' => $actual_link,
|
451 |
+
'meta' => array( 'title' => __( 'Click here to remove broken javascript to fix issues', 'edd-toolbar' ) )
|
452 |
+
);
|
453 |
+
|
454 |
/** HQ: GitHub */
|
455 |
$inboundsecondary_menu_items['inboundsites-dev'] = array(
|
456 |
'parent' => $inboundsites,
|
594 |
'meta' => array( 'class' => 'ab-sub-secondary' )
|
595 |
) );
|
596 |
|
597 |
+
if (is_array($inboundsecondary_menu_items)) {
|
598 |
// Load grey secondary items
|
599 |
foreach ( $inboundsecondary_menu_items as $id => $inboundgroup_menu_item ) {
|
600 |
|
620 |
$wp_admin_bar->add_menu( $inboundgroup_menu_item );
|
621 |
|
622 |
} // end foreach EDD Group
|
623 |
+
}
|
624 |
|
625 |
/**
|
626 |
* Action Hook 'eddtb_custom_group_items'
|
646 |
} else {
|
647 |
$final_path = preg_replace("/\/shared\/inbound-shortcodes\//", "/", INBOUND_FORMS);
|
648 |
}
|
649 |
+
|
650 |
?>
|
651 |
+
|
652 |
<script type="text/javascript">
|
653 |
/* <![CDATA[ */
|
654 |
// Load inline scripts var freshthemes_theme_dir = "<?php // echo INBOUND_FORMS; ?>", test = "<?php // _e('Insert Shortcode', INBOUND_LABEL); ?>";
|
shared/docs/shortcodes.md
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
#Inbound Shortcodes
|
2 |
+
|
3 |
+
List Icons: http://www.inboundnow.com/create-awesome-unordered-lists-with-icons/
|
shared/inbound-shortcodes/css/frontend-render.css
CHANGED
@@ -23,6 +23,9 @@ padding-right: 5px;
|
|
23 |
.inbound-label.inbound-label-placeholder {
|
24 |
display: none;
|
25 |
}
|
|
|
|
|
|
|
26 |
.inbound-horizontal {
|
27 |
display: inline-block;
|
28 |
}
|
@@ -73,10 +76,15 @@ width: 99.2%;
|
|
73 |
margin: 10px 0;
|
74 |
max-width: 98%;
|
75 |
}
|
|
|
|
|
|
|
|
|
|
|
76 |
#inbound-form-wrapper input[type=text], #inbound-form-wrapper input[type=url], #inbound-form-wrapper input[type=email], #inbound-form-wrapper input[type=tel], #inbound-form-wrapper input[type=number], #inbound-form-wrapper input[type=password] {
|
77 |
width: 47%;
|
78 |
}
|
79 |
-
|
80 |
#inbound-form-wrapper .inbound-horizontal input[type=text], #inbound-form-wrapper .inbound-horizontal input[type=url], #inbound-form-wrapper .inbound-horizontal input[type=email], #inbound-form-wrapper .inbound-horizontal input[type=tel], #inbound-form-wrapper .inbound-horizontal input[type=number], #inbound-form-wrapper .inbound-horizontal input[type=password] {
|
81 |
width: 88%;
|
82 |
}
|
@@ -717,7 +725,7 @@ ul.tabs-nav li:last-child{
|
|
717 |
|
718 |
/* Content Box
|
719 |
* ----------------------------------------------------- */
|
720 |
-
.content-box{
|
721 |
background: #f2f2f2;
|
722 |
border: 1px solid #EBEBEA;
|
723 |
-webkit-box-shadow: inset 1px 1px 1px rgba(255,255,255,0.5);
|
@@ -728,31 +736,31 @@ ul.tabs-nav li:last-child{
|
|
728 |
position: relative;
|
729 |
text-shadow: 1px 1px 1px rgba(255,255,255,0.5);
|
730 |
}
|
731 |
-
.content-box > p:last-child{
|
732 |
margin-bottom: 0;
|
733 |
}
|
734 |
-
.content-box.blue{
|
735 |
background: #EEF9FC;
|
736 |
border: 1px solid #dfecf9;
|
737 |
}
|
738 |
-
.content-box.green{
|
739 |
background: #E9FFD6;
|
740 |
border: 1px solid #D4F2BB;
|
741 |
}
|
742 |
-
.content-box.red{
|
743 |
background: #FCE3E3;
|
744 |
border: 1px solid #fcd1d1;
|
745 |
}
|
746 |
-
.content-box.yellow{
|
747 |
background: #fcf7d1;
|
748 |
border: 1px solid #f2ebba;
|
749 |
}
|
750 |
-
.content-box h1,
|
751 |
-
.content-box h2,
|
752 |
-
.content-box h3,
|
753 |
-
.content-box h4,
|
754 |
-
.content-box h5,
|
755 |
-
.content-box h6{
|
756 |
margin-bottom: 10px;
|
757 |
}
|
758 |
|
@@ -1054,4 +1062,4 @@ color: #717171;
|
|
1054 |
-o-box-shadow: inset 0px 2px 3px #aaa, 0px 1px 0 #B5B5B5;
|
1055 |
-khtml-box-shadow: inset 0px 2px 3px #aaa, 0px 1px 0 #B5B5B5;
|
1056 |
box-shadow: inset 0px 2px 3px #AAA, 0px 1px 0 #B5B5B5;
|
1057 |
-
}
|
23 |
.inbound-label.inbound-label-placeholder {
|
24 |
display: none;
|
25 |
}
|
26 |
+
.inbound-label.inbound-label-placeholder.inbound-input-dropdown {
|
27 |
+
display: block;
|
28 |
+
}
|
29 |
.inbound-horizontal {
|
30 |
display: inline-block;
|
31 |
}
|
76 |
margin: 10px 0;
|
77 |
max-width: 98%;
|
78 |
}
|
79 |
+
|
80 |
+
.inbound-field input[type=text], .inbound-field input[type=url], .inbound-field input[type=email], .inbound-field input[type=tel], .inbound-field input[type=number], .inbound-field input[type=password] {
|
81 |
+
width: 47%;
|
82 |
+
}
|
83 |
+
/*
|
84 |
#inbound-form-wrapper input[type=text], #inbound-form-wrapper input[type=url], #inbound-form-wrapper input[type=email], #inbound-form-wrapper input[type=tel], #inbound-form-wrapper input[type=number], #inbound-form-wrapper input[type=password] {
|
85 |
width: 47%;
|
86 |
}
|
87 |
+
*/
|
88 |
#inbound-form-wrapper .inbound-horizontal input[type=text], #inbound-form-wrapper .inbound-horizontal input[type=url], #inbound-form-wrapper .inbound-horizontal input[type=email], #inbound-form-wrapper .inbound-horizontal input[type=tel], #inbound-form-wrapper .inbound-horizontal input[type=number], #inbound-form-wrapper .inbound-horizontal input[type=password] {
|
89 |
width: 88%;
|
90 |
}
|
725 |
|
726 |
/* Content Box
|
727 |
* ----------------------------------------------------- */
|
728 |
+
.inbound-content-box{
|
729 |
background: #f2f2f2;
|
730 |
border: 1px solid #EBEBEA;
|
731 |
-webkit-box-shadow: inset 1px 1px 1px rgba(255,255,255,0.5);
|
736 |
position: relative;
|
737 |
text-shadow: 1px 1px 1px rgba(255,255,255,0.5);
|
738 |
}
|
739 |
+
.inbound-content-box > p:last-child{
|
740 |
margin-bottom: 0;
|
741 |
}
|
742 |
+
.inbound-content-box.blue{
|
743 |
background: #EEF9FC;
|
744 |
border: 1px solid #dfecf9;
|
745 |
}
|
746 |
+
.inbound-content-box.green{
|
747 |
background: #E9FFD6;
|
748 |
border: 1px solid #D4F2BB;
|
749 |
}
|
750 |
+
.inbound-content-box.red{
|
751 |
background: #FCE3E3;
|
752 |
border: 1px solid #fcd1d1;
|
753 |
}
|
754 |
+
.inbound-content-box.yellow{
|
755 |
background: #fcf7d1;
|
756 |
border: 1px solid #f2ebba;
|
757 |
}
|
758 |
+
.inbound-content-box h1,
|
759 |
+
.inbound-content-box h2,
|
760 |
+
.inbound-content-box h3,
|
761 |
+
.inbound-content-box h4,
|
762 |
+
.inbound-content-box h5,
|
763 |
+
.inbound-content-box h6{
|
764 |
margin-bottom: 10px;
|
765 |
}
|
766 |
|
1062 |
-o-box-shadow: inset 0px 2px 3px #aaa, 0px 1px 0 #B5B5B5;
|
1063 |
-khtml-box-shadow: inset 0px 2px 3px #aaa, 0px 1px 0 #B5B5B5;
|
1064 |
box-shadow: inset 0px 2px 3px #AAA, 0px 1px 0 #B5B5B5;
|
1065 |
+
}
|
shared/inbound-shortcodes/images/facebook@2x.png
ADDED
Binary file
|
shared/inbound-shortcodes/images/google@2x.png
ADDED
Binary file
|
shared/inbound-shortcodes/images/linkedin@2x.png
ADDED
Binary file
|
shared/inbound-shortcodes/images/pinterest@2x.png
ADDED
Binary file
|
shared/inbound-shortcodes/images/twitter@2x.png
ADDED
Binary file
|
shared/inbound-shortcodes/inbound-shortcodes.php
CHANGED
@@ -4,98 +4,110 @@
|
|
4 |
//=============================================
|
5 |
// Define constants
|
6 |
//=============================================
|
7 |
-
if (!defined('INBOUND_FORMS'))
|
8 |
define('INBOUND_FORMS', plugin_dir_url(__FILE__));
|
9 |
-
|
10 |
-
if (!defined('INBOUND_FORMS_PATH'))
|
11 |
define('INBOUND_FORMS_PATH', plugin_dir_path(__FILE__));
|
12 |
-
|
13 |
-
if (!defined('INBOUND_FORMS_BASENAME'))
|
14 |
define('INBOUND_FORMS_BASENAME', plugin_basename(__FILE__));
|
15 |
-
|
16 |
-
if (!defined('INBOUND_FORMS_ADMIN'))
|
17 |
define('INBOUND_FORMS_ADMIN', get_bloginfo('url') . "/wp-admin");
|
18 |
-
}
|
19 |
|
20 |
-
if (!defined('INBOUND_LABEL'))
|
21 |
-
define( 'INBOUND_LABEL', str_replace( ' ', '_', strtolower( 'Inbound Now' ) ) );
|
22 |
-
|
23 |
|
24 |
require_once( 'shortcodes-includes.php' );
|
25 |
|
26 |
/* InboundNow Shortcodes Class
|
27 |
* --------------------------------------------------------- */
|
28 |
if (!class_exists('InboundShortcodes')) {
|
|
|
29 |
class InboundShortcodes {
|
30 |
static $add_script;
|
31 |
|
32 |
-
/* Contruct
|
33 |
-
|
34 |
static function init() {
|
|
|
35 |
self::$add_script = true;
|
36 |
add_action('admin_enqueue_scripts', array( __CLASS__, 'loads' ));
|
37 |
add_action('init', array( __CLASS__, 'shortcodes_tinymce' ));
|
|
|
38 |
add_action( 'wp_enqueue_scripts', array(__CLASS__, 'frontend_loads')); // load styles
|
39 |
add_shortcode('list', array(__CLASS__, 'inbound_shortcode_list'));
|
40 |
add_shortcode('button', array(__CLASS__, 'inbound_shortcode_button'));
|
41 |
add_shortcode('social_share', array(__CLASS__, 'inbound_shortcode_social_links'));
|
42 |
}
|
|
|
43 |
// Set Consistant File Paths for inbound now plugins
|
44 |
static function set_file_path(){
|
45 |
-
if (
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
|
|
|
|
51 |
}
|
52 |
return $final_path;
|
53 |
}
|
54 |
-
|
55 |
-
|
|
|
56 |
static function loads($hook) {
|
57 |
global $post;
|
58 |
$final_path = self::set_file_path();
|
59 |
-
if ( $hook == 'post.php' || $hook == 'post-new.php' || $hook == 'page-new.php' || $hook == 'page.php' )
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
}
|
100 |
}
|
101 |
|
@@ -215,7 +227,7 @@ class InboundShortcodes {
|
|
215 |
return $button;
|
216 |
}
|
217 |
static function inbound_shortcode_social_links( $atts, $content = null ) {
|
218 |
-
$final_path =
|
219 |
extract(shortcode_atts(array(
|
220 |
'style' => 'bar',
|
221 |
'align' => '',
|
@@ -246,8 +258,7 @@ class InboundShortcodes {
|
|
246 |
$alignment = 'inline-block';
|
247 |
$margin_setting = 'margin-right';
|
248 |
if($heading_align == 'inline' ){
|
249 |
-
$header_align = "display:inline-block; padding-right: 10px; height: 32px;
|
250 |
-
vertical-align: top;";
|
251 |
$float = "float: left;";
|
252 |
}
|
253 |
|
@@ -267,14 +278,35 @@ class InboundShortcodes {
|
|
267 |
$text = get_the_title();
|
268 |
}
|
269 |
|
270 |
-
$out =
|
271 |
-
$
|
272 |
-
|
273 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
274 |
width: 34px;
|
275 |
height: auto;
|
276 |
border: 0px;
|
277 |
}
|
|
|
|
|
|
|
278 |
.inbound-social-share-header {
|
279 |
vertical-align: middle;
|
280 |
}
|
@@ -296,7 +328,6 @@ class InboundShortcodes {
|
|
296 |
transition: all 100ms ease-in;
|
297 |
-webkit-transition: all 100ms ease-in;
|
298 |
-webkit-transform: scale3d(1, 1, 1);
|
299 |
-
|
300 |
}
|
301 |
a.mt-share-inline-circle-sm img {
|
302 |
width: 34px;
|
@@ -312,7 +343,6 @@ class InboundShortcodes {
|
|
312 |
border-bottom-right-radius: 50%;
|
313 |
border-bottom-left-radius: 50%;
|
314 |
'.$margin_setting.': 4px;
|
315 |
-
|
316 |
}
|
317 |
a.mt-share-inline-square-sm img {
|
318 |
width: 34px;
|
@@ -327,9 +357,7 @@ class InboundShortcodes {
|
|
327 |
border-top-right-radius: 2px;
|
328 |
border-bottom-right-radius: 2px;
|
329 |
border-bottom-left-radius: 2px;
|
330 |
-
'.$margin_setting.': 4px;
|
331 |
-
|
332 |
-
}
|
333 |
.mt-google:hover {
|
334 |
background-color: rgb(225, 95, 79);
|
335 |
}
|
@@ -392,47 +420,7 @@ class InboundShortcodes {
|
|
392 |
background-color: rgb(51, 51, 51);
|
393 |
transition: background-color 300ms ease-in;
|
394 |
-webkit-transition: background-color 300ms ease-in;
|
395 |
-
|
396 |
-
}
|
397 |
-
</style>';
|
398 |
-
if ($heading != ""){
|
399 |
-
$heading = "<span class='inbound-social-share-header' style='$header_align'>$heading</span>";
|
400 |
-
}
|
401 |
-
$out .= '<span class="inbound-social-share-bar-container">' . $heading . "<span style='$header_align'>";
|
402 |
-
if( $facebook ) {
|
403 |
-
$out .= '<a class="mt-facebook '.$class.'" style="'.$float.'"
|
404 |
-
href="https://www.facebook.com/sharer/sharer.php?u='.$link.'">
|
405 |
-
<img src="'.$final_path.'shared/inbound-shortcodes/images/facebook@2x.png">
|
406 |
-
</a>';
|
407 |
-
}
|
408 |
-
if( $twitter ) {
|
409 |
-
$out .= '
|
410 |
-
<a class="mt-twitter '.$class.'" style="'.$float.'"
|
411 |
-
href="http://twitter.com/intent/tweet?text='.$text.'&url='.$link.'" target="_blank">
|
412 |
-
<img src="'.$final_path.'shared/inbound-shortcodes/images/twitter@2x.png">
|
413 |
-
</a>';
|
414 |
-
}
|
415 |
-
if( $google_plus ) {
|
416 |
-
$out .= '<a class="mt-google '.$class.'" style="'.$float.'"
|
417 |
-
href="https://plus.google.com/share?url='.$link.'">
|
418 |
-
<img src="'.$final_path.'shared/inbound-shortcodes/images/google@2x.png">
|
419 |
-
</a>';
|
420 |
-
}
|
421 |
-
if( $linkedin ) {
|
422 |
-
$out .= ' <a class="mt-linkedin '.$class.'" style="'.$float.'"
|
423 |
-
href="http://www.linkedin.com/shareArticle?mini=true&url='.$link.'&summary='.$text.'">
|
424 |
-
<img src="'.$final_path.'shared/inbound-shortcodes/images/linkedin@2x.png">
|
425 |
-
</a>';
|
426 |
-
}
|
427 |
-
if( $pinterest ) {
|
428 |
-
$out .= '<a class="mt-pinterest '.$class.'" style="'.$float.'"
|
429 |
-
href="http://www.pinterest.com/pin/create/button/?url='.$link.'&media=&guid=1234&description='.$text.'">
|
430 |
-
<img src="'.$final_path.'shared/inbound-shortcodes/images/pinterest@2x.png">
|
431 |
-
</a>';
|
432 |
-
}
|
433 |
-
|
434 |
-
$out .= '</span></span>';
|
435 |
-
|
436 |
return $out;
|
437 |
}
|
438 |
static function inbound_shortcode_list( $atts, $content = null){
|
@@ -546,6 +534,7 @@ class InboundShortcodes {
|
|
546 |
}
|
547 |
|
548 |
return '<style type="text/css">
|
|
|
549 |
#inbound-list.class-'.$num.' li {
|
550 |
'.$final_text_color.'
|
551 |
list-style: none;
|
@@ -567,6 +556,11 @@ class InboundShortcodes {
|
|
567 |
text-align: center;
|
568 |
}
|
569 |
'.$column_css.'
|
|
|
|
|
|
|
|
|
|
|
570 |
</style>
|
571 |
<div id="inbound-list" class="inbound-list class-'.$num.' fa-list-'.$icon.'">
|
572 |
'. do_shortcode($content).'
|
@@ -694,4 +688,4 @@ class InboundShortcodes {
|
|
694 |
* --------------------------------------------------------- */
|
695 |
InboundShortcodes::init();
|
696 |
|
697 |
-
?>
|
4 |
//=============================================
|
5 |
// Define constants
|
6 |
//=============================================
|
7 |
+
if (!defined('INBOUND_FORMS'))
|
8 |
define('INBOUND_FORMS', plugin_dir_url(__FILE__));
|
9 |
+
|
10 |
+
if (!defined('INBOUND_FORMS_PATH'))
|
11 |
define('INBOUND_FORMS_PATH', plugin_dir_path(__FILE__));
|
12 |
+
|
13 |
+
if (!defined('INBOUND_FORMS_BASENAME'))
|
14 |
define('INBOUND_FORMS_BASENAME', plugin_basename(__FILE__));
|
15 |
+
|
16 |
+
if (!defined('INBOUND_FORMS_ADMIN'))
|
17 |
define('INBOUND_FORMS_ADMIN', get_bloginfo('url') . "/wp-admin");
|
|
|
18 |
|
19 |
+
if (!defined('INBOUND_LABEL'))
|
20 |
+
define( 'INBOUND_LABEL', str_replace( ' ', '_', strtolower( 'Inbound Now' ) ) );
|
21 |
+
|
22 |
|
23 |
require_once( 'shortcodes-includes.php' );
|
24 |
|
25 |
/* InboundNow Shortcodes Class
|
26 |
* --------------------------------------------------------- */
|
27 |
if (!class_exists('InboundShortcodes')) {
|
28 |
+
|
29 |
class InboundShortcodes {
|
30 |
static $add_script;
|
31 |
|
32 |
+
/* Contruct
|
33 |
+
* --------------------------------------------------------- */
|
34 |
static function init() {
|
35 |
+
|
36 |
self::$add_script = true;
|
37 |
add_action('admin_enqueue_scripts', array( __CLASS__, 'loads' ));
|
38 |
add_action('init', array( __CLASS__, 'shortcodes_tinymce' ));
|
39 |
+
|
40 |
add_action( 'wp_enqueue_scripts', array(__CLASS__, 'frontend_loads')); // load styles
|
41 |
add_shortcode('list', array(__CLASS__, 'inbound_shortcode_list'));
|
42 |
add_shortcode('button', array(__CLASS__, 'inbound_shortcode_button'));
|
43 |
add_shortcode('social_share', array(__CLASS__, 'inbound_shortcode_social_links'));
|
44 |
}
|
45 |
+
|
46 |
// Set Consistant File Paths for inbound now plugins
|
47 |
static function set_file_path(){
|
48 |
+
if (function_exists('is_plugin_active')) {
|
49 |
+
if (is_plugin_active('leads/wordpress-leads.php')) {
|
50 |
+
$final_path = WPL_URL . "/";
|
51 |
+
} else if (is_plugin_active('landing-pages/landing-pages.php')) {
|
52 |
+
$final_path = LANDINGPAGES_URLPATH;
|
53 |
+
} else if (is_plugin_active('cta/wordpress-cta.php')) {
|
54 |
+
$final_path = WP_CTA_URLPATH;
|
55 |
+
}
|
56 |
}
|
57 |
return $final_path;
|
58 |
}
|
59 |
+
|
60 |
+
/* Loads
|
61 |
+
* --------------------------------------------------------- */
|
62 |
static function loads($hook) {
|
63 |
global $post;
|
64 |
$final_path = self::set_file_path();
|
65 |
+
if ( $hook == 'post.php' || $hook == 'post-new.php' || $hook == 'page-new.php' || $hook == 'page.php' )
|
66 |
+
{
|
67 |
+
|
68 |
+
wp_enqueue_style('inbound-shortcodes', $final_path.'shared/inbound-shortcodes/css/shortcodes.css');
|
69 |
+
wp_enqueue_script('jquery-ui-sortable' );
|
70 |
+
wp_enqueue_script('inbound-shortcodes-plugins', $final_path.'shared/inbound-shortcodes/js/shortcodes-plugins.js');
|
71 |
+
|
72 |
+
if (isset($post) && post_type_supports( $post->post_type, 'editor') )
|
73 |
+
{
|
74 |
+
wp_enqueue_script('inbound-shortcodes', $final_path.'shared/inbound-shortcodes/js/shortcodes.js');
|
75 |
+
$form_id = (isset($_GET['post'])) ? $_GET['post'] : '';
|
76 |
+
wp_localize_script( 'inbound-shortcodes', 'inbound_shortcodes', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) , 'adminurl' => admin_url(), 'inbound_shortcode_nonce' => wp_create_nonce('inbound-shortcode-nonce') , 'form_id' => $form_id ) );
|
77 |
+
wp_enqueue_script('selectjs', $final_path.'shared/inbound-shortcodes/js/select2.min.js');
|
78 |
+
wp_enqueue_style('selectjs', $final_path.'shared/inbound-shortcodes/css/select2.css');
|
79 |
+
}
|
80 |
+
|
81 |
+
// Forms CPT only
|
82 |
+
if ( ( isset($post) && 'inbound-forms' === $post->post_type ) || ( isset($_GET['post_type']) && $_GET['post_type']==='inbound-forms' ) ) {
|
83 |
+
wp_enqueue_style('inbound-forms-css', $final_path.'shared/inbound-shortcodes/css/form-cpt.css');
|
84 |
+
wp_enqueue_script('inbound-forms-cpt-js', $final_path.'shared/inbound-shortcodes/js/form-cpt.js');
|
85 |
+
wp_localize_script( 'inbound-forms-cpt-js', 'inbound_forms', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'inbound_shortcode_nonce' => wp_create_nonce('inbound-shortcode-nonce'), 'form_cpt' => 'on' ) );
|
86 |
+
}
|
87 |
+
|
88 |
+
// Check for active plugins and localize
|
89 |
+
$plugins_loaded = array();
|
90 |
+
|
91 |
+
if (is_plugin_active('landing-pages/landing-pages.php')) {
|
92 |
+
array_push($plugins_loaded, "landing-pages");
|
93 |
+
}
|
94 |
+
|
95 |
+
if (is_plugin_active('cta/wordpress-cta.php')) {
|
96 |
+
array_push($plugins_loaded, "cta");
|
97 |
+
}
|
98 |
+
if (is_plugin_active('leads/wordpress-leads.php')) {
|
99 |
+
array_push($plugins_loaded, "leads");
|
100 |
+
}
|
101 |
+
|
102 |
+
wp_localize_script( 'inbound-shortcodes', 'inbound_load', array( 'image_dir' => $final_path.'shared/inbound-shortcodes/', 'inbound_plugins' => $plugins_loaded, 'pop_title' => 'Insert Shortcode' ));
|
103 |
+
|
104 |
+
if (isset($post)&&$post->post_type=='inbound-forms')
|
105 |
+
{
|
106 |
+
require_once( 'shortcodes-fields.php' );
|
107 |
+
add_action( 'admin_footer', array(__CLASS__, 'inbound_forms_header_area'));
|
108 |
+
}
|
109 |
+
|
110 |
+
//add_action('admin_head', array( __CLASS__, 'shortcodes_admin_head' ));
|
111 |
}
|
112 |
}
|
113 |
|
227 |
return $button;
|
228 |
}
|
229 |
static function inbound_shortcode_social_links( $atts, $content = null ) {
|
230 |
+
$final_path = INBOUND_FORMS;
|
231 |
extract(shortcode_atts(array(
|
232 |
'style' => 'bar',
|
233 |
'align' => '',
|
258 |
$alignment = 'inline-block';
|
259 |
$margin_setting = 'margin-right';
|
260 |
if($heading_align == 'inline' ){
|
261 |
+
$header_align = "display:inline-block; padding-right: 10px; height: 32px; vertical-align: top;";
|
|
|
262 |
$float = "float: left;";
|
263 |
}
|
264 |
|
278 |
$text = get_the_title();
|
279 |
}
|
280 |
|
281 |
+
$out = "";
|
282 |
+
if ($heading != ""){
|
283 |
+
$heading = "<span class='inbound-social-share-header' style='$header_align'>$heading</span>";
|
284 |
+
}
|
285 |
+
$out .= '<span class="inbound-social-share-bar-container">' . $heading;
|
286 |
+
if( $facebook ) {
|
287 |
+
$out .= '<a class="mt-facebook '.$class.'" style="'.$float.'" href="https://www.facebook.com/sharer/sharer.php?u='.$link.'"><img src="'.$final_path.'images/facebook@2x.png"></a>';
|
288 |
+
}
|
289 |
+
if( $twitter ) {
|
290 |
+
$out .= '<a class="mt-twitter '.$class.'" style="'.$float.'" href="http://twitter.com/intent/tweet?text='.$text.'&url='.$link.'" target="_blank"><img src="'.$final_path.'images/twitter@2x.png"></a>';
|
291 |
+
}
|
292 |
+
if( $google_plus ) {
|
293 |
+
$out .= '<a class="mt-google '.$class.'" style="'.$float.'" href="https://plus.google.com/share?url='.$link.'"><img src="'.$final_path.'images/google@2x.png"></a>';
|
294 |
+
}
|
295 |
+
if( $linkedin ) {
|
296 |
+
$out .= '<a class="mt-linkedin '.$class.'" style="'.$float.'" href="http://www.linkedin.com/shareArticle?mini=true&url='.$link.'&summary='.$text.'"><img src="'.$final_path.'images/linkedin@2x.png"></a>';
|
297 |
+
}
|
298 |
+
if( $pinterest ) {
|
299 |
+
$out .= '<a class="mt-pinterest '.$class.'" style="'.$float.'" href="http://www.pinterest.com/pin/create/button/?url='.$link.'&media=&guid=1234&description='.$text.'"><img src="'.$final_path.'images/pinterest@2x.png"></a>';
|
300 |
+
}
|
301 |
+
$out .= '</span>';
|
302 |
+
$out .= '<style type="text/css">a.mt-share-inline-bar-sm img {
|
303 |
width: 34px;
|
304 |
height: auto;
|
305 |
border: 0px;
|
306 |
}
|
307 |
+
.inbound-social-share-bar-container {
|
308 |
+
display: inline-block;
|
309 |
+
}
|
310 |
.inbound-social-share-header {
|
311 |
vertical-align: middle;
|
312 |
}
|
328 |
transition: all 100ms ease-in;
|
329 |
-webkit-transition: all 100ms ease-in;
|
330 |
-webkit-transform: scale3d(1, 1, 1);
|
|
|
331 |
}
|
332 |
a.mt-share-inline-circle-sm img {
|
333 |
width: 34px;
|
343 |
border-bottom-right-radius: 50%;
|
344 |
border-bottom-left-radius: 50%;
|
345 |
'.$margin_setting.': 4px;
|
|
|
346 |
}
|
347 |
a.mt-share-inline-square-sm img {
|
348 |
width: 34px;
|
357 |
border-top-right-radius: 2px;
|
358 |
border-bottom-right-radius: 2px;
|
359 |
border-bottom-left-radius: 2px;
|
360 |
+
'.$margin_setting.': 4px;}
|
|
|
|
|
361 |
.mt-google:hover {
|
362 |
background-color: rgb(225, 95, 79);
|
363 |
}
|
420 |
background-color: rgb(51, 51, 51);
|
421 |
transition: background-color 300ms ease-in;
|
422 |
-webkit-transition: background-color 300ms ease-in;
|
423 |
+
}</style>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
424 |
return $out;
|
425 |
}
|
426 |
static function inbound_shortcode_list( $atts, $content = null){
|
534 |
}
|
535 |
|
536 |
return '<style type="text/css">
|
537 |
+
|
538 |
#inbound-list.class-'.$num.' li {
|
539 |
'.$final_text_color.'
|
540 |
list-style: none;
|
556 |
text-align: center;
|
557 |
}
|
558 |
'.$column_css.'
|
559 |
+
@media only screen and (max-width: 580px) {
|
560 |
+
#inbound-list.class-'.$num.' li {
|
561 |
+
width:100%;
|
562 |
+
}
|
563 |
+
}
|
564 |
</style>
|
565 |
<div id="inbound-list" class="inbound-list class-'.$num.' fa-list-'.$icon.'">
|
566 |
'. do_shortcode($content).'
|
688 |
* --------------------------------------------------------- */
|
689 |
InboundShortcodes::init();
|
690 |
|
691 |
+
?>
|
shared/inbound-shortcodes/js/shortcodes.js
CHANGED
@@ -622,7 +622,7 @@
|
|
622 |
var final_form_name = obj.form_name;
|
623 |
|
624 |
//var post_id_final = new_post.replace('"', '');
|
625 |
-
var site_base =
|
626 |
// jQuery('.lp-form').unbind('submit').submit();
|
627 |
//var worked = '<span class="success-message-map">Success! ' + this_meta_id + ' set to ' + meta_to_save + '</span>';
|
628 |
var worked = '<span class="lp-success-message">Form Created & Saved</span><a style="padding-left:10px;" target="_blank" href="' + site_base +'" class="event-view-post">View/Edit Form</a>';
|
@@ -632,7 +632,7 @@
|
|
632 |
jQuery(self).text('Form Updated').css('font-size', '25px');
|
633 |
var draft = jQuery("#hidden_post_status").val();
|
634 |
if (draft === 'draft') {
|
635 |
-
window.location.href =
|
636 |
}
|
637 |
setTimeout(function() {
|
638 |
jQuery(self).text('Save Form').css('font-size', '17px');
|
@@ -721,6 +721,7 @@
|
|
721 |
jQuery(this).text("Hide advanced options");
|
722 |
|
723 |
});
|
|
|
724 |
jQuery("body").on('click', '.hide-advanced-options', function () {
|
725 |
|
726 |
jQuery(this).parent().parent().parent().parent().find(".inbound-tab-class-advanced").hide();
|
622 |
var final_form_name = obj.form_name;
|
623 |
|
624 |
//var post_id_final = new_post.replace('"', '');
|
625 |
+
var site_base = inbound_shortcodes.adminurl + '/post.php?post=' + form_id + '&action=edit';
|
626 |
// jQuery('.lp-form').unbind('submit').submit();
|
627 |
//var worked = '<span class="success-message-map">Success! ' + this_meta_id + ' set to ' + meta_to_save + '</span>';
|
628 |
var worked = '<span class="lp-success-message">Form Created & Saved</span><a style="padding-left:10px;" target="_blank" href="' + site_base +'" class="event-view-post">View/Edit Form</a>';
|
632 |
jQuery(self).text('Form Updated').css('font-size', '25px');
|
633 |
var draft = jQuery("#hidden_post_status").val();
|
634 |
if (draft === 'draft') {
|
635 |
+
window.location.href = inbound_shortcodes.adminurl + '/post.php?post=' + form_id + '&action=edit&reload=true'
|
636 |
}
|
637 |
setTimeout(function() {
|
638 |
jQuery(self).text('Save Form').css('font-size', '17px');
|
721 |
jQuery(this).text("Hide advanced options");
|
722 |
|
723 |
});
|
724 |
+
|
725 |
jQuery("body").on('click', '.hide-advanced-options', function () {
|
726 |
|
727 |
jQuery(this).parent().parent().parent().parent().find(".inbound-tab-class-advanced").hide();
|
shared/inbound-shortcodes/popup.php
CHANGED
@@ -66,4 +66,4 @@ $shortcode = new InboundShortcodesFields( $popup );
|
|
66 |
});
|
67 |
</script>
|
68 |
</body>
|
69 |
-
</html>
|
66 |
});
|
67 |
</script>
|
68 |
</body>
|
69 |
+
</html>
|
shared/inbound-shortcodes/shortcodes-fields.php
CHANGED
@@ -11,10 +11,10 @@
|
|
11 |
|
12 |
/* Include wp-load
|
13 |
* ----------------------------------------------------- */
|
14 |
-
|
15 |
-
|
16 |
|
17 |
-
|
18 |
|
19 |
/* The Class
|
20 |
* ----------------------------------------------------- */
|
@@ -45,14 +45,14 @@ class InboundShortcodesFields {
|
|
45 |
function show() {
|
46 |
|
47 |
global $shortcodes_config;
|
48 |
-
|
49 |
$fields = apply_filters('inboundnow_forms_settings', $shortcodes_config);
|
50 |
-
|
51 |
if( isset( $fields[$this->popup]['child'] ) )
|
52 |
$this->has_child = true;
|
53 |
|
54 |
if( isset( $fields ) && is_array( $fields ) ) {
|
55 |
-
|
56 |
$this->options = $fields[$this->popup]['options'];
|
57 |
$this->shortcode = $fields[$this->popup]['shortcode'];
|
58 |
$this->popup_title = $fields[$this->popup]['popup_title'];
|
@@ -69,7 +69,7 @@ class InboundShortcodesFields {
|
|
69 |
$count = 0;
|
70 |
foreach( $this->options as $key => $option ) {
|
71 |
$first = $key;
|
72 |
-
|
73 |
$key = 'inbound_shortcode_' . $key;
|
74 |
$uniquekey = 'inbound_shortcode_' . $first . "_" . $count;
|
75 |
$name = ( isset($option['name'])) ? $option['name'] : '';
|
@@ -150,23 +150,23 @@ class InboundShortcodesFields {
|
|
150 |
break;
|
151 |
|
152 |
case 'cta' :
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
$this_link = get_permalink( $this_id );
|
162 |
$this_link = preg_replace('/\?.*/', '', $this_link);
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
}
|
171 |
$count++;
|
172 |
}
|
@@ -291,3 +291,4 @@ class InboundShortcodesFields {
|
|
291 |
}
|
292 |
|
293 |
}
|
|
11 |
|
12 |
/* Include wp-load
|
13 |
* ----------------------------------------------------- */
|
14 |
+
$path_to_file = explode( 'wp-content', __FILE__ );
|
15 |
+
$path_to_wp = $path_to_file[0];
|
16 |
|
17 |
+
require_once( $path_to_wp . '/wp-load.php' );
|
18 |
|
19 |
/* The Class
|
20 |
* ----------------------------------------------------- */
|
45 |
function show() {
|
46 |
|
47 |
global $shortcodes_config;
|
48 |
+
//print_r($shortcodes_config);exit;
|
49 |
$fields = apply_filters('inboundnow_forms_settings', $shortcodes_config);
|
50 |
+
|
51 |
if( isset( $fields[$this->popup]['child'] ) )
|
52 |
$this->has_child = true;
|
53 |
|
54 |
if( isset( $fields ) && is_array( $fields ) ) {
|
55 |
+
|
56 |
$this->options = $fields[$this->popup]['options'];
|
57 |
$this->shortcode = $fields[$this->popup]['shortcode'];
|
58 |
$this->popup_title = $fields[$this->popup]['popup_title'];
|
69 |
$count = 0;
|
70 |
foreach( $this->options as $key => $option ) {
|
71 |
$first = $key;
|
72 |
+
|
73 |
$key = 'inbound_shortcode_' . $key;
|
74 |
$uniquekey = 'inbound_shortcode_' . $first . "_" . $count;
|
75 |
$name = ( isset($option['name'])) ? $option['name'] : '';
|
150 |
break;
|
151 |
|
152 |
case 'cta' :
|
153 |
+
$args = array('post_type' => 'wp-call-to-action', 'numberposts' => -1);
|
154 |
+
$cta_post_type = get_posts($args);
|
155 |
+
$output = $row_start;
|
156 |
+
$output .= '<select multiple name="insert_inbound_cta[]"" id="insert_inbound_cta">';
|
157 |
+
foreach ($cta_post_type as $cta) {
|
158 |
+
//setup_postdata($cta);
|
159 |
+
$this_id = $cta->ID;
|
160 |
+
$post_title = $cta->post_title;
|
161 |
$this_link = get_permalink( $this_id );
|
162 |
$this_link = preg_replace('/\?.*/', '', $this_link);
|
163 |
+
//$output .= '<input class="checkbox" type="checkbox" value="" name="" id="" />' . $post_title . '<span id="view-cta-in-new-window">'.$this_link.'</span><br>';
|
164 |
+
$output .= '<option value="'.$this_id.'" rel="" >'.$post_title.'</option>';
|
165 |
+
}
|
166 |
+
$output .= '</select></div></div>';
|
167 |
+
$output .= $row_end;
|
168 |
+
$this->append_output($output);
|
169 |
+
break;
|
170 |
}
|
171 |
$count++;
|
172 |
}
|
291 |
}
|
292 |
|
293 |
}
|
294 |
+
|
shared/inbound-shortcodes/shortcodes-includes.php
CHANGED
@@ -23,38 +23,23 @@ jQuery(".lead").append('"' + clean + '" => "' + toTitleCase(new_name) + '", ');
|
|
23 |
|
24 |
/* Include & Variables
|
25 |
* ----------------------------------------------------- */
|
26 |
-
$fontawesome = array("" => "None", "arrow-circle-o-right" => "Arrow Circle O Right", "arrow-circle-o-left" => "Arrow Circle O Left", "check" => "Check", "check-circle" => "Check Circle", "check-circle-o" => "Check Circle O", "check-square" => "Check Square", "check-square-o" => "Check Square O", "comment" => "Comment", "comment-o" => "Comment O", "comments" => "Comments", "comments-o" => "Comments O", "asterisk" => "Asterisk", "thumbs-o-up" => "Thumbs O Up", "thumbs-up" => "Thumbs Up", "check-square" => "Check Square", "check-square-o" => "Check Square O", "arrow-circle-down" => "Arrow Circle Down", "arrow-circle-left" => "Arrow Circle Left", "arrow-circle-o-down" => "Arrow Circle O Down", "arrow-circle-o-left" => "Arrow Circle O Left", "arrow-circle-o-right" => "Arrow Circle O Right", "arrow-circle-o-up" => "Arrow Circle O Up", "arrow-circle-right" => "Arrow Circle Right", "arrow-circle-up" => "Arrow Circle Up", "arrow-down" => "Arrow Down", "arrow-left" => "Arrow Left", "arrow-right" => "Arrow Right", "arrow-up" => "Arrow Up", "angle-double-down" => "Angle Double Down", "angle-double-left" => "Angle Double Left", "angle-double-right" => "Angle Double Right", "angle-double-up" => "Angle Double Up", "angle-down" => "Angle Down", "angle-left" => "Angle Left", "angle-right" => "Angle Right", "angle-up" => "Angle Up", "caret-down" => "Caret Down", "caret-left" => "Caret Left", "caret-right" => "Caret Right", "caret-square-o-down" => "Caret Square O Down", "caret-square-o-left" => "Caret Square O Left", "caret-square-o-right" => "Caret Square O Right", "caret-square-o-up" => "Caret Square O Up", "caret-up" => "Caret Up", "chevron-circle-down" => "Chevron Circle Down", "chevron-circle-left" => "Chevron Circle Left", "chevron-circle-right" => "Chevron Circle Right", "chevron-circle-up" => "Chevron Circle Up", "chevron-down" => "Chevron Down", "chevron-left" => "Chevron Left", "chevron-right" => "Chevron Right", "chevron-up" => "Chevron Up", "hand-o-down" => "Hand O Down", "hand-o-left" => "Hand O Left", "hand-o-right" => "Hand O Right", "hand-o-up" => "Hand O Up", "long-arrow-down" => "Long Arrow Down", "long-arrow-left" => "Long Arrow Left", "long-arrow-right" => "Long Arrow Right", "long-arrow-up" => "Long Arrow Up", "toggle-down" => "Toggle Down", "toggle-left" => "Toggle Left", "toggle-right" => "Toggle Right", "toggle-up" => "Toggle Up", "arrows-alt" => "Arrows Alt", "backward" => "Backward", "compress" => "Compress", "eject" => "Eject", "expand" => "Expand", "fast-backward" => "Fast Backward", "fast-forward" => "Fast Forward", "forward" => "Forward", "pause" => "Pause", "play" => "Play", "play-circle" => "Play Circle", "play-circle-o" => "Play Circle O", "step-backward" => "Step Backward", "step-forward" => "Step Forward", "rub" => "Rub", "ruble" => "Ruble", "rouble" => "Rouble", "pagelines" => "Pagelines", "stack-exchange" => "Stack Exchange", "caret-square-o-left" => "Caret Square O Left", "toggle-left" => "Toggle Left", "dot-circle-o" => "Dot Circle O", "wheelchair" => "Wheelchair", "vimeo-square" => "Vimeo Square", "try" => "Try", "turkish-lira" => "Turkish Lira", "plus-square-o" => "Plus Square O", "adjust" => "Adjust", "anchor" => "Anchor", "archive" => "Archive", "arrows" => "Arrows", "arrows-h" => "Arrows H", "arrows-v" => "Arrows V", "ban" => "Ban", "bar-chart-o" => "Bar Chart O", "barcode" => "Barcode", "bars" => "Bars", "beer" => "Beer", "bell" => "Bell", "bell-o" => "Bell O", "bolt" => "Bolt", "book" => "Book", "bookmark" => "Bookmark", "bookmark-o" => "Bookmark O", "briefcase" => "Briefcase", "bug" => "Bug", "building-o" => "Building O", "bullhorn" => "Bullhorn", "bullseye" => "Bullseye", "calendar" => "Calendar", "calendar-o" => "Calendar O", "camera" => "Camera", "camera-retro" => "Camera Retro", "caret-square-o-down" => "Caret Square O Down", "caret-square-o-left" => "Caret Square O Left", "caret-square-o-right" => "Caret Square O Right", "caret-square-o-up" => "Caret Square O Up", "certificate" => "Certificate", "circle" => "Circle", "circle-o" => "Circle O", "clock-o" => "Clock O", "cloud" => "Cloud", "cloud-download" => "Cloud Download", "cloud-upload" => "Cloud Upload", "code" => "Code", "code-fork" => "Code Fork", "coffee" => "Coffee", "cog" => "Cog", "cogs" => "Cogs", "compass" => "Compass", "credit-card" => "Credit Card", "crop" => "Crop", "crosshairs" => "Crosshairs", "cutlery" => "Cutlery", "dashboard" => "Dashboard", "desktop" => "Desktop", "dot-circle-o" => "Dot Circle O", "download" => "Download", "edit" => "Edit", "ellipsis-h" => "Ellipsis H", "ellipsis-v" => "Ellipsis V", "envelope" => "Envelope", "envelope-o" => "Envelope O", "eraser" => "Eraser", "exchange" => "Exchange", "exclamation" => "Exclamation", "exclamation-circle" => "Exclamation Circle", "exclamation-triangle" => "Exclamation Triangle", "external-link" => "External Link", "external-link-square" => "External Link Square", "eye" => "Eye", "eye-slash" => "Eye Slash", "female" => "Female", "fighter-jet" => "Fighter Jet", "film" => "Film", "filter" => "Filter", "fire" => "Fire", "fire-extinguisher" => "Fire Extinguisher", "flag" => "Flag", "flag-checkered" => "Flag Checkered", "flag-o" => "Flag O", "flash" => "Flash", "flask" => "Flask", "folder" => "Folder", "folder-o" => "Folder O", "folder-open" => "Folder Open", "folder-open-o" => "Folder Open O", "frown-o" => "Frown O", "gamepad" => "Gamepad", "gavel" => "Gavel", "gear" => "Gear", "gears" => "Gears", "gift" => "Gift", "glass" => "Glass", "globe" => "Globe", "group" => "Group", "hdd-o" => "Hdd O", "headphones" => "Headphones", "heart" => "Heart", "heart-o" => "Heart O", "home" => "Home", "inbox" => "Inbox", "info" => "Info", "info-circle" => "Info Circle", "key" => "Key", "keyboard-o" => "Keyboard O", "laptop" => "Laptop", "leaf" => "Leaf", "legal" => "Legal", "lemon-o" => "Lemon O", "level-down" => "Level Down", "level-up" => "Level Up", "lightbulb-o" => "Lightbulb O", "location-arrow" => "Location Arrow", "lock" => "Lock", "magic" => "Magic", "magnet" => "Magnet", "mail-forward" => "Mail Forward", "mail-reply" => "Mail Reply", "mail-reply-all" => "Mail Reply All", "male" => "Male", "map-marker" => "Map Marker", "meh-o" => "Meh O", "microphone" => "Microphone", "microphone-slash" => "Microphone Slash", "minus" => "Minus", "minus-circle" => "Minus Circle", "minus-square" => "Minus Square", "minus-square-o" => "Minus Square O", "mobile" => "Mobile", "mobile-phone" => "Mobile Phone", "money" => "Money", "moon-o" => "Moon O", "music" => "Music", "pencil" => "Pencil", "pencil-square" => "Pencil Square", "pencil-square-o" => "Pencil Square O", "phone" => "Phone", "phone-square" => "Phone Square", "picture-o" => "Picture O", "plane" => "Plane", "plus" => "Plus", "plus-circle" => "Plus Circle", "plus-square" => "Plus Square", "plus-square-o" => "Plus Square O", "power-off" => "Power Off", "print" => "Print", "puzzle-piece" => "Puzzle Piece", "qrcode" => "Qrcode", "question" => "Question", "question-circle" => "Question Circle", "quote-left" => "Quote Left", "quote-right" => "Quote Right", "random" => "Random", "refresh" => "Refresh", "reply" => "Reply", "reply-all" => "Reply All", "retweet" => "Retweet", "road" => "Road", "rocket" => "Rocket", "rss" => "Rss", "rss-square" => "Rss Square", "search" => "Search", "search-minus" => "Search Minus", "search-plus" => "Search Plus", "share" => "Share", "share-square" => "Share Square", "share-square-o" => "Share Square O", "shield" => "Shield", "shopping-cart" => "Shopping Cart", "sign-in" => "Sign In", "sign-out" => "Sign Out", "signal" => "Signal", "sitemap" => "Sitemap", "smile-o" => "Smile O", "sort" => "Sort", "sort-alpha-asc" => "Sort Alpha Asc", "sort-alpha-desc" => "Sort Alpha Desc", "sort-amount-asc" => "Sort Amount Asc", "sort-amount-desc" => "Sort Amount Desc", "sort-asc" => "Sort Asc", "sort-desc" => "Sort Desc", "sort-down" => "Sort Down", "sort-numeric-asc" => "Sort Numeric Asc", "sort-numeric-desc" => "Sort Numeric Desc", "sort-up" => "Sort Up", "spinner" => "Spinner", "square" => "Square", "square-o" => "Square O", "star" => "Star", "star-half" => "Star Half", "star-half-empty" => "Star Half Empty", "star-half-full" => "Star Half Full", "star-half-o" => "Star Half O", "star-o" => "Star O", "subscript" => "Subscript", "suitcase" => "Suitcase", "sun-o" => "Sun O", "superscript" => "Superscript", "tablet" => "Tablet", "tachometer" => "Tachometer", "tag" => "Tag", "tags" => "Tags", "tasks" => "Tasks", "terminal" => "Terminal", "thumb-tack" => "Thumb Tack", "thumbs-down" => "Thumbs Down", "thumbs-o-down" => "Thumbs O Down", "ticket" => "Ticket", "times" => "Times", "times-circle" => "Times Circle", "times-circle-o" => "Times Circle O", "tint" => "Tint", "toggle-down" => "Toggle Down", "toggle-left" => "Toggle Left", "toggle-right" => "Toggle Right", "toggle-up" => "Toggle Up", "trash-o" => "Trash O", "trophy" => "Trophy", "truck" => "Truck", "umbrella" => "Umbrella", "unlock" => "Unlock", "unlock-alt" => "Unlock Alt", "unsorted" => "Unsorted", "upload" => "Upload", "user" => "User", "users" => "Users", "video-camera" => "Video Camera", "volume-down" => "Volume Down", "volume-off" => "Volume Off", "volume-up" => "Volume Up", "warning" => "Warning", "wheelchair" => "Wheelchair", "wrench" => "Wrench", "circle" => "Circle", "circle-o" => "Circle O", "dot-circle-o" => "Dot Circle O", "minus-square" => "Minus Square", "minus-square-o" => "Minus Square O", "plus-square" => "Plus Square", "plus-square-o" => "Plus Square O", "square" => "Square", "square-o" => "Square O", "bitcoin" => "Bitcoin", "btc" => "Btc", "cny" => "Cny", "dollar" => "Dollar", "eur" => "Eur", "euro" => "Euro", "gbp" => "Gbp", "inr" => "Inr", "jpy" => "Jpy", "krw" => "Krw", "money" => "Money", "rmb" => "Rmb", "rouble" => "Rouble", "rub" => "Rub", "ruble" => "Ruble", "rupee" => "Rupee", "try" => "Try", "turkish-lira" => "Turkish Lira", "usd" => "Usd", "won" => "Won", "yen" => "Yen", "align-center" => "Align Center", "align-justify" => "Align Justify", "align-left" => "Align Left", "align-right" => "Align Right", "bold" => "Bold", "chain" => "Chain", "chain-broken" => "Chain Broken", "clipboard" => "Clipboard", "columns" => "Columns", "copy" => "Copy", "cut" => "Cut", "dedent" => "Dedent", "eraser" => "Eraser", "file" => "File", "file-o" => "File O", "file-text" => "File Text", "file-text-o" => "File Text O", "files-o" => "Files O", "floppy-o" => "Floppy O", "font" => "Font", "indent" => "Indent", "italic" => "Italic", "link" => "Link", "list" => "List", "list-alt" => "List Alt", "list-ol" => "List Ol", "list-ul" => "List Ul", "outdent" => "Outdent", "paperclip" => "Paperclip", "paste" => "Paste", "repeat" => "Repeat", "rotate-left" => "Rotate Left", "rotate-right" => "Rotate Right", "save" => "Save", "scissors" => "Scissors", "strikethrough" => "Strikethrough", "table" => "Table", "text-height" => "Text Height", "text-width" => "Text Width", "th" => "Th", "th-large" => "Th Large", "th-list" => "Th List", "underline" => "Underline", "undo" => "Undo", "unlink" => "Unlink", "arrows" => "Arrows", "arrows-alt" => "Arrows Alt", "arrows-h" => "Arrows H", "arrows-v" => "Arrows V", "stop" => "Stop", "youtube-play" => "Youtube Play", "adn" => "Adn", "android" => "Android", "apple" => "Apple", "bitbucket" => "Bitbucket", "bitbucket-square" => "Bitbucket Square", "bitcoin" => "Bitcoin", "btc" => "Btc", "css3" => "Css3", "dribbble" => "Dribbble", "dropbox" => "Dropbox", "facebook" => "Facebook", "facebook-square" => "Facebook Square", "flickr" => "Flickr", "foursquare" => "Foursquare", "github" => "Github", "github-alt" => "Github Alt", "github-square" => "Github Square", "gittip" => "Gittip", "google-plus" => "Google Plus", "google-plus-square" => "Google Plus Square", "html5" => "Html5", "instagram" => "Instagram", "linkedin" => "Linkedin", "linkedin-square" => "Linkedin Square", "linux" => "Linux", "maxcdn" => "Maxcdn", "pagelines" => "Pagelines", "pinterest" => "Pinterest", "pinterest-square" => "Pinterest Square", "renren" => "Renren", "skype" => "Skype", "stack-exchange" => "Stack Exchange", "stack-overflow" => "Stack Overflow", "trello" => "Trello", "tumblr" => "Tumblr", "tumblr-square" => "Tumblr Square", "twitter" => "Twitter", "twitter-square" => "Twitter Square", "vimeo-square" => "Vimeo Square", "vk" => "Vk", "weibo" => "Weibo", "windows" => "Windows", "xing" => "Xing", "xing-square" => "Xing Square", "youtube" => "Youtube", "youtube-play" => "Youtube Play", "youtube-square" => "Youtube Square", "ambulance" => "Ambulance", "h-square" => "H Square", "hospital-o" => "Hospital O", "medkit" => "Medkit", "plus-square" => "Plus Square", "stethoscope" => "Stethoscope", "user-md" => "User Md", "wheelchair" => "Wheelchair"
|
27 |
-
|
|
|
28 |
$lp_cats = get_transient( 'landing-page-cats' ); // array of landing page categories
|
29 |
$form_names = get_transient( 'inbound-form-names' ); // array of landing page categories
|
30 |
$lead_mapping_fields = get_transient( 'wp-lead-fields' );
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
if (!function_exists('inbound_excerpt_length')) {
|
36 |
function inbound_excerpt_length( $length ) {
|
37 |
$custom = '';
|
38 |
return ( $custom != '' ? $custom : 40 );
|
39 |
}
|
40 |
}
|
41 |
-
add_filter( 'excerpt_length', 'inbound_excerpt_length' );
|
42 |
-
|
43 |
-
/* Portfolio catgories options */
|
44 |
-
// $portfolio_cats = array();
|
45 |
-
// $portfolio_cats_obj = get_terms('portfolio_category', false);
|
46 |
-
// $portfolio_cats[''] = __('Select a category:', INBOUND_LABEL);
|
47 |
-
// foreach ($portfolio_cats_obj as $term) {
|
48 |
-
// $portfolio_cats[$term->term_id] = $term->name;
|
49 |
-
// }
|
50 |
-
if (!function_exists('inbound_add_custom_shortcode')) {
|
51 |
-
function inbound_add_custom_shortcode($form_names) {
|
52 |
-
require_once ('shortcodes/quick-forms.php'); // Form Builder
|
53 |
-
}
|
54 |
-
}
|
55 |
-
|
56 |
-
add_action('inbound_shortcode_addon_include', 'inbound_add_custom_shortcode');
|
57 |
|
|
|
58 |
/* Global Inbound Now Shortcodes */
|
59 |
require_once ('shortcodes/forms.php'); // Form Builder
|
60 |
require_once ('shortcodes/column.php'); // Columned Layouts
|
@@ -63,12 +48,14 @@ jQuery(".lead").append('"' + clean + '" => "' + toTitleCase(new_name) + '", ');
|
|
63 |
require_once ('shortcodes/button.php');
|
64 |
require_once ('shortcodes/lists.php');
|
65 |
require_once ('shortcodes/social-share.php');
|
|
|
|
|
66 |
// Leads only Shortcodes
|
67 |
|
68 |
// Landing Page Only Shortcodes
|
69 |
require_once ('shortcodes/landing_pages.php'); // Category specific landing pages
|
70 |
|
71 |
-
do_action( 'inbound_shortcode_addon_include' ); // Hook into shortcode engine
|
72 |
|
73 |
|
74 |
// Call to Action Only Shortcodes
|
23 |
|
24 |
/* Include & Variables
|
25 |
* ----------------------------------------------------- */
|
26 |
+
global $shortcodes_config;
|
27 |
+
|
28 |
+
$fontawesome = array("" => "None", "arrow-circle-o-right" => "Arrow Circle O Right", "arrow-circle-o-left" => "Arrow Circle O Left", "check" => "Check", "check-circle" => "Check Circle", "check-circle-o" => "Check Circle O", "check-square" => "Check Square", "check-square-o" => "Check Square O", "comment" => "Comment", "comment-o" => "Comment O", "comments" => "Comments", "comments-o" => "Comments O", "asterisk" => "Asterisk", "thumbs-o-up" => "Thumbs O Up", "thumbs-up" => "Thumbs Up", "check-square" => "Check Square", "check-square-o" => "Check Square O", "arrow-circle-down" => "Arrow Circle Down", "arrow-circle-left" => "Arrow Circle Left", "arrow-circle-o-down" => "Arrow Circle O Down", "arrow-circle-o-left" => "Arrow Circle O Left", "arrow-circle-o-right" => "Arrow Circle O Right", "arrow-circle-o-up" => "Arrow Circle O Up", "arrow-circle-right" => "Arrow Circle Right", "arrow-circle-up" => "Arrow Circle Up", "arrow-down" => "Arrow Down", "arrow-left" => "Arrow Left", "arrow-right" => "Arrow Right", "arrow-up" => "Arrow Up", "angle-double-down" => "Angle Double Down", "angle-double-left" => "Angle Double Left", "angle-double-right" => "Angle Double Right", "angle-double-up" => "Angle Double Up", "angle-down" => "Angle Down", "angle-left" => "Angle Left", "angle-right" => "Angle Right", "angle-up" => "Angle Up", "caret-down" => "Caret Down", "caret-left" => "Caret Left", "caret-right" => "Caret Right", "caret-square-o-down" => "Caret Square O Down", "caret-square-o-left" => "Caret Square O Left", "caret-square-o-right" => "Caret Square O Right", "caret-square-o-up" => "Caret Square O Up", "caret-up" => "Caret Up", "chevron-circle-down" => "Chevron Circle Down", "chevron-circle-left" => "Chevron Circle Left", "chevron-circle-right" => "Chevron Circle Right", "chevron-circle-up" => "Chevron Circle Up", "chevron-down" => "Chevron Down", "chevron-left" => "Chevron Left", "chevron-right" => "Chevron Right", "chevron-up" => "Chevron Up", "hand-o-down" => "Hand O Down", "hand-o-left" => "Hand O Left", "hand-o-right" => "Hand O Right", "hand-o-up" => "Hand O Up", "long-arrow-down" => "Long Arrow Down", "long-arrow-left" => "Long Arrow Left", "long-arrow-right" => "Long Arrow Right", "long-arrow-up" => "Long Arrow Up", "toggle-down" => "Toggle Down", "toggle-left" => "Toggle Left", "toggle-right" => "Toggle Right", "toggle-up" => "Toggle Up", "arrows-alt" => "Arrows Alt", "backward" => "Backward", "compress" => "Compress", "eject" => "Eject", "expand" => "Expand", "fast-backward" => "Fast Backward", "fast-forward" => "Fast Forward", "forward" => "Forward", "pause" => "Pause", "play" => "Play", "play-circle" => "Play Circle", "play-circle-o" => "Play Circle O", "step-backward" => "Step Backward", "step-forward" => "Step Forward", "rub" => "Rub", "ruble" => "Ruble", "rouble" => "Rouble", "pagelines" => "Pagelines", "stack-exchange" => "Stack Exchange", "caret-square-o-left" => "Caret Square O Left", "toggle-left" => "Toggle Left", "dot-circle-o" => "Dot Circle O", "wheelchair" => "Wheelchair", "vimeo-square" => "Vimeo Square", "try" => "Try", "turkish-lira" => "Turkish Lira", "plus-square-o" => "Plus Square O", "adjust" => "Adjust", "anchor" => "Anchor", "archive" => "Archive", "arrows" => "Arrows", "arrows-h" => "Arrows H", "arrows-v" => "Arrows V", "ban" => "Ban", "bar-chart-o" => "Bar Chart O", "barcode" => "Barcode", "bars" => "Bars", "beer" => "Beer", "bell" => "Bell", "bell-o" => "Bell O", "bolt" => "Bolt", "book" => "Book", "bookmark" => "Bookmark", "bookmark-o" => "Bookmark O", "briefcase" => "Briefcase", "bug" => "Bug", "building-o" => "Building O", "bullhorn" => "Bullhorn", "bullseye" => "Bullseye", "calendar" => "Calendar", "calendar-o" => "Calendar O", "camera" => "Camera", "camera-retro" => "Camera Retro", "caret-square-o-down" => "Caret Square O Down", "caret-square-o-left" => "Caret Square O Left", "caret-square-o-right" => "Caret Square O Right", "caret-square-o-up" => "Caret Square O Up", "certificate" => "Certificate", "circle" => "Circle", "circle-o" => "Circle O", "clock-o" => "Clock O", "cloud" => "Cloud", "cloud-download" => "Cloud Download", "cloud-upload" => "Cloud Upload", "code" => "Code", "code-fork" => "Code Fork", "coffee" => "Coffee", "cog" => "Cog", "cogs" => "Cogs", "compass" => "Compass", "credit-card" => "Credit Card", "crop" => "Crop", "crosshairs" => "Crosshairs", "cutlery" => "Cutlery", "dashboard" => "Dashboard", "desktop" => "Desktop", "dot-circle-o" => "Dot Circle O", "download" => "Download", "edit" => "Edit", "ellipsis-h" => "Ellipsis H", "ellipsis-v" => "Ellipsis V", "envelope" => "Envelope", "envelope-o" => "Envelope O", "eraser" => "Eraser", "exchange" => "Exchange", "exclamation" => "Exclamation", "exclamation-circle" => "Exclamation Circle", "exclamation-triangle" => "Exclamation Triangle", "external-link" => "External Link", "external-link-square" => "External Link Square", "eye" => "Eye", "eye-slash" => "Eye Slash", "female" => "Female", "fighter-jet" => "Fighter Jet", "film" => "Film", "filter" => "Filter", "fire" => "Fire", "fire-extinguisher" => "Fire Extinguisher", "flag" => "Flag", "flag-checkered" => "Flag Checkered", "flag-o" => "Flag O", "flash" => "Flash", "flask" => "Flask", "folder" => "Folder", "folder-o" => "Folder O", "folder-open" => "Folder Open", "folder-open-o" => "Folder Open O", "frown-o" => "Frown O", "gamepad" => "Gamepad", "gavel" => "Gavel", "gear" => "Gear", "gears" => "Gears", "gift" => "Gift", "glass" => "Glass", "globe" => "Globe", "group" => "Group", "hdd-o" => "Hdd O", "headphones" => "Headphones", "heart" => "Heart", "heart-o" => "Heart O", "home" => "Home", "inbox" => "Inbox", "info" => "Info", "info-circle" => "Info Circle", "key" => "Key", "keyboard-o" => "Keyboard O", "laptop" => "Laptop", "leaf" => "Leaf", "legal" => "Legal", "lemon-o" => "Lemon O", "level-down" => "Level Down", "level-up" => "Level Up", "lightbulb-o" => "Lightbulb O", "location-arrow" => "Location Arrow", "lock" => "Lock", "magic" => "Magic", "magnet" => "Magnet", "mail-forward" => "Mail Forward", "mail-reply" => "Mail Reply", "mail-reply-all" => "Mail Reply All", "male" => "Male", "map-marker" => "Map Marker", "meh-o" => "Meh O", "microphone" => "Microphone", "microphone-slash" => "Microphone Slash", "minus" => "Minus", "minus-circle" => "Minus Circle", "minus-square" => "Minus Square", "minus-square-o" => "Minus Square O", "mobile" => "Mobile", "mobile-phone" => "Mobile Phone", "money" => "Money", "moon-o" => "Moon O", "music" => "Music", "pencil" => "Pencil", "pencil-square" => "Pencil Square", "pencil-square-o" => "Pencil Square O", "phone" => "Phone", "phone-square" => "Phone Square", "picture-o" => "Picture O", "plane" => "Plane", "plus" => "Plus", "plus-circle" => "Plus Circle", "plus-square" => "Plus Square", "plus-square-o" => "Plus Square O", "power-off" => "Power Off", "print" => "Print", "puzzle-piece" => "Puzzle Piece", "qrcode" => "Qrcode", "question" => "Question", "question-circle" => "Question Circle", "quote-left" => "Quote Left", "quote-right" => "Quote Right", "random" => "Random", "refresh" => "Refresh", "reply" => "Reply", "reply-all" => "Reply All", "retweet" => "Retweet", "road" => "Road", "rocket" => "Rocket", "rss" => "Rss", "rss-square" => "Rss Square", "search" => "Search", "search-minus" => "Search Minus", "search-plus" => "Search Plus", "share" => "Share", "share-square" => "Share Square", "share-square-o" => "Share Square O", "shield" => "Shield", "shopping-cart" => "Shopping Cart", "sign-in" => "Sign In", "sign-out" => "Sign Out", "signal" => "Signal", "sitemap" => "Sitemap", "smile-o" => "Smile O", "sort" => "Sort", "sort-alpha-asc" => "Sort Alpha Asc", "sort-alpha-desc" => "Sort Alpha Desc", "sort-amount-asc" => "Sort Amount Asc", "sort-amount-desc" => "Sort Amount Desc", "sort-asc" => "Sort Asc", "sort-desc" => "Sort Desc", "sort-down" => "Sort Down", "sort-numeric-asc" => "Sort Numeric Asc", "sort-numeric-desc" => "Sort Numeric Desc", "sort-up" => "Sort Up", "spinner" => "Spinner", "square" => "Square", "square-o" => "Square O", "star" => "Star", "star-half" => "Star Half", "star-half-empty" => "Star Half Empty", "star-half-full" => "Star Half Full", "star-half-o" => "Star Half O", "star-o" => "Star O", "subscript" => "Subscript", "suitcase" => "Suitcase", "sun-o" => "Sun O", "superscript" => "Superscript", "tablet" => "Tablet", "tachometer" => "Tachometer", "tag" => "Tag", "tags" => "Tags", "tasks" => "Tasks", "terminal" => "Terminal", "thumb-tack" => "Thumb Tack", "thumbs-down" => "Thumbs Down", "thumbs-o-down" => "Thumbs O Down", "ticket" => "Ticket", "times" => "Times", "times-circle" => "Times Circle", "times-circle-o" => "Times Circle O", "tint" => "Tint", "toggle-down" => "Toggle Down", "toggle-left" => "Toggle Left", "toggle-right" => "Toggle Right", "toggle-up" => "Toggle Up", "trash-o" => "Trash O", "trophy" => "Trophy", "truck" => "Truck", "umbrella" => "Umbrella", "unlock" => "Unlock", "unlock-alt" => "Unlock Alt", "unsorted" => "Unsorted", "upload" => "Upload", "user" => "User", "users" => "Users", "video-camera" => "Video Camera", "volume-down" => "Volume Down", "volume-off" => "Volume Off", "volume-up" => "Volume Up", "warning" => "Warning", "wheelchair" => "Wheelchair", "wrench" => "Wrench", "circle" => "Circle", "circle-o" => "Circle O", "dot-circle-o" => "Dot Circle O", "minus-square" => "Minus Square", "minus-square-o" => "Minus Square O", "plus-square" => "Plus Square", "plus-square-o" => "Plus Square O", "square" => "Square", "square-o" => "Square O", "bitcoin" => "Bitcoin", "btc" => "Btc", "cny" => "Cny", "dollar" => "Dollar", "eur" => "Eur", "euro" => "Euro", "gbp" => "Gbp", "inr" => "Inr", "jpy" => "Jpy", "krw" => "Krw", "money" => "Money", "rmb" => "Rmb", "rouble" => "Rouble", "rub" => "Rub", "ruble" => "Ruble", "rupee" => "Rupee", "try" => "Try", "turkish-lira" => "Turkish Lira", "usd" => "Usd", "won" => "Won", "yen" => "Yen", "align-center" => "Align Center", "align-justify" => "Align Justify", "align-left" => "Align Left", "align-right" => "Align Right", "bold" => "Bold", "chain" => "Chain", "chain-broken" => "Chain Broken", "clipboard" => "Clipboard", "columns" => "Columns", "copy" => "Copy", "cut" => "Cut", "dedent" => "Dedent", "eraser" => "Eraser", "file" => "File", "file-o" => "File O", "file-text" => "File Text", "file-text-o" => "File Text O", "files-o" => "Files O", "floppy-o" => "Floppy O", "font" => "Font", "indent" => "Indent", "italic" => "Italic", "link" => "Link", "list" => "List", "list-alt" => "List Alt", "list-ol" => "List Ol", "list-ul" => "List Ul", "outdent" => "Outdent", "paperclip" => "Paperclip", "paste" => "Paste", "repeat" => "Repeat", "rotate-left" => "Rotate Left", "rotate-right" => "Rotate Right", "save" => "Save", "scissors" => "Scissors", "strikethrough" => "Strikethrough", "table" => "Table", "text-height" => "Text Height", "text-width" => "Text Width", "th" => "Th", "th-large" => "Th Large", "th-list" => "Th List", "underline" => "Underline", "undo" => "Undo", "unlink" => "Unlink", "arrows" => "Arrows", "arrows-alt" => "Arrows Alt", "arrows-h" => "Arrows H", "arrows-v" => "Arrows V", "stop" => "Stop", "youtube-play" => "Youtube Play", "adn" => "Adn", "android" => "Android", "apple" => "Apple", "bitbucket" => "Bitbucket", "bitbucket-square" => "Bitbucket Square", "bitcoin" => "Bitcoin", "btc" => "Btc", "css3" => "Css3", "dribbble" => "Dribbble", "dropbox" => "Dropbox", "facebook" => "Facebook", "facebook-square" => "Facebook Square", "flickr" => "Flickr", "foursquare" => "Foursquare", "github" => "Github", "github-alt" => "Github Alt", "github-square" => "Github Square", "gittip" => "Gittip", "google-plus" => "Google Plus", "google-plus-square" => "Google Plus Square", "html5" => "Html5", "instagram" => "Instagram", "linkedin" => "Linkedin", "linkedin-square" => "Linkedin Square", "linux" => "Linux", "maxcdn" => "Maxcdn", "pagelines" => "Pagelines", "pinterest" => "Pinterest", "pinterest-square" => "Pinterest Square", "renren" => "Renren", "skype" => "Skype", "stack-exchange" => "Stack Exchange", "stack-overflow" => "Stack Overflow", "trello" => "Trello", "tumblr" => "Tumblr", "tumblr-square" => "Tumblr Square", "twitter" => "Twitter", "twitter-square" => "Twitter Square", "vimeo-square" => "Vimeo Square", "vk" => "Vk", "weibo" => "Weibo", "windows" => "Windows", "xing" => "Xing", "xing-square" => "Xing Square", "youtube" => "Youtube", "youtube-play" => "Youtube Play", "youtube-square" => "Youtube Square", "ambulance" => "Ambulance", "h-square" => "H Square", "hospital-o" => "Hospital O", "medkit" => "Medkit", "plus-square" => "Plus Square", "stethoscope" => "Stethoscope", "user-md" => "User Md", "wheelchair" => "Wheelchair");
|
29 |
$lp_cats = get_transient( 'landing-page-cats' ); // array of landing page categories
|
30 |
$form_names = get_transient( 'inbound-form-names' ); // array of landing page categories
|
31 |
$lead_mapping_fields = get_transient( 'wp-lead-fields' );
|
32 |
+
|
33 |
+
|
34 |
+
add_filter( 'excerpt_length', 'inbound_excerpt_length' );
|
|
|
35 |
if (!function_exists('inbound_excerpt_length')) {
|
36 |
function inbound_excerpt_length( $length ) {
|
37 |
$custom = '';
|
38 |
return ( $custom != '' ? $custom : 40 );
|
39 |
}
|
40 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
|
42 |
+
|
43 |
/* Global Inbound Now Shortcodes */
|
44 |
require_once ('shortcodes/forms.php'); // Form Builder
|
45 |
require_once ('shortcodes/column.php'); // Columned Layouts
|
48 |
require_once ('shortcodes/button.php');
|
49 |
require_once ('shortcodes/lists.php');
|
50 |
require_once ('shortcodes/social-share.php');
|
51 |
+
require_once ('shortcodes/quick-forms.php');
|
52 |
+
|
53 |
// Leads only Shortcodes
|
54 |
|
55 |
// Landing Page Only Shortcodes
|
56 |
require_once ('shortcodes/landing_pages.php'); // Category specific landing pages
|
57 |
|
58 |
+
do_action( 'inbound_shortcode_addon_include' , $form_names ); // Hook into shortcode engine
|
59 |
|
60 |
|
61 |
// Call to Action Only Shortcodes
|
shared/inbound-shortcodes/shortcodes/forms.php
CHANGED
@@ -408,6 +408,8 @@ function inbound_forms_compatibilities()
|
|
408 |
}
|
409 |
}
|
410 |
|
|
|
|
|
411 |
if (!function_exists('inbound_forms_redirect')) {
|
412 |
function inbound_forms_redirect($value){
|
413 |
global $pagenow;
|
@@ -418,7 +420,6 @@ function inbound_forms_redirect($value){
|
|
418 |
}
|
419 |
}
|
420 |
}
|
421 |
-
add_action('admin_init', 'inbound_forms_redirect');
|
422 |
|
423 |
add_action('admin_head', 'inbound_get_form_names',16);
|
424 |
if (!function_exists('inbound_get_form_names')) {
|
408 |
}
|
409 |
}
|
410 |
|
411 |
+
|
412 |
+
add_action('admin_init', 'inbound_forms_redirect');
|
413 |
if (!function_exists('inbound_forms_redirect')) {
|
414 |
function inbound_forms_redirect($value){
|
415 |
global $pagenow;
|
420 |
}
|
421 |
}
|
422 |
}
|
|
|
423 |
|
424 |
add_action('admin_head', 'inbound_get_form_names',16);
|
425 |
if (!function_exists('inbound_get_form_names')) {
|
shared/inbound-shortcodes/shortcodes/quick-forms.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Inbound Forms Shortcode Options
|
4 |
* Forms code found in /shared/classes/form.class.php
|
5 |
*/
|
6 |
-
|
7 |
$shortcodes_config['quick-forms'] = array(
|
8 |
'no_preview' => false,
|
9 |
'options' => array(
|
3 |
* Inbound Forms Shortcode Options
|
4 |
* Forms code found in /shared/classes/form.class.php
|
5 |
*/
|
6 |
+
|
7 |
$shortcodes_config['quick-forms'] = array(
|
8 |
'no_preview' => false,
|
9 |
'options' => array(
|
shared/inboundnow/inboundnow.extend.php
ADDED
@@ -0,0 +1,348 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* License handler for InboundNow Packaged Extensions
|
4 |
+
*
|
5 |
+
* This class should simplify the process of adding license information
|
6 |
+
* to inboundnow multi-purposed extensions.
|
7 |
+
*
|
8 |
+
* @author Hudson Atwell
|
9 |
+
* @version 1.1
|
10 |
+
*/
|
11 |
+
|
12 |
+
|
13 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
14 |
+
|
15 |
+
|
16 |
+
if ( ! defined( 'INBOUNDNOW_STORE_URL' ) )
|
17 |
+
define('INBOUNDNOW_STORE_URL','http://www.inboundnow.com/');
|
18 |
+
|
19 |
+
if ( ! class_exists( 'INBOUNDNOW_EXTEND' ) )
|
20 |
+
{
|
21 |
+
|
22 |
+
class INBOUNDNOW_EXTEND {
|
23 |
+
|
24 |
+
private $plugin_basename;
|
25 |
+
private $plugin_slug;
|
26 |
+
private $plugin_label;
|
27 |
+
private $plugin_version;
|
28 |
+
private $remote_download_slug;
|
29 |
+
private $master_license_key;
|
30 |
+
private $remote_api_url;
|
31 |
+
|
32 |
+
function __construct( $plugin_file , $plugin_label , $plugin_slug , $plugin_version , $remote_download_slug )
|
33 |
+
{
|
34 |
+
$this->plugin_basename = plugin_basename( $plugin_file );
|
35 |
+
$this->plugin_slug = $plugin_slug;
|
36 |
+
$this->plugin_label = $plugin_label;
|
37 |
+
$this->plugin_version = $plugin_version;
|
38 |
+
$this->remote_download_slug = $remote_download_slug;
|
39 |
+
$this->master_license_key = get_option('inboundnow_master_license_key' , '');
|
40 |
+
$this->remote_api_url = INBOUNDNOW_STORE_URL;
|
41 |
+
|
42 |
+
$this->hooks();
|
43 |
+
}
|
44 |
+
|
45 |
+
|
46 |
+
private function hooks() {
|
47 |
+
|
48 |
+
/* Add licenses key to global settings array */
|
49 |
+
add_filter( 'lp_define_global_settings', array( $this, 'lp_settings' ), 2 );
|
50 |
+
add_filter( 'wp_cta_define_global_settings', array( $this, 'wp_cta_settings' ), 2 );
|
51 |
+
add_filter( 'wpleads_define_global_settings', array( $this, 'wpleads_settings' ), 2 );
|
52 |
+
|
53 |
+
/* save license key data / activate license keys */
|
54 |
+
if (is_admin())
|
55 |
+
$this->save_license_field();
|
56 |
+
|
57 |
+
/* render license key settings in license keys tab */
|
58 |
+
add_action('lp_render_global_settings', array( $this, 'display_license_field' ) );
|
59 |
+
add_action('wpleads_render_global_settings', array( $this, 'display_license_field' ) );
|
60 |
+
add_action('wp_cta_render_global_settings', array( $this, 'display_license_field' ) );
|
61 |
+
|
62 |
+
/* add automatic updates to plugin */
|
63 |
+
//update_option('_site_transient_update_plugins',''); //uncomment to force upload update check
|
64 |
+
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'pre_set_site_transient_update_plugins_filter' ) );
|
65 |
+
add_filter( 'plugins_api', array( $this, 'plugins_api_filter' ), 10, 3);
|
66 |
+
|
67 |
+
}
|
68 |
+
|
69 |
+
public function lp_settings( $lp_global_settings ) {
|
70 |
+
$lp_global_settings['lp-license-keys']['settings'][$this->plugin_slug] = array(
|
71 |
+
'id' => $this->plugin_slug,
|
72 |
+
'slug' => $this->plugin_slug,
|
73 |
+
'remote_download_slug' => $this->remote_download_slug,
|
74 |
+
'label' => sprintf( __( '%1$s', 'lp' ), $this->plugin_label ),
|
75 |
+
'description' => 'Head to http://www.inboundnow.com/ to retrieve your license key for '.$this->plugin_label,
|
76 |
+
'type' => 'inboundnow-license-key',
|
77 |
+
'default' => $this->master_license_key
|
78 |
+
);
|
79 |
+
|
80 |
+
return $lp_global_settings;
|
81 |
+
}
|
82 |
+
|
83 |
+
public function wp_cta_settings( $wp_cta_global_settings ) {
|
84 |
+
|
85 |
+
$wp_cta_global_settings['wp-cta-license-keys']['settings'][$this->plugin_slug] = array(
|
86 |
+
'id' => $this->plugin_slug,
|
87 |
+
'slug' => $this->plugin_slug,
|
88 |
+
'remote_download_slug' => $this->remote_download_slug,
|
89 |
+
'label' => sprintf( __( '%1$s', 'lp' ), $this->plugin_label ),
|
90 |
+
'description' => 'Head to http://www.inboundnow.com/ to retrieve your license key for '.$this->plugin_label,
|
91 |
+
'type' => 'inboundnow-license-key',
|
92 |
+
'default' => ''
|
93 |
+
);
|
94 |
+
|
95 |
+
return $wp_cta_global_settings;
|
96 |
+
}
|
97 |
+
|
98 |
+
|
99 |
+
public function wpleads_settings( $wpleads_global_settings ) {
|
100 |
+
$wpleads_global_settings['wpleads-license-keys']['label'] = 'License Keys';
|
101 |
+
$wpleads_global_settings['wpleads-license-keys']['settings'][$this->plugin_slug] = array(
|
102 |
+
'id' => $this->plugin_slug,
|
103 |
+
'slug' => $this->plugin_slug,
|
104 |
+
'remote_download_slug' => $this->remote_download_slug,
|
105 |
+
'label' => sprintf( __( '%1$s', 'lp' ), $this->plugin_label ),
|
106 |
+
'description' => 'Head to http://www.inboundnow.com/ to retrieve your license key for '.$this->plugin_label,
|
107 |
+
'type' => 'inboundnow-license-key',
|
108 |
+
'default' => $this->master_license_key
|
109 |
+
);
|
110 |
+
|
111 |
+
//print_r($lp_global_settings);exit;
|
112 |
+
return $wpleads_global_settings;
|
113 |
+
}
|
114 |
+
|
115 |
+
|
116 |
+
|
117 |
+
function display_license_field($field)
|
118 |
+
{
|
119 |
+
if ( $field['type']=='inboundnow-license-key' && ($field['slug']==$this->plugin_slug) )
|
120 |
+
{
|
121 |
+
|
122 |
+
$field['id'] = "inboundnow-license-keys-".$field['slug'];
|
123 |
+
$field['value'] = get_option('inboundnow_master_license_key' , '');
|
124 |
+
|
125 |
+
echo '<input type="hidden" name="'.$field['id'].'" id="'.$field['id'].'" value="'.$field['value'].'" size="30" />';
|
126 |
+
|
127 |
+
|
128 |
+
switch ($_GET['post_type']){
|
129 |
+
|
130 |
+
case "landing-page":
|
131 |
+
$prefix = "lp_";
|
132 |
+
break;
|
133 |
+
case "wp-lead":
|
134 |
+
$prefix = "wpleads_";
|
135 |
+
break;
|
136 |
+
case "wp-call-to-action":
|
137 |
+
$prefix = "wp_cta_";
|
138 |
+
break;
|
139 |
+
|
140 |
+
}
|
141 |
+
//echo here;exit;
|
142 |
+
$license_status = $this->check_license_status($field);
|
143 |
+
|
144 |
+
echo '<input type="hidden" name="inboundnow_license_status-'.$field['slug'].'" id="'.$field['id'].'" value="'.$license_status.'" size="30" />';
|
145 |
+
|
146 |
+
|
147 |
+
if ($license_status=='valid')
|
148 |
+
{
|
149 |
+
echo '<div class="'.$prefix.'license_status_valid">Enabled</div>';
|
150 |
+
}
|
151 |
+
else
|
152 |
+
{
|
153 |
+
echo '<div class="'.$prefix.'license_status_invalid">Disabled</div>';
|
154 |
+
}
|
155 |
+
|
156 |
+
echo '<div class="'.$prefix.'tooltip tool_text" title="'.$field['description'].'"></div>';
|
157 |
+
}
|
158 |
+
}
|
159 |
+
|
160 |
+
|
161 |
+
|
162 |
+
public function check_license_status($field)
|
163 |
+
{
|
164 |
+
|
165 |
+
$date = date("Y-m-d");
|
166 |
+
$cache_date = get_option($field['id']."-expire");
|
167 |
+
$license_status = get_option('inboundnow_license_status_'.$this->plugin_slug);
|
168 |
+
|
169 |
+
/*
|
170 |
+
echo "date: $date <br>";
|
171 |
+
echo "cache date: $cache_date <br>";
|
172 |
+
echo "license status: $license_status <br>";
|
173 |
+
echo "license key: ".$field['value'];
|
174 |
+
echo "<br>";
|
175 |
+
*/
|
176 |
+
|
177 |
+
if (isset($cache_date)&&($date<$cache_date)&&$license_status=='valid')
|
178 |
+
{
|
179 |
+
return "valid";
|
180 |
+
}
|
181 |
+
|
182 |
+
$api_params = array(
|
183 |
+
'edd_action' => 'check_license',
|
184 |
+
'license' => $field['value'],
|
185 |
+
'item_name' => urlencode( $this->remote_download_slug ) ,
|
186 |
+
'cache_bust'=> substr(md5(rand()),0,7)
|
187 |
+
);
|
188 |
+
|
189 |
+
//print_r($api_params);
|
190 |
+
//echo '<br>';
|
191 |
+
|
192 |
+
// Call the custom API.
|
193 |
+
$response = wp_remote_get( add_query_arg( $api_params, $this->remote_api_url ), array( 'timeout' => 15, 'sslverify' => false ) );
|
194 |
+
//print_r($response['body']);exit;
|
195 |
+
|
196 |
+
if ( is_wp_error( $response ) )
|
197 |
+
return false;
|
198 |
+
|
199 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
200 |
+
//print_r($license_data);exit;
|
201 |
+
|
202 |
+
if( $license_data->license == 'valid' ) {
|
203 |
+
$newDate = date('Y-m-d', strtotime($license_data->expires));
|
204 |
+
update_option($field['id']."-expire", $newDate);
|
205 |
+
return 'valid';
|
206 |
+
// this license is still valid
|
207 |
+
} else {
|
208 |
+
return 'invalid';
|
209 |
+
}
|
210 |
+
}
|
211 |
+
|
212 |
+
|
213 |
+
|
214 |
+
/* SAVE & ACTIVATE LICENSE & CHECK STATUS OF KEYS */
|
215 |
+
|
216 |
+
|
217 |
+
public function save_license_field()
|
218 |
+
{
|
219 |
+
|
220 |
+
if (!isset($_POST['inboundnow_master_license_key']))
|
221 |
+
return;
|
222 |
+
|
223 |
+
$field_id = "inboundnow-license-keys-".$this->plugin_slug;
|
224 |
+
|
225 |
+
$license_status = get_option('inboundnow_license_status_'.$this->plugin_slug );
|
226 |
+
|
227 |
+
$master_license_key = $_POST['inboundnow_master_license_key'];
|
228 |
+
|
229 |
+
/*
|
230 |
+
echo "license status:".$license_status;
|
231 |
+
echo "<br>";
|
232 |
+
echo "new_key:".$master_license_key;
|
233 |
+
echo "<br>";
|
234 |
+
echo "old_key:".$this->master_license_key;
|
235 |
+
echo "<br>";
|
236 |
+
echo "plugin_slug:".$this->plugin_slug;
|
237 |
+
echo "<hr>";
|
238 |
+
*/
|
239 |
+
|
240 |
+
if ($license_status=='valid' && $master_license_key == $this->master_license_key )
|
241 |
+
return;
|
242 |
+
|
243 |
+
if ( $master_license_key )
|
244 |
+
{
|
245 |
+
update_option($field_id ,$master_license_key);
|
246 |
+
|
247 |
+
// data to send in our API request
|
248 |
+
$api_params = array(
|
249 |
+
'edd_action'=> 'activate_license',
|
250 |
+
'license' => $master_license_key,
|
251 |
+
'item_name' => $this->remote_download_slug ,
|
252 |
+
'cache_bust'=> substr(md5(rand()),0,7)
|
253 |
+
);
|
254 |
+
//print_r($api_params);
|
255 |
+
|
256 |
+
|
257 |
+
// Call the custom API.
|
258 |
+
$response = wp_remote_get( add_query_arg( $api_params, $this->remote_api_url ), array( 'timeout' => 30, 'sslverify' => false ) );
|
259 |
+
//echo $response['body'];
|
260 |
+
//echo "<hr>";
|
261 |
+
|
262 |
+
// decode the license data
|
263 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
264 |
+
|
265 |
+
// $license_data->license will be either "active" or "inactive"
|
266 |
+
$license_status = update_option('inboundnow_license_status_'.$this->plugin_slug, $license_data->license);
|
267 |
+
|
268 |
+
}
|
269 |
+
elseif ( empty($master_license_key) )
|
270 |
+
{
|
271 |
+
update_option($field_id , '' );
|
272 |
+
update_option('inboundnow_license_status_'.$this->plugin_slug, 'inactive');
|
273 |
+
}
|
274 |
+
}
|
275 |
+
/**
|
276 |
+
* Check for Updates at the defined API endpoint and modify the update array.
|
277 |
+
*
|
278 |
+
* This function dives into the update api just when Wordpress creates its update array,
|
279 |
+
* then adds a custom API call and injects the custom plugin data retrieved from the API.
|
280 |
+
* It is reassembled from parts of the native Wordpress plugin update code.
|
281 |
+
* See wp-includes/update.php line 121 for the original wp_update_plugins() function.
|
282 |
+
*
|
283 |
+
* @uses api_request()
|
284 |
+
*
|
285 |
+
* @param array $_transient_data Update array build by Wordpress.
|
286 |
+
* @return array Modified update array with custom plugin data.
|
287 |
+
*/
|
288 |
+
|
289 |
+
public function pre_set_site_transient_update_plugins_filter( $_transient_data )
|
290 |
+
{
|
291 |
+
|
292 |
+
if( empty( $_transient_data ) ) return $_transient_data;
|
293 |
+
|
294 |
+
$to_send = array( 'slug' => $this->plugin_slug );
|
295 |
+
|
296 |
+
$api_response = $this->api_request( );
|
297 |
+
|
298 |
+
|
299 |
+
if( false !== $api_response && is_object( $api_response ) )
|
300 |
+
{
|
301 |
+
if( version_compare( $this->plugin_version, $api_response->new_version, '<' ) )
|
302 |
+
$_transient_data->response[$this->plugin_basename] = $api_response;
|
303 |
+
}
|
304 |
+
|
305 |
+
return $_transient_data;
|
306 |
+
}
|
307 |
+
|
308 |
+
|
309 |
+
/** Updates information on the "View version x.x details" page with custom data. */
|
310 |
+
public function plugins_api_filter( $_data, $_action = '', $_args = null ) {
|
311 |
+
|
312 |
+
if ( ( $_action != 'plugin_information' ) || !isset( $_args->slug ) || ( $_args->slug != $this->plugin_slug ) ) return $_data;
|
313 |
+
|
314 |
+
$api_response = $this->api_request();
|
315 |
+
|
316 |
+
if ( false !== $api_response ) $_data = $api_response;
|
317 |
+
|
318 |
+
return $_data;
|
319 |
+
}
|
320 |
+
|
321 |
+
/*** Calls the API and, if successfull, returns the object delivered by the API. */
|
322 |
+
public function api_request( ) {
|
323 |
+
|
324 |
+
$api_params = array(
|
325 |
+
'edd_action' => 'get_version',
|
326 |
+
'license' => $this->master_license_key,
|
327 |
+
'name' => $this->remote_download_slug,
|
328 |
+
'slug' => $this->plugin_slug
|
329 |
+
);
|
330 |
+
|
331 |
+
//print_r($api_params);
|
332 |
+
// echo "<hr>";
|
333 |
+
|
334 |
+
$request = wp_remote_post( $this->remote_api_url, array( 'timeout' => 15, 'sslverify' => false, 'body' => $api_params ) );
|
335 |
+
|
336 |
+
|
337 |
+
if ( !is_wp_error( $request ) ):
|
338 |
+
$request = json_decode( wp_remote_retrieve_body( $request ) );
|
339 |
+
if( $request )
|
340 |
+
$request->sections = maybe_unserialize( $request->sections );
|
341 |
+
return $request;
|
342 |
+
else:
|
343 |
+
return false;
|
344 |
+
endif;
|
345 |
+
}
|
346 |
+
|
347 |
+
}
|
348 |
+
} // end class_exists check
|
shared/inboundnow/inboundnow.extension-licensing.php
CHANGED
@@ -22,7 +22,8 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_LICENSE' ) ) :
|
|
22 |
class INBOUNDNOW_EXTENSION_LICENSE {
|
23 |
private $item_slug;
|
24 |
private $item_shortname;
|
25 |
-
private $version;
|
|
|
26 |
|
27 |
/**
|
28 |
* Class constructor
|
@@ -38,6 +39,7 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_LICENSE' ) ) :
|
|
38 |
|
39 |
$this->item_label = $_item_label;
|
40 |
$this->item_slug = $_item_slug;
|
|
|
41 |
|
42 |
// Setup hooks
|
43 |
$this->hooks();
|
@@ -52,9 +54,26 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_LICENSE' ) ) :
|
|
52 |
|
53 |
private function hooks() {
|
54 |
// Register settings
|
55 |
-
add_filter( 'lp_define_global_settings', array( $this, 'lp_settings' ),
|
56 |
-
add_filter( 'wp_cta_define_global_settings', array( $this, 'wp_cta_settings' ),
|
57 |
-
add_filter( 'wpleads_define_global_settings', array( $this, 'wpleads_settings' ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
}
|
60 |
|
@@ -125,156 +144,150 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_LICENSE' ) ) :
|
|
125 |
}
|
126 |
|
127 |
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
/**
|
132 |
-
* HOOKS : display license field in global settings area
|
133 |
-
*/
|
134 |
-
|
135 |
-
add_action('lp_render_global_settings','inboundnow_display_license_field');
|
136 |
-
add_action('wpleads_render_global_settings','inboundnow_display_license_field');
|
137 |
-
add_action('wp_cta_render_global_settings','inboundnow_display_license_field');
|
138 |
-
function inboundnow_display_license_field($field)
|
139 |
-
{
|
140 |
-
if ($field['type']=='inboundnow-license-key')
|
141 |
{
|
142 |
-
$field['
|
143 |
-
$field['value'] = get_option($field['id']);
|
144 |
-
|
145 |
-
switch ($_GET['post_type']){
|
146 |
-
|
147 |
-
case "landing-page":
|
148 |
-
$prefix = "lp_";
|
149 |
-
break;
|
150 |
-
case "wp-lead":
|
151 |
-
$prefix = "wpleads_";
|
152 |
-
break;
|
153 |
-
case "wp-call-to-action":
|
154 |
-
$prefix = "wp_cta_";
|
155 |
-
break;
|
156 |
-
|
157 |
-
}
|
158 |
-
//echo here;exit;
|
159 |
-
$license_status = inboundnow_check_license_status($field);
|
160 |
-
//echo $license_status;exit;
|
161 |
-
echo '<input type="hidden" name="inboundnow_license_status-'.$field['slug'].'" id="'.$field['id'].'" value="'.$license_status.'" size="30" />
|
162 |
-
<input type="text" name="'.$field['id'].'" id="'.$field['id'].'" value="'.$field['value'].'" size="30" />
|
163 |
-
<div class="'.$prefix.'tooltip tool_text" title="'.$field['description'].'"></div>';
|
164 |
-
|
165 |
-
if ($license_status=='valid')
|
166 |
{
|
167 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
168 |
}
|
169 |
-
else
|
170 |
-
{
|
171 |
-
echo '<div class="'.$prefix.'license_status_invalid">Invalid</div>';
|
172 |
-
}
|
173 |
}
|
174 |
-
}
|
175 |
|
176 |
|
177 |
-
|
178 |
-
|
179 |
-
*/
|
180 |
-
|
181 |
-
add_action('lp_save_global_settings','inboundnow_save_license_field');
|
182 |
-
add_action('wpleads_save_global_settings','inboundnow_save_license_field');
|
183 |
-
add_action('wp_cta_save_global_settings','inboundnow_save_license_field');
|
184 |
-
function inboundnow_save_license_field($field)
|
185 |
-
{
|
186 |
-
if ($field['type']=='inboundnow-license-key')
|
187 |
{
|
188 |
-
|
189 |
-
$field['id'] = "inboundnow-license-keys-".$field['slug'];
|
190 |
-
$field['old_value'] = get_option($field['id'] );
|
191 |
-
|
192 |
-
(isset($_POST[$field['id'] ]))? $field['new_value'] = $_POST[$field['id'] ] : $field['new_value'] = null;
|
193 |
-
|
194 |
-
if ((isset($field['new_value']) && $field['new_value'] !== $field['old_value'] ) || !isset($field['old_value']) )
|
195 |
{
|
196 |
-
//echo $field['id'];
|
197 |
-
$
|
198 |
-
|
199 |
-
|
200 |
-
// data to send in our API request
|
201 |
-
$api_params = array(
|
202 |
-
'edd_action'=> 'activate_license',
|
203 |
-
'license' => $field['new_value'],
|
204 |
-
'item_name' => $field['slug'] ,
|
205 |
-
'cache_bust'=> substr(md5(rand()),0,7)
|
206 |
-
);
|
207 |
-
//print_r($api_params);
|
208 |
|
209 |
-
|
210 |
-
$response = wp_remote_get( add_query_arg( $api_params, INBOUNDNOW_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
211 |
-
//var_dump($response);
|
212 |
|
213 |
-
|
214 |
-
|
215 |
-
|
|
|
|
|
216 |
|
217 |
-
|
218 |
-
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
228 |
}
|
229 |
}
|
230 |
-
}
|
231 |
|
232 |
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
|
237 |
-
|
238 |
-
{
|
239 |
-
//print_r($field);exit;
|
240 |
-
$date = date("Y-m-d");
|
241 |
-
$cache_date = get_option($field['id']."-expire");
|
242 |
-
$license_status = get_option($field['id']);
|
243 |
-
|
244 |
-
if (isset($cache_date)&&($date<$cache_date)&&$license_status=='valid')
|
245 |
{
|
246 |
-
|
247 |
-
|
|
|
|
|
248 |
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
|
|
|
|
|
|
|
|
|
|
262 |
|
263 |
-
|
264 |
-
|
265 |
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
|
|
276 |
}
|
277 |
}
|
278 |
|
279 |
-
|
280 |
endif; // end class_exists check
|
22 |
class INBOUNDNOW_EXTENSION_LICENSE {
|
23 |
private $item_slug;
|
24 |
private $item_shortname;
|
25 |
+
private $version;
|
26 |
+
private $master_license_key;
|
27 |
|
28 |
/**
|
29 |
* Class constructor
|
39 |
|
40 |
$this->item_label = $_item_label;
|
41 |
$this->item_slug = $_item_slug;
|
42 |
+
$this->master_license_key = get_option('inboundnow_master_license_key' , '');
|
43 |
|
44 |
// Setup hooks
|
45 |
$this->hooks();
|
54 |
|
55 |
private function hooks() {
|
56 |
// Register settings
|
57 |
+
add_filter( 'lp_define_global_settings', array( $this, 'lp_settings' ), 2 );
|
58 |
+
add_filter( 'wp_cta_define_global_settings', array( $this, 'wp_cta_settings' ), 2 );
|
59 |
+
add_filter( 'wpleads_define_global_settings', array( $this, 'wpleads_settings' ), 2 );
|
60 |
+
|
61 |
+
/**
|
62 |
+
* HOOKS : display license field in global settings area
|
63 |
+
*/
|
64 |
+
|
65 |
+
add_action('lp_render_global_settings', array( $this, 'display_license_field'));
|
66 |
+
add_action('wpleads_render_global_settings', array( $this, 'display_license_field'));
|
67 |
+
add_action('wp_cta_render_global_settings', array( $this, 'display_license_field'));
|
68 |
+
|
69 |
+
|
70 |
+
/**
|
71 |
+
* HOOKS : display license field in global settings area
|
72 |
+
*/
|
73 |
+
|
74 |
+
add_action('lp_save_global_settings', array( $this, 'save_license_field'));
|
75 |
+
add_action('wpleads_save_global_settings', array( $this, 'save_license_field'));
|
76 |
+
add_action('wp_cta_save_global_settings', array( $this, 'save_license_field'));
|
77 |
|
78 |
}
|
79 |
|
144 |
}
|
145 |
|
146 |
|
147 |
+
|
148 |
+
public function display_license_field($field)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
149 |
{
|
150 |
+
if ( $field['type']=='inboundnow-license-key' && ($field['slug']==$this->item_slug) )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
151 |
{
|
152 |
+
|
153 |
+
$field['id'] = "inboundnow-license-keys-".$field['slug'];
|
154 |
+
|
155 |
+
$field['value'] = get_option($field['id']);
|
156 |
+
|
157 |
+
switch ($_GET['post_type']){
|
158 |
+
|
159 |
+
case "landing-page":
|
160 |
+
$prefix = "lp_";
|
161 |
+
break;
|
162 |
+
case "wp-lead":
|
163 |
+
$prefix = "wpleads_";
|
164 |
+
break;
|
165 |
+
case "wp-call-to-action":
|
166 |
+
$prefix = "wp_cta_";
|
167 |
+
break;
|
168 |
+
|
169 |
+
}
|
170 |
+
//echo here;exit;
|
171 |
+
$license_status = $this->check_license_status($field);
|
172 |
+
//echo $license_status;exit;
|
173 |
+
echo '<input type="hidden" name="inboundnow_license_status-'.$field['slug'].'" id="'.$field['id'].'" value="'.$license_status.'" size="30" />
|
174 |
+
<input type="text" name="'.$field['id'].'" id="'.$field['id'].'" value="'.$field['value'].'" size="30" />
|
175 |
+
<div class="'.$prefix.'tooltip tool_text" title="'.$field['description'].'"></div>';
|
176 |
+
|
177 |
+
if ($license_status=='valid')
|
178 |
+
{
|
179 |
+
echo '<div class="'.$prefix.'license_status_valid">Valid</div>';
|
180 |
+
}
|
181 |
+
else
|
182 |
+
{
|
183 |
+
echo '<div class="'.$prefix.'license_status_invalid">Invalid</div>';
|
184 |
+
}
|
185 |
}
|
|
|
|
|
|
|
|
|
186 |
}
|
|
|
187 |
|
188 |
|
189 |
+
|
190 |
+
function save_license_field($field)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
{
|
192 |
+
if ($field['type']=='inboundnow-license-key')
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
{
|
194 |
+
//echo $field['id'].":".$_POST['main-landing-page-auto-format-forms']."<br>";
|
195 |
+
$field['id'] = "inboundnow-license-keys-".$field['slug'];
|
196 |
+
$field['old_value'] = get_option($field['id'] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
|
198 |
+
(isset($_POST[$field['id'] ]))? $field['new_value'] = $_POST[$field['id'] ] : $field['new_value'] = null;
|
|
|
|
|
199 |
|
200 |
+
if ((isset($field['new_value']) && $field['new_value'] !== $field['old_value'] ) || !isset($field['old_value']) )
|
201 |
+
{
|
202 |
+
//echo $field['id'];exit;
|
203 |
+
$bool = update_option($field['id'],$field['new_value']);
|
204 |
+
|
205 |
|
206 |
+
// data to send in our API request
|
207 |
+
$api_params = array(
|
208 |
+
'edd_action'=> 'activate_license',
|
209 |
+
'license' => $field['new_value'],
|
210 |
+
'item_name' => $field['slug'] ,
|
211 |
+
'cache_bust'=> substr(md5(rand()),0,7)
|
212 |
+
);
|
213 |
+
//print_r($api_params);
|
214 |
+
|
215 |
+
// Call the custom API.
|
216 |
+
$response = wp_remote_get( add_query_arg( $api_params, INBOUNDNOW_STORE_URL ), array( 'timeout' => 30, 'sslverify' => false ) );
|
217 |
+
//var_dump($response);
|
218 |
+
|
219 |
+
// make sure the response came back okay
|
220 |
+
if ( is_wp_error( $response ) )
|
221 |
+
$_SESSION['license_error_'. $field['slug']] = $response['body'];
|
222 |
|
223 |
+
// decode the license data
|
224 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
225 |
+
|
226 |
+
|
227 |
+
// $license_data->license will be either "active" or "inactive"
|
228 |
+
$license_status = update_option('inboundnow-license_status-'.$field['slug'], $license_data->license);
|
229 |
+
|
230 |
+
}
|
231 |
+
elseif ('' == $field['new_value'] )
|
232 |
+
{
|
233 |
+
if ($this->master_license_key)
|
234 |
+
{
|
235 |
+
$bool = update_option($field['id'], $this->master_license_key );
|
236 |
+
}
|
237 |
+
else
|
238 |
+
{
|
239 |
+
update_option($field['id'], '' );
|
240 |
+
}
|
241 |
+
}
|
242 |
}
|
243 |
}
|
|
|
244 |
|
245 |
|
246 |
+
/**
|
247 |
+
* FUNCTIONS : checks the status of the license key
|
248 |
+
*/
|
249 |
|
250 |
+
function check_license_status($field)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
251 |
{
|
252 |
+
//print_r($field);exit;
|
253 |
+
$date = date("Y-m-d");
|
254 |
+
$cache_date = get_option($field['id']."-expire");
|
255 |
+
$license_status = get_option($field['id']);
|
256 |
|
257 |
+
if (isset($cache_date)&&($date<$cache_date)&&$license_status=='valid')
|
258 |
+
{
|
259 |
+
return "valid";
|
260 |
+
}
|
261 |
+
|
262 |
+
$license_key = get_option($field['id']);
|
263 |
+
|
264 |
+
$api_params = array(
|
265 |
+
'edd_action' => 'check_license',
|
266 |
+
'license' => $license_key,
|
267 |
+
'item_name' => urlencode( $field['slug'] ) ,
|
268 |
+
'cache_bust'=> substr(md5(rand()),0,7)
|
269 |
+
);
|
270 |
+
//print_r($api_params);
|
271 |
+
|
272 |
+
// Call the custom API.
|
273 |
+
$response = wp_remote_get( add_query_arg( $api_params, INBOUNDNOW_STORE_URL ), array( 'timeout' => 15, 'sslverify' => false ) );
|
274 |
+
//print_r($response);
|
275 |
|
276 |
+
if ( is_wp_error( $response ) )
|
277 |
+
return false;
|
278 |
|
279 |
+
$license_data = json_decode( wp_remote_retrieve_body( $response ) );
|
280 |
+
//echo $license_data;exit;
|
281 |
+
|
282 |
+
if( $license_data->license == 'valid' ) {
|
283 |
+
$newDate = date('Y-m-d', strtotime("+15 days"));
|
284 |
+
update_option($field['id']."-expire", $newDate);
|
285 |
+
return 'valid';
|
286 |
+
// this license is still valid
|
287 |
+
} else {
|
288 |
+
return 'invalid';
|
289 |
+
}
|
290 |
}
|
291 |
}
|
292 |
|
|
|
293 |
endif; // end class_exists check
|
shared/inboundnow/inboundnow.extension-updating.php
CHANGED
@@ -16,6 +16,7 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_UPDATER' ) ) :
|
|
16 |
private $api_data = array();
|
17 |
private $name = '';
|
18 |
private $slug = '';
|
|
|
19 |
|
20 |
/**
|
21 |
* Class constructor.
|
@@ -24,17 +25,18 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_UPDATER' ) ) :
|
|
24 |
* @uses hook()
|
25 |
*
|
26 |
* @param string $_api_url The URL pointing to the custom API endpoint.
|
27 |
-
* @param string $
|
28 |
* @param array $_api_data Optional data to send with API calls.
|
29 |
* @return void
|
30 |
*/
|
31 |
-
function __construct( $_api_url, $
|
32 |
$this->api_url = trailingslashit( $_api_url );
|
33 |
$this->api_data = urlencode_deep( $_api_data );
|
34 |
-
$this->name =
|
35 |
-
$this->slug =
|
36 |
-
$this->version = $_api_data['version'];
|
37 |
-
|
|
|
38 |
// Set up hooks.
|
39 |
$this->hook();
|
40 |
}
|
@@ -50,7 +52,7 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_UPDATER' ) ) :
|
|
50 |
//update_option('_site_transient_update_plugins',''); //uncomment to force upload update check
|
51 |
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'pre_set_site_transient_update_plugins_filter' ) );
|
52 |
add_filter( 'plugins_api', array( $this, 'plugins_api_filter' ), 10, 3);
|
53 |
-
//
|
54 |
}
|
55 |
|
56 |
/**
|
@@ -76,12 +78,12 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_UPDATER' ) ) :
|
|
76 |
|
77 |
$api_response = $this->api_request( 'plugin_latest_version', $to_send );
|
78 |
|
79 |
-
|
80 |
echo $this->name;
|
81 |
echo "\r\n<br>\r\n";
|
82 |
echo $this->version;
|
83 |
print_r($api_response);
|
84 |
-
echo "\r\n<hr>\r\n";
|
85 |
*/
|
86 |
|
87 |
if( false !== $api_response && is_object( $api_response ) ) {
|
@@ -137,19 +139,30 @@ if ( ! class_exists( 'INBOUNDNOW_EXTENSION_UPDATER' ) ) :
|
|
137 |
global $wp_version;
|
138 |
|
139 |
$data = array_merge( $this->api_data, $_data );
|
140 |
-
|
141 |
-
|
|
|
142 |
|
|
|
|
|
|
|
143 |
$api_params = array(
|
144 |
'edd_action' => 'get_version',
|
145 |
'license' => $data['license'],
|
146 |
'name' => $data['item_name'],
|
147 |
-
'slug' => $
|
148 |
//'author' => $data['author'],
|
149 |
'nature' => 'extension',
|
150 |
);
|
151 |
$request = wp_remote_post( $this->api_url, array( 'timeout' => 15, 'sslverify' => false, 'body' => $api_params ) );
|
152 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
if ( !is_wp_error( $request ) ):
|
154 |
$request = json_decode( wp_remote_retrieve_body( $request ) );
|
155 |
if( $request )
|
16 |
private $api_data = array();
|
17 |
private $name = '';
|
18 |
private $slug = '';
|
19 |
+
private $global_license;
|
20 |
|
21 |
/**
|
22 |
* Class constructor.
|
25 |
* @uses hook()
|
26 |
*
|
27 |
* @param string $_api_url The URL pointing to the custom API endpoint.
|
28 |
+
* @param string $_remote_key permalink slug of remote download
|
29 |
* @param array $_api_data Optional data to send with API calls.
|
30 |
* @return void
|
31 |
*/
|
32 |
+
function __construct( $_api_url, $_remote_key, $_api_data = null ) {
|
33 |
$this->api_url = trailingslashit( $_api_url );
|
34 |
$this->api_data = urlencode_deep( $_api_data );
|
35 |
+
$this->name = $_api_data['item_name'];
|
36 |
+
$this->slug = $_remote_key;
|
37 |
+
$this->version = $_api_data['version'];
|
38 |
+
$this->global_license = get_option('inboundnow_master_license_key' , '');
|
39 |
+
|
40 |
// Set up hooks.
|
41 |
$this->hook();
|
42 |
}
|
52 |
//update_option('_site_transient_update_plugins',''); //uncomment to force upload update check
|
53 |
add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'pre_set_site_transient_update_plugins_filter' ) );
|
54 |
add_filter( 'plugins_api', array( $this, 'plugins_api_filter' ), 10, 3);
|
55 |
+
//print_r($this);exit;
|
56 |
}
|
57 |
|
58 |
/**
|
78 |
|
79 |
$api_response = $this->api_request( 'plugin_latest_version', $to_send );
|
80 |
|
81 |
+
/*
|
82 |
echo $this->name;
|
83 |
echo "\r\n<br>\r\n";
|
84 |
echo $this->version;
|
85 |
print_r($api_response);
|
86 |
+
echo "\r\n<hr>\r\n";exit;
|
87 |
*/
|
88 |
|
89 |
if( false !== $api_response && is_object( $api_response ) ) {
|
139 |
global $wp_version;
|
140 |
|
141 |
$data = array_merge( $this->api_data, $_data );
|
142 |
+
|
143 |
+
//if( $data['slug'] != $this->slug )
|
144 |
+
//return;
|
145 |
|
146 |
+
if (isset($this->global_license))
|
147 |
+
$data['license'] = $this->global_license;
|
148 |
+
|
149 |
$api_params = array(
|
150 |
'edd_action' => 'get_version',
|
151 |
'license' => $data['license'],
|
152 |
'name' => $data['item_name'],
|
153 |
+
'slug' => $data['slug'],
|
154 |
//'author' => $data['author'],
|
155 |
'nature' => 'extension',
|
156 |
);
|
157 |
$request = wp_remote_post( $this->api_url, array( 'timeout' => 15, 'sslverify' => false, 'body' => $api_params ) );
|
158 |
+
|
159 |
+
if (strstr( $data['item_name'], 'aweber'))
|
160 |
+
{
|
161 |
+
//echo $request['body'];exit;
|
162 |
+
//print_r( json_decode($request['body'] , true) ) ;
|
163 |
+
//echo '<hr>';
|
164 |
+
}
|
165 |
+
|
166 |
if ( !is_wp_error( $request ) ):
|
167 |
$request = json_decode( wp_remote_retrieve_body( $request ) );
|
168 |
if( $request )
|
shared/inboundnow/inboundnow.global-settings.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if (!function_exists('inboundnow_add_master_license'))
|
4 |
+
{
|
5 |
+
/* Add Master License Key Setting*/
|
6 |
+
add_filter('lp_define_global_settings', 'inboundnow_add_master_license', 1, 1);
|
7 |
+
add_filter('wpleads_define_global_settings', 'inboundnow_add_master_license', 1, 1);
|
8 |
+
add_filter('wpcta_define_global_settings', 'inboundnow_add_master_license', 1, 1);
|
9 |
+
function inboundnow_add_master_license($lp_global_settings)
|
10 |
+
{
|
11 |
+
if (array_key_exists('lp-license-keys',$lp_global_settings))
|
12 |
+
{
|
13 |
+
$lp_global_settings['lp-license-keys']['settings'][] = array(
|
14 |
+
'id' => 'extensions-license-keys-master-key-header',
|
15 |
+
'description' => __( "Head to http://www.inboundnow.com/ to retrieve your extension-ready license key." , LANDINGPAGES_TEXT_DOMAIN),
|
16 |
+
'type' => 'header',
|
17 |
+
'default' => '<h3 class="lp_global_settings_header">'. __( 'InboundNow Master Key' , LANDINGPAGES_TEXT_DOMAIN) .'</h3>'
|
18 |
+
);
|
19 |
+
|
20 |
+
$lp_global_settings['lp-license-keys']['settings'][] = array(
|
21 |
+
'id' => 'inboundnow_master_license_key',
|
22 |
+
'option_name' => 'inboundnow_master_license_key',
|
23 |
+
'label' => __('InboundNow Master License Key' , LANDINGPAGES_TEXT_DOMAIN),
|
24 |
+
'description' => __( "Head to http://www.inboundnow.com/ to retrieve your extension-ready license key." , LANDINGPAGES_TEXT_DOMAIN),
|
25 |
+
'type' => 'text',
|
26 |
+
'default' => ''
|
27 |
+
);
|
28 |
+
}
|
29 |
+
|
30 |
+
return $lp_global_settings;
|
31 |
+
}
|
32 |
+
}
|
shared/languages/landing-pages.po
ADDED
@@ -0,0 +1,2437 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Landing Pages\n"
|
4 |
+
"POT-Creation-Date: 2013-11-25 15:59-0600\n"
|
5 |
+
"PO-Revision-Date: 2013-11-25 16:00-0600\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: InboundNow <support@inboundnow.com>\n"
|
8 |
+
"MIME-Version: 1.0\n"
|
9 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
+
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"X-Generator: Poedit 1.5.7\n"
|
12 |
+
"X-Poedit-KeywordsList: __;_e\n"
|
13 |
+
"X-Poedit-Basepath: ../../\n"
|
14 |
+
"X-Poedit-SearchPath-0: .\n"
|
15 |
+
"X-Poedit-SearchPath-1: modules\n"
|
16 |
+
|
17 |
+
#: libraries/class-tgm-plugin-activation.php:164
|
18 |
+
#: modules/module.install.php:164
|
19 |
+
msgid "Install Required Plugins"
|
20 |
+
msgstr ""
|
21 |
+
|
22 |
+
#: libraries/class-tgm-plugin-activation.php:165
|
23 |
+
#: modules/module.install.php:165
|
24 |
+
msgid "Install Plugins"
|
25 |
+
msgstr ""
|
26 |
+
|
27 |
+
#: libraries/class-tgm-plugin-activation.php:166
|
28 |
+
#: modules/module.install.php:166
|
29 |
+
#, php-format
|
30 |
+
msgid "Installing Plugin: %s"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: libraries/class-tgm-plugin-activation.php:167
|
34 |
+
msgid "Something went wrong."
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#: libraries/class-tgm-plugin-activation.php:178
|
38 |
+
#: libraries/class-tgm-plugin-activation.php:490
|
39 |
+
#: modules/module.install.php:178
|
40 |
+
msgid "Return to Required Plugins Installer"
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: libraries/class-tgm-plugin-activation.php:179
|
44 |
+
#: libraries/class-tgm-plugin-activation.php:1846
|
45 |
+
#: modules/module.install.php:179
|
46 |
+
msgid "Plugin activated successfully."
|
47 |
+
msgstr ""
|
48 |
+
|
49 |
+
#: libraries/class-tgm-plugin-activation.php:180
|
50 |
+
#, php-format
|
51 |
+
msgid "All plugins installed and activated successfully. %1$s"
|
52 |
+
msgstr ""
|
53 |
+
|
54 |
+
#: libraries/class-tgm-plugin-activation.php:517
|
55 |
+
#: libraries/class-tgm-plugin-activation.php:2058
|
56 |
+
msgid "Return to the Dashboard"
|
57 |
+
msgstr ""
|
58 |
+
|
59 |
+
#: libraries/class-tgm-plugin-activation.php:545
|
60 |
+
#, php-format
|
61 |
+
msgid "The following plugin was activated successfully: %s."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: libraries/class-tgm-plugin-activation.php:704
|
65 |
+
msgid "Dismiss this notice"
|
66 |
+
msgstr ""
|
67 |
+
|
68 |
+
#: libraries/class-tgm-plugin-activation.php:1091
|
69 |
+
msgid "External Link"
|
70 |
+
msgstr ""
|
71 |
+
|
72 |
+
#: libraries/class-tgm-plugin-activation.php:1096
|
73 |
+
msgid "Private Repository"
|
74 |
+
msgstr ""
|
75 |
+
|
76 |
+
#: libraries/class-tgm-plugin-activation.php:1099
|
77 |
+
msgid "Pre-Packaged"
|
78 |
+
msgstr ""
|
79 |
+
|
80 |
+
#: libraries/class-tgm-plugin-activation.php:1103
|
81 |
+
msgid "WordPress Repository"
|
82 |
+
msgstr ""
|
83 |
+
|
84 |
+
#: libraries/class-tgm-plugin-activation.php:1106
|
85 |
+
msgid "Required"
|
86 |
+
msgstr ""
|
87 |
+
|
88 |
+
#: libraries/class-tgm-plugin-activation.php:1106
|
89 |
+
msgid "Recommended"
|
90 |
+
msgstr ""
|
91 |
+
|
92 |
+
#: libraries/class-tgm-plugin-activation.php:1109
|
93 |
+
msgid "Not Installed"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: libraries/class-tgm-plugin-activation.php:1111
|
97 |
+
msgid "Installed But Not Activated"
|
98 |
+
msgstr ""
|
99 |
+
|
100 |
+
#: libraries/class-tgm-plugin-activation.php:1281
|
101 |
+
#, php-format
|
102 |
+
msgid ""
|
103 |
+
"No plugins to install or activate. <a href=\"%1$s\" title=\"Return to the "
|
104 |
+
"Dashboard\">Return to the Dashboard</a>"
|
105 |
+
msgstr ""
|
106 |
+
|
107 |
+
#: libraries/class-tgm-plugin-activation.php:1297
|
108 |
+
msgid "Plugin"
|
109 |
+
msgstr ""
|
110 |
+
|
111 |
+
#: libraries/class-tgm-plugin-activation.php:1298
|
112 |
+
msgid "Source"
|
113 |
+
msgstr ""
|
114 |
+
|
115 |
+
#: libraries/class-tgm-plugin-activation.php:1299
|
116 |
+
msgid "Type"
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: libraries/class-tgm-plugin-activation.php:1300
|
120 |
+
msgid "Status"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: libraries/class-tgm-plugin-activation.php:1318
|
124 |
+
msgid "Install"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: libraries/class-tgm-plugin-activation.php:1319
|
128 |
+
msgid "Activate"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: libraries/class-tgm-plugin-activation.php:1829
|
132 |
+
msgid "Install package not available."
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#: libraries/class-tgm-plugin-activation.php:1830
|
136 |
+
#, php-format
|
137 |
+
msgid "Downloading install package from <span class=\"code\">%s</span>…"
|
138 |
+
msgstr ""
|
139 |
+
|
140 |
+
#: libraries/class-tgm-plugin-activation.php:1831
|
141 |
+
msgid "Unpacking the package…"
|
142 |
+
msgstr ""
|
143 |
+
|
144 |
+
#: libraries/class-tgm-plugin-activation.php:1832
|
145 |
+
msgid "Installing the plugin…"
|
146 |
+
msgstr ""
|
147 |
+
|
148 |
+
#: libraries/class-tgm-plugin-activation.php:1833
|
149 |
+
msgid "Plugin install failed."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: libraries/class-tgm-plugin-activation.php:1834
|
153 |
+
msgid "Plugin installed successfully."
|
154 |
+
msgstr ""
|
155 |
+
|
156 |
+
#: libraries/class-tgm-plugin-activation.php:1845
|
157 |
+
msgid "Plugin activation failed."
|
158 |
+
msgstr ""
|
159 |
+
|
160 |
+
#: libraries/class-tgm-plugin-activation.php:1955
|
161 |
+
msgid ""
|
162 |
+
"The installation and activation process is starting. This process may take a "
|
163 |
+
"while on some hosts, so please be patient."
|
164 |
+
msgstr ""
|
165 |
+
|
166 |
+
#: libraries/class-tgm-plugin-activation.php:1956
|
167 |
+
#, php-format
|
168 |
+
msgid "%1$s installed and activated successfully."
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: libraries/class-tgm-plugin-activation.php:1956
|
172 |
+
#: libraries/class-tgm-plugin-activation.php:1965
|
173 |
+
msgid "Show Details"
|
174 |
+
msgstr ""
|
175 |
+
|
176 |
+
#: libraries/class-tgm-plugin-activation.php:1956
|
177 |
+
#: libraries/class-tgm-plugin-activation.php:1965
|
178 |
+
msgid "Hide Details"
|
179 |
+
msgstr ""
|
180 |
+
|
181 |
+
#: libraries/class-tgm-plugin-activation.php:1957
|
182 |
+
msgid "All installations and activations have been completed."
|
183 |
+
msgstr ""
|
184 |
+
|
185 |
+
#: libraries/class-tgm-plugin-activation.php:1958
|
186 |
+
#, php-format
|
187 |
+
msgid "Installing and Activating Plugin %1$s (%2$d/%3$d)"
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: libraries/class-tgm-plugin-activation.php:1962
|
191 |
+
msgid ""
|
192 |
+
"The installation process is starting. This process may take a while on some "
|
193 |
+
"hosts, so please be patient."
|
194 |
+
msgstr ""
|
195 |
+
|
196 |
+
#: libraries/class-tgm-plugin-activation.php:1963
|
197 |
+
#, php-format
|
198 |
+
msgid "An error occurred while installing %1$s: <strong>%2$s</strong>."
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: libraries/class-tgm-plugin-activation.php:1964
|
202 |
+
#, php-format
|
203 |
+
msgid "The installation of %1$s failed."
|
204 |
+
msgstr ""
|
205 |
+
|
206 |
+
#: libraries/class-tgm-plugin-activation.php:1965
|
207 |
+
#, php-format
|
208 |
+
msgid "%1$s installed successfully."
|
209 |
+
msgstr ""
|
210 |
+
|
211 |
+
#: libraries/class-tgm-plugin-activation.php:1966
|
212 |
+
msgid "All installations have been completed."
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: libraries/class-tgm-plugin-activation.php:1967
|
216 |
+
#, php-format
|
217 |
+
msgid "Installing Plugin %1$s (%2$d/%3$d)"
|
218 |
+
msgstr ""
|
219 |
+
|
220 |
+
#: modules/module.ab-testing.metaboxes.php:8
|
221 |
+
msgid "A/B Testing"
|
222 |
+
msgstr ""
|
223 |
+
|
224 |
+
#: modules/module.ab-testing.metaboxes.php:103
|
225 |
+
msgid "Variation"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: modules/module.ab-testing.metaboxes.php:108
|
229 |
+
msgid "Paused"
|
230 |
+
msgstr ""
|
231 |
+
|
232 |
+
#: modules/module.ab-testing.metaboxes.php:115
|
233 |
+
msgid "Delete this variations stats"
|
234 |
+
msgstr ""
|
235 |
+
|
236 |
+
#: modules/module.ab-testing.metaboxes.php:115
|
237 |
+
msgid "Clear Stats"
|
238 |
+
msgstr ""
|
239 |
+
|
240 |
+
#: modules/module.ab-testing.metaboxes.php:121
|
241 |
+
msgid "Views"
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: modules/module.ab-testing.metaboxes.php:125
|
245 |
+
msgid "Conversions"
|
246 |
+
msgstr ""
|
247 |
+
|
248 |
+
#: modules/module.ab-testing.metaboxes.php:129
|
249 |
+
msgid "Conversion Rate"
|
250 |
+
msgstr ""
|
251 |
+
|
252 |
+
#: modules/module.ab-testing.metaboxes.php:132
|
253 |
+
msgid "Pause this variation"
|
254 |
+
msgstr ""
|
255 |
+
|
256 |
+
#: modules/module.ab-testing.metaboxes.php:132
|
257 |
+
msgid "Pause"
|
258 |
+
msgstr ""
|
259 |
+
|
260 |
+
#: modules/module.ab-testing.metaboxes.php:133
|
261 |
+
msgid "Turn this variation on"
|
262 |
+
msgstr ""
|
263 |
+
|
264 |
+
#: modules/module.ab-testing.metaboxes.php:133
|
265 |
+
msgid "Play"
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: modules/module.ab-testing.metaboxes.php:134
|
269 |
+
msgid "Edit this variation"
|
270 |
+
msgstr ""
|
271 |
+
|
272 |
+
#: modules/module.ab-testing.metaboxes.php:134
|
273 |
+
msgid "Edit"
|
274 |
+
msgstr ""
|
275 |
+
|
276 |
+
#: modules/module.ab-testing.metaboxes.php:135
|
277 |
+
msgid "Preview this variation"
|
278 |
+
msgstr ""
|
279 |
+
|
280 |
+
#: modules/module.ab-testing.metaboxes.php:135
|
281 |
+
#: modules/module.metaboxes.php:351
|
282 |
+
msgid "Preview"
|
283 |
+
msgstr ""
|
284 |
+
|
285 |
+
#: modules/module.ab-testing.metaboxes.php:136
|
286 |
+
msgid "Clone this variation"
|
287 |
+
msgstr ""
|
288 |
+
|
289 |
+
#: modules/module.ab-testing.metaboxes.php:136 modules/module.clone.php:1
|
290 |
+
msgid "Clone"
|
291 |
+
msgstr ""
|
292 |
+
|
293 |
+
#: modules/module.ab-testing.metaboxes.php:137
|
294 |
+
msgid "Delete this variation"
|
295 |
+
msgstr ""
|
296 |
+
|
297 |
+
#: modules/module.ab-testing.metaboxes.php:137
|
298 |
+
#: modules/module.templates.php:227
|
299 |
+
msgid "Delete"
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: modules/module.ab-testing.metaboxes.php:196
|
303 |
+
msgid "A"
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: modules/module.ab-testing.metaboxes.php:224
|
307 |
+
msgid "Add New Variation"
|
308 |
+
msgstr ""
|
309 |
+
|
310 |
+
#: modules/module.ab-testing.metaboxes.php:235
|
311 |
+
msgid "Launch Visual Editor"
|
312 |
+
msgstr ""
|
313 |
+
|
314 |
+
#: modules/module.activate.php:14 modules/module.activate.php:20
|
315 |
+
msgid "<p>The <strong>WordPress Landing Pages</strong> plugin requires"
|
316 |
+
msgstr ""
|
317 |
+
|
318 |
+
#: modules/module.activate.php:14 modules/module.activate.php:20
|
319 |
+
#: modules/module.activate.php:26 modules/module.activate.php:31
|
320 |
+
msgid "Plugin Activation Error"
|
321 |
+
msgstr ""
|
322 |
+
|
323 |
+
#: modules/module.activate.php:25 modules/module.install.php:137
|
324 |
+
msgid "WordPress Calls to Action"
|
325 |
+
msgstr ""
|
326 |
+
|
327 |
+
#: modules/module.activate.php:26 modules/module.activate.php:31
|
328 |
+
msgid "<p>The <strong>WordPress Landing Pages</strong> plugin requires "
|
329 |
+
msgstr ""
|
330 |
+
|
331 |
+
#: modules/module.admin-menus.php:12
|
332 |
+
msgid "Forms"
|
333 |
+
msgstr ""
|
334 |
+
|
335 |
+
#: modules/module.admin-menus.php:12
|
336 |
+
msgid "Create Forms"
|
337 |
+
msgstr ""
|
338 |
+
|
339 |
+
#: modules/module.admin-menus.php:14
|
340 |
+
msgid "Templates"
|
341 |
+
msgstr ""
|
342 |
+
|
343 |
+
#: modules/module.admin-menus.php:14 modules/module.templates.php:243
|
344 |
+
msgid "Manage Templates"
|
345 |
+
msgstr ""
|
346 |
+
|
347 |
+
#: modules/module.admin-menus.php:16
|
348 |
+
msgid "Get Addons"
|
349 |
+
msgstr ""
|
350 |
+
|
351 |
+
#: modules/module.admin-menus.php:18
|
352 |
+
msgid "Global Settings"
|
353 |
+
msgstr ""
|
354 |
+
|
355 |
+
#: modules/module.clone.php:1
|
356 |
+
msgid "Clone this item"
|
357 |
+
msgstr ""
|
358 |
+
|
359 |
+
#: modules/module.customizer.php:1
|
360 |
+
msgid "No A/B Tests running for this page"
|
361 |
+
msgstr ""
|
362 |
+
|
363 |
+
#: modules/module.customizer.php:1
|
364 |
+
msgid "Variations"
|
365 |
+
msgstr ""
|
366 |
+
|
367 |
+
#: modules/module.extension-licensing.php:70
|
368 |
+
#: shared/inboundnow/inboundnow.extension-licensing.php:73
|
369 |
+
#: shared/inboundnow/inboundnow.extension-licensing.php:94
|
370 |
+
#: shared/inboundnow/inboundnow.extension-licensing.php:116
|
371 |
+
#, php-format
|
372 |
+
msgid "%1$s"
|
373 |
+
msgstr ""
|
374 |
+
|
375 |
+
#: modules/module.global-settings.php:29
|
376 |
+
msgid "<h4>Landing Pages Core Settings</h4>"
|
377 |
+
msgstr ""
|
378 |
+
|
379 |
+
#: modules/module.global-settings.php:34
|
380 |
+
msgid "Default Landing Page Permalink Prefix"
|
381 |
+
msgstr ""
|
382 |
+
|
383 |
+
#: modules/module.global-settings.php:35
|
384 |
+
msgid ""
|
385 |
+
"Enter in the <span style='color:red;'>prefix</span> for landing page URLs "
|
386 |
+
"(aka permalinks).<br><br>This is the URL Slug that will be in the landing "
|
387 |
+
"page URL.<br><br> Example: http://www.yoursite.com/<span style='color:"
|
388 |
+
"red;'>PREFIX</span>/landing-page . Enter in a single word like 'go'"
|
389 |
+
msgstr ""
|
390 |
+
|
391 |
+
#: modules/module.global-settings.php:42
|
392 |
+
msgid "Enable Form Prepopulation"
|
393 |
+
msgstr ""
|
394 |
+
|
395 |
+
#: modules/module.global-settings.php:43
|
396 |
+
msgid ""
|
397 |
+
"With this setting enabled landing pages plugin will remember form input data "
|
398 |
+
"that the user submits to a form and attempt to pre-populate all other forms "
|
399 |
+
"with the same user's data when applicable."
|
400 |
+
msgstr ""
|
401 |
+
|
402 |
+
#: modules/module.global-settings.php:50
|
403 |
+
msgid "Disable Admin Impression/Conversion Tracking"
|
404 |
+
msgstr ""
|
405 |
+
|
406 |
+
#: modules/module.global-settings.php:51
|
407 |
+
msgid ""
|
408 |
+
"With this setting enabled landing pages plugin will not record visits and "
|
409 |
+
"conversions for administrative users that are logged in."
|
410 |
+
msgstr ""
|
411 |
+
|
412 |
+
#: modules/module.global-settings.php:58
|
413 |
+
msgid "Sticky Variations"
|
414 |
+
msgstr ""
|
415 |
+
|
416 |
+
#: modules/module.global-settings.php:59
|
417 |
+
msgid ""
|
418 |
+
"With this setting enabled the landing pages plugin will prevent landing page "
|
419 |
+
"version a/b rotation for a specific visitor that has viewed the page."
|
420 |
+
"<br><br>This pause on the a/b rotation will automatically expire after 30 "
|
421 |
+
"days."
|
422 |
+
msgstr ""
|
423 |
+
|
424 |
+
#: modules/module.global-settings.php:66
|
425 |
+
msgid "Enable Form Standardization"
|
426 |
+
msgstr ""
|
427 |
+
|
428 |
+
#: modules/module.global-settings.php:67
|
429 |
+
msgid ""
|
430 |
+
"With this setting enabled landing pages plugin will clean and standardize "
|
431 |
+
"all input ids and classnames. Uncheck this setting to disable "
|
432 |
+
"standardization."
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: modules/module.global-settings.php:74
|
436 |
+
msgid "Form Standardization Element Whitelist"
|
437 |
+
msgstr ""
|
438 |
+
|
439 |
+
#: modules/module.global-settings.php:75
|
440 |
+
msgid ""
|
441 |
+
"Form standardization strips the conversion area content of html elements. "
|
442 |
+
"Add the elements you do not want to be stripped to this list."
|
443 |
+
msgstr ""
|
444 |
+
|
445 |
+
#: modules/module.global-settings.php:85
|
446 |
+
msgid "License Keys"
|
447 |
+
msgstr ""
|
448 |
+
|
449 |
+
#: modules/module.global-settings.php:88
|
450 |
+
msgid "Extensions"
|
451 |
+
msgstr ""
|
452 |
+
|
453 |
+
#: modules/module.global-settings.php:100
|
454 |
+
msgid "Debug"
|
455 |
+
msgstr ""
|
456 |
+
|
457 |
+
#: modules/module.global-settings.php:123
|
458 |
+
msgid ""
|
459 |
+
"Head to http://www.inboundnow.com/ to retrieve your license key for this "
|
460 |
+
"template."
|
461 |
+
msgstr ""
|
462 |
+
|
463 |
+
#: modules/module.global-settings.php:125
|
464 |
+
msgid "Extension License Keys"
|
465 |
+
msgstr ""
|
466 |
+
|
467 |
+
#: modules/module.global-settings.php:217
|
468 |
+
msgid ""
|
469 |
+
"Oh no! Your .htaccess is not writable and A/B testing won't work unless you "
|
470 |
+
"make your .htaccess file writable."
|
471 |
+
msgstr ""
|
472 |
+
|
473 |
+
#: modules/module.global-settings.php:292
|
474 |
+
msgid "Installation Status"
|
475 |
+
msgstr ""
|
476 |
+
|
477 |
+
#: modules/module.global-settings.php:296
|
478 |
+
msgid "PHP Version"
|
479 |
+
msgstr ""
|
480 |
+
|
481 |
+
#: modules/module.global-settings.php:310
|
482 |
+
msgid "Gravity Forms requires PHP 5 or above."
|
483 |
+
msgstr ""
|
484 |
+
|
485 |
+
#: modules/module.global-settings.php:317
|
486 |
+
msgid "MySQL Version"
|
487 |
+
msgstr ""
|
488 |
+
|
489 |
+
#: modules/module.global-settings.php:331
|
490 |
+
msgid "Gravity Forms requires MySQL 5 or above."
|
491 |
+
msgstr ""
|
492 |
+
|
493 |
+
#: modules/module.global-settings.php:338
|
494 |
+
msgid "WordPress Version"
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: modules/module.global-settings.php:352
|
498 |
+
msgid "landing pages requires version X or higher"
|
499 |
+
msgstr ""
|
500 |
+
|
501 |
+
#: modules/module.global-settings.php:359
|
502 |
+
msgid "Landing Page Version"
|
503 |
+
msgstr ""
|
504 |
+
|
505 |
+
#: modules/module.global-settings.php:361
|
506 |
+
msgid "Version"
|
507 |
+
msgstr ""
|
508 |
+
|
509 |
+
#: modules/module.global-settings.php:375
|
510 |
+
msgid "The contents of your .htaccess file"
|
511 |
+
msgstr ""
|
512 |
+
|
513 |
+
#: modules/module.global-settings.php:411
|
514 |
+
msgid "System Information"
|
515 |
+
msgstr ""
|
516 |
+
|
517 |
+
#: modules/module.global-settings.php:414
|
518 |
+
msgid "Download System Info File for Support Requests"
|
519 |
+
msgstr ""
|
520 |
+
|
521 |
+
#: modules/module.global-settings.php:415
|
522 |
+
msgid ""
|
523 |
+
"To copy the system info, click below then press Ctrl + C (PC) or Cmd + C "
|
524 |
+
"(Mac)."
|
525 |
+
msgstr ""
|
526 |
+
|
527 |
+
#: modules/module.global-settings.php:465
|
528 |
+
msgid "Your server supports fsockopen."
|
529 |
+
msgstr ""
|
530 |
+
|
531 |
+
#: modules/module.global-settings.php:465
|
532 |
+
msgid "Your server does not support fsockopen."
|
533 |
+
msgstr ""
|
534 |
+
|
535 |
+
#: modules/module.global-settings.php:466
|
536 |
+
msgid "Your server supports cURL."
|
537 |
+
msgstr ""
|
538 |
+
|
539 |
+
#: modules/module.global-settings.php:466
|
540 |
+
msgid "Your server does not support cURL."
|
541 |
+
msgstr ""
|
542 |
+
|
543 |
+
#: modules/module.global-settings.php:467
|
544 |
+
msgid "Your server has the SOAP Client enabled."
|
545 |
+
msgstr ""
|
546 |
+
|
547 |
+
#: modules/module.global-settings.php:467
|
548 |
+
msgid "Your server does not have the SOAP Client enabled."
|
549 |
+
msgstr ""
|
550 |
+
|
551 |
+
#: modules/module.global-settings.php:468
|
552 |
+
msgid "Your server has SUHOSIN installed."
|
553 |
+
msgstr ""
|
554 |
+
|
555 |
+
#: modules/module.global-settings.php:468
|
556 |
+
msgid "Your server does not have SUHOSIN installed."
|
557 |
+
msgstr ""
|
558 |
+
|
559 |
+
#: modules/module.install.php:20
|
560 |
+
msgid "A/B Testing Landing Page Example"
|
561 |
+
msgstr ""
|
562 |
+
|
563 |
+
#: modules/module.install.php:21
|
564 |
+
msgid ""
|
565 |
+
"<p>This is the first paragraph of your landing page where you want to draw "
|
566 |
+
"the viewer in and quickly explain your value proposition.</p><p><strong>Use "
|
567 |
+
"Bullet Points to:</strong><ul><li>Explain why they should fill out the form</"
|
568 |
+
"li><li>What they will learn if they download</li><li>A problem this form "
|
569 |
+
"will solve for them</li></ul></p><p>Short ending paragraph reiterating the "
|
570 |
+
"value behind the form</p>"
|
571 |
+
msgstr ""
|
572 |
+
|
573 |
+
#: modules/module.install.php:30
|
574 |
+
msgid "Main Catchy Headline (A)"
|
575 |
+
msgstr ""
|
576 |
+
|
577 |
+
#: modules/module.install.php:32
|
578 |
+
msgid "Form a"
|
579 |
+
msgstr ""
|
580 |
+
|
581 |
+
#: modules/module.install.php:32 modules/module.install.php:37
|
582 |
+
msgid "First Name"
|
583 |
+
msgstr ""
|
584 |
+
|
585 |
+
#: modules/module.install.php:32 modules/module.install.php:37
|
586 |
+
msgid "Last Name"
|
587 |
+
msgstr ""
|
588 |
+
|
589 |
+
#: modules/module.install.php:32 modules/module.install.php:37
|
590 |
+
msgid "Email"
|
591 |
+
msgstr ""
|
592 |
+
|
593 |
+
#: modules/module.install.php:32 modules/module.install.php:37
|
594 |
+
msgid "Submit"
|
595 |
+
msgstr ""
|
596 |
+
|
597 |
+
#: modules/module.install.php:35
|
598 |
+
msgid "Main Catchy Headline Two (B)"
|
599 |
+
msgstr ""
|
600 |
+
|
601 |
+
#: modules/module.install.php:37
|
602 |
+
msgid "Form B"
|
603 |
+
msgstr ""
|
604 |
+
|
605 |
+
#: modules/module.install.php:132
|
606 |
+
msgid "WordPress Leads"
|
607 |
+
msgstr ""
|
608 |
+
|
609 |
+
#: modules/module.install.php:132
|
610 |
+
msgid ""
|
611 |
+
"This <b>free</b> landing page addon will give you the ability to track and "
|
612 |
+
"manage incoming web leads. Gather advanced Lead Intelligence and close more "
|
613 |
+
"deals."
|
614 |
+
msgstr ""
|
615 |
+
|
616 |
+
#: modules/module.install.php:132
|
617 |
+
msgid "Learn more about WordPress Leads"
|
618 |
+
msgstr ""
|
619 |
+
|
620 |
+
#: modules/module.install.php:137
|
621 |
+
msgid ""
|
622 |
+
"This <b>free</b> landing page addon will drive more traffic into your "
|
623 |
+
"Landing Pages with Targeted Calls to Action in your sites sidebars & "
|
624 |
+
"content. Create popups to capture visitor attention and convert more leads."
|
625 |
+
msgstr ""
|
626 |
+
|
627 |
+
#: modules/module.install.php:137
|
628 |
+
msgid "Learn more about WordPress Calls to Action"
|
629 |
+
msgstr ""
|
630 |
+
|
631 |
+
#: modules/module.install.php:167
|
632 |
+
msgid "Something went wrong with the plugin API."
|
633 |
+
msgstr ""
|
634 |
+
|
635 |
+
#: modules/module.install.php:180
|
636 |
+
#, php-format
|
637 |
+
msgid "All plugins installed and activated successfully. %s"
|
638 |
+
msgstr ""
|
639 |
+
|
640 |
+
#: modules/module.lead-splash.php:24
|
641 |
+
msgid "Lead Details "
|
642 |
+
msgstr ""
|
643 |
+
|
644 |
+
#: modules/module.lead-splash.php:26
|
645 |
+
msgid "View/Edit Lead"
|
646 |
+
msgstr ""
|
647 |
+
|
648 |
+
#: modules/module.lead-splash.php:29
|
649 |
+
msgid "Name"
|
650 |
+
msgstr ""
|
651 |
+
|
652 |
+
#: modules/module.lead-splash.php:33
|
653 |
+
msgid "Email Address"
|
654 |
+
msgstr ""
|
655 |
+
|
656 |
+
#: modules/module.lead-splash.php:36
|
657 |
+
msgid "IP Address"
|
658 |
+
msgstr ""
|
659 |
+
|
660 |
+
#: modules/module.lead-splash.php:39
|
661 |
+
msgid "City"
|
662 |
+
msgstr ""
|
663 |
+
|
664 |
+
#: modules/module.lead-splash.php:42
|
665 |
+
msgid "State"
|
666 |
+
msgstr ""
|
667 |
+
|
668 |
+
#: modules/module.metaboxes.php:18
|
669 |
+
msgid "Template Preview"
|
670 |
+
msgstr ""
|
671 |
+
|
672 |
+
#: modules/module.metaboxes.php:44
|
673 |
+
msgid "Preveiw this theme"
|
674 |
+
msgstr ""
|
675 |
+
|
676 |
+
#: modules/module.metaboxes.php:59
|
677 |
+
msgid "Landing Page Form or Conversion Button"
|
678 |
+
msgstr ""
|
679 |
+
|
680 |
+
#: modules/module.metaboxes.php:118
|
681 |
+
msgid ""
|
682 |
+
"To help track conversions Landing Pages Plugin will automatically add a "
|
683 |
+
"tracking class to forms. If you would like to track a link add this class to "
|
684 |
+
"it"
|
685 |
+
msgstr ""
|
686 |
+
|
687 |
+
#: modules/module.metaboxes.php:160
|
688 |
+
msgid "Notes"
|
689 |
+
msgstr ""
|
690 |
+
|
691 |
+
#: modules/module.metaboxes.php:160
|
692 |
+
msgid ""
|
693 |
+
"Add Notes to your variation. Example: This version is testing a green submit "
|
694 |
+
"button "
|
695 |
+
msgstr ""
|
696 |
+
|
697 |
+
#: modules/module.metaboxes.php:161
|
698 |
+
msgid "Primary Headline Goes here. This will be visible on the page"
|
699 |
+
msgstr ""
|
700 |
+
|
701 |
+
#: modules/module.metaboxes.php:161
|
702 |
+
msgid "This headline will appear in the landing page template."
|
703 |
+
msgstr ""
|
704 |
+
|
705 |
+
#: modules/module.metaboxes.php:207
|
706 |
+
msgid "Enter Landing Page Description"
|
707 |
+
msgstr ""
|
708 |
+
|
709 |
+
#: modules/module.metaboxes.php:221
|
710 |
+
msgid "Landing Page Templates"
|
711 |
+
msgstr ""
|
712 |
+
|
713 |
+
#: modules/module.metaboxes.php:243
|
714 |
+
msgid "Choose Another Template"
|
715 |
+
msgstr ""
|
716 |
+
|
717 |
+
#: modules/module.metaboxes.php:278
|
718 |
+
msgid "Select Your Landing Page Template!"
|
719 |
+
msgstr ""
|
720 |
+
|
721 |
+
#: modules/module.metaboxes.php:279
|
722 |
+
msgid "Cancel Template Change"
|
723 |
+
msgstr ""
|
724 |
+
|
725 |
+
#: modules/module.metaboxes.php:282
|
726 |
+
msgid "All"
|
727 |
+
msgstr ""
|
728 |
+
|
729 |
+
#: modules/module.metaboxes.php:350
|
730 |
+
msgid "Select"
|
731 |
+
msgstr ""
|
732 |
+
|
733 |
+
#: modules/module.metaboxes.php:360
|
734 |
+
msgid "This is Currently Selected"
|
735 |
+
msgstr ""
|
736 |
+
|
737 |
+
#: modules/module.metaboxes.php:368
|
738 |
+
msgid "Custom CSS"
|
739 |
+
msgstr ""
|
740 |
+
|
741 |
+
#: modules/module.metaboxes.php:374
|
742 |
+
msgid ""
|
743 |
+
"<em>Custom CSS may be required to remove sidebars, increase the widget of "
|
744 |
+
"the post content container to 100%, and sometimes to manually remove comment "
|
745 |
+
"boxes.</em>"
|
746 |
+
msgstr ""
|
747 |
+
|
748 |
+
#: modules/module.metaboxes.php:401
|
749 |
+
msgid "Custom JS"
|
750 |
+
msgstr ""
|
751 |
+
|
752 |
+
#: modules/module.metaboxes.php:433
|
753 |
+
msgid "Lead Captures"
|
754 |
+
msgstr ""
|
755 |
+
|
756 |
+
#: modules/module.metaboxes.php:594
|
757 |
+
msgid "View Lead"
|
758 |
+
msgstr ""
|
759 |
+
|
760 |
+
#: modules/module.metaboxes.php:599
|
761 |
+
msgid "First timer!"
|
762 |
+
msgstr ""
|
763 |
+
|
764 |
+
#: modules/module.metaboxes.php:619
|
765 |
+
msgid "No conversions recorded yet..."
|
766 |
+
msgstr ""
|
767 |
+
|
768 |
+
#: modules/module.metaboxes.php:636
|
769 |
+
msgid "Conversion logs:"
|
770 |
+
msgstr ""
|
771 |
+
|
772 |
+
#: modules/module.post-type.php:1
|
773 |
+
msgid "Add New Landing Page"
|
774 |
+
msgstr ""
|
775 |
+
|
776 |
+
#: modules/module.post-type.php:1
|
777 |
+
msgid "Edit Landing Page"
|
778 |
+
msgstr ""
|
779 |
+
|
780 |
+
#: modules/module.post-type.php:1
|
781 |
+
msgid "New Landing Page"
|
782 |
+
msgstr ""
|
783 |
+
|
784 |
+
#: modules/module.post-type.php:1
|
785 |
+
msgid "View Landing Page"
|
786 |
+
msgstr ""
|
787 |
+
|
788 |
+
#: modules/module.post-type.php:1
|
789 |
+
msgid "Search Landing Page"
|
790 |
+
msgstr ""
|
791 |
+
|
792 |
+
#: modules/module.post-type.php:1
|
793 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:252
|
794 |
+
msgid "Nothing found"
|
795 |
+
msgstr ""
|
796 |
+
|
797 |
+
#: modules/module.post-type.php:1
|
798 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:253
|
799 |
+
msgid "Nothing found in Trash"
|
800 |
+
msgstr ""
|
801 |
+
|
802 |
+
#: modules/module.sidebar.php:12
|
803 |
+
msgid "Landing Pages Sidebar"
|
804 |
+
msgstr ""
|
805 |
+
|
806 |
+
#: modules/module.sidebar.php:13
|
807 |
+
msgid ""
|
808 |
+
"Landing Pages Sidebar Area: For default and native theme templates only."
|
809 |
+
msgstr ""
|
810 |
+
|
811 |
+
#: modules/module.store.php:1 modules/module.templates-upload.php:42
|
812 |
+
#: modules/module.templates-upload.php:53
|
813 |
+
msgid "Search Templates"
|
814 |
+
msgstr ""
|
815 |
+
|
816 |
+
#: modules/module.templates-upload.php:14
|
817 |
+
msgid "Install Templates"
|
818 |
+
msgstr ""
|
819 |
+
|
820 |
+
#: modules/module.templates-upload.php:17
|
821 |
+
#: modules/module.templates-upload.php:45
|
822 |
+
msgid "Search"
|
823 |
+
msgstr ""
|
824 |
+
|
825 |
+
#: modules/module.templates-upload.php:18
|
826 |
+
#: modules/module.templates-upload.php:46
|
827 |
+
msgid "Upload"
|
828 |
+
msgstr ""
|
829 |
+
|
830 |
+
#: modules/module.templates-upload.php:22
|
831 |
+
msgid "Install Landing Pages template by uploading them here in .zip format"
|
832 |
+
msgstr ""
|
833 |
+
|
834 |
+
#: modules/module.templates-upload.php:24
|
835 |
+
msgid ""
|
836 |
+
"Warning: Do not upload landing page extensions here or you will break the "
|
837 |
+
"plugin! <br>Extensions are uploaded in the WordPress plugins section."
|
838 |
+
msgstr ""
|
839 |
+
|
840 |
+
#: modules/module.templates-upload.php:28
|
841 |
+
msgid "Template zip file"
|
842 |
+
msgstr ""
|
843 |
+
|
844 |
+
#: modules/module.templates-upload.php:50
|
845 |
+
msgid "Search the Inboundnow marketplace for free and premium templates."
|
846 |
+
msgstr ""
|
847 |
+
|
848 |
+
#: modules/module.templates-upload.php:116
|
849 |
+
msgid ""
|
850 |
+
"WARNING! This zip file does not seem to be a template file! If you are "
|
851 |
+
"trying to install a Landing Page extension please use the Plugin's upload "
|
852 |
+
"section! Please press the back button and try again!"
|
853 |
+
msgstr ""
|
854 |
+
|
855 |
+
#: modules/module.templates-upload.php:123
|
856 |
+
msgid "There was a problem. Please try again!"
|
857 |
+
msgstr ""
|
858 |
+
|
859 |
+
#: modules/module.templates-upload.php:128
|
860 |
+
msgid "Template uploaded successfully!"
|
861 |
+
msgstr ""
|
862 |
+
|
863 |
+
#: modules/module.templates.php:110
|
864 |
+
msgid "Template"
|
865 |
+
msgstr ""
|
866 |
+
|
867 |
+
#: modules/module.templates.php:111
|
868 |
+
msgid "Description"
|
869 |
+
msgstr ""
|
870 |
+
|
871 |
+
#: modules/module.templates.php:112
|
872 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:37
|
873 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:99
|
874 |
+
msgid "Category"
|
875 |
+
msgstr ""
|
876 |
+
|
877 |
+
#: modules/module.templates.php:113
|
878 |
+
msgid "Current Version"
|
879 |
+
msgstr ""
|
880 |
+
|
881 |
+
#: modules/module.templates.php:219
|
882 |
+
msgid ""
|
883 |
+
"No premium templates installed. Templates included in the Landing Pages core "
|
884 |
+
"plugin will not be listed here."
|
885 |
+
msgstr ""
|
886 |
+
|
887 |
+
#: modules/module.templates.php:226
|
888 |
+
msgid "Upgrade"
|
889 |
+
msgstr ""
|
890 |
+
|
891 |
+
#: modules/module.welcome.php:52 modules/module.welcome.php:53
|
892 |
+
msgid "Welcome to WordPress Landing Pages"
|
893 |
+
msgstr ""
|
894 |
+
|
895 |
+
#: modules/module.welcome.php:60 modules/module.welcome.php:61
|
896 |
+
msgid "About the Inbound Now Marketing Platform"
|
897 |
+
msgstr ""
|
898 |
+
|
899 |
+
#: modules/module.welcome.php:68 modules/module.welcome.php:69
|
900 |
+
msgid "Developers and Designers"
|
901 |
+
msgstr ""
|
902 |
+
|
903 |
+
#: modules/module.welcome.php:304 modules/module.welcome.php:566
|
904 |
+
#, php-format
|
905 |
+
msgid "Welcome to WordPress Landing Pages %s"
|
906 |
+
msgstr ""
|
907 |
+
|
908 |
+
#: modules/module.welcome.php:305
|
909 |
+
#, php-format
|
910 |
+
msgid ""
|
911 |
+
"Thank you for updating to the latest version! WordPress Landing Pages %s is "
|
912 |
+
"help you convert more leads!"
|
913 |
+
msgstr ""
|
914 |
+
|
915 |
+
#: modules/module.welcome.php:306 modules/module.welcome.php:568
|
916 |
+
#, php-format
|
917 |
+
msgid "Version %s"
|
918 |
+
msgstr ""
|
919 |
+
|
920 |
+
#: modules/module.welcome.php:312
|
921 |
+
msgid "Create Your First Landing Page"
|
922 |
+
msgstr ""
|
923 |
+
|
924 |
+
#: modules/module.welcome.php:316
|
925 |
+
msgid "How to Create Forms"
|
926 |
+
msgstr ""
|
927 |
+
|
928 |
+
#: modules/module.welcome.php:339
|
929 |
+
msgid "Go to WordPress Landing Pages Settings"
|
930 |
+
msgstr ""
|
931 |
+
|
932 |
+
#: modules/module.welcome.php:342
|
933 |
+
msgid "Manage Your Landing Page Templates"
|
934 |
+
msgstr ""
|
935 |
+
|
936 |
+
#: modules/module.welcome.php:345
|
937 |
+
msgid "Create New Landing Page"
|
938 |
+
msgstr ""
|
939 |
+
|
940 |
+
#: modules/module.welcome.php:348
|
941 |
+
msgid "Create Landing Page Forms"
|
942 |
+
msgstr ""
|
943 |
+
|
944 |
+
#: modules/module.welcome.php:439
|
945 |
+
msgid "Turbo Charge Your Marketing"
|
946 |
+
msgstr ""
|
947 |
+
|
948 |
+
#: modules/module.welcome.php:440
|
949 |
+
msgid ""
|
950 |
+
"WordPress Landing Pages is only one piece of Inbound Now's Marketing Platform"
|
951 |
+
msgstr ""
|
952 |
+
|
953 |
+
#: modules/module.welcome.php:445
|
954 |
+
msgid ""
|
955 |
+
"To have an effective marketing strategy for your site you need to "
|
956 |
+
"incorporate a comprehensive conversion strategy to capture visitors "
|
957 |
+
"attention, get them clicking, and convert them on a web form or landing page."
|
958 |
+
msgstr ""
|
959 |
+
|
960 |
+
#: modules/module.welcome.php:450
|
961 |
+
msgid "Capture visitor attention with"
|
962 |
+
msgstr ""
|
963 |
+
|
964 |
+
#: modules/module.welcome.php:458
|
965 |
+
msgid ""
|
966 |
+
"<b>Convert more website traffic</b> with visually\n"
|
967 |
+
"\t\t appealing calls to action"
|
968 |
+
msgstr ""
|
969 |
+
|
970 |
+
#: modules/module.welcome.php:465
|
971 |
+
msgid ""
|
972 |
+
"A/B test your marketing tactics and <b>improve your\n"
|
973 |
+
"\t\t sites conversion rates"
|
974 |
+
msgstr ""
|
975 |
+
|
976 |
+
#: modules/module.welcome.php:480
|
977 |
+
msgid "Convert website visitors with"
|
978 |
+
msgstr ""
|
979 |
+
|
980 |
+
#: modules/module.welcome.php:488
|
981 |
+
msgid ""
|
982 |
+
"<b>Generate more web leads</b> with pages specifically designed for "
|
983 |
+
"conversion"
|
984 |
+
msgstr ""
|
985 |
+
|
986 |
+
#: modules/module.welcome.php:494
|
987 |
+
msgid ""
|
988 |
+
"A/B Test Landing Page effectiveness for <b>continual optimization & "
|
989 |
+
"improvement</b>"
|
990 |
+
msgstr ""
|
991 |
+
|
992 |
+
#: modules/module.welcome.php:508
|
993 |
+
msgid "Followup & Close the deal with"
|
994 |
+
msgstr ""
|
995 |
+
|
996 |
+
#: modules/module.welcome.php:516
|
997 |
+
msgid ""
|
998 |
+
"Gather & leverage lead intelligence on\n"
|
999 |
+
"\t\t visitors to <b>close more deals</b>"
|
1000 |
+
msgstr ""
|
1001 |
+
|
1002 |
+
#: modules/module.welcome.php:523
|
1003 |
+
msgid ""
|
1004 |
+
"Track page views, site conversions,\n"
|
1005 |
+
"\t\t demographics, geolocation, social media data and more."
|
1006 |
+
msgstr ""
|
1007 |
+
|
1008 |
+
#: modules/module.welcome.php:526
|
1009 |
+
msgid ""
|
1010 |
+
"Know everything a lead has seen and done on your site before you contact them"
|
1011 |
+
msgstr ""
|
1012 |
+
|
1013 |
+
#: modules/module.welcome.php:567
|
1014 |
+
msgid "Learn How to Build Custom Templates & Add Value to Your Clients"
|
1015 |
+
msgstr ""
|
1016 |
+
|
1017 |
+
#: modules/module.welcome.php:573
|
1018 |
+
msgid ""
|
1019 |
+
"WordPress Landing Pages was built as a platform to allow anyone to create "
|
1020 |
+
"and use their own landing page designs."
|
1021 |
+
msgstr ""
|
1022 |
+
|
1023 |
+
#: modules/module.welcome.php:575
|
1024 |
+
msgid ""
|
1025 |
+
"Infuse your designs with powerful A/B testing functionality and give clients "
|
1026 |
+
"the ability to edit options on the backend with ease."
|
1027 |
+
msgstr ""
|
1028 |
+
|
1029 |
+
#: modules/module.widgets.php:17
|
1030 |
+
msgid ""
|
1031 |
+
"Use this widget on your landing page sidebar. This sidebar replaces the "
|
1032 |
+
"normal sidebar while using your default theme as a template, or other "
|
1033 |
+
"inactive themes as landing page templates."
|
1034 |
+
msgstr ""
|
1035 |
+
|
1036 |
+
#: modules/module.widgets.php:23
|
1037 |
+
msgid "Landing Pages: Conversion Area Widget"
|
1038 |
+
msgstr ""
|
1039 |
+
|
1040 |
+
#: modules/module.widgets.php:88
|
1041 |
+
msgid ""
|
1042 |
+
"This box will render the landing page conversion area on the 'default' "
|
1043 |
+
"template."
|
1044 |
+
msgstr ""
|
1045 |
+
|
1046 |
+
#: shared/inbound-shortcodes/inbound-shortcodes.php:247
|
1047 |
+
#: shared/inbound-shortcodes/inbound-shortcodes.php:269
|
1048 |
+
#: shared/inbound-shortcodes/popup.php:26
|
1049 |
+
#: shared/inbound-shortcodes/popup.php:49
|
1050 |
+
msgid "Insert Shortcode"
|
1051 |
+
msgstr ""
|
1052 |
+
|
1053 |
+
#: shared/inbound-shortcodes/inbound-shortcodes.php:256
|
1054 |
+
msgid "Form Preview"
|
1055 |
+
msgstr ""
|
1056 |
+
|
1057 |
+
#: shared/inbound-shortcodes/inbound-shortcodes.php:259
|
1058 |
+
#: shared/inbound-shortcodes/popup.php:38
|
1059 |
+
msgid "Shortcode has no preview"
|
1060 |
+
msgstr ""
|
1061 |
+
|
1062 |
+
#: shared/inbound-shortcodes/popup.php:35
|
1063 |
+
msgid "Shortcode Preview"
|
1064 |
+
msgstr ""
|
1065 |
+
|
1066 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:12
|
1067 |
+
msgid "Color Style"
|
1068 |
+
msgstr ""
|
1069 |
+
|
1070 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:13
|
1071 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:13
|
1072 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:55
|
1073 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:19
|
1074 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:106
|
1075 |
+
msgid "Select the style."
|
1076 |
+
msgstr ""
|
1077 |
+
|
1078 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:16
|
1079 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:16
|
1080 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:46
|
1081 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:22
|
1082 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:109
|
1083 |
+
msgid "Default"
|
1084 |
+
msgstr ""
|
1085 |
+
|
1086 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:17
|
1087 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:17
|
1088 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:47
|
1089 |
+
msgid "Blue"
|
1090 |
+
msgstr ""
|
1091 |
+
|
1092 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:18
|
1093 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:18
|
1094 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:48
|
1095 |
+
msgid "Green"
|
1096 |
+
msgstr ""
|
1097 |
+
|
1098 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:19
|
1099 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:19
|
1100 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:49
|
1101 |
+
msgid "Red"
|
1102 |
+
msgstr ""
|
1103 |
+
|
1104 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:20
|
1105 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:20
|
1106 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:50
|
1107 |
+
msgid "Yellow"
|
1108 |
+
msgstr ""
|
1109 |
+
|
1110 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:25
|
1111 |
+
msgid "Message"
|
1112 |
+
msgstr ""
|
1113 |
+
|
1114 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:26
|
1115 |
+
msgid "Your message here."
|
1116 |
+
msgstr ""
|
1117 |
+
|
1118 |
+
#: shared/inbound-shortcodes/shortcodes/alert.php:32
|
1119 |
+
msgid "Insert Alert Message Shortcode"
|
1120 |
+
msgstr ""
|
1121 |
+
|
1122 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:13
|
1123 |
+
msgid "Button Style"
|
1124 |
+
msgstr ""
|
1125 |
+
|
1126 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:14
|
1127 |
+
msgid "Select the button style."
|
1128 |
+
msgstr ""
|
1129 |
+
|
1130 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:24
|
1131 |
+
msgid "Label"
|
1132 |
+
msgstr ""
|
1133 |
+
|
1134 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:25
|
1135 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:45
|
1136 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:111
|
1137 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:52
|
1138 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:132
|
1139 |
+
msgid "Enter the button text label."
|
1140 |
+
msgstr ""
|
1141 |
+
|
1142 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:30
|
1143 |
+
msgid "Button Size"
|
1144 |
+
msgstr ""
|
1145 |
+
|
1146 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:31
|
1147 |
+
msgid "Select the button size."
|
1148 |
+
msgstr ""
|
1149 |
+
|
1150 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:41
|
1151 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:114
|
1152 |
+
msgid "Custom Width"
|
1153 |
+
msgstr ""
|
1154 |
+
|
1155 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:42
|
1156 |
+
msgid "Enter in pixel width or % width. Example: 200 <u>or</u> 100%"
|
1157 |
+
msgstr ""
|
1158 |
+
|
1159 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:48
|
1160 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:24
|
1161 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:88
|
1162 |
+
msgid "Button Color"
|
1163 |
+
msgstr ""
|
1164 |
+
|
1165 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:49
|
1166 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:25
|
1167 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:89
|
1168 |
+
msgid "Select the button color."
|
1169 |
+
msgstr ""
|
1170 |
+
|
1171 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:68
|
1172 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:11
|
1173 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:14
|
1174 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:27
|
1175 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:72
|
1176 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:57
|
1177 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:135
|
1178 |
+
msgid "Icon"
|
1179 |
+
msgstr ""
|
1180 |
+
|
1181 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:69
|
1182 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:51
|
1183 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:118
|
1184 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:28
|
1185 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:73
|
1186 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:58
|
1187 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:136
|
1188 |
+
msgid "Select an icon."
|
1189 |
+
msgstr ""
|
1190 |
+
|
1191 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:75
|
1192 |
+
msgid "Link Destination"
|
1193 |
+
msgstr ""
|
1194 |
+
|
1195 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:76
|
1196 |
+
msgid "Enter the destination URL."
|
1197 |
+
msgstr ""
|
1198 |
+
|
1199 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:81
|
1200 |
+
msgid "Open Link in New Tab?"
|
1201 |
+
msgstr ""
|
1202 |
+
|
1203 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:82
|
1204 |
+
msgid "Check to open the link in the new tab."
|
1205 |
+
msgstr ""
|
1206 |
+
|
1207 |
+
#: shared/inbound-shortcodes/shortcodes/button.php:89
|
1208 |
+
msgid "Insert Button Shortcode"
|
1209 |
+
msgstr ""
|
1210 |
+
|
1211 |
+
#: shared/inbound-shortcodes/shortcodes/call-to-action.php:11
|
1212 |
+
msgid "Insert cta"
|
1213 |
+
msgstr ""
|
1214 |
+
|
1215 |
+
#: shared/inbound-shortcodes/shortcodes/call-to-action.php:12
|
1216 |
+
msgid "Choose CTA"
|
1217 |
+
msgstr ""
|
1218 |
+
|
1219 |
+
#: shared/inbound-shortcodes/shortcodes/call-to-action.php:20
|
1220 |
+
msgid "Insert Call to Action"
|
1221 |
+
msgstr ""
|
1222 |
+
|
1223 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:12
|
1224 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:74
|
1225 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:12
|
1226 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:46
|
1227 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:64
|
1228 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:45
|
1229 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:152
|
1230 |
+
msgid "Title"
|
1231 |
+
msgstr ""
|
1232 |
+
|
1233 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:13
|
1234 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:75
|
1235 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:13
|
1236 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:47
|
1237 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:15
|
1238 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:49
|
1239 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:13
|
1240 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:69
|
1241 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:98
|
1242 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:153
|
1243 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:13
|
1244 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:67
|
1245 |
+
msgid "Enter the heading text."
|
1246 |
+
msgstr ""
|
1247 |
+
|
1248 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:18
|
1249 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:81
|
1250 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:51
|
1251 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:159
|
1252 |
+
msgid "Sub Title"
|
1253 |
+
msgstr ""
|
1254 |
+
|
1255 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:19
|
1256 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:82
|
1257 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:52
|
1258 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:160
|
1259 |
+
msgid "Enter the sub title."
|
1260 |
+
msgstr ""
|
1261 |
+
|
1262 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:44
|
1263 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:110
|
1264 |
+
msgid "Button Text Label"
|
1265 |
+
msgstr ""
|
1266 |
+
|
1267 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:50
|
1268 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:117
|
1269 |
+
msgid "Button Icon"
|
1270 |
+
msgstr ""
|
1271 |
+
|
1272 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:57
|
1273 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:126
|
1274 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:71
|
1275 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:166
|
1276 |
+
msgid "Link"
|
1277 |
+
msgstr ""
|
1278 |
+
|
1279 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:58
|
1280 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:127
|
1281 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:58
|
1282 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:140
|
1283 |
+
msgid "Enter the button link destination URL."
|
1284 |
+
msgstr ""
|
1285 |
+
|
1286 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:64
|
1287 |
+
msgid "Insert Call Out Shortcode"
|
1288 |
+
msgstr ""
|
1289 |
+
|
1290 |
+
#: shared/inbound-shortcodes/shortcodes/callout.php:70
|
1291 |
+
msgid "Call Out"
|
1292 |
+
msgstr ""
|
1293 |
+
|
1294 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:12
|
1295 |
+
msgid "Gutter Width"
|
1296 |
+
msgstr ""
|
1297 |
+
|
1298 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:13
|
1299 |
+
msgid "A space between the columns."
|
1300 |
+
msgstr ""
|
1301 |
+
|
1302 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:22
|
1303 |
+
msgid "Column Set"
|
1304 |
+
msgstr ""
|
1305 |
+
|
1306 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:23
|
1307 |
+
msgid "Select the set."
|
1308 |
+
msgstr ""
|
1309 |
+
|
1310 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:42
|
1311 |
+
msgid "Insert Column Shortcode"
|
1312 |
+
msgstr ""
|
1313 |
+
|
1314 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:48
|
1315 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:20
|
1316 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:56
|
1317 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:18
|
1318 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:76
|
1319 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:12
|
1320 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:83
|
1321 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:29
|
1322 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:118
|
1323 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:18
|
1324 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:74
|
1325 |
+
msgid "Column"
|
1326 |
+
msgstr ""
|
1327 |
+
|
1328 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:52
|
1329 |
+
msgid "Column Content"
|
1330 |
+
msgstr ""
|
1331 |
+
|
1332 |
+
#: shared/inbound-shortcodes/shortcodes/column.php:53
|
1333 |
+
msgid "Enter the column content"
|
1334 |
+
msgstr ""
|
1335 |
+
|
1336 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:12
|
1337 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:42
|
1338 |
+
msgid "Box Color"
|
1339 |
+
msgstr ""
|
1340 |
+
|
1341 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:13
|
1342 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:43
|
1343 |
+
msgid "Select the color."
|
1344 |
+
msgstr ""
|
1345 |
+
|
1346 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:25
|
1347 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:57
|
1348 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:29
|
1349 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:66
|
1350 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:81
|
1351 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:173
|
1352 |
+
msgid "Content"
|
1353 |
+
msgstr ""
|
1354 |
+
|
1355 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:26
|
1356 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:78
|
1357 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:174
|
1358 |
+
msgid "Enter the content."
|
1359 |
+
msgstr ""
|
1360 |
+
|
1361 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:32
|
1362 |
+
msgid "Insert Content Box Shortcode"
|
1363 |
+
msgstr ""
|
1364 |
+
|
1365 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:38
|
1366 |
+
msgid "Content Box"
|
1367 |
+
msgstr ""
|
1368 |
+
|
1369 |
+
#: shared/inbound-shortcodes/shortcodes/content-box.php:58
|
1370 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:30
|
1371 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:67
|
1372 |
+
msgid "Enter the content"
|
1373 |
+
msgstr ""
|
1374 |
+
|
1375 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:12
|
1376 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:54
|
1377 |
+
msgid "Border Style"
|
1378 |
+
msgstr ""
|
1379 |
+
|
1380 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:16
|
1381 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:57
|
1382 |
+
msgid "No Border"
|
1383 |
+
msgstr ""
|
1384 |
+
|
1385 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:17
|
1386 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:58
|
1387 |
+
msgid "Dashed"
|
1388 |
+
msgstr ""
|
1389 |
+
|
1390 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:18
|
1391 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:59
|
1392 |
+
msgid "Dotted"
|
1393 |
+
msgstr ""
|
1394 |
+
|
1395 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:19
|
1396 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:60
|
1397 |
+
msgid "Double"
|
1398 |
+
msgstr ""
|
1399 |
+
|
1400 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:20
|
1401 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:61
|
1402 |
+
msgid "Solid"
|
1403 |
+
msgstr ""
|
1404 |
+
|
1405 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:25
|
1406 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:68
|
1407 |
+
msgid "Border Color"
|
1408 |
+
msgstr ""
|
1409 |
+
|
1410 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:26
|
1411 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:69
|
1412 |
+
msgid "Enter a hex color code."
|
1413 |
+
msgstr ""
|
1414 |
+
|
1415 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:31
|
1416 |
+
msgid "Top Margin"
|
1417 |
+
msgstr ""
|
1418 |
+
|
1419 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:32
|
1420 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:77
|
1421 |
+
msgid "Enter the top margin value."
|
1422 |
+
msgstr ""
|
1423 |
+
|
1424 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:37
|
1425 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:25
|
1426 |
+
msgid "Bottom Margin"
|
1427 |
+
msgstr ""
|
1428 |
+
|
1429 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:38
|
1430 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:85
|
1431 |
+
msgid "Enter the bottom margin value."
|
1432 |
+
msgstr ""
|
1433 |
+
|
1434 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:44
|
1435 |
+
msgid "Insert Divider Shortcode"
|
1436 |
+
msgstr ""
|
1437 |
+
|
1438 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:50
|
1439 |
+
msgid "Divider"
|
1440 |
+
msgstr ""
|
1441 |
+
|
1442 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:76
|
1443 |
+
msgid "Margin Top"
|
1444 |
+
msgstr ""
|
1445 |
+
|
1446 |
+
#: shared/inbound-shortcodes/shortcodes/divider.php:84
|
1447 |
+
msgid "Margin Bottom"
|
1448 |
+
msgstr ""
|
1449 |
+
|
1450 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:18
|
1451 |
+
msgid "Choose Starting Template"
|
1452 |
+
msgstr ""
|
1453 |
+
|
1454 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:19
|
1455 |
+
msgid "Start Building Your Form from premade templates"
|
1456 |
+
msgstr ""
|
1457 |
+
|
1458 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:26
|
1459 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:26
|
1460 |
+
msgid "Form Name<span class=\"small-required-text\">*</span>"
|
1461 |
+
msgstr ""
|
1462 |
+
|
1463 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:27
|
1464 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:27
|
1465 |
+
msgid "This is not shown to visitors"
|
1466 |
+
msgstr ""
|
1467 |
+
|
1468 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:44
|
1469 |
+
msgid "Redirect URL<span class=\"small-required-text\">*</span>"
|
1470 |
+
msgstr ""
|
1471 |
+
|
1472 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:45
|
1473 |
+
msgid "Where do you want to send people after they fill out the form?"
|
1474 |
+
msgstr ""
|
1475 |
+
|
1476 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:61
|
1477 |
+
msgid "Notify on Form Completions<span class=\"small-required-text\">*</span>"
|
1478 |
+
msgstr ""
|
1479 |
+
|
1480 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:62
|
1481 |
+
msgid "Who should get admin notifications on this form?"
|
1482 |
+
msgstr ""
|
1483 |
+
|
1484 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:69
|
1485 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:76
|
1486 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:19
|
1487 |
+
msgid "Name Name Name"
|
1488 |
+
msgstr ""
|
1489 |
+
|
1490 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:70
|
1491 |
+
msgid ""
|
1492 |
+
"<span class=\"switch-to-form-insert button\">Cancel Form Creation & Insert "
|
1493 |
+
"Existing Form</span>"
|
1494 |
+
msgstr ""
|
1495 |
+
|
1496 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:77
|
1497 |
+
msgid "Layout Options"
|
1498 |
+
msgstr ""
|
1499 |
+
|
1500 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:83
|
1501 |
+
msgid "Form Layout"
|
1502 |
+
msgstr ""
|
1503 |
+
|
1504 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:84
|
1505 |
+
msgid "Choose Your Form Layout"
|
1506 |
+
msgstr ""
|
1507 |
+
|
1508 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:94
|
1509 |
+
msgid "Label Alignment"
|
1510 |
+
msgstr ""
|
1511 |
+
|
1512 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:95
|
1513 |
+
msgid "Choose Label Layout"
|
1514 |
+
msgstr ""
|
1515 |
+
|
1516 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:107
|
1517 |
+
msgid "Submit Button Text"
|
1518 |
+
msgstr ""
|
1519 |
+
|
1520 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:108
|
1521 |
+
msgid ""
|
1522 |
+
"Enter the text you want to show on the submit button. (or a link to a custom "
|
1523 |
+
"submit button image)"
|
1524 |
+
msgstr ""
|
1525 |
+
|
1526 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:115
|
1527 |
+
msgid "Enter in pixel width or % width. Example: 400 <u>or</u> 100%"
|
1528 |
+
msgstr ""
|
1529 |
+
|
1530 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:124
|
1531 |
+
msgid "Field Label"
|
1532 |
+
msgstr ""
|
1533 |
+
|
1534 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:131
|
1535 |
+
msgid "Field Type"
|
1536 |
+
msgstr ""
|
1537 |
+
|
1538 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:132
|
1539 |
+
msgid "Select an form field type"
|
1540 |
+
msgstr ""
|
1541 |
+
|
1542 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:153
|
1543 |
+
msgid "Dropdown choices"
|
1544 |
+
msgstr ""
|
1545 |
+
|
1546 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:154
|
1547 |
+
msgid "Enter Your Dropdown Options. Separate by commas."
|
1548 |
+
msgstr ""
|
1549 |
+
|
1550 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:161
|
1551 |
+
msgid "Radio Choices"
|
1552 |
+
msgstr ""
|
1553 |
+
|
1554 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:162
|
1555 |
+
msgid "Enter Your Radio Options. Separate by commas."
|
1556 |
+
msgstr ""
|
1557 |
+
|
1558 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:169
|
1559 |
+
msgid "Checkbox choices"
|
1560 |
+
msgstr ""
|
1561 |
+
|
1562 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:170
|
1563 |
+
msgid "Enter Your Checkbox Options. Separate by commas."
|
1564 |
+
msgstr ""
|
1565 |
+
|
1566 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:177
|
1567 |
+
msgid "HTML Block"
|
1568 |
+
msgstr ""
|
1569 |
+
|
1570 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:178
|
1571 |
+
msgid "This is a raw HTML block in the form. Insert text/HTML"
|
1572 |
+
msgstr ""
|
1573 |
+
|
1574 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:184
|
1575 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:206
|
1576 |
+
msgid "Field Description <span class=\"small-optional-text\">(optional)</span>"
|
1577 |
+
msgstr ""
|
1578 |
+
|
1579 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:185
|
1580 |
+
msgid "<span class=\"show-advanced-fields\">Show advanced fields</span>"
|
1581 |
+
msgstr ""
|
1582 |
+
|
1583 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:191
|
1584 |
+
msgid "Required Field? <span class=\"small-optional-text\">(optional)</span>"
|
1585 |
+
msgstr ""
|
1586 |
+
|
1587 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:192
|
1588 |
+
msgid "Check to make field required"
|
1589 |
+
msgstr ""
|
1590 |
+
|
1591 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:199
|
1592 |
+
msgid "Field Placeholder <span class=\"small-optional-text\">(optional)</span>"
|
1593 |
+
msgstr ""
|
1594 |
+
|
1595 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:200
|
1596 |
+
msgid "Put field placeholder text here. Only works for normal text inputs"
|
1597 |
+
msgstr ""
|
1598 |
+
|
1599 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:207
|
1600 |
+
msgid "Put field description here."
|
1601 |
+
msgstr ""
|
1602 |
+
|
1603 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:214
|
1604 |
+
msgid "Dynamic Field Filling"
|
1605 |
+
msgstr ""
|
1606 |
+
|
1607 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:215
|
1608 |
+
msgid "Enter Your Dynamic URL parameter"
|
1609 |
+
msgstr ""
|
1610 |
+
|
1611 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:223
|
1612 |
+
msgid "Map Field To"
|
1613 |
+
msgstr ""
|
1614 |
+
|
1615 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:224
|
1616 |
+
msgid "Map this field to Leads Value"
|
1617 |
+
msgstr ""
|
1618 |
+
|
1619 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:232
|
1620 |
+
msgid "Add Another Field"
|
1621 |
+
msgstr ""
|
1622 |
+
|
1623 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:235
|
1624 |
+
msgid "Insert Inbound Form Shortcode"
|
1625 |
+
msgstr ""
|
1626 |
+
|
1627 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:247
|
1628 |
+
msgid "Create New Form"
|
1629 |
+
msgstr ""
|
1630 |
+
|
1631 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:248
|
1632 |
+
msgid "Edit Form"
|
1633 |
+
msgstr ""
|
1634 |
+
|
1635 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:249
|
1636 |
+
msgid "New Form"
|
1637 |
+
msgstr ""
|
1638 |
+
|
1639 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:250
|
1640 |
+
msgid "View Lists"
|
1641 |
+
msgstr ""
|
1642 |
+
|
1643 |
+
#: shared/inbound-shortcodes/shortcodes/forms.php:251
|
1644 |
+
msgid "Search Lists"
|
1645 |
+
msgstr ""
|
1646 |
+
|
1647 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:12
|
1648 |
+
msgid "Map Type"
|
1649 |
+
msgstr ""
|
1650 |
+
|
1651 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:13
|
1652 |
+
msgid "Select a map type"
|
1653 |
+
msgstr ""
|
1654 |
+
|
1655 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:19
|
1656 |
+
msgid "Map Width"
|
1657 |
+
msgstr ""
|
1658 |
+
|
1659 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:25
|
1660 |
+
msgid "Map Height"
|
1661 |
+
msgstr ""
|
1662 |
+
|
1663 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:31
|
1664 |
+
msgid "Address"
|
1665 |
+
msgstr ""
|
1666 |
+
|
1667 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:32
|
1668 |
+
msgid ""
|
1669 |
+
"Enter your address here. ex: \"New York\" or \"New York, USA\" If you want a "
|
1670 |
+
"accurate position please fill the Latitude and Longitude fields"
|
1671 |
+
msgstr ""
|
1672 |
+
|
1673 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:37
|
1674 |
+
msgid "Latitude"
|
1675 |
+
msgstr ""
|
1676 |
+
|
1677 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:38
|
1678 |
+
msgid "Latitude is specified in degrees within the range [-90, 90]"
|
1679 |
+
msgstr ""
|
1680 |
+
|
1681 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:43
|
1682 |
+
msgid "Longitude"
|
1683 |
+
msgstr ""
|
1684 |
+
|
1685 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:44
|
1686 |
+
msgid "Longitude is specified in degrees within the range [-180, 180]"
|
1687 |
+
msgstr ""
|
1688 |
+
|
1689 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:49
|
1690 |
+
msgid "Zoom"
|
1691 |
+
msgstr ""
|
1692 |
+
|
1693 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:50
|
1694 |
+
msgid "Set the zoom level, numeric value from 1 to 19"
|
1695 |
+
msgstr ""
|
1696 |
+
|
1697 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:55
|
1698 |
+
msgid "Pan Control"
|
1699 |
+
msgstr ""
|
1700 |
+
|
1701 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:56
|
1702 |
+
msgid "Enable pan control?"
|
1703 |
+
msgstr ""
|
1704 |
+
|
1705 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:62
|
1706 |
+
msgid "Zoom Control"
|
1707 |
+
msgstr ""
|
1708 |
+
|
1709 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:63
|
1710 |
+
msgid "Enable zoom control?"
|
1711 |
+
msgstr ""
|
1712 |
+
|
1713 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:69
|
1714 |
+
msgid "Map Type Control"
|
1715 |
+
msgstr ""
|
1716 |
+
|
1717 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:70
|
1718 |
+
msgid "Enable map type control?"
|
1719 |
+
msgstr ""
|
1720 |
+
|
1721 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:76
|
1722 |
+
msgid "Popup Content"
|
1723 |
+
msgstr ""
|
1724 |
+
|
1725 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:77
|
1726 |
+
msgid "A descriptive text for the Google Map marker popup, ex: \"My Office\""
|
1727 |
+
msgstr ""
|
1728 |
+
|
1729 |
+
#: shared/inbound-shortcodes/shortcodes/gmap.php:83
|
1730 |
+
msgid "Insert Google Map Shortcode"
|
1731 |
+
msgstr ""
|
1732 |
+
|
1733 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:12
|
1734 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:15
|
1735 |
+
msgid "Select the icon."
|
1736 |
+
msgstr ""
|
1737 |
+
|
1738 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:18
|
1739 |
+
msgid "Size"
|
1740 |
+
msgstr ""
|
1741 |
+
|
1742 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:19
|
1743 |
+
msgid "Select the icon size."
|
1744 |
+
msgstr ""
|
1745 |
+
|
1746 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:22
|
1747 |
+
msgid "Normal Size"
|
1748 |
+
msgstr ""
|
1749 |
+
|
1750 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:23
|
1751 |
+
msgid "Large Size"
|
1752 |
+
msgstr ""
|
1753 |
+
|
1754 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:24
|
1755 |
+
msgid "2x Size"
|
1756 |
+
msgstr ""
|
1757 |
+
|
1758 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:25
|
1759 |
+
msgid "3x Size"
|
1760 |
+
msgstr ""
|
1761 |
+
|
1762 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:26
|
1763 |
+
msgid "4x Size"
|
1764 |
+
msgstr ""
|
1765 |
+
|
1766 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:31
|
1767 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:18
|
1768 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:105
|
1769 |
+
msgid "Style"
|
1770 |
+
msgstr ""
|
1771 |
+
|
1772 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:32
|
1773 |
+
msgid "Select the icon style."
|
1774 |
+
msgstr ""
|
1775 |
+
|
1776 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:35
|
1777 |
+
msgid "Normal"
|
1778 |
+
msgstr ""
|
1779 |
+
|
1780 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:36
|
1781 |
+
msgid "Muted"
|
1782 |
+
msgstr ""
|
1783 |
+
|
1784 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:37
|
1785 |
+
msgid "Border"
|
1786 |
+
msgstr ""
|
1787 |
+
|
1788 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:38
|
1789 |
+
msgid "Spin"
|
1790 |
+
msgstr ""
|
1791 |
+
|
1792 |
+
#: shared/inbound-shortcodes/shortcodes/icon.php:44
|
1793 |
+
msgid "Insert Icon Shortcode"
|
1794 |
+
msgstr ""
|
1795 |
+
|
1796 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:18
|
1797 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:53
|
1798 |
+
msgid "Text Alignment"
|
1799 |
+
msgstr ""
|
1800 |
+
|
1801 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:19
|
1802 |
+
msgid "Enter text alignment."
|
1803 |
+
msgstr ""
|
1804 |
+
|
1805 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:22
|
1806 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:57
|
1807 |
+
msgid "Align Center"
|
1808 |
+
msgstr ""
|
1809 |
+
|
1810 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:23
|
1811 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:58
|
1812 |
+
msgid "Align Left"
|
1813 |
+
msgstr ""
|
1814 |
+
|
1815 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:24
|
1816 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:59
|
1817 |
+
msgid "Align Right"
|
1818 |
+
msgstr ""
|
1819 |
+
|
1820 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:36
|
1821 |
+
msgid "Insert Intro Shortcode"
|
1822 |
+
msgstr ""
|
1823 |
+
|
1824 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:42
|
1825 |
+
msgid "Intro"
|
1826 |
+
msgstr ""
|
1827 |
+
|
1828 |
+
#: shared/inbound-shortcodes/shortcodes/intro.php:54
|
1829 |
+
msgid "The text alignment"
|
1830 |
+
msgstr ""
|
1831 |
+
|
1832 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:14
|
1833 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:12
|
1834 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:12
|
1835 |
+
msgid "Heading Text"
|
1836 |
+
msgstr ""
|
1837 |
+
|
1838 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:21
|
1839 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:57
|
1840 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:19
|
1841 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:77
|
1842 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:30
|
1843 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:19
|
1844 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:75
|
1845 |
+
msgid "Select the number of column."
|
1846 |
+
msgstr ""
|
1847 |
+
|
1848 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:24
|
1849 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:60
|
1850 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:23
|
1851 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:81
|
1852 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:16
|
1853 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:87
|
1854 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:34
|
1855 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:123
|
1856 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:23
|
1857 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:79
|
1858 |
+
msgid "2 Columns"
|
1859 |
+
msgstr ""
|
1860 |
+
|
1861 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:25
|
1862 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:61
|
1863 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:24
|
1864 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:82
|
1865 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:17
|
1866 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:88
|
1867 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:35
|
1868 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:124
|
1869 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:24
|
1870 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:80
|
1871 |
+
msgid "3 Columns"
|
1872 |
+
msgstr ""
|
1873 |
+
|
1874 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:26
|
1875 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:62
|
1876 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:25
|
1877 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:83
|
1878 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:18
|
1879 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:89
|
1880 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:36
|
1881 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:125
|
1882 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:25
|
1883 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:81
|
1884 |
+
msgid "4 Columns"
|
1885 |
+
msgstr ""
|
1886 |
+
|
1887 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:31
|
1888 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:69
|
1889 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:31
|
1890 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:91
|
1891 |
+
msgid "Post Number"
|
1892 |
+
msgstr ""
|
1893 |
+
|
1894 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:32
|
1895 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:70
|
1896 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:92
|
1897 |
+
msgid "Enter the number of post to show."
|
1898 |
+
msgstr ""
|
1899 |
+
|
1900 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:38
|
1901 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:58
|
1902 |
+
msgid "Insert Landing Page List Shortcode"
|
1903 |
+
msgstr ""
|
1904 |
+
|
1905 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:44
|
1906 |
+
msgid "Portfolio"
|
1907 |
+
msgstr ""
|
1908 |
+
|
1909 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:48
|
1910 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:68
|
1911 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:12
|
1912 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:54
|
1913 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:12
|
1914 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:97
|
1915 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:66
|
1916 |
+
msgid "Heading"
|
1917 |
+
msgstr ""
|
1918 |
+
|
1919 |
+
#: shared/inbound-shortcodes/shortcodes/landing-page-list.php:117
|
1920 |
+
msgid "View Project"
|
1921 |
+
msgstr ""
|
1922 |
+
|
1923 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:22
|
1924 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:80
|
1925 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:33
|
1926 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:122
|
1927 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:22
|
1928 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:78
|
1929 |
+
msgid "1 Column"
|
1930 |
+
msgstr ""
|
1931 |
+
|
1932 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:26
|
1933 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:84
|
1934 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:19
|
1935 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:90
|
1936 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:37
|
1937 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:126
|
1938 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:26
|
1939 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:82
|
1940 |
+
msgid "5 Columns"
|
1941 |
+
msgstr ""
|
1942 |
+
|
1943 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:32
|
1944 |
+
msgid "Enter the number of post to show. (enter -1 for all posts)"
|
1945 |
+
msgstr ""
|
1946 |
+
|
1947 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:38
|
1948 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:100
|
1949 |
+
msgid "Optional you can sort by a category."
|
1950 |
+
msgstr ""
|
1951 |
+
|
1952 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:44
|
1953 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:108
|
1954 |
+
msgid "Excerpt Lenght"
|
1955 |
+
msgstr ""
|
1956 |
+
|
1957 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:45
|
1958 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:109
|
1959 |
+
msgid "The post excerpt word lenght."
|
1960 |
+
msgstr ""
|
1961 |
+
|
1962 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:50
|
1963 |
+
msgid "Show Featured Thumbnails"
|
1964 |
+
msgstr ""
|
1965 |
+
|
1966 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:51
|
1967 |
+
msgid "Uncheck to hide featured thumbnails"
|
1968 |
+
msgstr ""
|
1969 |
+
|
1970 |
+
#: shared/inbound-shortcodes/shortcodes/landing_pages.php:64
|
1971 |
+
msgid "Entries"
|
1972 |
+
msgstr ""
|
1973 |
+
|
1974 |
+
#: shared/inbound-shortcodes/shortcodes/leadp.php:12
|
1975 |
+
msgid "Alignment"
|
1976 |
+
msgstr ""
|
1977 |
+
|
1978 |
+
#: shared/inbound-shortcodes/shortcodes/leadp.php:13
|
1979 |
+
msgid "Add the pharagraph alignment"
|
1980 |
+
msgstr ""
|
1981 |
+
|
1982 |
+
#: shared/inbound-shortcodes/shortcodes/leadp.php:23
|
1983 |
+
msgid "Paragraph Text"
|
1984 |
+
msgstr ""
|
1985 |
+
|
1986 |
+
#: shared/inbound-shortcodes/shortcodes/leadp.php:24
|
1987 |
+
msgid "Add the pharagraph text"
|
1988 |
+
msgstr ""
|
1989 |
+
|
1990 |
+
#: shared/inbound-shortcodes/shortcodes/leadp.php:30
|
1991 |
+
msgid "Insert Lead Paragraph Shortcode"
|
1992 |
+
msgstr ""
|
1993 |
+
|
1994 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:21
|
1995 |
+
msgid "List Content"
|
1996 |
+
msgstr ""
|
1997 |
+
|
1998 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:22
|
1999 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:64
|
2000 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:148
|
2001 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:35
|
2002 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:47
|
2003 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:108
|
2004 |
+
msgid "Put the content here."
|
2005 |
+
msgstr ""
|
2006 |
+
|
2007 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:28
|
2008 |
+
msgid "Add More List"
|
2009 |
+
msgstr ""
|
2010 |
+
|
2011 |
+
#: shared/inbound-shortcodes/shortcodes/list-icon.php:31
|
2012 |
+
msgid "Insert List Icons Shortcode"
|
2013 |
+
msgstr ""
|
2014 |
+
|
2015 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:12
|
2016 |
+
msgid "List Icon"
|
2017 |
+
msgstr ""
|
2018 |
+
|
2019 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:13
|
2020 |
+
msgid "Select an icon for the List"
|
2021 |
+
msgstr ""
|
2022 |
+
|
2023 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:19
|
2024 |
+
msgid "Font Size"
|
2025 |
+
msgstr ""
|
2026 |
+
|
2027 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:20
|
2028 |
+
msgid "Size of List Font"
|
2029 |
+
msgstr ""
|
2030 |
+
|
2031 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:26
|
2032 |
+
msgid "space between list items"
|
2033 |
+
msgstr ""
|
2034 |
+
|
2035 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:31
|
2036 |
+
msgid "Icon Color"
|
2037 |
+
msgstr ""
|
2038 |
+
|
2039 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:32
|
2040 |
+
msgid "Color of Icon"
|
2041 |
+
msgstr ""
|
2042 |
+
|
2043 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:37
|
2044 |
+
msgid "Text Color"
|
2045 |
+
msgstr ""
|
2046 |
+
|
2047 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:38
|
2048 |
+
msgid "Color of Text in List"
|
2049 |
+
msgstr ""
|
2050 |
+
|
2051 |
+
#: shared/inbound-shortcodes/shortcodes/lists.php:46
|
2052 |
+
msgid "Insert Styled List Shortcode"
|
2053 |
+
msgstr ""
|
2054 |
+
|
2055 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:13
|
2056 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:84
|
2057 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:119
|
2058 |
+
msgid "Select the column."
|
2059 |
+
msgstr ""
|
2060 |
+
|
2061 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:27
|
2062 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:99
|
2063 |
+
msgid "Featured Plan"
|
2064 |
+
msgstr ""
|
2065 |
+
|
2066 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:28
|
2067 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:100
|
2068 |
+
msgid "Check to set this plan as featured"
|
2069 |
+
msgstr ""
|
2070 |
+
|
2071 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:33
|
2072 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:107
|
2073 |
+
msgid "Plan Title"
|
2074 |
+
msgstr ""
|
2075 |
+
|
2076 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:34
|
2077 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:108
|
2078 |
+
msgid "Enter the plan title."
|
2079 |
+
msgstr ""
|
2080 |
+
|
2081 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:39
|
2082 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:115
|
2083 |
+
msgid "Plan Price"
|
2084 |
+
msgstr ""
|
2085 |
+
|
2086 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:40
|
2087 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:116
|
2088 |
+
msgid "Enter the plan price."
|
2089 |
+
msgstr ""
|
2090 |
+
|
2091 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:45
|
2092 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:123
|
2093 |
+
msgid "Plan Term"
|
2094 |
+
msgstr ""
|
2095 |
+
|
2096 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:46
|
2097 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:124
|
2098 |
+
msgid "Enter the plan term. e.g : \"per month\", \"per year\" etc."
|
2099 |
+
msgstr ""
|
2100 |
+
|
2101 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:51
|
2102 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:131
|
2103 |
+
msgid "Plan Button Text"
|
2104 |
+
msgstr ""
|
2105 |
+
|
2106 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:57
|
2107 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:139
|
2108 |
+
msgid "Plan Button Link"
|
2109 |
+
msgstr ""
|
2110 |
+
|
2111 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:63
|
2112 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:147
|
2113 |
+
msgid "Plan Content"
|
2114 |
+
msgstr ""
|
2115 |
+
|
2116 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:70
|
2117 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:53
|
2118 |
+
msgid "Add More Testimony"
|
2119 |
+
msgstr ""
|
2120 |
+
|
2121 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:73
|
2122 |
+
msgid "Insert Pricing Shortcode"
|
2123 |
+
msgstr ""
|
2124 |
+
|
2125 |
+
#: shared/inbound-shortcodes/shortcodes/pricing.php:79
|
2126 |
+
msgid "Pricing Table"
|
2127 |
+
msgstr ""
|
2128 |
+
|
2129 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:12
|
2130 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:71
|
2131 |
+
msgid "Profile Name"
|
2132 |
+
msgstr ""
|
2133 |
+
|
2134 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:13
|
2135 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:72
|
2136 |
+
msgid "Enter the name."
|
2137 |
+
msgstr ""
|
2138 |
+
|
2139 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:18
|
2140 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:79
|
2141 |
+
msgid "Profile Meta"
|
2142 |
+
msgstr ""
|
2143 |
+
|
2144 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:19
|
2145 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:80
|
2146 |
+
msgid "Enter the profile meta. e.g job position etc."
|
2147 |
+
msgstr ""
|
2148 |
+
|
2149 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:24
|
2150 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:87
|
2151 |
+
msgid "Profile Image"
|
2152 |
+
msgstr ""
|
2153 |
+
|
2154 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:25
|
2155 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:88
|
2156 |
+
msgid "Paste your profile image URL here."
|
2157 |
+
msgstr ""
|
2158 |
+
|
2159 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:30
|
2160 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:95
|
2161 |
+
msgid "Profile Link"
|
2162 |
+
msgstr ""
|
2163 |
+
|
2164 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:31
|
2165 |
+
msgid "Paste your profile link URL here."
|
2166 |
+
msgstr ""
|
2167 |
+
|
2168 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:36
|
2169 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:103
|
2170 |
+
msgid "Profile Facebook"
|
2171 |
+
msgstr ""
|
2172 |
+
|
2173 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:37
|
2174 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:104
|
2175 |
+
msgid "Paste your facebook URL here."
|
2176 |
+
msgstr ""
|
2177 |
+
|
2178 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:42
|
2179 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:111
|
2180 |
+
msgid "Profile Twitter"
|
2181 |
+
msgstr ""
|
2182 |
+
|
2183 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:43
|
2184 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:112
|
2185 |
+
msgid "Paste your twitter URL here."
|
2186 |
+
msgstr ""
|
2187 |
+
|
2188 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:48
|
2189 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:119
|
2190 |
+
msgid "Profile Email Address"
|
2191 |
+
msgstr ""
|
2192 |
+
|
2193 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:49
|
2194 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:120
|
2195 |
+
msgid "Paste your email address here."
|
2196 |
+
msgstr ""
|
2197 |
+
|
2198 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:54
|
2199 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:127
|
2200 |
+
msgid "Profile Description"
|
2201 |
+
msgstr ""
|
2202 |
+
|
2203 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:55
|
2204 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:128
|
2205 |
+
msgid "Enter the profile description text."
|
2206 |
+
msgstr ""
|
2207 |
+
|
2208 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:61
|
2209 |
+
msgid "Insert Profile Shortcode"
|
2210 |
+
msgstr ""
|
2211 |
+
|
2212 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:67
|
2213 |
+
msgid "Profile"
|
2214 |
+
msgstr ""
|
2215 |
+
|
2216 |
+
#: shared/inbound-shortcodes/shortcodes/profile.php:96
|
2217 |
+
msgid "Paste your profile URL here."
|
2218 |
+
msgstr ""
|
2219 |
+
|
2220 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:11
|
2221 |
+
msgid "Insert Saved Form"
|
2222 |
+
msgstr ""
|
2223 |
+
|
2224 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:12
|
2225 |
+
msgid "Insert a Saved Form"
|
2226 |
+
msgstr ""
|
2227 |
+
|
2228 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:20
|
2229 |
+
msgid "<span class=\"switch-to-form-builder button\">Build a New Form</span>"
|
2230 |
+
msgstr ""
|
2231 |
+
|
2232 |
+
#: shared/inbound-shortcodes/shortcodes/quick-forms.php:35
|
2233 |
+
msgid "Quick Insert Inbound Form Shortcode"
|
2234 |
+
msgstr ""
|
2235 |
+
|
2236 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:12
|
2237 |
+
msgid "Facebook"
|
2238 |
+
msgstr ""
|
2239 |
+
|
2240 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:13
|
2241 |
+
msgid "Enter your facebook profile URL"
|
2242 |
+
msgstr ""
|
2243 |
+
|
2244 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:18
|
2245 |
+
msgid "Twitter"
|
2246 |
+
msgstr ""
|
2247 |
+
|
2248 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:19
|
2249 |
+
msgid "Enter your twitter profile URL"
|
2250 |
+
msgstr ""
|
2251 |
+
|
2252 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:24
|
2253 |
+
msgid "Google+"
|
2254 |
+
msgstr ""
|
2255 |
+
|
2256 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:25
|
2257 |
+
msgid "Enter your google plus profile URL"
|
2258 |
+
msgstr ""
|
2259 |
+
|
2260 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:30
|
2261 |
+
msgid "Linkedin"
|
2262 |
+
msgstr ""
|
2263 |
+
|
2264 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:31
|
2265 |
+
msgid "Enter your linkedin profile URL"
|
2266 |
+
msgstr ""
|
2267 |
+
|
2268 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:36
|
2269 |
+
msgid "Github"
|
2270 |
+
msgstr ""
|
2271 |
+
|
2272 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:37
|
2273 |
+
msgid "Enter your github profile URL"
|
2274 |
+
msgstr ""
|
2275 |
+
|
2276 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:42
|
2277 |
+
msgid "Instagram"
|
2278 |
+
msgstr ""
|
2279 |
+
|
2280 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:43
|
2281 |
+
msgid "Enter your instagram profile URL"
|
2282 |
+
msgstr ""
|
2283 |
+
|
2284 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:48
|
2285 |
+
msgid "Pinterest"
|
2286 |
+
msgstr ""
|
2287 |
+
|
2288 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:49
|
2289 |
+
msgid "Enter your pinterest profile URL"
|
2290 |
+
msgstr ""
|
2291 |
+
|
2292 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:54
|
2293 |
+
msgid "RSS"
|
2294 |
+
msgstr ""
|
2295 |
+
|
2296 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:55
|
2297 |
+
msgid "Enter your RSS feeds URL"
|
2298 |
+
msgstr ""
|
2299 |
+
|
2300 |
+
#: shared/inbound-shortcodes/shortcodes/social.php:61
|
2301 |
+
msgid "Insert Social Link Shortcode"
|
2302 |
+
msgstr ""
|
2303 |
+
|
2304 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:13
|
2305 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:55
|
2306 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:13
|
2307 |
+
msgid "Enter the heading text"
|
2308 |
+
msgstr ""
|
2309 |
+
|
2310 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:21
|
2311 |
+
msgid "Tab Title"
|
2312 |
+
msgstr ""
|
2313 |
+
|
2314 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:22
|
2315 |
+
msgid "Enter the tab title."
|
2316 |
+
msgstr ""
|
2317 |
+
|
2318 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:34
|
2319 |
+
msgid "Tab Content"
|
2320 |
+
msgstr ""
|
2321 |
+
|
2322 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:41
|
2323 |
+
msgid "Add More Tab"
|
2324 |
+
msgstr ""
|
2325 |
+
|
2326 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:44
|
2327 |
+
msgid "Insert Tabs Shortcode"
|
2328 |
+
msgstr ""
|
2329 |
+
|
2330 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:50
|
2331 |
+
msgid "Tabs"
|
2332 |
+
msgstr ""
|
2333 |
+
|
2334 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:65
|
2335 |
+
msgid "Enter the tab title"
|
2336 |
+
msgstr ""
|
2337 |
+
|
2338 |
+
#: shared/inbound-shortcodes/shortcodes/tabs.php:82
|
2339 |
+
msgid "Enter the tab content"
|
2340 |
+
msgstr ""
|
2341 |
+
|
2342 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:23
|
2343 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:110
|
2344 |
+
msgid "Nested"
|
2345 |
+
msgstr ""
|
2346 |
+
|
2347 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:24
|
2348 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:111
|
2349 |
+
msgid "Centered"
|
2350 |
+
msgstr ""
|
2351 |
+
|
2352 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:46
|
2353 |
+
msgid "Enter the title."
|
2354 |
+
msgstr ""
|
2355 |
+
|
2356 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:64
|
2357 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:144
|
2358 |
+
msgid "Image URL"
|
2359 |
+
msgstr ""
|
2360 |
+
|
2361 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:65
|
2362 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:145
|
2363 |
+
msgid "Enter your image url, it will override the icon above"
|
2364 |
+
msgstr ""
|
2365 |
+
|
2366 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:72
|
2367 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:167
|
2368 |
+
msgid "The title link destination URL."
|
2369 |
+
msgstr ""
|
2370 |
+
|
2371 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:77
|
2372 |
+
msgid "Teaser Content"
|
2373 |
+
msgstr ""
|
2374 |
+
|
2375 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:84
|
2376 |
+
msgid "Add More Block"
|
2377 |
+
msgstr ""
|
2378 |
+
|
2379 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:87
|
2380 |
+
msgid "Insert Teaser Shortcode"
|
2381 |
+
msgstr ""
|
2382 |
+
|
2383 |
+
#: shared/inbound-shortcodes/shortcodes/teaser.php:93
|
2384 |
+
msgid "Teaser"
|
2385 |
+
msgstr ""
|
2386 |
+
|
2387 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:34
|
2388 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:91
|
2389 |
+
msgid "Testimony Author"
|
2390 |
+
msgstr ""
|
2391 |
+
|
2392 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:35
|
2393 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:92
|
2394 |
+
msgid "Enter the testimony author name."
|
2395 |
+
msgstr ""
|
2396 |
+
|
2397 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:40
|
2398 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:99
|
2399 |
+
msgid "Testimony Author Meta"
|
2400 |
+
msgstr ""
|
2401 |
+
|
2402 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:41
|
2403 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:100
|
2404 |
+
msgid "The author job, company or website name."
|
2405 |
+
msgstr ""
|
2406 |
+
|
2407 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:46
|
2408 |
+
msgid "Testimony Content"
|
2409 |
+
msgstr ""
|
2410 |
+
|
2411 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:56
|
2412 |
+
msgid "Insert Testimonial Shortcode"
|
2413 |
+
msgstr ""
|
2414 |
+
|
2415 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:62
|
2416 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:124
|
2417 |
+
msgid "Testimonial"
|
2418 |
+
msgstr ""
|
2419 |
+
|
2420 |
+
#: shared/inbound-shortcodes/shortcodes/testimonial.php:107
|
2421 |
+
msgid "Testimony Text"
|
2422 |
+
msgstr ""
|
2423 |
+
|
2424 |
+
#: shared/inbound-shortcodes/shortcodes/video.php:12
|
2425 |
+
msgid "Video URL"
|
2426 |
+
msgstr ""
|
2427 |
+
|
2428 |
+
#: shared/inbound-shortcodes/shortcodes/video.php:13
|
2429 |
+
msgid ""
|
2430 |
+
"Paste the video URL here, click <a href=\"http://codex.wordpress.org/"
|
2431 |
+
"Embeds#Okay.2C_So_What_Sites_Can_I_Embed_From.3F\" target=\"_blank\">here</"
|
2432 |
+
"a> to see all available video hosts."
|
2433 |
+
msgstr ""
|
2434 |
+
|
2435 |
+
#: shared/inbound-shortcodes/shortcodes/video.php:19
|
2436 |
+
msgid "Insert Video Shortcode"
|
2437 |
+
msgstr ""
|
shared/languages/landing-pages/_get-translations.bat
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
tx.exe pull -a --skip
|
2 |
+
|
3 |
+
|
4 |
+
for %%a in (*.po) do (
|
5 |
+
if /i not "%%~na"=="landing-pages" (
|
6 |
+
msgfmt -cv -o "%%~na.mo" "%%a"
|
7 |
+
del "%%a"
|
8 |
+
)
|
9 |
+
|
10 |
+
)
|
11 |
+
|
12 |
+
PAUSE
|
shared/languages/landing-pages/ach.mo
ADDED
Binary file
|
shared/languages/landing-pages/af.mo
ADDED
Binary file
|
shared/languages/landing-pages/ar.mo
ADDED
Binary file
|
shared/languages/landing-pages/az.mo
ADDED
Binary file
|
shared/languages/landing-pages/be_BY.mo
ADDED
Binary file
|
shared/languages/landing-pages/bg_BG.mo
ADDED
Binary file
|
shared/languages/landing-pages/bn_BD.mo
ADDED
Binary file
|
shared/languages/landing-pages/br.mo
ADDED
Binary file
|
shared/languages/landing-pages/bs_BA.mo
ADDED
Binary file
|
shared/languages/landing-pages/ca.mo
ADDED
Binary file
|
shared/languages/landing-pages/co.mo
ADDED
Binary file
|
shared/languages/landing-pages/cs_CZ.mo
ADDED
Binary file
|
shared/languages/landing-pages/cy.mo
ADDED
Binary file
|
shared/languages/landing-pages/da_DK.mo
ADDED
Binary file
|
shared/languages/landing-pages/de_DE.mo
ADDED
Binary file
|
shared/languages/landing-pages/el.mo
ADDED
Binary file
|
shared/languages/landing-pages/en_GB.mo
ADDED
Binary file
|
shared/languages/landing-pages/eo.mo
ADDED
Binary file
|
shared/languages/landing-pages/es_CL.mo
ADDED
Binary file
|
shared/languages/landing-pages/es_ES.mo
ADDED
Binary file
|
shared/languages/landing-pages/es_MX.mo
ADDED
Binary file
|
shared/languages/landing-pages/es_PE.mo
ADDED
Binary file
|
shared/languages/landing-pages/es_VE.mo
ADDED
Binary file
|
shared/languages/landing-pages/et.mo
ADDED
Binary file
|
shared/languages/landing-pages/eu.mo
ADDED
Binary file
|
shared/languages/landing-pages/fa.mo
ADDED
Binary file
|
shared/languages/landing-pages/fa_IR.mo
ADDED
Binary file
|
shared/languages/landing-pages/fi.mo
ADDED
Binary file
|
shared/languages/landing-pages/fo.mo
ADDED
Binary file
|
shared/languages/landing-pages/fr_FR.mo
ADDED
Binary file
|
shared/languages/landing-pages/gl_ES.mo
ADDED
Binary file
|
shared/languages/landing-pages/gu_IN.mo
ADDED
Binary file
|
shared/languages/landing-pages/he_IL.mo
ADDED
Binary file
|
shared/languages/landing-pages/hi_IN.mo
ADDED
Binary file
|
shared/languages/landing-pages/hr.mo
ADDED
Binary file
|
shared/languages/landing-pages/hu_HU.mo
ADDED
Binary file
|
shared/languages/landing-pages/id_ID.mo
ADDED
Binary file
|
shared/languages/landing-pages/is_IS.mo
ADDED
Binary file
|
shared/languages/landing-pages/it_IT.mo
ADDED
Binary file
|
shared/languages/landing-pages/ja.mo
ADDED
Binary file
|
shared/languages/landing-pages/jv.mo
ADDED
Binary file
|
shared/languages/landing-pages/ka.mo
ADDED
Binary file
|
shared/languages/landing-pages/ko_KR.mo
ADDED
Binary file
|
shared/languages/landing-pages/ku.mo
ADDED
Binary file
|
shared/languages/landing-pages/ky.mo
ADDED
Binary file
|
shared/languages/landing-pages/landing-pages.po
CHANGED
@@ -2434,4 +2434,4 @@ msgstr ""
|
|
2434 |
|
2435 |
#: shared/inbound-shortcodes/shortcodes/video.php:19
|
2436 |
msgid "Insert Video Shortcode"
|
2437 |
-
msgstr ""
|
2434 |
|
2435 |
#: shared/inbound-shortcodes/shortcodes/video.php:19
|
2436 |
msgid "Insert Video Shortcode"
|
2437 |
+
msgstr ""
|
shared/languages/landing-pages/lv.mo
ADDED
Binary file
|
shared/languages/landing-pages/lv_LV.mo
ADDED
Binary file
|
shared/languages/landing-pages/mg.mo
ADDED
Binary file
|
shared/languages/landing-pages/mk_MK.mo
ADDED
Binary file
|
shared/languages/landing-pages/mn.mo
ADDED
Binary file
|
shared/languages/landing-pages/my_MM.mo
ADDED
Binary file
|
shared/languages/landing-pages/nb_NO.mo
ADDED
Binary file
|
shared/languages/landing-pages/ne_NP.mo
ADDED
Binary file
|
shared/languages/landing-pages/nl_NL.mo
ADDED
Binary file
|
shared/languages/landing-pages/nn_NO.mo
ADDED
Binary file
|
shared/languages/landing-pages/oc.mo
ADDED
Binary file
|
shared/languages/landing-pages/pap.mo
ADDED
Binary file
|
shared/languages/landing-pages/pl_PL.mo
ADDED
Binary file
|
shared/languages/landing-pages/pt_BR.mo
ADDED
Binary file
|
shared/languages/landing-pages/pt_PT.mo
ADDED
Binary file
|
shared/languages/landing-pages/ro_RO.mo
ADDED
Binary file
|
shared/languages/landing-pages/ru_RU.mo
ADDED
Binary file
|
shared/languages/landing-pages/sah.mo
ADDED
Binary file
|
shared/languages/landing-pages/sk_SK.mo
ADDED
Binary file
|
shared/languages/landing-pages/sq.mo
ADDED
Binary file
|
shared/languages/landing-pages/sr_RS.mo
ADDED
Binary file
|
shared/languages/landing-pages/su.mo
ADDED
Binary file
|
shared/languages/landing-pages/sv_SE.mo
ADDED
Binary file
|
shared/languages/landing-pages/sw.mo
ADDED
Binary file
|
shared/languages/landing-pages/te.mo
ADDED
Binary file
|
shared/languages/landing-pages/th.mo
ADDED
Binary file
|
shared/languages/landing-pages/tk_TM.mo
ADDED
Binary file
|
shared/languages/landing-pages/tr_TR.mo
ADDED
Binary file
|
shared/languages/landing-pages/ug.mo
ADDED
Binary file
|
shared/languages/landing-pages/uk.mo
ADDED
Binary file
|
shared/languages/landing-pages/uz.mo
ADDED
Binary file
|
shared/languages/landing-pages/vi.mo
ADDED
Binary file
|
shared/languages/landing-pages/zh_CN.mo
ADDED
Binary file
|
shared/languages/landing-pages/zh_TW.mo
ADDED
Binary file
|
shared/metaboxes/inbound-metaboxes.css
CHANGED
@@ -6,23 +6,11 @@ padding-left: 0px;
|
|
6 |
.inbound-meta-box-label, .inbound-meta-box-option {
|
7 |
display: inline-block;
|
8 |
}
|
9 |
-
.upload_image_button {
|
10 |
-
font-size: 25px;
|
11 |
-
}
|
12 |
.inbound-meta-box-label {
|
13 |
-
width:
|
14 |
-
padding-right: 20px;
|
15 |
-
}
|
16 |
-
.inbound-textarea-option {
|
17 |
-
width: 73%;
|
18 |
-
}
|
19 |
-
.inbound-wysiwyg-option {
|
20 |
-
width: 100%;
|
21 |
-
|
22 |
}
|
23 |
-
|
24 |
-
|
25 |
-
margin-bottom: 10px;
|
26 |
}
|
27 |
.inbound-meta-box-option {
|
28 |
position: relative;
|
@@ -33,9 +21,8 @@ position: absolute;
|
|
33 |
.inbound-datepicker .button-primary.new-save-wp-cta {
|
34 |
display: none;
|
35 |
}
|
36 |
-
|
37 |
.inbound-description-block-option {
|
38 |
-
max-width:
|
39 |
}
|
40 |
.inbound-media-row .button-primary.new-save-wp-cta {
|
41 |
position: absolute;
|
@@ -67,11 +54,7 @@ display: inline-block;
|
|
67 |
}
|
68 |
.inbound-wysiwyg, .inbound-media, .inbound-datepicker, .inbound-textarea {
|
69 |
vertical-align: top;
|
70 |
-
|
71 |
-
}
|
72 |
-
.inbound-wysiwyg label {
|
73 |
-
margin-bottom: 5px;
|
74 |
-
}
|
75 |
.inbound-textarea-option .wp-cta-success-message {
|
76 |
position: absolute;
|
77 |
margin-top: 0px;
|
6 |
.inbound-meta-box-label, .inbound-meta-box-option {
|
7 |
display: inline-block;
|
8 |
}
|
|
|
|
|
|
|
9 |
.inbound-meta-box-label {
|
10 |
+
width: 18%;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
}
|
12 |
+
.inbound-wysiwyg-option, .inbound-textarea-option {
|
13 |
+
width: 75%;
|
|
|
14 |
}
|
15 |
.inbound-meta-box-option {
|
16 |
position: relative;
|
21 |
.inbound-datepicker .button-primary.new-save-wp-cta {
|
22 |
display: none;
|
23 |
}
|
|
|
24 |
.inbound-description-block-option {
|
25 |
+
max-width: 55%;
|
26 |
}
|
27 |
.inbound-media-row .button-primary.new-save-wp-cta {
|
28 |
position: absolute;
|
54 |
}
|
55 |
.inbound-wysiwyg, .inbound-media, .inbound-datepicker, .inbound-textarea {
|
56 |
vertical-align: top;
|
57 |
+
}
|
|
|
|
|
|
|
|
|
58 |
.inbound-textarea-option .wp-cta-success-message {
|
59 |
position: absolute;
|
60 |
margin-top: 0px;
|
shared/metaboxes/template.metaboxes.php
ADDED
@@ -0,0 +1,181 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
|
4 |
+
// replacing wp_cta_show_metabox
|
5 |
+
if (!function_exists('inbound_template_show_metabox')) {
|
6 |
+
function inbound_template_show_metabox($post,$key)
|
7 |
+
{
|
8 |
+
$extension_data = wp_cta_get_extension_data();
|
9 |
+
$key = $key['args']['key'];
|
10 |
+
|
11 |
+
$wp_cta_custom_fields = $extension_data[$key]['settings'];
|
12 |
+
|
13 |
+
$wp_cta_custom_fields = apply_filters('wp_cta_show_metabox',$wp_cta_custom_fields, $key);
|
14 |
+
|
15 |
+
inbound_template_metabox_render($key,$wp_cta_custom_fields,$post);
|
16 |
+
}
|
17 |
+
}
|
18 |
+
|
19 |
+
if (!function_exists('inbound_template_metabox_render')) {
|
20 |
+
// replacing wp_cta_render_metabox
|
21 |
+
function inbound_template_metabox_render($key,$custom_fields,$post)
|
22 |
+
{
|
23 |
+
$prefix = 'wp_cta';
|
24 |
+
$prefix_dash = 'wp-cta';
|
25 |
+
//print_r($custom_fields);exit;
|
26 |
+
// Use nonce for verification
|
27 |
+
echo "<input type='hidden' name='{$prefix}_{$key}_custom_fields_nonce' value='".wp_create_nonce(''.$prefix_dash.'-nonce')."' />";
|
28 |
+
|
29 |
+
// Begin the field table and loop
|
30 |
+
echo '<div class="form-table" id="inbound-meta">';
|
31 |
+
|
32 |
+
//print_r($custom_fields);exit;
|
33 |
+
$current_var = wp_cta_ab_testing_get_current_variation_id();
|
34 |
+
foreach ($custom_fields as $field) {
|
35 |
+
$field_id = $key . "-" .$field['id'];
|
36 |
+
$field_name = $field['id'];
|
37 |
+
$label_class = $field['id'] . "-label";
|
38 |
+
$type_class = " inbound-" . $field['type'];
|
39 |
+
$type_class_row = " inbound-" . $field['type'] . "-row";
|
40 |
+
$type_class_option = " inbound-" . $field['type'] . "-option";
|
41 |
+
$option_class = (isset($field['class'])) ? $field['class'] : '';
|
42 |
+
// get value of this field if it exists for this post
|
43 |
+
$meta = get_post_meta($post->ID, $field_id, true);
|
44 |
+
$global_meta = get_post_meta($post->ID, $field_name, true);
|
45 |
+
if(empty($global_meta)) {
|
46 |
+
$global_meta = $field['default'];
|
47 |
+
}
|
48 |
+
|
49 |
+
//print_r($field);
|
50 |
+
if ((!isset($meta)&&isset($field['default'])&&!is_numeric($meta))||isset($meta)&&empty($meta)&&isset($field['default'])&&!is_numeric($meta))
|
51 |
+
{
|
52 |
+
//echo $field['id'].":".$meta;
|
53 |
+
//echo "<br>";
|
54 |
+
$meta = $field['default'];
|
55 |
+
}
|
56 |
+
|
57 |
+
// Remove prefixes on global => true template options
|
58 |
+
if (isset($field['global']) && $field['global'] === true) {
|
59 |
+
$field_id = $field_name;
|
60 |
+
$meta = get_post_meta($post->ID, $field_name, true);
|
61 |
+
}
|
62 |
+
|
63 |
+
// begin a table row with
|
64 |
+
echo '<div class="'.$field['id'].$type_class_row.' div-'.$option_class.' wp-call-to-action-option-row inbound-meta-box-row">';
|
65 |
+
if ($field['type'] != "description-block" && $field['type'] != "custom-css" ) {
|
66 |
+
echo '<div id="inbound-'.$field_id.'" data-actual="'.$field_id.'" class="inbound-meta-box-label wp-call-to-action-table-header '.$label_class.$type_class.'"><label for="'.$field_id.'">'.$field['label'].'</label></div>';
|
67 |
+
}
|
68 |
+
|
69 |
+
echo '<div class="wp-call-to-action-option-td inbound-meta-box-option '.$type_class_option.'" data-field-type="'.$field['type'].'">';
|
70 |
+
switch($field['type']) {
|
71 |
+
// default content for the_content
|
72 |
+
case 'default-content':
|
73 |
+
echo '<span id="overwrite-content" class="button-secondary">Insert Default Content into main Content area</span><div style="display:none;"><textarea name="'.$field_id.'" id="'.$field_id.'" class="default-content" cols="106" rows="6" style="width: 75%; display:hidden;">'.$meta.'</textarea></div>';
|
74 |
+
break;
|
75 |
+
case 'description-block':
|
76 |
+
echo '<div id="'.$field_id.'" class="description-block">'.$field['description'].'</div>';
|
77 |
+
break;
|
78 |
+
case 'custom-css':
|
79 |
+
echo '<style type="text/css">'.$field['default'].'</style>';
|
80 |
+
break;
|
81 |
+
// text
|
82 |
+
case 'colorpicker':
|
83 |
+
if (!$meta)
|
84 |
+
{
|
85 |
+
$meta = $field['default'];
|
86 |
+
}
|
87 |
+
$var_id = (isset($_GET['new_meta_key'])) ? "-" . $_GET['new_meta_key'] : '';
|
88 |
+
echo '<input type="text" class="jpicker" style="background-color:#'.$meta.'" name="'.$field_id.'" id="'.$field_id.'" value="'.$meta.'" size="5" /><span class="button-primary new-save-wp-cta" data-field-type="text" id="'.$field_id.$var_id.'" style="margin-left:10px; display:none;">Update</span>
|
89 |
+
<div class="wp_cta_tooltip tool_color" title="'.$field['description'].'"></div>';
|
90 |
+
break;
|
91 |
+
case 'datepicker':
|
92 |
+
echo '<div class="jquery-date-picker inbound-datepicker" id="date-picking" data-field-type="text">
|
93 |
+
<span class="datepair" data-language="javascript">
|
94 |
+
Date: <input type="text" id="date-picker-'.$key.'" class="date start" /></span>
|
95 |
+
Time: <input id="time-picker-'.$key.'" type="text" class="time time-picker" />
|
96 |
+
<input type="hidden" name="'.$field_id.'" id="'.$field_id.'" value="'.$meta.'" class="new-date" value="" >
|
97 |
+
<p class="description">'.$field['description'].'</p>
|
98 |
+
</div>';
|
99 |
+
break;
|
100 |
+
case 'text':
|
101 |
+
echo '<input type="text" name="'.$field_id.'" id="'.$field_id.'" value="'.$meta.'" size="30" />
|
102 |
+
<div class="wp_cta_tooltip" title="'.$field['description'].'"></div>';
|
103 |
+
break;
|
104 |
+
case 'number':
|
105 |
+
|
106 |
+
echo '<input type="number" class="'.$option_class.'" name="'.$field_id.'" id="'.$field_id.'" value="'.$meta.'" size="30" />
|
107 |
+
<div class="wp_cta_tooltip" title="'.$field['description'].'"></div>';
|
108 |
+
|
109 |
+
break;
|
110 |
+
// textarea
|
111 |
+
case 'textarea':
|
112 |
+
echo '<textarea name="'.$field_id.'" id="'.$field_id.'" cols="106" rows="6" style="width: 75%;">'.$meta.'</textarea>
|
113 |
+
<div class="wp_cta_tooltip tool_textarea" title="'.$field['description'].'"></div>';
|
114 |
+
break;
|
115 |
+
// wysiwyg
|
116 |
+
case 'wysiwyg':
|
117 |
+
echo "<div class='iframe-options iframe-options-".$field_id."' id='".$field['id']."'>";
|
118 |
+
wp_editor( $meta, $field_id, $settings = array( 'editor_class' => $field_name ) );
|
119 |
+
echo '<p class="description">'.$field['description'].'</p></div>';
|
120 |
+
break;
|
121 |
+
// media
|
122 |
+
case 'media':
|
123 |
+
//echo 1; exit;
|
124 |
+
echo '<label for="upload_image" data-field-type="text">';
|
125 |
+
echo '<input name="'.$field_id.'" id="'.$field_id.'" type="text" size="36" name="upload_image" value="'.$meta.'" />';
|
126 |
+
echo '<input class="upload_image_button" id="uploader_'.$field_id.'" type="button" value="Upload Image" />';
|
127 |
+
echo '<p class="description">'.$field['description'].'</p>';
|
128 |
+
break;
|
129 |
+
// checkbox
|
130 |
+
case 'checkbox':
|
131 |
+
$i = 1;
|
132 |
+
echo "<table class='wp_cta_check_box_table'>";
|
133 |
+
if (!isset($meta)){$meta=array();}
|
134 |
+
elseif (!is_array($meta)){
|
135 |
+
$meta = array($meta);
|
136 |
+
}
|
137 |
+
foreach ($field['options'] as $value=>$label) {
|
138 |
+
if ($i==5||$i==1)
|
139 |
+
{
|
140 |
+
echo "<tr>";
|
141 |
+
$i=1;
|
142 |
+
}
|
143 |
+
echo '<td data-field-type="checkbox"><input type="checkbox" name="'.$field_id.'[]" id="'.$field_id.'" value="'.$value.'" ',in_array($value,$meta) ? ' checked="checked"' : '','/>';
|
144 |
+
echo '<label for="'.$value.'"> '.$label.'</label></td>';
|
145 |
+
if ($i==4)
|
146 |
+
{
|
147 |
+
echo "</tr>";
|
148 |
+
}
|
149 |
+
$i++;
|
150 |
+
}
|
151 |
+
echo "</table>";
|
152 |
+
echo '<div class="wp_cta_tooltip tool_checkbox" title="'.$field['description'].'"></div>';
|
153 |
+
break;
|
154 |
+
// radio
|
155 |
+
case 'radio':
|
156 |
+
foreach ($field['options'] as $value=>$label) {
|
157 |
+
//echo $meta.":".$field_id;
|
158 |
+
//echo "<br>";
|
159 |
+
echo '<input type="radio" name="'.$field_id.'" id="'.$field_id.'" value="'.$value.'" ',$meta==$value ? ' checked="checked"' : '','/>';
|
160 |
+
echo '<label for="'.$value.'"> '.$label.'</label> ';
|
161 |
+
}
|
162 |
+
echo '<div class="wp_cta_tooltip" title="'.$field['description'].'"></div>';
|
163 |
+
break;
|
164 |
+
// select
|
165 |
+
case 'dropdown':
|
166 |
+
echo '<select name="'.$field_id.'" id="'.$field_id.'" class="'.$field['id'].'">';
|
167 |
+
foreach ($field['options'] as $value=>$label) {
|
168 |
+
echo '<option', $meta == $value ? ' selected="selected"' : '', ' value="'.$value.'">'.$label.'</option>';
|
169 |
+
}
|
170 |
+
echo '</select><div class="wp_cta_tooltip" title="'.$field['description'].'"></div>';
|
171 |
+
break;
|
172 |
+
|
173 |
+
|
174 |
+
|
175 |
+
} //end switch
|
176 |
+
echo '</div></div>';
|
177 |
+
} // end foreach
|
178 |
+
echo '</div>'; // end table
|
179 |
+
//exit;
|
180 |
+
}
|
181 |
+
}
|
shared/tracking/js/inprogress.store.lead.ajax.js
CHANGED
@@ -258,6 +258,7 @@ console.log(matched_form_items);
|
|
258 |
var post_values = {};
|
259 |
// unset values with exclude array
|
260 |
form_inputs.each(function() {
|
|
|
261 |
post_values[this.name] = jQuery(this).val();
|
262 |
});
|
263 |
var post_values_json = JSON.stringify(post_values);
|
@@ -627,4 +628,4 @@ jQuery(".wpl-track-me").find('input[type=text],input[type=email]').each(function
|
|
627 |
});
|
628 |
}, 400);
|
629 |
*/
|
630 |
-
// end function to parse form fields
|
258 |
var post_values = {};
|
259 |
// unset values with exclude array
|
260 |
form_inputs.each(function() {
|
261 |
+
|
262 |
post_values[this.name] = jQuery(this).val();
|
263 |
});
|
264 |
var post_values_json = JSON.stringify(post_values);
|
628 |
});
|
629 |
}, 400);
|
630 |
*/
|
631 |
+
// end function to parse form fields
|
shared/tracking/js/store.lead.ajax.js
CHANGED
@@ -16,13 +16,21 @@ jQuery(document).ready(function($) {
|
|
16 |
form_id = jQuery(this).attr('id');
|
17 |
form_class = jQuery(this).attr('class');
|
18 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
jQuery('button, input[type="button"]').css('cursor', 'wait');
|
20 |
jQuery('input').css('cursor', 'wait');
|
21 |
jQuery('body').css('cursor', 'wait');
|
22 |
|
23 |
-
|
24 |
-
e.preventDefault(); // halt normal form
|
25 |
-
|
26 |
var email = "";
|
27 |
var firstname = "";
|
28 |
var lastname = "";
|
@@ -137,7 +145,7 @@ jQuery(document).ready(function($) {
|
|
137 |
lastname = parts[1];
|
138 |
}
|
139 |
|
140 |
-
var form_inputs = jQuery('.wpl-track-me').find('input[type=text],textarea,select');
|
141 |
var post_values = {};
|
142 |
// unset values with exclude array
|
143 |
form_inputs.each(function() {
|
@@ -512,4 +520,4 @@ jQuery(".wpl-track-me").find('input[type=text],input[type=email]').each(function
|
|
512 |
});
|
513 |
}, 400);
|
514 |
*/
|
515 |
-
// end function to parse form fields
|
16 |
form_id = jQuery(this).attr('id');
|
17 |
form_class = jQuery(this).attr('class');
|
18 |
|
19 |
+
e.preventDefault(); // halt normal form
|
20 |
+
|
21 |
+
// Email Validation
|
22 |
+
var inbound_form_exists = $("#inbound-form-wrapper").length;
|
23 |
+
var email_validation = $(".inbound-email.invalid-email").length;
|
24 |
+
if (email_validation > 0 && inbound_form_exists > 0) {
|
25 |
+
jQuery(".inbound-email.invalid-email").focus();
|
26 |
+
alert("Please enter a valid email address");
|
27 |
+
return false;
|
28 |
+
}
|
29 |
+
|
30 |
jQuery('button, input[type="button"]').css('cursor', 'wait');
|
31 |
jQuery('input').css('cursor', 'wait');
|
32 |
jQuery('body').css('cursor', 'wait');
|
33 |
|
|
|
|
|
|
|
34 |
var email = "";
|
35 |
var firstname = "";
|
36 |
var lastname = "";
|
145 |
lastname = parts[1];
|
146 |
}
|
147 |
|
148 |
+
var form_inputs = jQuery('.wpl-track-me').find('input[type=text],input[type=hidden],textarea,select');
|
149 |
var post_values = {};
|
150 |
// unset values with exclude array
|
151 |
form_inputs.each(function() {
|
520 |
});
|
521 |
}, 400);
|
522 |
*/
|
523 |
+
// end function to parse form fields
|
shared/tracking/store.lead.php
CHANGED
@@ -7,250 +7,270 @@
|
|
7 |
|
8 |
if (!function_exists('inbound_store_lead')) {
|
9 |
|
10 |
-
add_action('wp_ajax_inbound_store_lead', 'inbound_store_lead');
|
11 |
-
add_action('wp_ajax_nopriv_inbound_store_lead', 'inbound_store_lead');
|
12 |
|
13 |
-
function inbound_store_lead()
|
14 |
-
{
|
15 |
-
|
16 |
-
|
17 |
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
|
|
|
|
|
|
37 |
|
38 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
|
73 |
-
|
74 |
-
|
75 |
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
|
109 |
-
|
110 |
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
|
|
150 |
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
|
172 |
-
/* Store page views for page tracking off */
|
173 |
-
$page_tracking_status = get_option('wpl-main-page-view-tracking', 1);
|
174 |
-
if($data['page_views'] && $page_tracking_status == 0){
|
175 |
|
176 |
-
|
177 |
-
|
|
|
|
|
|
|
|
|
178 |
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
|
203 |
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
|
|
211 |
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
226 |
}
|
227 |
-
$
|
228 |
-
$
|
229 |
-
update_post_meta( $data['lead_id'], 'wpleads_websites', $websites );
|
230 |
}
|
231 |
-
}
|
232 |
-
// Merge form fields if exist
|
233 |
-
if (is_array($a1)) {
|
234 |
-
$new_raw_post_data = array_merge_recursive( $a1, $a2 );
|
235 |
-
} else {
|
236 |
-
$new_raw_post_data = $a2;
|
237 |
-
}
|
238 |
-
$new_raw_post_data = json_encode( $new_raw_post_data );
|
239 |
-
update_post_meta( $data['lead_id'],'wpleads_raw_post_data', $new_raw_post_data );
|
240 |
-
}
|
241 |
|
242 |
-
|
243 |
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
|
249 |
-
|
250 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
251 |
}
|
252 |
}
|
253 |
-
}
|
254 |
if (!function_exists('inbound_json_array_merge')) {
|
255 |
function inbound_json_array_merge( $arr1, $arr2 ) {
|
256 |
$keys = array_keys( $arr2 );
|
@@ -266,4 +286,4 @@ if (!function_exists('inbound_json_array_merge')) {
|
|
266 |
}
|
267 |
return $arr1;
|
268 |
}
|
269 |
-
}
|
7 |
|
8 |
if (!function_exists('inbound_store_lead')) {
|
9 |
|
10 |
+
add_action('wp_ajax_inbound_store_lead', 'inbound_store_lead');
|
11 |
+
add_action('wp_ajax_nopriv_inbound_store_lead', 'inbound_store_lead');
|
12 |
|
13 |
+
function inbound_store_lead( $args = array() )
|
14 |
+
{
|
15 |
+
global $user_ID, $wpdb;
|
16 |
+
// header('HTTP/1.0 404 Not found'); exit; // simulate ajax fail
|
17 |
|
18 |
+
// Grab form values
|
19 |
+
$time = current_time( 'timestamp', 0 ); // Current wordpress time from settings
|
20 |
+
$lead_data['user_ID'] = $user_ID;
|
21 |
+
$lead_data['wordpress_date_time'] = date("Y-m-d G:i:s T", $time);
|
22 |
+
$lead_data['wpleads_email_address'] = (isset($_POST['emailTo'])) ? $_POST['emailTo'] : false;
|
23 |
+
$lead_data['email'] = (isset($_POST['emailTo'])) ? $_POST['emailTo'] : false;
|
24 |
+
$lead_data['element_type'] = (isset($_POST['element_type'])) ? $_POST['element_type'] : false;
|
25 |
+
$lead_data['wp_lead_uid'] = (isset($_POST['wp_lead_uid'])) ? $_POST['wp_lead_uid'] : false;
|
26 |
+
$lead_data['raw_post_values_json'] = (isset($_POST['raw_post_values_json'])) ? $_POST['raw_post_values_json'] : false;
|
27 |
+
$lead_data['wpleads_first_name'] = (isset($_POST['first_name'])) ? $_POST['first_name'] : false;
|
28 |
+
$lead_data['first_name'] = (isset($_POST['first_name'])) ? $_POST['first_name'] : false;
|
29 |
+
$lead_data['wpleads_last_name'] = (isset($_POST['last_name'])) ? $_POST['last_name'] : false;
|
30 |
+
$lead_data['last_name'] = (isset($_POST['last_name'])) ? $_POST['last_name'] : false;
|
31 |
+
$lead_data['wpleads_company_name'] = (isset($_POST['company_name'] )) ? $_POST['company_name'] : false;
|
32 |
+
$lead_data['wpleads_mobile_phone'] = (isset($_POST['phone'])) ? $_POST['phone'] : false;
|
33 |
+
$lead_data['wpleads_address_line_1'] = (isset($_POST['address'])) ? $_POST['address'] : false;
|
34 |
+
$lead_data['ip_address'] = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : false;
|
35 |
+
$lead_data['lp_id'] = (isset($_POST['lp_id'])) ? $_POST['lp_id'] : '0';
|
36 |
+
$lead_data['post_type'] = (isset($_POST['post_type'])) ? $_POST['post_type'] : 'na';
|
37 |
+
$lead_data['lp_variation'] = (isset($_POST['lp_variation'])) ? $_POST['lp_variation'] : 'default';
|
38 |
+
$lead_data['page_views'] = (isset($_POST['page_views'])) ? $_POST['page_views'] : false;
|
39 |
+
$lead_data['page_view_count'] = (isset($_POST['page_view_count'] )) ? $_POST['page_view_count'] : false;
|
40 |
|
41 |
+
if ($args){
|
42 |
+
$lead_data = array_merge( $lead_data , $args );
|
43 |
+
}
|
44 |
+
|
45 |
+
$lead_data = apply_filters( 'inboundnow_store_lead_pre_filter_data' , $lead_data);
|
46 |
+
|
47 |
+
do_action('inbound_store_lead_pre' , $lead_data); // Global lead storage action hook
|
48 |
|
49 |
+
// check for set email
|
50 |
+
if ( ( isset( $lead_data['wpleads_email_address'] ) && !empty( $lead_data['wpleads_email_address'] ) && strstr( $lead_data['wpleads_email_address'] ,'@') )) {
|
51 |
+
$query = $wpdb->prepare(
|
52 |
+
'SELECT ID FROM ' . $wpdb->posts . '
|
53 |
+
WHERE post_title = %s
|
54 |
+
AND post_type = \'wp-lead\'',
|
55 |
+
$lead_data['wpleads_email_address']
|
56 |
+
);
|
57 |
+
$wpdb->query( $query );
|
58 |
|
59 |
+
// Add lookup fallbacks
|
60 |
+
if ( $wpdb->num_rows ) {
|
61 |
+
/* Update Existing Lead */
|
62 |
+
$lead_data['lead_id'] = $wpdb->get_var( $query );
|
63 |
+
$meta = get_post_meta( $lead_data['lead_id'], 'times', TRUE ); // replace times
|
64 |
+
$meta++;
|
65 |
+
update_post_meta( $lead_data['lead_id'], 'times', $meta ); // replace times
|
66 |
|
67 |
+
if (!empty($lead_data['user_ID']))
|
68 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_wordpress_user_id', $lead_data['user_ID'] );
|
69 |
+
if (!empty($lead_data['wpleads_first_name']))
|
70 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_first_name', $lead_data['wpleads_first_name'] );
|
71 |
+
if (!empty($lead_data['wpleads_last_name']))
|
72 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_last_name', $lead_data['wpleads_last_name'] );
|
73 |
+
if (!empty($lead_data['wpleads_mobile_phone']))
|
74 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_work_phone', $lead_data['wpleads_mobile_phone'] );
|
75 |
+
if (!empty($lead_data['wpleads_company_name']))
|
76 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_company_name', $lead_data['company'] );
|
77 |
+
if (!empty($lead_data['wpleads_address_line_1']))
|
78 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_address_line_1', $lead_data['wpleads_address_line_1'] );
|
79 |
+
if (!empty($lead_data['wp_lead_uid']))
|
80 |
+
update_post_meta( $lead_data['lead_id'], 'wp_leads_uid', $lead_data['wp_lead_uid'] );
|
81 |
|
82 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_landing_page_'.$lead_data['lp_id'], 1 );
|
83 |
+
do_action('wpleads_after_conversion_lead_update',$lead_data['lead_id']);
|
84 |
|
85 |
+
} else {
|
86 |
+
/* Create New Lead */
|
87 |
+
$post = array(
|
88 |
+
'post_title' => $lead_data['wpleads_email_address'],
|
89 |
+
//'post_content' => $json,
|
90 |
+
'post_status' => 'publish',
|
91 |
+
'post_type' => 'wp-lead',
|
92 |
+
'post_author' => 1
|
93 |
+
);
|
94 |
|
95 |
+
//$post = add_filter('lp_leads_post_vars',$post);
|
96 |
+
$lead_data['lead_id'] = wp_insert_post($post);
|
97 |
+
update_post_meta( $lead_data['lead_id'], 'times', 1 );
|
98 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_wordpress_user_id', $user_ID );
|
99 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_email_address', $lead_data['wpleads_email_address'] );
|
100 |
|
101 |
+
if (!empty($lead_data['wpleads_first_name']))
|
102 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_first_name', $lead_data['wpleads_first_name'] );
|
103 |
+
if (!empty($lead_data['wpleads_last_name']))
|
104 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_last_name', $lead_data['wpleads_last_name'] );
|
105 |
+
if (!empty($lead_data['wpleads_mobile_phone']))
|
106 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_work_phone', $lead_data['wpleads_mobile_phone'] );
|
107 |
+
if (!empty($lead_data['wpleads_company_name']))
|
108 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_company_name', $lead_data['wpleads_company_name'] );
|
109 |
+
if (!empty($lead_data['wpleads_address_line_1']))
|
110 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_address_line_1', $lead_data['wpleads_address_line_1'] );
|
111 |
|
112 |
+
update_post_meta( $lead_data['lead_id'], 'wp_leads_uid', $lead_data['wp_lead_uid'] );
|
113 |
+
update_post_meta( $lead_data['lead_id'], 'page_views', $lead_data['page_views'] ); /* Store Page Views Object */
|
114 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_page_view_count', $lead_data['page_view_count']);
|
115 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_landing_page_'.$lead_data['lp_id'], 1 );
|
116 |
+
do_action('wpleads_after_conversion_lead_insert',$lead_data['lead_id']);
|
117 |
|
118 |
+
}
|
119 |
|
120 |
+
/*
|
121 |
+
* Run for all leads
|
122 |
+
*/
|
123 |
|
124 |
+
/* Store IP addresss & Store GEO Data */
|
125 |
+
if ($lead_data['ip_address']){
|
126 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_ip_address', $lead_data['ip_address'] );
|
127 |
+
$geo_array = unserialize(lp_remote_connect('http://www.geoplugin.net/php.gp?ip='.$lead_data['ip_address']));
|
128 |
+
(isset($geo_array['geoplugin_areaCode'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_areaCode', $geo_array['geoplugin_areaCode'] ) : null;
|
129 |
+
(isset($geo_array['geoplugin_city'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_city', $geo_array['geoplugin_city'] ) : null;
|
130 |
+
(isset($geo_array['geoplugin_regionName'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_region_name', $geo_array['geoplugin_regionName'] ) : null;
|
131 |
+
(isset($geo_array['geoplugin_regionCode'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_region_code', $geo_array['geoplugin_regionCode'] ) : null;
|
132 |
+
(isset($geo_array['geoplugin_countryName'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_country_name', $geo_array['geoplugin_countryName'] ) : null;
|
133 |
+
(isset($geo_array['geoplugin_countryCode'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_country_code', $geo_array['geoplugin_countryCode'] ) : null;
|
134 |
+
(isset($geo_array['geoplugin_latitude'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_latitude', $geo_array['geoplugin_latitude'] ) : null;
|
135 |
+
(isset($geo_array['geoplugin_longitude'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_longitude', $geo_array['geoplugin_longitude'] ) : null;
|
136 |
+
(isset($geo_array['geoplugin_currencyCode'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_currency_code', $geo_array['geoplugin_currencyCode'] ) : null;
|
137 |
+
(isset($geo_array['geoplugin_currencySymbol_UTF8'])) ? update_post_meta( $lead_data['lead_id'], 'wpleads_currency_symbol', $geo_array['geoplugin_currencySymbol_UTF8'] ) : null;
|
138 |
+
}
|
139 |
|
140 |
+
/* Store Conversion Data to Lead */
|
141 |
+
$conversion_data = get_post_meta( $lead_data['lead_id'], 'wpleads_conversion_data', TRUE );
|
142 |
+
$conversion_data = json_decode($conversion_data,true);
|
143 |
+
$variation = ($lead_data['lp_variation'] != 'default') ? $lead_data['lp_variation'] : '0';
|
144 |
+
if (is_array($conversion_data)){
|
145 |
+
$c_count = count($conversion_data) + 1;
|
146 |
+
$conversion_data[$c_count]['id'] = $lead_data['lp_id'];
|
147 |
+
$conversion_data[$c_count]['variation'] = $variation;
|
148 |
+
$conversion_data[$c_count]['datetime'] = $lead_data['wordpress_date_time'];
|
149 |
+
} else {
|
150 |
+
$c_count = 1;
|
151 |
+
$conversion_data[$c_count]['id'] = $lead_data['lp_id'];
|
152 |
+
$conversion_data[$c_count]['variation'] = $variation;
|
153 |
+
$conversion_data[$c_count]['datetime'] = $lead_data['wordpress_date_time'];
|
154 |
+
$conversion_data[$c_count]['first_time'] = 1;
|
155 |
+
}
|
156 |
+
|
157 |
+
$lead_data['conversion_data'] = json_encode($conversion_data);
|
158 |
+
update_post_meta($lead_data['lead_id'],'wpleads_conversion_count', $c_count); // Store conversions count
|
159 |
+
update_post_meta($lead_data['lead_id'], 'wpleads_conversion_data', $lead_data['conversion_data']); // Store conversion object
|
160 |
|
161 |
+
/* Store Conversion Data to LANDING PAGE/CTA DATA */
|
162 |
+
if ($lead_data['post_type'] == 'landing-page' || $lead_data['post_type'] == 'wp-call-to-action')
|
163 |
+
{
|
164 |
+
$page_conversion_data = get_post_meta( $lead_data['lp_id'], 'inbound_conversion_data', TRUE );
|
165 |
+
$page_conversion_data = json_decode($page_conversion_data,true);
|
166 |
+
$version = ($lead_data['lp_variation'] != 'default') ? $lead_data['lp_variation'] : '0';
|
167 |
+
if (is_array($page_conversion_data)){
|
168 |
+
$convert_count = count($page_conversion_data) + 1;
|
169 |
+
$page_conversion_data[$convert_count]['lead_id'] = $lead_data['lead_id'];
|
170 |
+
$page_conversion_data[$convert_count]['variation'] = $version;
|
171 |
+
$page_conversion_data[$convert_count]['datetime'] = $lead_data['wordpress_date_time'];
|
172 |
+
} else {
|
173 |
+
$convert_count = 1;
|
174 |
+
$page_conversion_data[$convert_count]['lead_id'] = $lead_data['lead_id'];
|
175 |
+
$page_conversion_data[$convert_count]['variation'] = $version;
|
176 |
+
$page_conversion_data[$convert_count]['datetime'] = $lead_data['wordpress_date_time'];
|
177 |
+
}
|
178 |
+
$page_conversion_data = json_encode($page_conversion_data);
|
179 |
+
update_post_meta($lead_data['lp_id'], 'inbound_conversion_data', $page_conversion_data);
|
180 |
+
}
|
181 |
|
|
|
|
|
|
|
182 |
|
183 |
+
/* Store page views for page tracking off */
|
184 |
+
$page_tracking_status = get_option('wpl-main-page-view-tracking', 1);
|
185 |
+
if($lead_data['page_views'] && $page_tracking_status == 0)
|
186 |
+
{
|
187 |
+
$page_view_data = get_post_meta( $lead_id, 'page_views', TRUE );
|
188 |
+
$page_view_data = json_decode($page_view_data,true);
|
189 |
|
190 |
+
// If page_view meta exists do this
|
191 |
+
if (is_array($page_view_data)) {
|
192 |
+
$new_page_views = inbound_json_array_merge( $page_view_data, $lead_data['page_views']);
|
193 |
+
$page_views = json_encode($new_page_views);
|
194 |
|
195 |
+
} else {
|
196 |
+
// Create page_view meta if it doesn't exist
|
197 |
+
$page_views = $lead_data['page_views'];
|
198 |
+
$page_views = json_encode($page_views);
|
199 |
+
}
|
200 |
+
// View count
|
201 |
+
$view_count = get_post_meta( $lead_data['lead_id'], 'wpleads_page_view_count', TRUE );
|
202 |
+
if ($view_count){
|
203 |
+
$page_view_count = $lead_data['page_view_count'] + $view_count;
|
204 |
+
} else {
|
205 |
+
$page_view_count = $lead_data['page_view_count'];
|
206 |
+
}
|
207 |
+
// update meta
|
208 |
+
if ($lead_data['page_view_count']){
|
209 |
+
update_post_meta($lead_data['lead_id'],'wpleads_page_view_count', $page_view_count);
|
210 |
+
}
|
211 |
+
update_post_meta($lead_data['lead_id'], 'page_views', $page_views );
|
212 |
+
}
|
213 |
|
214 |
|
215 |
+
/* Raw Form Values Store */
|
216 |
+
if ($lead_data['raw_post_values_json'])
|
217 |
+
{
|
218 |
+
$raw_post_data = get_post_meta($lead_data['lead_id'],'wpleads_raw_post_data', true);
|
219 |
+
$a1 = json_decode( $raw_post_data, true );
|
220 |
+
$a2 = json_decode( stripslashes($lead_data['raw_post_values_json']), true );
|
221 |
+
$exclude_array = array('card_number','card_cvc','card_exp_month','card_exp_year'); // add filter
|
222 |
+
$lead_mapping_fields = get_transient( 'wp-lead-fields' );
|
223 |
|
224 |
+
foreach ($a2 as $key=>$value)
|
225 |
+
{
|
226 |
+
if (array_key_exists( $key , $exclude_array )) {
|
227 |
+
unset($a2[$key]);
|
228 |
+
continue;
|
229 |
+
}
|
230 |
+
if (array_key_exists($key, $lead_mapping_fields)) {
|
231 |
+
update_post_meta( $lead_data['lead_id'], $key, $value );
|
232 |
+
}
|
233 |
+
if (stristr($key,'company')) {
|
234 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_company_name', $value );
|
235 |
+
} else if (stristr($key,'website')) {
|
236 |
+
$websites = get_post_meta( $lead_data['lead_id'], 'wpleads_websites', $value );
|
237 |
+
if(is_array($websites)) {
|
238 |
+
$array_websites = explode(';',$websites);
|
239 |
+
}
|
240 |
+
$array_websites[] = $value;
|
241 |
+
$websites = implode(';',$array_websites);
|
242 |
+
update_post_meta( $lead_data['lead_id'], 'wpleads_websites', $websites );
|
243 |
+
}
|
244 |
+
}
|
245 |
+
// Merge form fields if exist
|
246 |
+
if (is_array($a1)) {
|
247 |
+
$new_raw_post_data = array_merge_recursive( $a1, $a2 );
|
248 |
+
} else {
|
249 |
+
$new_raw_post_data = $a2;
|
250 |
}
|
251 |
+
$new_raw_post_data = json_encode( $new_raw_post_data );
|
252 |
+
update_post_meta( $lead_data['lead_id'],'wpleads_raw_post_data', $new_raw_post_data );
|
|
|
253 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
254 |
|
255 |
+
setcookie('wp_lead_id' , $lead_data['lead_id'], time() + (20 * 365 * 24 * 60 * 60),'/');
|
256 |
|
257 |
+
do_action('inbound_store_lead_post', $lead_data );
|
258 |
+
do_action('wp_cta_store_lead_post', $lead_data );
|
259 |
+
do_action('wpl_store_lead_post', $lead_data );
|
260 |
+
do_action('lp_store_lead_post', $lead_data );
|
261 |
|
262 |
+
if (!$args)
|
263 |
+
{
|
264 |
+
echo $lead_data['lead_id'];
|
265 |
+
die();
|
266 |
+
}
|
267 |
+
else
|
268 |
+
{
|
269 |
+
return $lead_data['lead_id'];
|
270 |
+
}
|
271 |
+
}
|
272 |
}
|
273 |
}
|
|
|
274 |
if (!function_exists('inbound_json_array_merge')) {
|
275 |
function inbound_json_array_merge( $arr1, $arr2 ) {
|
276 |
$keys = array_keys( $arr2 );
|
286 |
}
|
287 |
return $arr1;
|
288 |
}
|
289 |
+
}
|
templates/rsvp-envelope/index.php
CHANGED
@@ -94,7 +94,7 @@ if (have_posts()) : while (have_posts()) : the_post();
|
|
94 |
|
95 |
<body>
|
96 |
<div id="body-container">
|
97 |
-
<?php echo dirname(__FILE__);?>
|
98 |
<h1><?php lp_main_headline(); ?></h1>
|
99 |
<div id="main-content">
|
100 |
<?php echo $content; ?>
|
94 |
|
95 |
<body>
|
96 |
<div id="body-container">
|
97 |
+
<?php // echo dirname(__FILE__);?>
|
98 |
<h1><?php lp_main_headline(); ?></h1>
|
99 |
<div id="main-content">
|
100 |
<?php echo $content; ?>
|