Version Description
- security fix
Download this release
Release Info
Developer | adbox |
Plugin | ![]() |
Version | 2.0.3 |
Comparing to | |
See all releases |
Code changes from version 2.0.2 to 2.0.3
- LICENSE +339 -339
- README.md +359 -359
- assets/css/admin-ab-testing.css +1 -1
- assets/css/admin/content-stats.css +88 -0
- assets/images/image.php +62 -62
- assets/images/index.php +1 -1
- assets/js/admin/admin.global-settings.js +72 -72
- assets/js/admin/admin.install-plugins.js +30 -30
- assets/js/admin/admin.landing-page-list.js +160 -160
- assets/js/admin/admin.post-edit-ab-testing.js +63 -63
- assets/js/admin/admin.post-edit.js +322 -322
- assets/js/admin/admin.post-new.js +143 -143
- assets/js/admin/admin.post.js +34 -34
- assets/js/admin/admin.store.js +4 -4
- assets/js/admin/admin.templates-upload.js +24 -24
- assets/js/admin/index.php +1 -1
- assets/js/admin/intro.js +758 -758
- assets/js/admin/tour/tour.post-edit.js +8 -8
- assets/js/admin/tour/tour.post-list.js +7 -7
- assets/js/index.php +1 -1
- assets/js/jquery.bindfirst.js +14 -14
- assets/js/jquery.easing.min.js +44 -44
- assets/js/jquery.tablesorter.js +1030 -1030
- assets/js/jquery.total-storage.min.js +21 -21
- assets/js/wordpress/index.php +1 -1
- assets/lang/.tx/config +7 -7
- assets/lang/landing-pages.po +243 -243
- assets/libraries/class-tgm-plugin-activation.php +3540 -3540
- assets/libraries/datetimepicker/MIT-LICENSE.txt +18 -18
- assets/libraries/datetimepicker/README.md +28 -28
- assets/libraries/datetimepicker/bower.json +52 -52
- assets/libraries/datetimepicker/datetimepicker.jquery.json +46 -46
- assets/libraries/datetimepicker/jquery.datetimepicker.css +545 -545
- assets/libraries/datetimepicker/jquery.datetimepicker.js +2073 -2073
- assets/libraries/datetimepicker/package.json +28 -28
- assets/libraries/datetimepicker/picker_functions.js +55 -55
- assets/libraries/index.php +1 -1
- assets/libraries/jpicker/css/jPicker-1.1.6.css +231 -231
- assets/libraries/jpicker/css/jPicker.css +16 -16
- assets/libraries/jquery-qtip/jquery.qtip.min.js +1 -1
- assets/libraries/jquery-qtip/load.qtip.js +55 -55
- assets/libraries/jquery.zoomer.js +440 -440
- assets/libraries/script.js +36 -36
- assets/libraries/shareme/index.php +1 -1
- assets/libraries/shareme/library.shareme.php +1 -1
- assets/libraries/shareme/sharrre/index.php +1 -1
- assets/libraries/shareme/sharrre/jquery.sharrre-1.3.3.js +584 -584
- assets/tests/bin/phantomjs.exe +0 -0
- assets/tests/bin/phantomloader +7 -0
- assets/tests/bin/wpcept +7 -0
- assets/tests/bin/wpcept.bat +3 -0
- assets/tests/build/php.conf +4 -0
- assets/tests/build/php.load +1 -0
- assets/tests/build/scratchpad.sh +1 -0
- assets/tests/build/travis-ci-apache +23 -0
- assets/tests/codeception/_bootstrap.php +14 -0
- assets/tests/codeception/_data/dump.sql +1 -0
- assets/tests/codeception/_support/AcceptanceHelper.php +10 -0
- assets/tests/codeception/_support/FunctionalHelper.php +10 -0
- assets/tests/codeception/_support/UnitHelper.php +10 -0
- assets/tests/codeception/acceptance.suite.yml +25 -0
- assets/tests/codeception/acceptance/AcceptanceTester.php +1918 -0
- assets/tests/codeception/acceptance/LoginCept.php +48 -0
- assets/tests/codeception/acceptance/StatisticsCept.php +55 -0
- assets/tests/codeception/acceptance/WelcomeCept.php +7 -0
- assets/tests/codeception/acceptance/_bootstrap.php +2 -0
- assets/tests/codeception/functional.suite.yml +9 -0
- assets/tests/codeception/functional/FunctionalTester.php +360 -0
- assets/tests/codeception/functional/_bootstrap.php +2 -0
- assets/tests/codeception/unit.suite.yml +6 -0
- assets/tests/codeception/unit/UnitTester.php +300 -0
- assets/tests/codeception/unit/_bootstrap.php +2 -0
- assets/tests/phpunit/bootstrap.php +15 -0
- assets/tests/phpunit/test.activations.php +50 -0
- assets/tests/travis-ci/test.statistics.php +68 -0
- classes/class.acf-integration.php +508 -508
- classes/class.activation.php +292 -292
- classes/class.activation.upgrade-routines.php +226 -226
- classes/class.admin-menus.php +44 -44
- classes/class.admin-notices.php +32 -3
- classes/class.branching.php +44 -44
- classes/class.click-tracking.php +210 -210
- classes/class.cloning.php +168 -168
- classes/class.extend.php +329 -329
- classes/class.inbound-statistics.php +18 -1
- classes/class.install.php +201 -201
- classes/class.landing-pages.php +694 -694
- classes/class.load-extensions.php +343 -343
- classes/class.metaboxes.php +1173 -1173
- classes/class.post-type.landing-page.php +640 -640
- classes/class.postmeta.php +35 -35
- classes/class.settings.php +811 -811
- classes/class.sidebars.php +75 -75
- classes/class.store.php +188 -188
- classes/class.template-management.php +401 -401
- classes/class.variations.php +774 -774
- classes/class.welcome.php +636 -636
- classes/class.widgets.php +95 -95
- classes/class.wp-list-table.templates.php +242 -242
- index.php +1 -1
- landing-pages.php +224 -224
- modules/index.php +1 -1
- modules/module.redirect-ab-testing.php +196 -196
- modules/module.utils.php +41 -41
- package.json +47 -0
- phpunit.xml.dist +8 -0
- readme.txt +405 -402
- shared/assets/assets.loader.class.php +211 -211
- shared/assets/css/admin/global-inbound-admin.css +38 -38
- shared/assets/css/admin/image-picker.css +46 -46
- shared/assets/css/admin/inbound-metaboxes.css +77 -77
- shared/assets/css/admin/wpadminbar.css +150 -150
- shared/assets/css/iframe-preview.css +5 -5
- shared/assets/css/magnific-popup.css +422 -422
- shared/assets/fonts/fontawesome/fontawesome-webfont.svg +413 -413
- shared/assets/includes/Snowplow/RefererParser/Config/INBOUND_ConfigFileReaderTrait.php +54 -54
- shared/assets/includes/Snowplow/RefererParser/Config/INBOUND_ConfigReaderInterface.php +15 -15
- shared/assets/includes/Snowplow/RefererParser/Config/INBOUND_JsonConfigReader.php +56 -56
- shared/assets/includes/Snowplow/RefererParser/Exception/INBOUND_InvalidArgumentException.php +9 -9
- shared/assets/includes/Snowplow/RefererParser/INBOUND_Medium.php +16 -16
- shared/assets/includes/Snowplow/RefererParser/INBOUND_Parser.php +266 -266
- shared/assets/includes/Snowplow/RefererParser/INBOUND_Referer.php +78 -78
- shared/assets/includes/SweetAlert/sweetalert-dev.js +1280 -1280
- shared/assets/includes/SweetAlert/sweetalert.css +932 -932
- shared/assets/includes/ToolTipster/README.md +64 -64
- shared/assets/includes/ToolTipster/css/themes/tooltipster-light.css +11 -11
- shared/assets/includes/ToolTipster/css/themes/tooltipster-noir.css +11 -11
- shared/assets/includes/ToolTipster/css/themes/tooltipster-punk.css +11 -11
- shared/assets/includes/ToolTipster/css/themes/tooltipster-shadow.css +11 -11
- shared/assets/includes/ToolTipster/css/tooltipster.css +274 -274
- shared/assets/includes/ToolTipster/js/jquery.tooltipster.js +1327 -1327
- shared/assets/includes/referers.json +3889 -3889
- shared/assets/js/admin/image-picker.js +300 -300
- shared/assets/js/admin/select2.js +3137 -3137
- shared/assets/js/admin/select2.min.js +21 -21
- shared/assets/js/frontend/analytics-src/analytics.events.js +528 -528
- shared/assets/js/frontend/analytics-src/analytics.examples.js +184 -184
- shared/assets/js/frontend/analytics-src/analytics.forms.js +1009 -1009
- shared/assets/js/frontend/analytics-src/analytics.hooks.js +403 -403
- shared/assets/js/frontend/analytics-src/analytics.init.js +129 -129
- shared/assets/js/frontend/analytics-src/analytics.lead.js +87 -87
- shared/assets/js/frontend/analytics-src/analytics.page.js +373 -373
- shared/assets/js/frontend/analytics-src/analytics.start.js +16 -16
- shared/assets/js/frontend/analytics-src/analytics.storage.js +132 -132
- shared/assets/js/frontend/analytics-src/analytics.utils.js +763 -763
- shared/assets/js/frontend/analytics/inboundAnalytics.js +3449 -3449
- shared/assets/js/frontend/analytics/inboundAnalytics.min.js +2 -2
- shared/assets/js/global/debug.js +36 -36
- shared/assets/js/global/inbound-dequeue-scripts.js +49 -49
- shared/assets/js/global/jquery.magnific-popup.min.js +3 -3
- shared/assets/js/global/jquery.total-storage.min.js +21 -21
- shared/assets/plugins/advanced-custom-fields-font-awesome/acf-font-awesome-v4.php +405 -405
- shared/assets/plugins/advanced-custom-fields-font-awesome/acf-font-awesome-v5.php +412 -412
- shared/assets/plugins/advanced-custom-fields-font-awesome/acf-font-awesome.php +27 -27
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/README.md +291 -291
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/better-font-awesome-library.php +1192 -1192
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/css/admin-styles.css +60 -60
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/js/admin.js +41 -41
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/README.md +87 -87
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css +1801 -1801
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.css.map +7 -7
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/css/font-awesome.min.css +3 -3
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/fonts/fontawesome-webfont.svg +564 -564
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fallback-font-awesome/package.json +48 -48
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.css +326 -326
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fontawesome-iconpicker/css/fontawesome-iconpicker.min.css +8 -8
- shared/assets/plugins/advanced-custom-fields-font-awesome/better-font-awesome-library/lib/fontawesome-iconpicker/js/fontawesome-iconpicker.js +1013 -1013
- shared/assets/plugins/advanced-custom-fields-font-awesome/css/input.css +18 -18
- shared/assets/plugins/advanced-custom-fields-font-awesome/css/select2.css +615 -615
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/create_input.js +73 -73
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/edit_input.js +59 -59
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2.min.js +21 -21
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ar.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_bg.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ca.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_cs.js +49 -49
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_da.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_de.js +14 -14
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_el.js +16 -16
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_en.js.template +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_es.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_et.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_eu.js +43 -43
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_fa.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_fi.js +28 -28
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_fr.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_gl.js +43 -43
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_he.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_hr.js +42 -42
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_hu.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_id.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_is.js +16 -16
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_it.js +14 -14
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ja.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ko.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_lt.js +29 -29
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_lv.js +16 -16
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_mk.js +16 -16
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ms.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_nl.js +14 -14
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_no.js +18 -18
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_pl.js +36 -36
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_pt-BR.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_pt-PT.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ro.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ru.js +15 -15
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_sk.js +48 -48
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_sv.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_th.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_tr.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_ua.js +17 -17
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_vi.js +18 -18
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_zh-CN.js +14 -14
- shared/assets/plugins/advanced-custom-fields-font-awesome/js/select2/select2_locale_zh-TW.js +14 -14
- shared/assets/plugins/advanced-custom-fields-font-awesome/readme.txt +114 -114
- shared/classes/class.acf-bootstrap.php +85 -85
- shared/classes/class.ajax.php +73 -73
- shared/classes/class.branching.php +300 -300
- shared/classes/class.compatibility.php +134 -134
- shared/classes/class.debug.php +420 -420
- shared/classes/class.feedback.php +373 -373
- shared/classes/class.form.php +1437 -1437
- shared/classes/class.inbound-api.api-key-generation.php +157 -157
- shared/classes/class.inbound-api.api-keys-table.php +270 -270
- shared/classes/class.inbound-api.php +1401 -1401
- shared/classes/class.inbound-forms.akismet.php +168 -168
- shared/classes/class.lead-fields.php +351 -351
- shared/classes/class.lead-storage.php +719 -719
- shared/classes/class.licensing.php +355 -355
- shared/classes/class.load-shared.php +173 -173
- shared/classes/class.magic.php +104 -104
- shared/classes/class.master-license.php +46 -46
- shared/classes/class.menus.adminbar.php +708 -708
- shared/classes/class.notifications.php +106 -106
- shared/classes/class.options-api.php +40 -40
- shared/classes/class.post-type.wp-lead.php +490 -490
- shared/classes/class.shortcodes.cookie-values.php +50 -50
- shared/classes/class.shortcodes.email-template.php +143 -143
- shared/classes/class.templating-engine.php +98 -98
- shared/classes/class.welcome.php +201 -201
- shared/docs/css/style.css +885 -885
- shared/docs/css/theme.css +84 -84
- shared/docs/index.html +93 -93
- shared/docs/js/flatdoc.js +515 -515
- shared/docs/js/jquery.js +4 -4
- shared/docs/js/legacy.js +369 -369
- shared/docs/js/script.js +250 -250
- shared/docs/js/theme.js +33 -33
- shared/docs/leads/leads-user-guide.md +3 -3
- shared/docs/main.md +1029 -1029
- shared/docs/shortcodes.md +3 -3
- shared/functions/legacy.php +379 -379
- shared/functions/shared.php +29 -29
- shared/shortcodes/css/form-cpt.css +152 -152
- shared/shortcodes/css/frontend-render.css +4443 -4443
- shared/shortcodes/css/shortcodes.css +606 -606
- shared/shortcodes/inbound-shortcodes.php +730 -730
- shared/shortcodes/js/form-cpt.js +173 -173
- shared/shortcodes/js/shortcodes-plugins.js +31 -31
- shared/shortcodes/js/shortcodes.js +838 -836
- shared/shortcodes/popup.php +72 -72
- shared/shortcodes/preview.php +202 -202
- shared/shortcodes/shortcodes-fields.php +343 -343
- shared/shortcodes/shortcodes-includes.php +45 -45
- shared/shortcodes/shortcodes/alert.php +45 -45
- shared/shortcodes/shortcodes/button.php +108 -108
- shared/shortcodes/shortcodes/call-to-action.php +31 -31
- shared/shortcodes/shortcodes/callout.php +166 -166
- shared/shortcodes/shortcodes/column.php +175 -175
- shared/shortcodes/shortcodes/content-box.php +77 -77
- shared/shortcodes/shortcodes/divider.php +113 -113
- shared/shortcodes/shortcodes/forms.php +799 -799
- shared/shortcodes/shortcodes/gmap.php +154 -154
- shared/shortcodes/shortcodes/icon.php +58 -58
- shared/shortcodes/shortcodes/intro.php +92 -92
- shared/shortcodes/shortcodes/landing-page-list.php +136 -136
- shared/shortcodes/shortcodes/landing_pages.php +205 -205
- shared/shortcodes/shortcodes/leadp.php +43 -43
- shared/shortcodes/shortcodes/list-icon.php +64 -64
- shared/shortcodes/shortcodes/lists.php +59 -59
- shared/shortcodes/shortcodes/pricing.php +211 -211
- shared/shortcodes/shortcodes/profile.php +183 -183
- shared/shortcodes/shortcodes/quick-forms.php +38 -38
- shared/shortcodes/shortcodes/social-share.php +101 -101
- shared/shortcodes/shortcodes/social.php +93 -93
- shared/shortcodes/shortcodes/tabs.php +130 -130
- shared/shortcodes/shortcodes/teaser.php +254 -254
- shared/shortcodes/shortcodes/testimonial.php +178 -178
- shared/shortcodes/shortcodes/video.php +31 -31
- templates/dropcap/index.php +1 -1
- templates/simple-two-column/config.php +1 -1
- templates/tubelar/config.php +1 -1
- tests/phantomjs/server.php +1 -0
LICENSE
CHANGED
@@ -1,339 +1,339 @@
|
|
1 |
-
GNU GENERAL PUBLIC LICENSE
|
2 |
-
Version 2, June 1991
|
3 |
-
|
4 |
-
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
5 |
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
6 |
-
Everyone is permitted to copy and distribute verbatim copies
|
7 |
-
of this license document, but changing it is not allowed.
|
8 |
-
|
9 |
-
Preamble
|
10 |
-
|
11 |
-
The licenses for most software are designed to take away your
|
12 |
-
freedom to share and change it. By contrast, the GNU General Public
|
13 |
-
License is intended to guarantee your freedom to share and change free
|
14 |
-
software--to make sure the software is free for all its users. This
|
15 |
-
General Public License applies to most of the Free Software
|
16 |
-
Foundation's software and to any other program whose authors commit to
|
17 |
-
using it. (Some other Free Software Foundation software is covered by
|
18 |
-
the GNU Lesser General Public License instead.) You can apply it to
|
19 |
-
your programs, too.
|
20 |
-
|
21 |
-
When we speak of free software, we are referring to freedom, not
|
22 |
-
price. Our General Public Licenses are designed to make sure that you
|
23 |
-
have the freedom to distribute copies of free software (and charge for
|
24 |
-
this service if you wish), that you receive source code or can get it
|
25 |
-
if you want it, that you can change the software or use pieces of it
|
26 |
-
in new free programs; and that you know you can do these things.
|
27 |
-
|
28 |
-
To protect your rights, we need to make restrictions that forbid
|
29 |
-
anyone to deny you these rights or to ask you to surrender the rights.
|
30 |
-
These restrictions translate to certain responsibilities for you if you
|
31 |
-
distribute copies of the software, or if you modify it.
|
32 |
-
|
33 |
-
For example, if you distribute copies of such a program, whether
|
34 |
-
gratis or for a fee, you must give the recipients all the rights that
|
35 |
-
you have. You must make sure that they, too, receive or can get the
|
36 |
-
source code. And you must show them these terms so they know their
|
37 |
-
rights.
|
38 |
-
|
39 |
-
We protect your rights with two steps: (1) copyright the software, and
|
40 |
-
(2) offer you this license which gives you legal permission to copy,
|
41 |
-
distribute and/or modify the software.
|
42 |
-
|
43 |
-
Also, for each author's protection and ours, we want to make certain
|
44 |
-
that everyone understands that there is no warranty for this free
|
45 |
-
software. If the software is modified by someone else and passed on, we
|
46 |
-
want its recipients to know that what they have is not the original, so
|
47 |
-
that any problems introduced by others will not reflect on the original
|
48 |
-
authors' reputations.
|
49 |
-
|
50 |
-
Finally, any free program is threatened constantly by software
|
51 |
-
patents. We wish to avoid the danger that redistributors of a free
|
52 |
-
program will individually obtain patent licenses, in effect making the
|
53 |
-
program proprietary. To prevent this, we have made it clear that any
|
54 |
-
patent must be licensed for everyone's free use or not licensed at all.
|
55 |
-
|
56 |
-
The precise terms and conditions for copying, distribution and
|
57 |
-
modification follow.
|
58 |
-
|
59 |
-
GNU GENERAL PUBLIC LICENSE
|
60 |
-
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
61 |
-
|
62 |
-
0. This License applies to any program or other work which contains
|
63 |
-
a notice placed by the copyright holder saying it may be distributed
|
64 |
-
under the terms of this General Public License. The "Program", below,
|
65 |
-
refers to any such program or work, and a "work based on the Program"
|
66 |
-
means either the Program or any derivative work under copyright law:
|
67 |
-
that is to say, a work containing the Program or a portion of it,
|
68 |
-
either verbatim or with modifications and/or translated into another
|
69 |
-
language. (Hereinafter, translation is included without limitation in
|
70 |
-
the term "modification".) Each licensee is addressed as "you".
|
71 |
-
|
72 |
-
Activities other than copying, distribution and modification are not
|
73 |
-
covered by this License; they are outside its scope. The act of
|
74 |
-
running the Program is not restricted, and the output from the Program
|
75 |
-
is covered only if its contents constitute a work based on the
|
76 |
-
Program (independent of having been made by running the Program).
|
77 |
-
Whether that is true depends on what the Program does.
|
78 |
-
|
79 |
-
1. You may copy and distribute verbatim copies of the Program's
|
80 |
-
source code as you receive it, in any medium, provided that you
|
81 |
-
conspicuously and appropriately publish on each copy an appropriate
|
82 |
-
copyright notice and disclaimer of warranty; keep intact all the
|
83 |
-
notices that refer to this License and to the absence of any warranty;
|
84 |
-
and give any other recipients of the Program a copy of this License
|
85 |
-
along with the Program.
|
86 |
-
|
87 |
-
You may charge a fee for the physical act of transferring a copy, and
|
88 |
-
you may at your option offer warranty protection in exchange for a fee.
|
89 |
-
|
90 |
-
2. You may modify your copy or copies of the Program or any portion
|
91 |
-
of it, thus forming a work based on the Program, and copy and
|
92 |
-
distribute such modifications or work under the terms of Section 1
|
93 |
-
above, provided that you also meet all of these conditions:
|
94 |
-
|
95 |
-
a) You must cause the modified files to carry prominent notices
|
96 |
-
stating that you changed the files and the date of any change.
|
97 |
-
|
98 |
-
b) You must cause any work that you distribute or publish, that in
|
99 |
-
whole or in part contains or is derived from the Program or any
|
100 |
-
part thereof, to be licensed as a whole at no charge to all third
|
101 |
-
parties under the terms of this License.
|
102 |
-
|
103 |
-
c) If the modified program normally reads commands interactively
|
104 |
-
when run, you must cause it, when started running for such
|
105 |
-
interactive use in the most ordinary way, to print or display an
|
106 |
-
announcement including an appropriate copyright notice and a
|
107 |
-
notice that there is no warranty (or else, saying that you provide
|
108 |
-
a warranty) and that users may redistribute the program under
|
109 |
-
these conditions, and telling the user how to view a copy of this
|
110 |
-
License. (Exception: if the Program itself is interactive but
|
111 |
-
does not normally print such an announcement, your work based on
|
112 |
-
the Program is not required to print an announcement.)
|
113 |
-
|
114 |
-
These requirements apply to the modified work as a whole. If
|
115 |
-
identifiable sections of that work are not derived from the Program,
|
116 |
-
and can be reasonably considered independent and separate works in
|
117 |
-
themselves, then this License, and its terms, do not apply to those
|
118 |
-
sections when you distribute them as separate works. But when you
|
119 |
-
distribute the same sections as part of a whole which is a work based
|
120 |
-
on the Program, the distribution of the whole must be on the terms of
|
121 |
-
this License, whose permissions for other licensees extend to the
|
122 |
-
entire whole, and thus to each and every part regardless of who wrote it.
|
123 |
-
|
124 |
-
Thus, it is not the intent of this section to claim rights or contest
|
125 |
-
your rights to work written entirely by you; rather, the intent is to
|
126 |
-
exercise the right to control the distribution of derivative or
|
127 |
-
collective works based on the Program.
|
128 |
-
|
129 |
-
In addition, mere aggregation of another work not based on the Program
|
130 |
-
with the Program (or with a work based on the Program) on a volume of
|
131 |
-
a storage or distribution medium does not bring the other work under
|
132 |
-
the scope of this License.
|
133 |
-
|
134 |
-
3. You may copy and distribute the Program (or a work based on it,
|
135 |
-
under Section 2) in object code or executable form under the terms of
|
136 |
-
Sections 1 and 2 above provided that you also do one of the following:
|
137 |
-
|
138 |
-
a) Accompany it with the complete corresponding machine-readable
|
139 |
-
source code, which must be distributed under the terms of Sections
|
140 |
-
1 and 2 above on a medium customarily used for software interchange; or,
|
141 |
-
|
142 |
-
b) Accompany it with a written offer, valid for at least three
|
143 |
-
years, to give any third party, for a charge no more than your
|
144 |
-
cost of physically performing source distribution, a complete
|
145 |
-
machine-readable copy of the corresponding source code, to be
|
146 |
-
distributed under the terms of Sections 1 and 2 above on a medium
|
147 |
-
customarily used for software interchange; or,
|
148 |
-
|
149 |
-
c) Accompany it with the information you received as to the offer
|
150 |
-
to distribute corresponding source code. (This alternative is
|
151 |
-
allowed only for noncommercial distribution and only if you
|
152 |
-
received the program in object code or executable form with such
|
153 |
-
an offer, in accord with Subsection b above.)
|
154 |
-
|
155 |
-
The source code for a work means the preferred form of the work for
|
156 |
-
making modifications to it. For an executable work, complete source
|
157 |
-
code means all the source code for all modules it contains, plus any
|
158 |
-
associated interface definition files, plus the scripts used to
|
159 |
-
control compilation and installation of the executable. However, as a
|
160 |
-
special exception, the source code distributed need not include
|
161 |
-
anything that is normally distributed (in either source or binary
|
162 |
-
form) with the major components (compiler, kernel, and so on) of the
|
163 |
-
operating system on which the executable runs, unless that component
|
164 |
-
itself accompanies the executable.
|
165 |
-
|
166 |
-
If distribution of executable or object code is made by offering
|
167 |
-
access to copy from a designated place, then offering equivalent
|
168 |
-
access to copy the source code from the same place counts as
|
169 |
-
distribution of the source code, even though third parties are not
|
170 |
-
compelled to copy the source along with the object code.
|
171 |
-
|
172 |
-
4. You may not copy, modify, sublicense, or distribute the Program
|
173 |
-
except as expressly provided under this License. Any attempt
|
174 |
-
otherwise to copy, modify, sublicense or distribute the Program is
|
175 |
-
void, and will automatically terminate your rights under this License.
|
176 |
-
However, parties who have received copies, or rights, from you under
|
177 |
-
this License will not have their licenses terminated so long as such
|
178 |
-
parties remain in full compliance.
|
179 |
-
|
180 |
-
5. You are not required to accept this License, since you have not
|
181 |
-
signed it. However, nothing else grants you permission to modify or
|
182 |
-
distribute the Program or its derivative works. These actions are
|
183 |
-
prohibited by law if you do not accept this License. Therefore, by
|
184 |
-
modifying or distributing the Program (or any work based on the
|
185 |
-
Program), you indicate your acceptance of this License to do so, and
|
186 |
-
all its terms and conditions for copying, distributing or modifying
|
187 |
-
the Program or works based on it.
|
188 |
-
|
189 |
-
6. Each time you redistribute the Program (or any work based on the
|
190 |
-
Program), the recipient automatically receives a license from the
|
191 |
-
original licensor to copy, distribute or modify the Program subject to
|
192 |
-
these terms and conditions. You may not impose any further
|
193 |
-
restrictions on the recipients' exercise of the rights granted herein.
|
194 |
-
You are not responsible for enforcing compliance by third parties to
|
195 |
-
this License.
|
196 |
-
|
197 |
-
7. If, as a consequence of a court judgment or allegation of patent
|
198 |
-
infringement or for any other reason (not limited to patent issues),
|
199 |
-
conditions are imposed on you (whether by court order, agreement or
|
200 |
-
otherwise) that contradict the conditions of this License, they do not
|
201 |
-
excuse you from the conditions of this License. If you cannot
|
202 |
-
distribute so as to satisfy simultaneously your obligations under this
|
203 |
-
License and any other pertinent obligations, then as a consequence you
|
204 |
-
may not distribute the Program at all. For example, if a patent
|
205 |
-
license would not permit royalty-free redistribution of the Program by
|
206 |
-
all those who receive copies directly or indirectly through you, then
|
207 |
-
the only way you could satisfy both it and this License would be to
|
208 |
-
refrain entirely from distribution of the Program.
|
209 |
-
|
210 |
-
If any portion of this section is held invalid or unenforceable under
|
211 |
-
any particular circumstance, the balance of the section is intended to
|
212 |
-
apply and the section as a whole is intended to apply in other
|
213 |
-
circumstances.
|
214 |
-
|
215 |
-
It is not the purpose of this section to induce you to infringe any
|
216 |
-
patents or other property right claims or to contest validity of any
|
217 |
-
such claims; this section has the sole purpose of protecting the
|
218 |
-
integrity of the free software distribution system, which is
|
219 |
-
implemented by public license practices. Many people have made
|
220 |
-
generous contributions to the wide range of software distributed
|
221 |
-
through that system in reliance on consistent application of that
|
222 |
-
system; it is up to the author/donor to decide if he or she is willing
|
223 |
-
to distribute software through any other system and a licensee cannot
|
224 |
-
impose that choice.
|
225 |
-
|
226 |
-
This section is intended to make thoroughly clear what is believed to
|
227 |
-
be a consequence of the rest of this License.
|
228 |
-
|
229 |
-
8. If the distribution and/or use of the Program is restricted in
|
230 |
-
certain countries either by patents or by copyrighted interfaces, the
|
231 |
-
original copyright holder who places the Program under this License
|
232 |
-
may add an explicit geographical distribution limitation excluding
|
233 |
-
those countries, so that distribution is permitted only in or among
|
234 |
-
countries not thus excluded. In such case, this License incorporates
|
235 |
-
the limitation as if written in the body of this License.
|
236 |
-
|
237 |
-
9. The Free Software Foundation may publish revised and/or new versions
|
238 |
-
of the General Public License from time to time. Such new versions will
|
239 |
-
be similar in spirit to the present version, but may differ in detail to
|
240 |
-
address new problems or concerns.
|
241 |
-
|
242 |
-
Each version is given a distinguishing version number. If the Program
|
243 |
-
specifies a version number of this License which applies to it and "any
|
244 |
-
later version", you have the option of following the terms and conditions
|
245 |
-
either of that version or of any later version published by the Free
|
246 |
-
Software Foundation. If the Program does not specify a version number of
|
247 |
-
this License, you may choose any version ever published by the Free Software
|
248 |
-
Foundation.
|
249 |
-
|
250 |
-
10. If you wish to incorporate parts of the Program into other free
|
251 |
-
programs whose distribution conditions are different, write to the author
|
252 |
-
to ask for permission. For software which is copyrighted by the Free
|
253 |
-
Software Foundation, write to the Free Software Foundation; we sometimes
|
254 |
-
make exceptions for this. Our decision will be guided by the two goals
|
255 |
-
of preserving the free status of all derivatives of our free software and
|
256 |
-
of promoting the sharing and reuse of software generally.
|
257 |
-
|
258 |
-
NO WARRANTY
|
259 |
-
|
260 |
-
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
261 |
-
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
262 |
-
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
263 |
-
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
264 |
-
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
265 |
-
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
266 |
-
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
267 |
-
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
268 |
-
REPAIR OR CORRECTION.
|
269 |
-
|
270 |
-
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
271 |
-
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
272 |
-
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
273 |
-
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
274 |
-
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
275 |
-
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
276 |
-
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
277 |
-
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
278 |
-
POSSIBILITY OF SUCH DAMAGES.
|
279 |
-
|
280 |
-
END OF TERMS AND CONDITIONS
|
281 |
-
|
282 |
-
How to Apply These Terms to Your New Programs
|
283 |
-
|
284 |
-
If you develop a new program, and you want it to be of the greatest
|
285 |
-
possible use to the public, the best way to achieve this is to make it
|
286 |
-
free software which everyone can redistribute and change under these terms.
|
287 |
-
|
288 |
-
To do so, attach the following notices to the program. It is safest
|
289 |
-
to attach them to the start of each source file to most effectively
|
290 |
-
convey the exclusion of warranty; and each file should have at least
|
291 |
-
the "copyright" line and a pointer to where the full notice is found.
|
292 |
-
|
293 |
-
WordPress Landing Pages
|
294 |
-
Copyright (C) 2013 Inbound Now
|
295 |
-
|
296 |
-
This program is free software; you can redistribute it and/or modify
|
297 |
-
it under the terms of the GNU General Public License as published by
|
298 |
-
the Free Software Foundation; either version 2 of the License, or
|
299 |
-
(at your option) any later version.
|
300 |
-
|
301 |
-
This program is distributed in the hope that it will be useful,
|
302 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
303 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
304 |
-
GNU General Public License for more details.
|
305 |
-
|
306 |
-
You should have received a copy of the GNU General Public License along
|
307 |
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
308 |
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
309 |
-
|
310 |
-
Also add information on how to contact you by electronic and paper mail.
|
311 |
-
|
312 |
-
If the program is interactive, make it output a short notice like this
|
313 |
-
when it starts in an interactive mode:
|
314 |
-
|
315 |
-
Gnomovision version 69, Copyright (C) year name of author
|
316 |
-
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
317 |
-
This is free software, and you are welcome to redistribute it
|
318 |
-
under certain conditions; type `show c' for details.
|
319 |
-
|
320 |
-
The hypothetical commands `show w' and `show c' should show the appropriate
|
321 |
-
parts of the General Public License. Of course, the commands you use may
|
322 |
-
be called something other than `show w' and `show c'; they could even be
|
323 |
-
mouse-clicks or menu items--whatever suits your program.
|
324 |
-
|
325 |
-
You should also get your employer (if you work as a programmer) or your
|
326 |
-
school, if any, to sign a "copyright disclaimer" for the program, if
|
327 |
-
necessary. Here is a sample; alter the names:
|
328 |
-
|
329 |
-
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
330 |
-
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
331 |
-
|
332 |
-
{signature of Ty Coon}, 1 April 1989
|
333 |
-
Ty Coon, President of Vice
|
334 |
-
|
335 |
-
This General Public License does not permit incorporating your program into
|
336 |
-
proprietary programs. If your program is a subroutine library, you may
|
337 |
-
consider it more useful to permit linking proprietary applications with the
|
338 |
-
library. If this is what you want to do, use the GNU Lesser General
|
339 |
-
Public License instead of this License.
|
1 |
+
GNU GENERAL PUBLIC LICENSE
|
2 |
+
Version 2, June 1991
|
3 |
+
|
4 |
+
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
5 |
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
6 |
+
Everyone is permitted to copy and distribute verbatim copies
|
7 |
+
of this license document, but changing it is not allowed.
|
8 |
+
|
9 |
+
Preamble
|
10 |
+
|
11 |
+
The licenses for most software are designed to take away your
|
12 |
+
freedom to share and change it. By contrast, the GNU General Public
|
13 |
+
License is intended to guarantee your freedom to share and change free
|
14 |
+
software--to make sure the software is free for all its users. This
|
15 |
+
General Public License applies to most of the Free Software
|
16 |
+
Foundation's software and to any other program whose authors commit to
|
17 |
+
using it. (Some other Free Software Foundation software is covered by
|
18 |
+
the GNU Lesser General Public License instead.) You can apply it to
|
19 |
+
your programs, too.
|
20 |
+
|
21 |
+
When we speak of free software, we are referring to freedom, not
|
22 |
+
price. Our General Public Licenses are designed to make sure that you
|
23 |
+
have the freedom to distribute copies of free software (and charge for
|
24 |
+
this service if you wish), that you receive source code or can get it
|
25 |
+
if you want it, that you can change the software or use pieces of it
|
26 |
+
in new free programs; and that you know you can do these things.
|
27 |
+
|
28 |
+
To protect your rights, we need to make restrictions that forbid
|
29 |
+
anyone to deny you these rights or to ask you to surrender the rights.
|
30 |
+
These restrictions translate to certain responsibilities for you if you
|
31 |
+
distribute copies of the software, or if you modify it.
|
32 |
+
|
33 |
+
For example, if you distribute copies of such a program, whether
|
34 |
+
gratis or for a fee, you must give the recipients all the rights that
|
35 |
+
you have. You must make sure that they, too, receive or can get the
|
36 |
+
source code. And you must show them these terms so they know their
|
37 |
+
rights.
|
38 |
+
|
39 |
+
We protect your rights with two steps: (1) copyright the software, and
|
40 |
+
(2) offer you this license which gives you legal permission to copy,
|
41 |
+
distribute and/or modify the software.
|
42 |
+
|
43 |
+
Also, for each author's protection and ours, we want to make certain
|
44 |
+
that everyone understands that there is no warranty for this free
|
45 |
+
software. If the software is modified by someone else and passed on, we
|
46 |
+
want its recipients to know that what they have is not the original, so
|
47 |
+
that any problems introduced by others will not reflect on the original
|
48 |
+
authors' reputations.
|
49 |
+
|
50 |
+
Finally, any free program is threatened constantly by software
|
51 |
+
patents. We wish to avoid the danger that redistributors of a free
|
52 |
+
program will individually obtain patent licenses, in effect making the
|
53 |
+
program proprietary. To prevent this, we have made it clear that any
|
54 |
+
patent must be licensed for everyone's free use or not licensed at all.
|
55 |
+
|
56 |
+
The precise terms and conditions for copying, distribution and
|
57 |
+
modification follow.
|
58 |
+
|
59 |
+
GNU GENERAL PUBLIC LICENSE
|
60 |
+
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
61 |
+
|
62 |
+
0. This License applies to any program or other work which contains
|
63 |
+
a notice placed by the copyright holder saying it may be distributed
|
64 |
+
under the terms of this General Public License. The "Program", below,
|
65 |
+
refers to any such program or work, and a "work based on the Program"
|
66 |
+
means either the Program or any derivative work under copyright law:
|
67 |
+
that is to say, a work containing the Program or a portion of it,
|
68 |
+
either verbatim or with modifications and/or translated into another
|
69 |
+
language. (Hereinafter, translation is included without limitation in
|
70 |
+
the term "modification".) Each licensee is addressed as "you".
|
71 |
+
|
72 |
+
Activities other than copying, distribution and modification are not
|
73 |
+
covered by this License; they are outside its scope. The act of
|
74 |
+
running the Program is not restricted, and the output from the Program
|
75 |
+
is covered only if its contents constitute a work based on the
|
76 |
+
Program (independent of having been made by running the Program).
|
77 |
+
Whether that is true depends on what the Program does.
|
78 |
+
|
79 |
+
1. You may copy and distribute verbatim copies of the Program's
|
80 |
+
source code as you receive it, in any medium, provided that you
|
81 |
+
conspicuously and appropriately publish on each copy an appropriate
|
82 |
+
copyright notice and disclaimer of warranty; keep intact all the
|
83 |
+
notices that refer to this License and to the absence of any warranty;
|
84 |
+
and give any other recipients of the Program a copy of this License
|
85 |
+
along with the Program.
|
86 |
+
|
87 |
+
You may charge a fee for the physical act of transferring a copy, and
|
88 |
+
you may at your option offer warranty protection in exchange for a fee.
|
89 |
+
|
90 |
+
2. You may modify your copy or copies of the Program or any portion
|
91 |
+
of it, thus forming a work based on the Program, and copy and
|
92 |
+
distribute such modifications or work under the terms of Section 1
|
93 |
+
above, provided that you also meet all of these conditions:
|
94 |
+
|
95 |
+
a) You must cause the modified files to carry prominent notices
|
96 |
+
stating that you changed the files and the date of any change.
|
97 |
+
|
98 |
+
b) You must cause any work that you distribute or publish, that in
|
99 |
+
whole or in part contains or is derived from the Program or any
|
100 |
+
part thereof, to be licensed as a whole at no charge to all third
|
101 |
+
parties under the terms of this License.
|
102 |
+
|
103 |
+
c) If the modified program normally reads commands interactively
|
104 |
+
when run, you must cause it, when started running for such
|
105 |
+
interactive use in the most ordinary way, to print or display an
|
106 |
+
announcement including an appropriate copyright notice and a
|
107 |
+
notice that there is no warranty (or else, saying that you provide
|
108 |
+
a warranty) and that users may redistribute the program under
|
109 |
+
these conditions, and telling the user how to view a copy of this
|
110 |
+
License. (Exception: if the Program itself is interactive but
|
111 |
+
does not normally print such an announcement, your work based on
|
112 |
+
the Program is not required to print an announcement.)
|
113 |
+
|
114 |
+
These requirements apply to the modified work as a whole. If
|
115 |
+
identifiable sections of that work are not derived from the Program,
|
116 |
+
and can be reasonably considered independent and separate works in
|
117 |
+
themselves, then this License, and its terms, do not apply to those
|
118 |
+
sections when you distribute them as separate works. But when you
|
119 |
+
distribute the same sections as part of a whole which is a work based
|
120 |
+
on the Program, the distribution of the whole must be on the terms of
|
121 |
+
this License, whose permissions for other licensees extend to the
|
122 |
+
entire whole, and thus to each and every part regardless of who wrote it.
|
123 |
+
|
124 |
+
Thus, it is not the intent of this section to claim rights or contest
|
125 |
+
your rights to work written entirely by you; rather, the intent is to
|
126 |
+
exercise the right to control the distribution of derivative or
|
127 |
+
collective works based on the Program.
|
128 |
+
|
129 |
+
In addition, mere aggregation of another work not based on the Program
|
130 |
+
with the Program (or with a work based on the Program) on a volume of
|
131 |
+
a storage or distribution medium does not bring the other work under
|
132 |
+
the scope of this License.
|
133 |
+
|
134 |
+
3. You may copy and distribute the Program (or a work based on it,
|
135 |
+
under Section 2) in object code or executable form under the terms of
|
136 |
+
Sections 1 and 2 above provided that you also do one of the following:
|
137 |
+
|
138 |
+
a) Accompany it with the complete corresponding machine-readable
|
139 |
+
source code, which must be distributed under the terms of Sections
|
140 |
+
1 and 2 above on a medium customarily used for software interchange; or,
|
141 |
+
|
142 |
+
b) Accompany it with a written offer, valid for at least three
|
143 |
+
years, to give any third party, for a charge no more than your
|
144 |
+
cost of physically performing source distribution, a complete
|
145 |
+
machine-readable copy of the corresponding source code, to be
|
146 |
+
distributed under the terms of Sections 1 and 2 above on a medium
|
147 |
+
customarily used for software interchange; or,
|
148 |
+
|
149 |
+
c) Accompany it with the information you received as to the offer
|
150 |
+
to distribute corresponding source code. (This alternative is
|
151 |
+
allowed only for noncommercial distribution and only if you
|
152 |
+
received the program in object code or executable form with such
|
153 |
+
an offer, in accord with Subsection b above.)
|
154 |
+
|
155 |
+
The source code for a work means the preferred form of the work for
|
156 |
+
making modifications to it. For an executable work, complete source
|
157 |
+
code means all the source code for all modules it contains, plus any
|
158 |
+
associated interface definition files, plus the scripts used to
|
159 |
+
control compilation and installation of the executable. However, as a
|
160 |
+
special exception, the source code distributed need not include
|
161 |
+
anything that is normally distributed (in either source or binary
|
162 |
+
form) with the major components (compiler, kernel, and so on) of the
|
163 |
+
operating system on which the executable runs, unless that component
|
164 |
+
itself accompanies the executable.
|
165 |
+
|
166 |
+
If distribution of executable or object code is made by offering
|
167 |
+
access to copy from a designated place, then offering equivalent
|
168 |
+
access to copy the source code from the same place counts as
|
169 |
+
distribution of the source code, even though third parties are not
|
170 |
+
compelled to copy the source along with the object code.
|
171 |
+
|
172 |
+
4. You may not copy, modify, sublicense, or distribute the Program
|
173 |
+
except as expressly provided under this License. Any attempt
|
174 |
+
otherwise to copy, modify, sublicense or distribute the Program is
|
175 |
+
void, and will automatically terminate your rights under this License.
|
176 |
+
However, parties who have received copies, or rights, from you under
|
177 |
+
this License will not have their licenses terminated so long as such
|
178 |
+
parties remain in full compliance.
|
179 |
+
|
180 |
+
5. You are not required to accept this License, since you have not
|
181 |
+
signed it. However, nothing else grants you permission to modify or
|
182 |
+
distribute the Program or its derivative works. These actions are
|
183 |
+
prohibited by law if you do not accept this License. Therefore, by
|
184 |
+
modifying or distributing the Program (or any work based on the
|
185 |
+
Program), you indicate your acceptance of this License to do so, and
|
186 |
+
all its terms and conditions for copying, distributing or modifying
|
187 |
+
the Program or works based on it.
|
188 |
+
|
189 |
+
6. Each time you redistribute the Program (or any work based on the
|
190 |
+
Program), the recipient automatically receives a license from the
|
191 |
+
original licensor to copy, distribute or modify the Program subject to
|
192 |
+
these terms and conditions. You may not impose any further
|
193 |
+
restrictions on the recipients' exercise of the rights granted herein.
|
194 |
+
You are not responsible for enforcing compliance by third parties to
|
195 |
+
this License.
|
196 |
+
|
197 |
+
7. If, as a consequence of a court judgment or allegation of patent
|
198 |
+
infringement or for any other reason (not limited to patent issues),
|
199 |
+
conditions are imposed on you (whether by court order, agreement or
|
200 |
+
otherwise) that contradict the conditions of this License, they do not
|
201 |
+
excuse you from the conditions of this License. If you cannot
|
202 |
+
distribute so as to satisfy simultaneously your obligations under this
|
203 |
+
License and any other pertinent obligations, then as a consequence you
|
204 |
+
may not distribute the Program at all. For example, if a patent
|
205 |
+
license would not permit royalty-free redistribution of the Program by
|
206 |
+
all those who receive copies directly or indirectly through you, then
|
207 |
+
the only way you could satisfy both it and this License would be to
|
208 |
+
refrain entirely from distribution of the Program.
|
209 |
+
|
210 |
+
If any portion of this section is held invalid or unenforceable under
|
211 |
+
any particular circumstance, the balance of the section is intended to
|
212 |
+
apply and the section as a whole is intended to apply in other
|
213 |
+
circumstances.
|
214 |
+
|
215 |
+
It is not the purpose of this section to induce you to infringe any
|
216 |
+
patents or other property right claims or to contest validity of any
|
217 |
+
such claims; this section has the sole purpose of protecting the
|
218 |
+
integrity of the free software distribution system, which is
|
219 |
+
implemented by public license practices. Many people have made
|
220 |
+
generous contributions to the wide range of software distributed
|
221 |
+
through that system in reliance on consistent application of that
|
222 |
+
system; it is up to the author/donor to decide if he or she is willing
|
223 |
+
to distribute software through any other system and a licensee cannot
|
224 |
+
impose that choice.
|
225 |
+
|
226 |
+
This section is intended to make thoroughly clear what is believed to
|
227 |
+
be a consequence of the rest of this License.
|
228 |
+
|
229 |
+
8. If the distribution and/or use of the Program is restricted in
|
230 |
+
certain countries either by patents or by copyrighted interfaces, the
|
231 |
+
original copyright holder who places the Program under this License
|
232 |
+
may add an explicit geographical distribution limitation excluding
|
233 |
+
those countries, so that distribution is permitted only in or among
|
234 |
+
countries not thus excluded. In such case, this License incorporates
|
235 |
+
the limitation as if written in the body of this License.
|
236 |
+
|
237 |
+
9. The Free Software Foundation may publish revised and/or new versions
|
238 |
+
of the General Public License from time to time. Such new versions will
|
239 |
+
be similar in spirit to the present version, but may differ in detail to
|
240 |
+
address new problems or concerns.
|
241 |
+
|
242 |
+
Each version is given a distinguishing version number. If the Program
|
243 |
+
specifies a version number of this License which applies to it and "any
|
244 |
+
later version", you have the option of following the terms and conditions
|
245 |
+
either of that version or of any later version published by the Free
|
246 |
+
Software Foundation. If the Program does not specify a version number of
|
247 |
+
this License, you may choose any version ever published by the Free Software
|
248 |
+
Foundation.
|
249 |
+
|
250 |
+
10. If you wish to incorporate parts of the Program into other free
|
251 |
+
programs whose distribution conditions are different, write to the author
|
252 |
+
to ask for permission. For software which is copyrighted by the Free
|
253 |
+
Software Foundation, write to the Free Software Foundation; we sometimes
|
254 |
+
make exceptions for this. Our decision will be guided by the two goals
|
255 |
+
of preserving the free status of all derivatives of our free software and
|
256 |
+
of promoting the sharing and reuse of software generally.
|
257 |
+
|
258 |
+
NO WARRANTY
|
259 |
+
|
260 |
+
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
261 |
+
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
262 |
+
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
263 |
+
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
264 |
+
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
265 |
+
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
266 |
+
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
267 |
+
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
268 |
+
REPAIR OR CORRECTION.
|
269 |
+
|
270 |
+
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
271 |
+
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
272 |
+
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
273 |
+
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
274 |
+
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
275 |
+
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
276 |
+
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
277 |
+
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
278 |
+
POSSIBILITY OF SUCH DAMAGES.
|
279 |
+
|
280 |
+
END OF TERMS AND CONDITIONS
|
281 |
+
|
282 |
+
How to Apply These Terms to Your New Programs
|
283 |
+
|
284 |
+
If you develop a new program, and you want it to be of the greatest
|
285 |
+
possible use to the public, the best way to achieve this is to make it
|
286 |
+
free software which everyone can redistribute and change under these terms.
|
287 |
+
|
288 |
+
To do so, attach the following notices to the program. It is safest
|
289 |
+
to attach them to the start of each source file to most effectively
|
290 |
+
convey the exclusion of warranty; and each file should have at least
|
291 |
+
the "copyright" line and a pointer to where the full notice is found.
|
292 |
+
|
293 |
+
WordPress Landing Pages
|
294 |
+
Copyright (C) 2013 Inbound Now
|
295 |
+
|
296 |
+
This program is free software; you can redistribute it and/or modify
|
297 |
+
it under the terms of the GNU General Public License as published by
|
298 |
+
the Free Software Foundation; either version 2 of the License, or
|
299 |
+
(at your option) any later version.
|
300 |
+
|
301 |
+
This program is distributed in the hope that it will be useful,
|
302 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
303 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
304 |
+
GNU General Public License for more details.
|
305 |
+
|
306 |
+
You should have received a copy of the GNU General Public License along
|
307 |
+
with this program; if not, write to the Free Software Foundation, Inc.,
|
308 |
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
309 |
+
|
310 |
+
Also add information on how to contact you by electronic and paper mail.
|
311 |
+
|
312 |
+
If the program is interactive, make it output a short notice like this
|
313 |
+
when it starts in an interactive mode:
|
314 |
+
|
315 |
+
Gnomovision version 69, Copyright (C) year name of author
|
316 |
+
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
317 |
+
This is free software, and you are welcome to redistribute it
|
318 |
+
under certain conditions; type `show c' for details.
|
319 |
+
|
320 |
+
The hypothetical commands `show w' and `show c' should show the appropriate
|
321 |
+
parts of the General Public License. Of course, the commands you use may
|
322 |
+
be called something other than `show w' and `show c'; they could even be
|
323 |
+
mouse-clicks or menu items--whatever suits your program.
|
324 |
+
|
325 |
+
You should also get your employer (if you work as a programmer) or your
|
326 |
+
school, if any, to sign a "copyright disclaimer" for the program, if
|
327 |
+
necessary. Here is a sample; alter the names:
|
328 |
+
|
329 |
+
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
330 |
+
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
331 |
+
|
332 |
+
{signature of Ty Coon}, 1 April 1989
|
333 |
+
Ty Coon, President of Vice
|
334 |
+
|
335 |
+
This General Public License does not permit incorporating your program into
|
336 |
+
proprietary programs. If your program is a subroutine library, you may
|
337 |
+
consider it more useful to permit linking proprietary applications with the
|
338 |
+
library. If this is what you want to do, use the GNU Lesser General
|
339 |
+
Public License instead of this License.
|
README.md
CHANGED
@@ -1,359 +1,359 @@
|
|
1 |
-

|
2 |
-
|
3 |
-
# WordPress Landing Pages #
|
4 |
-
|
5 |
-
**Contributors:** David Wells, Hudson Atwell
|
6 |
-
**Donate link:** mailto:marketplace@inboundnow.com
|
7 |
-
**License:** GPLv2 or later
|
8 |
-
**License URI:** http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
-
**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
|
10 |
-
**Requires at least:** 3.8
|
11 |
-
**Tested up to:** 4.1
|
12 |
-
**Stable Tag:** 1.8.0
|
13 |
-
|
14 |
-
Create landing pages for your WordPress site. Monitor and improve conversion rates, run A/B split tests, customize your own templates and more.
|
15 |
-
|
16 |
-
## Description ##
|
17 |
-
|
18 |
-
> WordPress Landing Pages works as a standalone plugin or hand in hand with [WordPress Calls to Action](http://wordpress.org/plugins/cta/ "Learn more about Calls to Action") & [WordPress Leads](http://wordpress.org/plugins/leads/ "Learn more about WordPress Leads") to create a powerful & free lead generation system for your business.
|
19 |
-
|
20 |
-
This plugin creates landing pages (a.k.a. conversion or splash pages) for your WordPress site. It gives site owners the ability to monitor and track conversion rates, run a/b or multivariate split tests on landing pages, and most importantly increase lead flow!
|
21 |
-
|
22 |
-
The landing page plugin was specifically designed with inbound marketing best practices in mind and will help you drive & convert more leads on your site.
|
23 |
-
|
24 |
-
Landing pages are an ideal way to convert more of your passive website visitors into active leads or email list subscribers.
|
25 |
-
|
26 |
-
### Highlights ###
|
27 |
-
|
28 |
-
* Create beautiful Landing Pages on your WordPress site.
|
29 |
-
* Visual Editor to view changes being made on the fly!
|
30 |
-
* Track conversion rates on your landing pages for continual optimization.
|
31 |
-
* Easily clone existing landing pages and run A/B Split tests on variations.
|
32 |
-
* Use your current WordPress theme or choose from our library of custom landing page designs.
|
33 |
-
* Pre-populate Forms with visitor information to increase conversion rates
|
34 |
-
* Gather lead intelligence and track lead activity with <a href="http://wordpress.org/plugins/leads/screenshots/">WordPress Leads</a>
|
35 |
-
* Extend functionality with our growing repository of <a href="http://www.inboundnow.com/market/category/landing-pages/extensions/">third party add ons</a>.
|
36 |
-
* Easily implement your own custom landing page design.
|
37 |
-
|
38 |
-
This plugin is form agnostic meaning it will work with any form system you use.
|
39 |
-
|
40 |
-
Recommended form plugins (Gravity forms, Ninja Forms or Contact form 7)
|
41 |
-
|
42 |
-
### About the Plugin ###
|
43 |
-
|
44 |
-
http://www.youtube.com/watch?v=flEd0sRTFUo
|
45 |
-
|
46 |
-
### Developers & Designers ###
|
47 |
-
|
48 |
-
We built the landing page plugin as a framework! Need A/B testing out of the box implemented for your existing designs? Use WordPress Landing Pages to quickly spin up new landing pages that have all the functionality your clients will need.
|
49 |
-
|
50 |
-
You can quickly take your existing designs and implement them using our <a href="http://docs.inboundnow.com/section/developer/">templating framework</a>.
|
51 |
-
|
52 |
-
The plugin is also fully extendable and has a number of actions, filters, and hooks available for use. If a hook doesn't exist, simply ask and we can implement custom changes.
|
53 |
-
|
54 |
-
|
55 |
-
[Follow Development on GitHub ](https://github.com/inboundnow/landing-pages "Follow & Contribute to core development on GitHub")
|
56 |
-
|
|
57 |
-
[Follow Development on Twitter ](https://twitter.com/gitlandingpages "See our latest development commits on Twitter")
|
58 |
-
|
59 |
-
|
60 |
-
## Installation ##
|
61 |
-
|
62 |
-
1. Upload `landing-pages` folder to the `/wp-content/plugins/` directory
|
63 |
-
1. Activate the plugin through the 'Plugins' menu in WordPress
|
64 |
-
|
65 |
-
## Frequently Asked Questions ##
|
66 |
-
*Can I create my own landing page designs?,
|
67 |
-
*Yes! You can learn how to <a href="http://docs.inboundnow.com/guide/creating-landing-page-templates/">create your own landing page template here</a>.
|
68 |
-
|
69 |
-
## Screenshots ##
|
70 |
-
|
71 |
-
### 1. Landing Page Custom Post Type ###
|
72 |
-

|
73 |
-
|
74 |
-
### 2. Track conversion rates and continuously improve your landing pages ###
|
75 |
-

|
76 |
-
|
77 |
-
### 3. Manage Split Testing Page ###
|
78 |
-

|
79 |
-
|
80 |
-
### 4. Choose from a ton of pre-made templates, use your existing design, or design your own theme! ###
|
81 |
-

|
82 |
-
|
83 |
-
|
84 |
-
## Changelog ##
|
85 |
-
### 1.8.0 ###
|
86 |
-
* Fixing addon store
|
87 |
-
|
88 |
-
### 1.7.9 ###
|
89 |
-
* Even more security updates! Security for the win!
|
90 |
-
|
91 |
-
### 1.7.8 ###
|
92 |
-
* Security Patch
|
93 |
-
|
94 |
-
### 1.7.7 ###
|
95 |
-
* Fix double lead notification email
|
96 |
-
|
97 |
-
### 1.7.6 ###
|
98 |
-
* Fixed double email submission on contact form 7
|
99 |
-
|
100 |
-
### 1.7.5 ###
|
101 |
-
* Added form field exclusions to ignore sensitive data
|
102 |
-
|
103 |
-
### 1.7.3 ###
|
104 |
-
* See changelog here: https://github.com/inboundnow/landing-pages/issues?q=is%3Aissue+is%3Aclosed+label%3Av1.7.3
|
105 |
-
|
106 |
-
### 1.7.2 ###
|
107 |
-
* Improved form email typo detection
|
108 |
-
* Improved Template Styles
|
109 |
-
* Fixed content wysiwyg scroll freezing bug
|
110 |
-
|
111 |
-
### 1.7.1 ###
|
112 |
-
* removed iframe of inbound now addon store. For addons please visit: http://inboundnow.com/market
|
113 |
-
|
114 |
-
### 1.7.0 ###
|
115 |
-
* Removed anonymous PHP functions for PHP 5.2 support
|
116 |
-
* Updated template creation standards
|
117 |
-
* Converted varition modules to CLASS based system & documented
|
118 |
-
* Move /lang/ file outside of shared
|
119 |
-
|
120 |
-
### 1.6.2 ###
|
121 |
-
* Bug Fix: Fix with lead email notifications
|
122 |
-
|
123 |
-
### 1.5.9 ###
|
124 |
-
* Various bug fixes.
|
125 |
-
* Refactored main plugin file to class loader.
|
126 |
-
* Improved localization systems.
|
127 |
-
|
128 |
-
### 1.5.8 ###
|
129 |
-
* Bug Fix: Check all required fields
|
130 |
-
|
131 |
-
### 1.5.7 ###
|
132 |
-
* Improvement: All core template now use new consolidated settings system.
|
133 |
-
* Improvement: Leads Dashboard styling & stats
|
134 |
-
* Improvement: Screenshots on local installation replaced with template thumbnails.
|
135 |
-
|
136 |
-
|
137 |
-
### 1.5.6 ###
|
138 |
-
* Fix to insert marketing shortcode popup
|
139 |
-
|
140 |
-
### 1.5.5 ###
|
141 |
-
* Added events to lead tracking
|
142 |
-
* Bug Fix: Marketing Button
|
143 |
-
* Optimized CTA Tracking JS.
|
144 |
-
* Expanded impression/conversion analytics to all post types.
|
145 |
-
|
146 |
-
### 1.5.4 ###
|
147 |
-
* Impression tracking bug fix.
|
148 |
-
* Bringing Inbound Tracking to All Posts/Pages
|
149 |
-
|
150 |
-
### 1.5.3 ###
|
151 |
-
* Temporary fix for shortcodes disappearing from wordpress 3.8 to 3.9
|
152 |
-
* Performance improvements on analytics and lead tracking
|
153 |
-
|
154 |
-
### 1.5.1 ###
|
155 |
-
* Misc bug fixes
|
156 |
-
|
157 |
-
### 1.5.0 ###
|
158 |
-
* fixed field mapping bug
|
159 |
-
* Added better compability for js conflicts
|
160 |
-
* Prepping for marketing automation
|
161 |
-
|
162 |
-
### 1.4.9 ###
|
163 |
-
* Fixed and improved default landing page templates
|
164 |
-
* Updates to work with V2 of the CTA plugins
|
165 |
-
* Improved form compatibilty with contact form 7, gravity forms, and ninja forms
|
166 |
-
* Numerous bug files and code improvements
|
167 |
-
|
168 |
-
### 1.4.8 ###
|
169 |
-
* Added Google Analytics Custom Event Tracking for form submissions
|
170 |
-
* Added Ability: automatically sort leads into lists on form completions
|
171 |
-
* Added Ability: Send lead notification emails to multiple people. Use comma separated values
|
172 |
-
* Improved Social Media Buttons called with lp_social_media() function
|
173 |
-
* Fixed qTranslate plugin bug
|
174 |
-
* Fixed Genesis Title tag conflict
|
175 |
-
* Added improved asset loader
|
176 |
-
* Updated main docs.inboundnow.com site. Check it out!
|
177 |
-
|
178 |
-
### 1.4.7 ###
|
179 |
-
* GPL fix with js library
|
180 |
-
|
181 |
-
### 1.4.6 ###
|
182 |
-
* New Feature: Bulk Lead management with leads plugin wordpress.org/plugins/leads/
|
183 |
-
* Added tags to lead profiles for improved management/categorization
|
184 |
-
* Added new compatibility options to fix third party plugin conflicts!
|
185 |
-
* Added new debugging javascript debugging tools for users
|
186 |
-
* Fixed Email Sending Error on forms
|
187 |
-
* Improved support for master license keys
|
188 |
-
|
189 |
-
### 1.4.5 ###
|
190 |
-
* Added New HTML Lead Email Template with clickable links for faster lead management
|
191 |
-
* Added Button Shortcodes!
|
192 |
-
* Added HTML field option to form tool
|
193 |
-
* Added Divider Option to Form tool
|
194 |
-
* Added multi column support to icon list shortcode
|
195 |
-
* Added Font Awesome Icons option to Inbound Form Submit buttons
|
196 |
-
* Added Social Sharing Shortcode
|
197 |
-
* Bug fix - emails not sending after form conversion fixed
|
198 |
-
|
199 |
-
### 1.4.1 ###
|
200 |
-
* Bug fix - missing trackingObj
|
201 |
-
|
202 |
-
### 1.4.0 ###
|
203 |
-
* Added feature request form to all plugin admin pages. Submit your feature requests today! =)
|
204 |
-
|
205 |
-
### 1.3.9 ###
|
206 |
-
* Bug fixes for form creation issues
|
207 |
-
* Bug fixes for safari page tracking not firing
|
208 |
-
* Added quick menu to WP admin bar for quicker marketing!
|
209 |
-
|
210 |
-
### 1.3.8 ###
|
211 |
-
* Updated styles to 3.8 wordpress
|
212 |
-
* Streamlined form creation
|
213 |
-
* fixed rogue PHP errors
|
214 |
-
|
215 |
-
### 1.3.7 ###
|
216 |
-
* Added: Shortcode now automatically render in landing page option echos in templates
|
217 |
-
* Updated: Visual Editor tool
|
218 |
-
* Updated: Template selection interface
|
219 |
-
* Updated: Major updates to core templates, CSS tweaks and fixes
|
220 |
-
* Fixed: Shortcode insert into correct editor box
|
221 |
-
* Fixed: editor always on HTML view
|
222 |
-
|
223 |
-
### 1.3.6 ###
|
224 |
-
|
225 |
-
* Added: New Shortcodes! Fancy List and Column shortcodes
|
226 |
-
* Added: Added email confirmation support to Inbound Forms tool
|
227 |
-
* Added: Added New Welcome Page with Tutorial Video on Getting Started
|
228 |
-
* Added: New Debug Tab for faster support requests/debugging
|
229 |
-
* Fixed: CSS conflicts with button classes
|
230 |
-
|
231 |
-
### 1.3.1 ###
|
232 |
-
|
233 |
-
* Added: Added InboundNow form creation and management system (beta)
|
234 |
-
* Added: Support for InboundNow cross plugin extensions
|
235 |
-
* Added: 'Sticky Variations' to global settings.
|
236 |
-
* Added: Easier way for extension developers to license their extensions.
|
237 |
-
* Added: 'header' setting component to global settings.
|
238 |
-
* Fixed: Security issues
|
239 |
-
* Improvement: Improved data management for global settings, metaboxes, and extensions.
|
240 |
-
|
241 |
-
### 1.2.3 ###
|
242 |
-
|
243 |
-
* Fixed: Security issue with vulnerability to sql injection.
|
244 |
-
|
245 |
-
### 1.2.1 ###
|
246 |
-
|
247 |
-
* Fixed: Issues with shortcodes rendering in wp-admin for variations.
|
248 |
-
|
249 |
-
### 1.1.9 ###
|
250 |
-
|
251 |
-
* Fixed: Issues with navigation menu items breaking on landing pages with the default template selected.
|
252 |
-
|
253 |
-
### 1.1.8 ###
|
254 |
-
|
255 |
-
* Fixed: Issue with post_content not saving for variations.
|
256 |
-
* Added: [lp_conversion_area] Shortcode. It renders form conversion area anywhere on landing page
|
257 |
-
* Fixed: Restored the ability to delete custom templates from 'Templates' section.
|
258 |
-
|
259 |
-
### 1.1.7 ###
|
260 |
-
|
261 |
-
* Fixed: Issue with extension license keys not validating
|
262 |
-
* Fixed: Issue with shortcodes not firing on select core templates
|
263 |
-
* Improvement: Converted global settings data array to new easier to read format for development, added in legacy support.
|
264 |
-
|
265 |
-
### 1.1.0.1 ###
|
266 |
-
|
267 |
-
* Fixed: Variation saves for custom css and custom js.
|
268 |
-
* Fixed: jQuery error related to wysiwyg content formatting.
|
269 |
-
|
270 |
-
### 1.0.9.9 ###
|
271 |
-
* Improved extension metabox loading for quicker load times and optimized meta data storage.
|
272 |
-
* Phased out more 'old method' split testing components.
|
273 |
-
* Improved .htaccess parsing.
|
274 |
-
* Addressed issue with line breaks being removed from WYSIWYG editors.
|
275 |
-
|
276 |
-
### 1.0.9.4 ###
|
277 |
-
* Added in tours for the edit screen and the list of landing page screen for new users to learn how to use the tool quickly and easily
|
278 |
-
* Updated conversion tracking for wp-leads addon plugin
|
279 |
-
* Added in option for default templates to toggle on/off navigation
|
280 |
-
|
281 |
-
### 1.0.9.3 ###
|
282 |
-
|
283 |
-
* Removed old A/B split testing and the new system is fully in place!
|
284 |
-
|
285 |
-
### 1.0.9.0 ###
|
286 |
-
|
287 |
-
* Added in A/B stats to the main landing page list view
|
288 |
-
|
289 |
-
### 1.0.8.6 ###
|
290 |
-
|
291 |
-
* Release new and improved version of A/B testing!
|
292 |
-
* Ajax saving on landing page options for faster page edits
|
293 |
-
* Frontend Visual Editor to see what you are editing/changing
|
294 |
-
* Enabled frontend editor for use on normal pages and posts
|
295 |
-
|
296 |
-
### 1.0.8.5 ###
|
297 |
-
|
298 |
-
Providing better conversion and impression tracking for landing pages that are set as homepage.
|
299 |
-
|
300 |
-
### 1.0.8.4 ###
|
301 |
-
|
302 |
-
Fixing activation bug
|
303 |
-
|
304 |
-
### 1.0.8.1 ###
|
305 |
-
|
306 |
-
Fixing issue with jquery submission errors.
|
307 |
-
|
308 |
-
### 1.0.7.9 ###
|
309 |
-
|
310 |
-
Added capability to activate and update license keys for premium extensions. Added ability to define white listed HTML elements for Form Standardization process.
|
311 |
-
|
312 |
-
### 1.0.7.3 ###
|
313 |
-
|
314 |
-
Fixed issue with WP_List_table causing posts to to save or edit propperly Attempt 001
|
315 |
-
|
316 |
-
### 1.0.7.1 ###
|
317 |
-
|
318 |
-
Added cookie based auto-field population & lead data collection to core.
|
319 |
-
|
320 |
-
### 1.0.5.6 ###
|
321 |
-
|
322 |
-
Fixed issue with global setting's radio buttons not holding new set values.
|
323 |
-
|
324 |
-
### 1.0.5.3 ###
|
325 |
-
|
326 |
-
Solutions for custom post type wp rewrite issue on activation.
|
327 |
-
|
328 |
-
### 1.0.5.1 ###
|
329 |
-
|
330 |
-
Introducing version control system for extensions.
|
331 |
-
|
332 |
-
### 1.0.4.4 ###
|
333 |
-
|
334 |
-
Migrating store to new location. Updating version control systems
|
335 |
-
|
336 |
-
### 1.0.4.2 ###
|
337 |
-
|
338 |
-
Added new defitions to form standardization parser. Limited .htaccess rewrites to plugin activation to try and mitigate .htaccess corruptions.
|
339 |
-
|
340 |
-
### 1.0.4.1 ###
|
341 |
-
|
342 |
-
Fixed issue with conversions not recording on some servers by forcing form submittal to wait until ajax has completely finnished loading before continuing to process form.
|
343 |
-
|
344 |
-
### 1.0.3.9 ###
|
345 |
-
|
346 |
-
Fixed issue with plugins and wp core refusing to update on some installations when landing page plugin is activated.
|
347 |
-
|
348 |
-
### 1.0.3.8 ###
|
349 |
-
|
350 |
-
Debugging cross browser impressions and conversion tracking. Implemented soltion for url-to-postid conversions that's compatible with the /slug/ removal extension for landing pages plugin.
|
351 |
-
Added email validation check to prevent false positives when form standardization is turned on.
|
352 |
-
|
353 |
-
### 1.0.3.7 ###
|
354 |
-
|
355 |
-
**Bug Fix:** 'Clear Stats' button.
|
356 |
-
|
357 |
-
### 1.1 ###
|
358 |
-
|
359 |
-
Released
|
1 |
+

|
2 |
+
|
3 |
+
# WordPress Landing Pages #
|
4 |
+
|
5 |
+
**Contributors:** David Wells, Hudson Atwell
|
6 |
+
**Donate link:** mailto:marketplace@inboundnow.com
|
7 |
+
**License:** GPLv2 or later
|
8 |
+
**License URI:** http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
+
**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
|
10 |
+
**Requires at least:** 3.8
|
11 |
+
**Tested up to:** 4.1
|
12 |
+
**Stable Tag:** 1.8.0
|
13 |
+
|
14 |
+
Create landing pages for your WordPress site. Monitor and improve conversion rates, run A/B split tests, customize your own templates and more.
|
15 |
+
|
16 |
+
## Description ##
|
17 |
+
|
18 |
+
> WordPress Landing Pages works as a standalone plugin or hand in hand with [WordPress Calls to Action](http://wordpress.org/plugins/cta/ "Learn more about Calls to Action") & [WordPress Leads](http://wordpress.org/plugins/leads/ "Learn more about WordPress Leads") to create a powerful & free lead generation system for your business.
|
19 |
+
|
20 |
+
This plugin creates landing pages (a.k.a. conversion or splash pages) for your WordPress site. It gives site owners the ability to monitor and track conversion rates, run a/b or multivariate split tests on landing pages, and most importantly increase lead flow!
|
21 |
+
|
22 |
+
The landing page plugin was specifically designed with inbound marketing best practices in mind and will help you drive & convert more leads on your site.
|
23 |
+
|
24 |
+
Landing pages are an ideal way to convert more of your passive website visitors into active leads or email list subscribers.
|
25 |
+
|
26 |
+
### Highlights ###
|
27 |
+
|
28 |
+
* Create beautiful Landing Pages on your WordPress site.
|
29 |
+
* Visual Editor to view changes being made on the fly!
|
30 |
+
* Track conversion rates on your landing pages for continual optimization.
|
31 |
+
* Easily clone existing landing pages and run A/B Split tests on variations.
|
32 |
+
* Use your current WordPress theme or choose from our library of custom landing page designs.
|
33 |
+
* Pre-populate Forms with visitor information to increase conversion rates
|
34 |
+
* Gather lead intelligence and track lead activity with <a href="http://wordpress.org/plugins/leads/screenshots/">WordPress Leads</a>
|
35 |
+
* Extend functionality with our growing repository of <a href="http://www.inboundnow.com/market/category/landing-pages/extensions/">third party add ons</a>.
|
36 |
+
* Easily implement your own custom landing page design.
|
37 |
+
|
38 |
+
This plugin is form agnostic meaning it will work with any form system you use.
|
39 |
+
|
40 |
+
Recommended form plugins (Gravity forms, Ninja Forms or Contact form 7)
|
41 |
+
|
42 |
+
### About the Plugin ###
|
43 |
+
|
44 |
+
http://www.youtube.com/watch?v=flEd0sRTFUo
|
45 |
+
|
46 |
+
### Developers & Designers ###
|
47 |
+
|
48 |
+
We built the landing page plugin as a framework! Need A/B testing out of the box implemented for your existing designs? Use WordPress Landing Pages to quickly spin up new landing pages that have all the functionality your clients will need.
|
49 |
+
|
50 |
+
You can quickly take your existing designs and implement them using our <a href="http://docs.inboundnow.com/section/developer/">templating framework</a>.
|
51 |
+
|
52 |
+
The plugin is also fully extendable and has a number of actions, filters, and hooks available for use. If a hook doesn't exist, simply ask and we can implement custom changes.
|
53 |
+
|
54 |
+
|
55 |
+
[Follow Development on GitHub ](https://github.com/inboundnow/landing-pages "Follow & Contribute to core development on GitHub")
|
56 |
+
|
|
57 |
+
[Follow Development on Twitter ](https://twitter.com/gitlandingpages "See our latest development commits on Twitter")
|
58 |
+
|
59 |
+
|
60 |
+
## Installation ##
|
61 |
+
|
62 |
+
1. Upload `landing-pages` folder to the `/wp-content/plugins/` directory
|
63 |
+
1. Activate the plugin through the 'Plugins' menu in WordPress
|
64 |
+
|
65 |
+
## Frequently Asked Questions ##
|
66 |
+
*Can I create my own landing page designs?,
|
67 |
+
*Yes! You can learn how to <a href="http://docs.inboundnow.com/guide/creating-landing-page-templates/">create your own landing page template here</a>.
|
68 |
+
|
69 |
+
## Screenshots ##
|
70 |
+
|
71 |
+
### 1. Landing Page Custom Post Type ###
|
72 |
+

|
73 |
+
|
74 |
+
### 2. Track conversion rates and continuously improve your landing pages ###
|
75 |
+

|
76 |
+
|
77 |
+
### 3. Manage Split Testing Page ###
|
78 |
+

|
79 |
+
|
80 |
+
### 4. Choose from a ton of pre-made templates, use your existing design, or design your own theme! ###
|
81 |
+

|
82 |
+
|
83 |
+
|
84 |
+
## Changelog ##
|
85 |
+
### 1.8.0 ###
|
86 |
+
* Fixing addon store
|
87 |
+
|
88 |
+
### 1.7.9 ###
|
89 |
+
* Even more security updates! Security for the win!
|
90 |
+
|
91 |
+
### 1.7.8 ###
|
92 |
+
* Security Patch
|
93 |
+
|
94 |
+
### 1.7.7 ###
|
95 |
+
* Fix double lead notification email
|
96 |
+
|
97 |
+
### 1.7.6 ###
|
98 |
+
* Fixed double email submission on contact form 7
|
99 |
+
|
100 |
+
### 1.7.5 ###
|
101 |
+
* Added form field exclusions to ignore sensitive data
|
102 |
+
|
103 |
+
### 1.7.3 ###
|
104 |
+
* See changelog here: https://github.com/inboundnow/landing-pages/issues?q=is%3Aissue+is%3Aclosed+label%3Av1.7.3
|
105 |
+
|
106 |
+
### 1.7.2 ###
|
107 |
+
* Improved form email typo detection
|
108 |
+
* Improved Template Styles
|
109 |
+
* Fixed content wysiwyg scroll freezing bug
|
110 |
+
|
111 |
+
### 1.7.1 ###
|
112 |
+
* removed iframe of inbound now addon store. For addons please visit: http://inboundnow.com/market
|
113 |
+
|
114 |
+
### 1.7.0 ###
|
115 |
+
* Removed anonymous PHP functions for PHP 5.2 support
|
116 |
+
* Updated template creation standards
|
117 |
+
* Converted varition modules to CLASS based system & documented
|
118 |
+
* Move /lang/ file outside of shared
|
119 |
+
|
120 |
+
### 1.6.2 ###
|
121 |
+
* Bug Fix: Fix with lead email notifications
|
122 |
+
|
123 |
+
### 1.5.9 ###
|
124 |
+
* Various bug fixes.
|
125 |
+
* Refactored main plugin file to class loader.
|
126 |
+
* Improved localization systems.
|
127 |
+
|
128 |
+
### 1.5.8 ###
|
129 |
+
* Bug Fix: Check all required fields
|
130 |
+
|
131 |
+
### 1.5.7 ###
|
132 |
+
* Improvement: All core template now use new consolidated settings system.
|
133 |
+
* Improvement: Leads Dashboard styling & stats
|
134 |
+
* Improvement: Screenshots on local installation replaced with template thumbnails.
|
135 |
+
|
136 |
+
|
137 |
+
### 1.5.6 ###
|
138 |
+
* Fix to insert marketing shortcode popup
|
139 |
+
|
140 |
+
### 1.5.5 ###
|
141 |
+
* Added events to lead tracking
|
142 |
+
* Bug Fix: Marketing Button
|
143 |
+
* Optimized CTA Tracking JS.
|
144 |
+
* Expanded impression/conversion analytics to all post types.
|
145 |
+
|
146 |
+
### 1.5.4 ###
|
147 |
+
* Impression tracking bug fix.
|
148 |
+
* Bringing Inbound Tracking to All Posts/Pages
|
149 |
+
|
150 |
+
### 1.5.3 ###
|
151 |
+
* Temporary fix for shortcodes disappearing from wordpress 3.8 to 3.9
|
152 |
+
* Performance improvements on analytics and lead tracking
|
153 |
+
|
154 |
+
### 1.5.1 ###
|
155 |
+
* Misc bug fixes
|
156 |
+
|
157 |
+
### 1.5.0 ###
|
158 |
+
* fixed field mapping bug
|
159 |
+
* Added better compability for js conflicts
|
160 |
+
* Prepping for marketing automation
|
161 |
+
|
162 |
+
### 1.4.9 ###
|
163 |
+
* Fixed and improved default landing page templates
|
164 |
+
* Updates to work with V2 of the CTA plugins
|
165 |
+
* Improved form compatibilty with contact form 7, gravity forms, and ninja forms
|
166 |
+
* Numerous bug files and code improvements
|
167 |
+
|
168 |
+
### 1.4.8 ###
|
169 |
+
* Added Google Analytics Custom Event Tracking for form submissions
|
170 |
+
* Added Ability: automatically sort leads into lists on form completions
|
171 |
+
* Added Ability: Send lead notification emails to multiple people. Use comma separated values
|
172 |
+
* Improved Social Media Buttons called with lp_social_media() function
|
173 |
+
* Fixed qTranslate plugin bug
|
174 |
+
* Fixed Genesis Title tag conflict
|
175 |
+
* Added improved asset loader
|
176 |
+
* Updated main docs.inboundnow.com site. Check it out!
|
177 |
+
|
178 |
+
### 1.4.7 ###
|
179 |
+
* GPL fix with js library
|
180 |
+
|
181 |
+
### 1.4.6 ###
|
182 |
+
* New Feature: Bulk Lead management with leads plugin wordpress.org/plugins/leads/
|
183 |
+
* Added tags to lead profiles for improved management/categorization
|
184 |
+
* Added new compatibility options to fix third party plugin conflicts!
|
185 |
+
* Added new debugging javascript debugging tools for users
|
186 |
+
* Fixed Email Sending Error on forms
|
187 |
+
* Improved support for master license keys
|
188 |
+
|
189 |
+
### 1.4.5 ###
|
190 |
+
* Added New HTML Lead Email Template with clickable links for faster lead management
|
191 |
+
* Added Button Shortcodes!
|
192 |
+
* Added HTML field option to form tool
|
193 |
+
* Added Divider Option to Form tool
|
194 |
+
* Added multi column support to icon list shortcode
|
195 |
+
* Added Font Awesome Icons option to Inbound Form Submit buttons
|
196 |
+
* Added Social Sharing Shortcode
|
197 |
+
* Bug fix - emails not sending after form conversion fixed
|
198 |
+
|
199 |
+
### 1.4.1 ###
|
200 |
+
* Bug fix - missing trackingObj
|
201 |
+
|
202 |
+
### 1.4.0 ###
|
203 |
+
* Added feature request form to all plugin admin pages. Submit your feature requests today! =)
|
204 |
+
|
205 |
+
### 1.3.9 ###
|
206 |
+
* Bug fixes for form creation issues
|
207 |
+
* Bug fixes for safari page tracking not firing
|
208 |
+
* Added quick menu to WP admin bar for quicker marketing!
|
209 |
+
|
210 |
+
### 1.3.8 ###
|
211 |
+
* Updated styles to 3.8 wordpress
|
212 |
+
* Streamlined form creation
|
213 |
+
* fixed rogue PHP errors
|
214 |
+
|
215 |
+
### 1.3.7 ###
|
216 |
+
* Added: Shortcode now automatically render in landing page option echos in templates
|
217 |
+
* Updated: Visual Editor tool
|
218 |
+
* Updated: Template selection interface
|
219 |
+
* Updated: Major updates to core templates, CSS tweaks and fixes
|
220 |
+
* Fixed: Shortcode insert into correct editor box
|
221 |
+
* Fixed: editor always on HTML view
|
222 |
+
|
223 |
+
### 1.3.6 ###
|
224 |
+
|
225 |
+
* Added: New Shortcodes! Fancy List and Column shortcodes
|
226 |
+
* Added: Added email confirmation support to Inbound Forms tool
|
227 |
+
* Added: Added New Welcome Page with Tutorial Video on Getting Started
|
228 |
+
* Added: New Debug Tab for faster support requests/debugging
|
229 |
+
* Fixed: CSS conflicts with button classes
|
230 |
+
|
231 |
+
### 1.3.1 ###
|
232 |
+
|
233 |
+
* Added: Added InboundNow form creation and management system (beta)
|
234 |
+
* Added: Support for InboundNow cross plugin extensions
|
235 |
+
* Added: 'Sticky Variations' to global settings.
|
236 |
+
* Added: Easier way for extension developers to license their extensions.
|
237 |
+
* Added: 'header' setting component to global settings.
|
238 |
+
* Fixed: Security issues
|
239 |
+
* Improvement: Improved data management for global settings, metaboxes, and extensions.
|
240 |
+
|
241 |
+
### 1.2.3 ###
|
242 |
+
|
243 |
+
* Fixed: Security issue with vulnerability to sql injection.
|
244 |
+
|
245 |
+
### 1.2.1 ###
|
246 |
+
|
247 |
+
* Fixed: Issues with shortcodes rendering in wp-admin for variations.
|
248 |
+
|
249 |
+
### 1.1.9 ###
|
250 |
+
|
251 |
+
* Fixed: Issues with navigation menu items breaking on landing pages with the default template selected.
|
252 |
+
|
253 |
+
### 1.1.8 ###
|
254 |
+
|
255 |
+
* Fixed: Issue with post_content not saving for variations.
|
256 |
+
* Added: [lp_conversion_area] Shortcode. It renders form conversion area anywhere on landing page
|
257 |
+
* Fixed: Restored the ability to delete custom templates from 'Templates' section.
|
258 |
+
|
259 |
+
### 1.1.7 ###
|
260 |
+
|
261 |
+
* Fixed: Issue with extension license keys not validating
|
262 |
+
* Fixed: Issue with shortcodes not firing on select core templates
|
263 |
+
* Improvement: Converted global settings data array to new easier to read format for development, added in legacy support.
|
264 |
+
|
265 |
+
### 1.1.0.1 ###
|
266 |
+
|
267 |
+
* Fixed: Variation saves for custom css and custom js.
|
268 |
+
* Fixed: jQuery error related to wysiwyg content formatting.
|
269 |
+
|
270 |
+
### 1.0.9.9 ###
|
271 |
+
* Improved extension metabox loading for quicker load times and optimized meta data storage.
|
272 |
+
* Phased out more 'old method' split testing components.
|
273 |
+
* Improved .htaccess parsing.
|
274 |
+
* Addressed issue with line breaks being removed from WYSIWYG editors.
|
275 |
+
|
276 |
+
### 1.0.9.4 ###
|
277 |
+
* Added in tours for the edit screen and the list of landing page screen for new users to learn how to use the tool quickly and easily
|
278 |
+
* Updated conversion tracking for wp-leads addon plugin
|
279 |
+
* Added in option for default templates to toggle on/off navigation
|
280 |
+
|
281 |
+
### 1.0.9.3 ###
|
282 |
+
|
283 |
+
* Removed old A/B split testing and the new system is fully in place!
|
284 |
+
|
285 |
+
### 1.0.9.0 ###
|
286 |
+
|
287 |
+
* Added in A/B stats to the main landing page list view
|
288 |
+
|
289 |
+
### 1.0.8.6 ###
|
290 |
+
|
291 |
+
* Release new and improved version of A/B testing!
|
292 |
+
* Ajax saving on landing page options for faster page edits
|
293 |
+
* Frontend Visual Editor to see what you are editing/changing
|
294 |
+
* Enabled frontend editor for use on normal pages and posts
|
295 |
+
|
296 |
+
### 1.0.8.5 ###
|
297 |
+
|
298 |
+
Providing better conversion and impression tracking for landing pages that are set as homepage.
|
299 |
+
|
300 |
+
### 1.0.8.4 ###
|
301 |
+
|
302 |
+
Fixing activation bug
|
303 |
+
|
304 |
+
### 1.0.8.1 ###
|
305 |
+
|
306 |
+
Fixing issue with jquery submission errors.
|
307 |
+
|
308 |
+
### 1.0.7.9 ###
|
309 |
+
|
310 |
+
Added capability to activate and update license keys for premium extensions. Added ability to define white listed HTML elements for Form Standardization process.
|
311 |
+
|
312 |
+
### 1.0.7.3 ###
|
313 |
+
|
314 |
+
Fixed issue with WP_List_table causing posts to to save or edit propperly Attempt 001
|
315 |
+
|
316 |
+
### 1.0.7.1 ###
|
317 |
+
|
318 |
+
Added cookie based auto-field population & lead data collection to core.
|
319 |
+
|
320 |
+
### 1.0.5.6 ###
|
321 |
+
|
322 |
+
Fixed issue with global setting's radio buttons not holding new set values.
|
323 |
+
|
324 |
+
### 1.0.5.3 ###
|
325 |
+
|
326 |
+
Solutions for custom post type wp rewrite issue on activation.
|
327 |
+
|
328 |
+
### 1.0.5.1 ###
|
329 |
+
|
330 |
+
Introducing version control system for extensions.
|
331 |
+
|
332 |
+
### 1.0.4.4 ###
|
333 |
+
|
334 |
+
Migrating store to new location. Updating version control systems
|
335 |
+
|
336 |
+
### 1.0.4.2 ###
|
337 |
+
|
338 |
+
Added new defitions to form standardization parser. Limited .htaccess rewrites to plugin activation to try and mitigate .htaccess corruptions.
|
339 |
+
|
340 |
+
### 1.0.4.1 ###
|
341 |
+
|
342 |
+
Fixed issue with conversions not recording on some servers by forcing form submittal to wait until ajax has completely finnished loading before continuing to process form.
|
343 |
+
|
344 |
+
### 1.0.3.9 ###
|
345 |
+
|
346 |
+
Fixed issue with plugins and wp core refusing to update on some installations when landing page plugin is activated.
|
347 |
+
|
348 |
+
### 1.0.3.8 ###
|
349 |
+
|
350 |
+
Debugging cross browser impressions and conversion tracking. Implemented soltion for url-to-postid conversions that's compatible with the /slug/ removal extension for landing pages plugin.
|
351 |
+
Added email validation check to prevent false positives when form standardization is turned on.
|
352 |
+
|
353 |
+
### 1.0.3.7 ###
|
354 |
+
|
355 |
+
**Bug Fix:** 'Clear Stats' button.
|
356 |
+
|
357 |
+
### 1.1 ###
|
358 |
+
|
359 |
+
Released
|
assets/css/admin-ab-testing.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
/******************************************************* ab testing admin css */
|
1 |
+
/******************************************************* ab testing admin css */
|
assets/css/admin/content-stats.css
ADDED
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#bab-stat-box
|
2 |
+
{
|
3 |
+
font-size: 12px;
|
4 |
+
margin-bottom: 10px;
|
5 |
+
text-align: left;
|
6 |
+
border: 1px solid #CECDCA;
|
7 |
+
|
8 |
+
border-top: none;
|
9 |
+
border-left: none;
|
10 |
+
|
11 |
+
-webkit-box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
|
12 |
+
-moz-box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
|
13 |
+
box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
|
14 |
+
z-index: 200;
|
15 |
+
width: 100%;
|
16 |
+
}
|
17 |
+
#bab-stat-box:last-child {
|
18 |
+
margin-bottom: 0px;
|
19 |
+
}
|
20 |
+
.bab-number-box
|
21 |
+
{
|
22 |
+
background: transparent;
|
23 |
+
border-bottom: 1px solid #EBEBEA;
|
24 |
+
-webkit-box-shadow: inset 1px 1px 1px rgba(255,255,255,0.3);
|
25 |
+
-moz-box-shadow: inset 1px 1px 1px rgba(255,255,255,0.3);
|
26 |
+
box-shadow: inset 1px 1px 1px rgba(255,255,255,0.3);
|
27 |
+
text-shadow: 1px 1px 1px #fff;
|
28 |
+
display: inline-block;
|
29 |
+
width: 31%;
|
30 |
+
}
|
31 |
+
.bab-number-box span
|
32 |
+
{
|
33 |
+
text-align: center;
|
34 |
+
padding: 20px;
|
35 |
+
padding-bottom: 10px;
|
36 |
+
display: block;
|
37 |
+
font-size: 22px;
|
38 |
+
padding-top: 10px;
|
39 |
+
}
|
40 |
+
|
41 |
+
.bab-varation-header
|
42 |
+
{
|
43 |
+
font-size: 19px;
|
44 |
+
font-weight: bold;
|
45 |
+
background-color: #e0e0e0;
|
46 |
+
border-color: #CECDCA;
|
47 |
+
padding: 8px 5px;
|
48 |
+
border-bottom: 1px solid #CECDCA;
|
49 |
+
border-top: 1px solid #CECDCA;
|
50 |
+
}
|
51 |
+
|
52 |
+
.bab-stat-control-container
|
53 |
+
{
|
54 |
+
text-align: center;
|
55 |
+
padding: 5px;
|
56 |
+
}
|
57 |
+
|
58 |
+
.bab-variation-row
|
59 |
+
{
|
60 |
+
display: block;
|
61 |
+
}
|
62 |
+
|
63 |
+
.bab-stat-letter
|
64 |
+
{
|
65 |
+
background: #fff;
|
66 |
+
padding-top: 0px;
|
67 |
+
padding-bottom: 0px;
|
68 |
+
}
|
69 |
+
|
70 |
+
.bab-notes
|
71 |
+
{
|
72 |
+
float: right;
|
73 |
+
font-size: 12px;
|
74 |
+
font-weight: normal;
|
75 |
+
}
|
76 |
+
|
77 |
+
.bab-number-box span.bab-stat-id
|
78 |
+
{
|
79 |
+
font-size: 9px;
|
80 |
+
font-weight: normal;
|
81 |
+
display: block;
|
82 |
+
padding: 0px;
|
83 |
+
}
|
84 |
+
|
85 |
+
.bab-rate
|
86 |
+
{
|
87 |
+
font-size: 9px !important;
|
88 |
+
}
|
assets/images/image.php
CHANGED
@@ -1,63 +1,63 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
// file: image.php
|
4 |
-
// Dynamically Create a clear png for css background opacities
|
5 |
-
header("Content-type: image/png");
|
6 |
-
|
7 |
-
$hex_value = $_GET['hex'];
|
8 |
-
|
9 |
-
if (isset($_GET['trans'])) {
|
10 |
-
$trans_value = $_GET['trans'];
|
11 |
-
}
|
12 |
-
else {
|
13 |
-
$trans_value = 50;
|
14 |
-
}
|
15 |
-
|
16 |
-
if (!function_exists('_inbound_HexToRGB')) {
|
17 |
-
// Convert Hex to RGB Value
|
18 |
-
function _inbound_HexToRGB($hex) {
|
19 |
-
$hex = preg_replace("/#/", "", $hex);
|
20 |
-
$color = array();
|
21 |
-
|
22 |
-
if(strlen($hex) == 3) {
|
23 |
-
$color['r'] = hexdec(substr($hex, 0, 1) . $r);
|
24 |
-
$color['g'] = hexdec(substr($hex, 1, 1) . $g);
|
25 |
-
$color['b'] = hexdec(substr($hex, 2, 1) . $b);
|
26 |
-
}
|
27 |
-
else if(strlen($hex) == 6) {
|
28 |
-
$color['r'] = hexdec(substr($hex, 0, 2));
|
29 |
-
$color['g'] = hexdec(substr($hex, 2, 2));
|
30 |
-
$color['b'] = hexdec(substr($hex, 4, 2));
|
31 |
-
}
|
32 |
-
|
33 |
-
return $color;
|
34 |
-
|
35 |
-
}
|
36 |
-
}
|
37 |
-
|
38 |
-
$RBG_array = _inbound_HexToRGB($hex_value);
|
39 |
-
|
40 |
-
if(isset($RBG_array)) {
|
41 |
-
$red = (isset($RBG_array['r'])) ? $RBG_array['r'] : '0';
|
42 |
-
$green = (isset($RBG_array['g'])) ? $RBG_array['g'] : '0';
|
43 |
-
$blue = (isset($RBG_array['b'])) ? $RBG_array['b'] : '0';
|
44 |
-
|
45 |
-
// Set the image
|
46 |
-
$img = imagecreatetruecolor(10,10); // 10 x 10 px
|
47 |
-
imagesavealpha($img, true);
|
48 |
-
|
49 |
-
// Fill the image with transparent color
|
50 |
-
$color = imagecolorallocatealpha($img,$red,$green,$blue,$trans_value);
|
51 |
-
imagefill($img, 0, 0, $color);
|
52 |
-
|
53 |
-
// Return the image
|
54 |
-
imagepng($img);
|
55 |
-
|
56 |
-
// Destroy image
|
57 |
-
imagedestroy($img);
|
58 |
-
|
59 |
-
}
|
60 |
-
// usage in html: <image src="path-to-file/image.php?hex=HEXCOLOR">
|
61 |
-
// Make sure to add in the HEX GET Parameters with ?hex= and ?trans= for transparency
|
62 |
-
// example: <image src="path-to-file/image.php?hex=ffffff"> will call white transparent png
|
63 |
?>
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// file: image.php
|
4 |
+
// Dynamically Create a clear png for css background opacities
|
5 |
+
header("Content-type: image/png");
|
6 |
+
|
7 |
+
$hex_value = $_GET['hex'];
|
8 |
+
|
9 |
+
if (isset($_GET['trans'])) {
|
10 |
+
$trans_value = $_GET['trans'];
|
11 |
+
}
|
12 |
+
else {
|
13 |
+
$trans_value = 50;
|
14 |
+
}
|
15 |
+
|
16 |
+
if (!function_exists('_inbound_HexToRGB')) {
|
17 |
+
// Convert Hex to RGB Value
|
18 |
+
function _inbound_HexToRGB($hex) {
|
19 |
+
$hex = preg_replace("/#/", "", $hex);
|
20 |
+
$color = array();
|
21 |
+
|
22 |
+
if(strlen($hex) == 3) {
|
23 |
+
$color['r'] = hexdec(substr($hex, 0, 1) . $r);
|
24 |
+
$color['g'] = hexdec(substr($hex, 1, 1) . $g);
|
25 |
+
$color['b'] = hexdec(substr($hex, 2, 1) . $b);
|
26 |
+
}
|
27 |
+
else if(strlen($hex) == 6) {
|
28 |
+
$color['r'] = hexdec(substr($hex, 0, 2));
|
29 |
+
$color['g'] = hexdec(substr($hex, 2, 2));
|
30 |
+
$color['b'] = hexdec(substr($hex, 4, 2));
|
31 |
+
}
|
32 |
+
|
33 |
+
return $color;
|
34 |
+
|
35 |
+
}
|
36 |
+
}
|
37 |
+
|
38 |
+
$RBG_array = _inbound_HexToRGB($hex_value);
|
39 |
+
|
40 |
+
if(isset($RBG_array)) {
|
41 |
+
$red = (isset($RBG_array['r'])) ? $RBG_array['r'] : '0';
|
42 |
+
$green = (isset($RBG_array['g'])) ? $RBG_array['g'] : '0';
|
43 |
+
$blue = (isset($RBG_array['b'])) ? $RBG_array['b'] : '0';
|
44 |
+
|
45 |
+
// Set the image
|
46 |
+
$img = imagecreatetruecolor(10,10); // 10 x 10 px
|
47 |
+
imagesavealpha($img, true);
|
48 |
+
|
49 |
+
// Fill the image with transparent color
|
50 |
+
$color = imagecolorallocatealpha($img,$red,$green,$blue,$trans_value);
|
51 |
+
imagefill($img, 0, 0, $color);
|
52 |
+
|
53 |
+
// Return the image
|
54 |
+
imagepng($img);
|
55 |
+
|
56 |
+
// Destroy image
|
57 |
+
imagedestroy($img);
|
58 |
+
|
59 |
+
}
|
60 |
+
// usage in html: <image src="path-to-file/image.php?hex=HEXCOLOR">
|
61 |
+
// Make sure to add in the HEX GET Parameters with ?hex= and ?trans= for transparency
|
62 |
+
// example: <image src="path-to-file/image.php?hex=ffffff"> will call white transparent png
|
63 |
?>
|
assets/images/index.php
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
# Silence is golden.
|
1 |
+
<?php
|
2 |
# Silence is golden.
|
assets/js/admin/admin.global-settings.js
CHANGED
@@ -1,73 +1,73 @@
|
|
1 |
-
function getUrlVars() {
|
2 |
-
var vars = [], hash;
|
3 |
-
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
|
4 |
-
for (var i = 0; i < hashes.length; i++) {
|
5 |
-
hash = hashes[i].split('=');
|
6 |
-
vars.push(hash[0]);
|
7 |
-
vars[hash[0]] = hash[1];
|
8 |
-
}
|
9 |
-
return vars;
|
10 |
-
};
|
11 |
-
|
12 |
-
function getUrlVar(name) {
|
13 |
-
return getUrlVars()[name];
|
14 |
-
};
|
15 |
-
|
16 |
-
jQuery(document).ready(function ($) {
|
17 |
-
|
18 |
-
jQuery(document).ready(function() {
|
19 |
-
jQuery('.tooltip').tooltipster({
|
20 |
-
contentAsHTML: true,
|
21 |
-
interactive: true,
|
22 |
-
maxWidth: 350,
|
23 |
-
position: "right",
|
24 |
-
theme: "tooltipster-noir"
|
25 |
-
});
|
26 |
-
});
|
27 |
-
|
28 |
-
// Getting URL var by its nam
|
29 |
-
var byName = getUrlVar('tab');
|
30 |
-
|
31 |
-
// Set setting Tab
|
32 |
-
setTimeout(function () {
|
33 |
-
jQuery("#" + byName).click();
|
34 |
-
}, 300);
|
35 |
-
|
36 |
-
/* Update Setting URL */
|
37 |
-
jQuery("body").on('click', '.nav-tab', function () {
|
38 |
-
var this_id = jQuery(this).attr('id');
|
39 |
-
if (history.pushState) {
|
40 |
-
var newurl = window.location.href.replace(/tab=([^"]*)/g, 'tab=' + this_id);
|
41 |
-
var current_tab = newurl.match(/tab=([^"]*)/g);
|
42 |
-
if (typeof (current_tab) != "undefined" && current_tab != null && current_tab != "") {
|
43 |
-
var current_tab = current_tab[0].replace("tab=", "");
|
44 |
-
window.history.pushState({path: newurl}, '', newurl);
|
45 |
-
} else {
|
46 |
-
var newurl = window.location.href + '&tab=' + this_id;
|
47 |
-
window.history.pushState({path: newurl}, '', newurl);
|
48 |
-
}
|
49 |
-
|
50 |
-
}
|
51 |
-
});
|
52 |
-
|
53 |
-
setTimeout(function() {
|
54 |
-
var getoption = document.URL.split('&option=')[1];
|
55 |
-
var showoption = "#" + getoption;
|
56 |
-
jQuery(showoption).click();
|
57 |
-
}, 100);
|
58 |
-
|
59 |
-
/* Navigate tabs */
|
60 |
-
jQuery('.lp-nav-tab').live('click', function() {
|
61 |
-
var this_id = this.id.replace('tabs-','');
|
62 |
-
jQuery('.lp-tab-display').css('display','none');
|
63 |
-
jQuery('#'+this_id).css('display','block');
|
64 |
-
jQuery('.lp-nav-tab').removeClass('nav-tab-special-active');
|
65 |
-
jQuery('.lp-nav-tab').addClass('nav-tab-special-inactive');
|
66 |
-
jQuery('#tabs-'+this_id).addClass('nav-tab-special-active');
|
67 |
-
jQuery('#id-open-tab').val(this_id);
|
68 |
-
});
|
69 |
-
var form_sys = jQuery("#sys-inbound-form");
|
70 |
-
jQuery("#in-sys-info").after(form_sys);
|
71 |
-
jQuery("#sys-inbound-form").show();
|
72 |
-
|
73 |
});
|
1 |
+
function getUrlVars() {
|
2 |
+
var vars = [], hash;
|
3 |
+
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
|
4 |
+
for (var i = 0; i < hashes.length; i++) {
|
5 |
+
hash = hashes[i].split('=');
|
6 |
+
vars.push(hash[0]);
|
7 |
+
vars[hash[0]] = hash[1];
|
8 |
+
}
|
9 |
+
return vars;
|
10 |
+
};
|
11 |
+
|
12 |
+
function getUrlVar(name) {
|
13 |
+
return getUrlVars()[name];
|
14 |
+
};
|
15 |
+
|
16 |
+
jQuery(document).ready(function ($) {
|
17 |
+
|
18 |
+
jQuery(document).ready(function() {
|
19 |
+
jQuery('.tooltip').tooltipster({
|
20 |
+
contentAsHTML: true,
|
21 |
+
interactive: true,
|
22 |
+
maxWidth: 350,
|
23 |
+
position: "right",
|
24 |
+
theme: "tooltipster-noir"
|
25 |
+
});
|
26 |
+
});
|
27 |
+
|
28 |
+
// Getting URL var by its nam
|
29 |
+
var byName = getUrlVar('tab');
|
30 |
+
|
31 |
+
// Set setting Tab
|
32 |
+
setTimeout(function () {
|
33 |
+
jQuery("#" + byName).click();
|
34 |
+
}, 300);
|
35 |
+
|
36 |
+
/* Update Setting URL */
|
37 |
+
jQuery("body").on('click', '.nav-tab', function () {
|
38 |
+
var this_id = jQuery(this).attr('id');
|
39 |
+
if (history.pushState) {
|
40 |
+
var newurl = window.location.href.replace(/tab=([^"]*)/g, 'tab=' + this_id);
|
41 |
+
var current_tab = newurl.match(/tab=([^"]*)/g);
|
42 |
+
if (typeof (current_tab) != "undefined" && current_tab != null && current_tab != "") {
|
43 |
+
var current_tab = current_tab[0].replace("tab=", "");
|
44 |
+
window.history.pushState({path: newurl}, '', newurl);
|
45 |
+
} else {
|
46 |
+
var newurl = window.location.href + '&tab=' + this_id;
|
47 |
+
window.history.pushState({path: newurl}, '', newurl);
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
51 |
+
});
|
52 |
+
|
53 |
+
setTimeout(function() {
|
54 |
+
var getoption = document.URL.split('&option=')[1];
|
55 |
+
var showoption = "#" + getoption;
|
56 |
+
jQuery(showoption).click();
|
57 |
+
}, 100);
|
58 |
+
|
59 |
+
/* Navigate tabs */
|
60 |
+
jQuery('.lp-nav-tab').live('click', function() {
|
61 |
+
var this_id = this.id.replace('tabs-','');
|
62 |
+
jQuery('.lp-tab-display').css('display','none');
|
63 |
+
jQuery('#'+this_id).css('display','block');
|
64 |
+
jQuery('.lp-nav-tab').removeClass('nav-tab-special-active');
|
65 |
+
jQuery('.lp-nav-tab').addClass('nav-tab-special-inactive');
|
66 |
+
jQuery('#tabs-'+this_id).addClass('nav-tab-special-active');
|
67 |
+
jQuery('#id-open-tab').val(this_id);
|
68 |
+
});
|
69 |
+
var form_sys = jQuery("#sys-inbound-form");
|
70 |
+
jQuery("#in-sys-info").after(form_sys);
|
71 |
+
jQuery("#sys-inbound-form").show();
|
72 |
+
|
73 |
});
|
assets/js/admin/admin.install-plugins.js
CHANGED
@@ -1,30 +1,30 @@
|
|
1 |
-
jQuery(document).ready(function($) {
|
2 |
-
/* Loads on /themes.php?page=install-inbound-plugins */
|
3 |
-
var install_status = jQuery("#the-list td.status.column-status").text();
|
4 |
-
var click_apply = "<h2 class='click-to-activate'><span>←</span>Click Apply to Install</h2>";
|
5 |
-
var activate_apply = "<h2 class='click-to-activate-bulk'><span>←</span>Click Apply to Bulk Activate Plugins</h2>";
|
6 |
-
jQuery(".alignleft.actions.bulkactions").after(click_apply);
|
7 |
-
jQuery(".alignleft.actions.bulkactions").after(activate_apply);
|
8 |
-
console.log(install_status);
|
9 |
-
jQuery('#the-list td.status.column-status').each(function(){
|
10 |
-
var installed_on = $(this).text();
|
11 |
-
if (installed_on === "Not Installed") {
|
12 |
-
$(this).parent().find("input[type=checkbox]").attr("checked", "on");
|
13 |
-
if ( $(".click-to-activate-bulk").is(":hidden") ) {
|
14 |
-
jQuery('.click-to-activate').show();
|
15 |
-
jQuery(".alignleft.actions.bulkactions select").val('tgmpa-bulk-install');
|
16 |
-
}
|
17 |
-
|
18 |
-
}
|
19 |
-
if (installed_on === "Installed But Not Activated") {
|
20 |
-
$(this).parent().find("input[type=checkbox]").attr("checked", "on");
|
21 |
-
if ( $(".click-to-activate").is(":hidden") ) {
|
22 |
-
jQuery('.click-to-activate-bulk').show();
|
23 |
-
jQuery(".alignleft.actions.bulkactions select").val('tgmpa-bulk-activate');
|
24 |
-
}
|
25 |
-
|
26 |
-
}
|
27 |
-
});
|
28 |
-
jQuery("#cb-select-all-1, #cb-select-all-2").attr("checked", "on");
|
29 |
-
|
30 |
-
});
|
1 |
+
jQuery(document).ready(function($) {
|
2 |
+
/* Loads on /themes.php?page=install-inbound-plugins */
|
3 |
+
var install_status = jQuery("#the-list td.status.column-status").text();
|
4 |
+
var click_apply = "<h2 class='click-to-activate'><span>←</span>Click Apply to Install</h2>";
|
5 |
+
var activate_apply = "<h2 class='click-to-activate-bulk'><span>←</span>Click Apply to Bulk Activate Plugins</h2>";
|
6 |
+
jQuery(".alignleft.actions.bulkactions").after(click_apply);
|
7 |
+
jQuery(".alignleft.actions.bulkactions").after(activate_apply);
|
8 |
+
console.log(install_status);
|
9 |
+
jQuery('#the-list td.status.column-status').each(function(){
|
10 |
+
var installed_on = $(this).text();
|
11 |
+
if (installed_on === "Not Installed") {
|
12 |
+
$(this).parent().find("input[type=checkbox]").attr("checked", "on");
|
13 |
+
if ( $(".click-to-activate-bulk").is(":hidden") ) {
|
14 |
+
jQuery('.click-to-activate').show();
|
15 |
+
jQuery(".alignleft.actions.bulkactions select").val('tgmpa-bulk-install');
|
16 |
+
}
|
17 |
+
|
18 |
+
}
|
19 |
+
if (installed_on === "Installed But Not Activated") {
|
20 |
+
$(this).parent().find("input[type=checkbox]").attr("checked", "on");
|
21 |
+
if ( $(".click-to-activate").is(":hidden") ) {
|
22 |
+
jQuery('.click-to-activate-bulk').show();
|
23 |
+
jQuery(".alignleft.actions.bulkactions select").val('tgmpa-bulk-activate');
|
24 |
+
}
|
25 |
+
|
26 |
+
}
|
27 |
+
});
|
28 |
+
jQuery("#cb-select-all-1, #cb-select-all-2").attr("checked", "on");
|
29 |
+
|
30 |
+
});
|
assets/js/admin/admin.landing-page-list.js
CHANGED
@@ -1,161 +1,161 @@
|
|
1 |
-
jQuery(document).ready(function($) {
|
2 |
-
// Code for landing page list view
|
3 |
-
var cats = jQuery("#landing_page_category option").length;
|
4 |
-
if ( cats === 0 ){
|
5 |
-
jQuery("#landing_page_category").hide();
|
6 |
-
}
|
7 |
-
|
8 |
-
jQuery('.lp-letter').each(function(){
|
9 |
-
var draft = jQuery(this).text();
|
10 |
-
if ( draft === "" ){
|
11 |
-
jQuery(this).parent().parent().hide();
|
12 |
-
}
|
13 |
-
});
|
14 |
-
|
15 |
-
jQuery(".lp-impress-num").each(function(){
|
16 |
-
var empty = jQuery(this).text();
|
17 |
-
if ( empty === "" || empty === "0" ){
|
18 |
-
jQuery(this).parent().parent().find(".lp-letter").css("color", "#ccc");
|
19 |
-
jQuery(this).parent().html("<span class='lp-no-stats'>no stats yet</span>");
|
20 |
-
}
|
21 |
-
});
|
22 |
-
/* List tour */
|
23 |
-
var tourbutton = '<a class="" id="lp-tour" style="font-size:13px;">Need help? Take the tour</a>';
|
24 |
-
jQuery(tourbutton).appendTo(".wrap h1");
|
25 |
-
jQuery("body").on('click', '#lp-tour', function () {
|
26 |
-
jQuery(this).hide();
|
27 |
-
var tour = jQuery("#lp-tour-style").length;
|
28 |
-
if ( tour === 0 ) {
|
29 |
-
jQuery('head').append("<link rel='stylesheet' id='lp-tour-style' href='/wp-content/plugins/landing-pages/assets/css/admin-tour.css' type='text/css' /><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/tour/tour.post-list.js'></script><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/intro.js'></script>");
|
30 |
-
}
|
31 |
-
setTimeout(function() {
|
32 |
-
introJs().start(); // start tour
|
33 |
-
}, 300);
|
34 |
-
|
35 |
-
});
|
36 |
-
/*jQuery(".lp-varation-stat-ul").each(function(){
|
37 |
-
var length = jQuery(this).find("li").length;
|
38 |
-
if ( length < 3 ){
|
39 |
-
jQuery(this).find("li").first().css("padding-top", "18px");
|
40 |
-
}
|
41 |
-
});
|
42 |
-
*/
|
43 |
-
jQuery("body").on('mouseenter', 'tr.type-landing-page', function () {
|
44 |
-
jQuery(this).find(".no-stats-yet").show();
|
45 |
-
});
|
46 |
-
jQuery("body").on('mouseleave', 'tr.type-landing-page', function () {
|
47 |
-
jQuery(this).find(".no-stats-yet").hide();
|
48 |
-
});
|
49 |
-
jQuery(".variation-winner-is").each(function(){
|
50 |
-
var target = jQuery(this).text();
|
51 |
-
jQuery("." + target).addClass("winner-lp").attr("data-lp", "Current Winner");
|
52 |
-
});
|
53 |
-
|
54 |
-
var hidestats = "<span id='hide-stats'>(Hide Stats)</span><span class='show-stats show-stats-top'>Show Stats</span>";
|
55 |
-
jQuery("#stats").append(hidestats);
|
56 |
-
|
57 |
-
jQuery("body").on('click', '#hide-stats', function () {
|
58 |
-
jQuery(".lp-varation-stat-ul").each(function(){
|
59 |
-
jQuery(this).hide();
|
60 |
-
});
|
61 |
-
jQuery(".show-stats").show();
|
62 |
-
jQuery("#hide-stats").hide();
|
63 |
-
});
|
64 |
-
|
65 |
-
jQuery("body").on('click', '.show-stats-top', function () {
|
66 |
-
jQuery(".lp-varation-stat-ul").each(function(){
|
67 |
-
jQuery(this).show();
|
68 |
-
});
|
69 |
-
jQuery(".show-stats").hide();
|
70 |
-
jQuery("#hide-stats").show();
|
71 |
-
});
|
72 |
-
|
73 |
-
jQuery("body").on('click', '.show-stats', function () {
|
74 |
-
jQuery(this).hide();
|
75 |
-
jQuery(this).parent().find(".lp-varation-stat-ul").show();
|
76 |
-
});
|
77 |
-
|
78 |
-
jQuery('.lp-letter, .cr-number, .qtip').on('mouseenter', function(event) {
|
79 |
-
// Bind the qTip within the event handler
|
80 |
-
var text_in_tip = jQuery(this).attr("data-notes");
|
81 |
-
var letter = jQuery(this).attr("data-letter");
|
82 |
-
var status = "<span class='lp-paused'>" + jQuery(this).parent().attr("rel") + "</span>";
|
83 |
-
var winner = "<span class='lp-win'>" + jQuery(this).parent().attr("data-lp") + "</span>";
|
84 |
-
jQuery(this).qtip({
|
85 |
-
overwrite: false, // Make sure the tooltip won't be overridden once created
|
86 |
-
content: {
|
87 |
-
text: text_in_tip,
|
88 |
-
title: {
|
89 |
-
text: 'Variation ' + letter + "<span class='lp-extra'>" + status + winner + "</span>" + "<span class='lp-pop-close'>close</span>"
|
90 |
-
}
|
91 |
-
},
|
92 |
-
position: {
|
93 |
-
my: 'bottom center', // Use the corner...
|
94 |
-
at: 'top center', // ...and opposite corner
|
95 |
-
viewport: jQuery(window)
|
96 |
-
},
|
97 |
-
style: {
|
98 |
-
classes: 'qtip-shadow qtip-jtools',
|
99 |
-
},
|
100 |
-
show: {
|
101 |
-
event: event.type, // Use the same show event as the one that triggered the event handler
|
102 |
-
ready: true, // Show the tooltip as soon as it's bound, vital so it shows up the first time you hover!
|
103 |
-
solo: true
|
104 |
-
},
|
105 |
-
hide: 'unfocus'
|
106 |
-
//hide: { when: { event: 'inactive' }, delay: 1200 }
|
107 |
-
}, event); // Pass through our original event to qTip
|
108 |
-
})
|
109 |
-
|
110 |
-
jQuery('.lp-letter').on('mouseleave', function(event) {
|
111 |
-
|
112 |
-
|
113 |
-
});
|
114 |
-
|
115 |
-
jQuery("body").on("click", ".lp-pop-close", function(event) {
|
116 |
-
jQuery(this).parent().parent().parent().hide();
|
117 |
-
});
|
118 |
-
|
119 |
-
jQuery("body").on("click", ".lp-pop-preview a", function(event) {
|
120 |
-
jQuery(this).parent().parent().parent().parent().hide();
|
121 |
-
});
|
122 |
-
|
123 |
-
// Fix Thickbox width/hieght
|
124 |
-
jQuery(function($) {
|
125 |
-
tb_position = function() {
|
126 |
-
var tbWindow = $('#TB_window');
|
127 |
-
var width = $(window).width();
|
128 |
-
var H = $(window).height();
|
129 |
-
var W = ( 1720 < width ) ? 1720 : width;
|
130 |
-
|
131 |
-
if ( tbWindow.size() ) {
|
132 |
-
tbWindow.width( W - 50 ).height( H - 45 );
|
133 |
-
$('#TB_iframeContent').width( W - 50 ).height( H - 75 );
|
134 |
-
tbWindow.css({'margin-left': '-' + parseInt((( W - 50 ) / 2),10) + 'px'});
|
135 |
-
if ( typeof document.body.style.maxWidth != 'undefined' )
|
136 |
-
tbWindow.css({'top':'40px','margin-top':'0'});
|
137 |
-
//$('#TB_title').css({'background-color':'#fff','color':'#cfcfcf'});
|
138 |
-
};
|
139 |
-
|
140 |
-
return $('a.thickbox').each( function() {
|
141 |
-
var href = $(this).attr('href');
|
142 |
-
if ( ! href ) return;
|
143 |
-
href = href.replace(/&width=[0-9]+/g, '');
|
144 |
-
href = href.replace(/&height=[0-9]+/g, '');
|
145 |
-
$(this).attr( 'href', href + '&width=' + ( W - 80 ) + '&height=' + ( H - 85 ) );
|
146 |
-
});
|
147 |
-
|
148 |
-
};
|
149 |
-
|
150 |
-
jQuery('a.thickbox').click(function(){
|
151 |
-
if ( typeof tinyMCE != 'undefined' && tinyMCE.activeEditor ) {
|
152 |
-
tinyMCE.get('content').focus();
|
153 |
-
tinyMCE.activeEditor.windowManager.bookmark = tinyMCE.activeEditor.selection.getBookmark('simple');
|
154 |
-
}
|
155 |
-
|
156 |
-
});
|
157 |
-
|
158 |
-
$(window).resize( function() { tb_position() } );
|
159 |
-
});
|
160 |
-
|
161 |
});
|
1 |
+
jQuery(document).ready(function($) {
|
2 |
+
// Code for landing page list view
|
3 |
+
var cats = jQuery("#landing_page_category option").length;
|
4 |
+
if ( cats === 0 ){
|
5 |
+
jQuery("#landing_page_category").hide();
|
6 |
+
}
|
7 |
+
|
8 |
+
jQuery('.lp-letter').each(function(){
|
9 |
+
var draft = jQuery(this).text();
|
10 |
+
if ( draft === "" ){
|
11 |
+
jQuery(this).parent().parent().hide();
|
12 |
+
}
|
13 |
+
});
|
14 |
+
|
15 |
+
jQuery(".lp-impress-num").each(function(){
|
16 |
+
var empty = jQuery(this).text();
|
17 |
+
if ( empty === "" || empty === "0" ){
|
18 |
+
jQuery(this).parent().parent().find(".lp-letter").css("color", "#ccc");
|
19 |
+
jQuery(this).parent().html("<span class='lp-no-stats'>no stats yet</span>");
|
20 |
+
}
|
21 |
+
});
|
22 |
+
/* List tour */
|
23 |
+
var tourbutton = '<a class="" id="lp-tour" style="font-size:13px;">Need help? Take the tour</a>';
|
24 |
+
jQuery(tourbutton).appendTo(".wrap h1");
|
25 |
+
jQuery("body").on('click', '#lp-tour', function () {
|
26 |
+
jQuery(this).hide();
|
27 |
+
var tour = jQuery("#lp-tour-style").length;
|
28 |
+
if ( tour === 0 ) {
|
29 |
+
jQuery('head').append("<link rel='stylesheet' id='lp-tour-style' href='/wp-content/plugins/landing-pages/assets/css/admin-tour.css' type='text/css' /><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/tour/tour.post-list.js'></script><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/intro.js'></script>");
|
30 |
+
}
|
31 |
+
setTimeout(function() {
|
32 |
+
introJs().start(); // start tour
|
33 |
+
}, 300);
|
34 |
+
|
35 |
+
});
|
36 |
+
/*jQuery(".lp-varation-stat-ul").each(function(){
|
37 |
+
var length = jQuery(this).find("li").length;
|
38 |
+
if ( length < 3 ){
|
39 |
+
jQuery(this).find("li").first().css("padding-top", "18px");
|
40 |
+
}
|
41 |
+
});
|
42 |
+
*/
|
43 |
+
jQuery("body").on('mouseenter', 'tr.type-landing-page', function () {
|
44 |
+
jQuery(this).find(".no-stats-yet").show();
|
45 |
+
});
|
46 |
+
jQuery("body").on('mouseleave', 'tr.type-landing-page', function () {
|
47 |
+
jQuery(this).find(".no-stats-yet").hide();
|
48 |
+
});
|
49 |
+
jQuery(".variation-winner-is").each(function(){
|
50 |
+
var target = jQuery(this).text();
|
51 |
+
jQuery("." + target).addClass("winner-lp").attr("data-lp", "Current Winner");
|
52 |
+
});
|
53 |
+
|
54 |
+
var hidestats = "<span id='hide-stats'>(Hide Stats)</span><span class='show-stats show-stats-top'>Show Stats</span>";
|
55 |
+
jQuery("#stats").append(hidestats);
|
56 |
+
|
57 |
+
jQuery("body").on('click', '#hide-stats', function () {
|
58 |
+
jQuery(".lp-varation-stat-ul").each(function(){
|
59 |
+
jQuery(this).hide();
|
60 |
+
});
|
61 |
+
jQuery(".show-stats").show();
|
62 |
+
jQuery("#hide-stats").hide();
|
63 |
+
});
|
64 |
+
|
65 |
+
jQuery("body").on('click', '.show-stats-top', function () {
|
66 |
+
jQuery(".lp-varation-stat-ul").each(function(){
|
67 |
+
jQuery(this).show();
|
68 |
+
});
|
69 |
+
jQuery(".show-stats").hide();
|
70 |
+
jQuery("#hide-stats").show();
|
71 |
+
});
|
72 |
+
|
73 |
+
jQuery("body").on('click', '.show-stats', function () {
|
74 |
+
jQuery(this).hide();
|
75 |
+
jQuery(this).parent().find(".lp-varation-stat-ul").show();
|
76 |
+
});
|
77 |
+
|
78 |
+
jQuery('.lp-letter, .cr-number, .qtip').on('mouseenter', function(event) {
|
79 |
+
// Bind the qTip within the event handler
|
80 |
+
var text_in_tip = jQuery(this).attr("data-notes");
|
81 |
+
var letter = jQuery(this).attr("data-letter");
|
82 |
+
var status = "<span class='lp-paused'>" + jQuery(this).parent().attr("rel") + "</span>";
|
83 |
+
var winner = "<span class='lp-win'>" + jQuery(this).parent().attr("data-lp") + "</span>";
|
84 |
+
jQuery(this).qtip({
|
85 |
+
overwrite: false, // Make sure the tooltip won't be overridden once created
|
86 |
+
content: {
|
87 |
+
text: text_in_tip,
|
88 |
+
title: {
|
89 |
+
text: 'Variation ' + letter + "<span class='lp-extra'>" + status + winner + "</span>" + "<span class='lp-pop-close'>close</span>"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
position: {
|
93 |
+
my: 'bottom center', // Use the corner...
|
94 |
+
at: 'top center', // ...and opposite corner
|
95 |
+
viewport: jQuery(window)
|
96 |
+
},
|
97 |
+
style: {
|
98 |
+
classes: 'qtip-shadow qtip-jtools',
|
99 |
+
},
|
100 |
+
show: {
|
101 |
+
event: event.type, // Use the same show event as the one that triggered the event handler
|
102 |
+
ready: true, // Show the tooltip as soon as it's bound, vital so it shows up the first time you hover!
|
103 |
+
solo: true
|
104 |
+
},
|
105 |
+
hide: 'unfocus'
|
106 |
+
//hide: { when: { event: 'inactive' }, delay: 1200 }
|
107 |
+
}, event); // Pass through our original event to qTip
|
108 |
+
})
|
109 |
+
|
110 |
+
jQuery('.lp-letter').on('mouseleave', function(event) {
|
111 |
+
|
112 |
+
|
113 |
+
});
|
114 |
+
|
115 |
+
jQuery("body").on("click", ".lp-pop-close", function(event) {
|
116 |
+
jQuery(this).parent().parent().parent().hide();
|
117 |
+
});
|
118 |
+
|
119 |
+
jQuery("body").on("click", ".lp-pop-preview a", function(event) {
|
120 |
+
jQuery(this).parent().parent().parent().parent().hide();
|
121 |
+
});
|
122 |
+
|
123 |
+
// Fix Thickbox width/hieght
|
124 |
+
jQuery(function($) {
|
125 |
+
tb_position = function() {
|
126 |
+
var tbWindow = $('#TB_window');
|
127 |
+
var width = $(window).width();
|
128 |
+
var H = $(window).height();
|
129 |
+
var W = ( 1720 < width ) ? 1720 : width;
|
130 |
+
|
131 |
+
if ( tbWindow.size() ) {
|
132 |
+
tbWindow.width( W - 50 ).height( H - 45 );
|
133 |
+
$('#TB_iframeContent').width( W - 50 ).height( H - 75 );
|
134 |
+
tbWindow.css({'margin-left': '-' + parseInt((( W - 50 ) / 2),10) + 'px'});
|
135 |
+
if ( typeof document.body.style.maxWidth != 'undefined' )
|
136 |
+
tbWindow.css({'top':'40px','margin-top':'0'});
|
137 |
+
//$('#TB_title').css({'background-color':'#fff','color':'#cfcfcf'});
|
138 |
+
};
|
139 |
+
|
140 |
+
return $('a.thickbox').each( function() {
|
141 |
+
var href = $(this).attr('href');
|
142 |
+
if ( ! href ) return;
|
143 |
+
href = href.replace(/&width=[0-9]+/g, '');
|
144 |
+
href = href.replace(/&height=[0-9]+/g, '');
|
145 |
+
$(this).attr( 'href', href + '&width=' + ( W - 80 ) + '&height=' + ( H - 85 ) );
|
146 |
+
});
|
147 |
+
|
148 |
+
};
|
149 |
+
|
150 |
+
jQuery('a.thickbox').click(function(){
|
151 |
+
if ( typeof tinyMCE != 'undefined' && tinyMCE.activeEditor ) {
|
152 |
+
tinyMCE.get('content').focus();
|
153 |
+
tinyMCE.activeEditor.windowManager.bookmark = tinyMCE.activeEditor.selection.getBookmark('simple');
|
154 |
+
}
|
155 |
+
|
156 |
+
});
|
157 |
+
|
158 |
+
$(window).resize( function() { tb_position() } );
|
159 |
+
});
|
160 |
+
|
161 |
});
|
assets/js/admin/admin.post-edit-ab-testing.js
CHANGED
@@ -1,64 +1,64 @@
|
|
1 |
-
jQuery(document).ready(function ($) {
|
2 |
-
var variations = new Array();
|
3 |
-
var has_variations = 0;
|
4 |
-
variations = variation.variations;
|
5 |
-
|
6 |
-
|
7 |
-
var replace_slash = '\\';
|
8 |
-
|
9 |
-
//variation.content_area = variation.content_area.replace(/\n/g, replace_slash);
|
10 |
-
//variation.content_area = variation.content_area.replace(/\r\n/g, "<br/>").replace(/\r/g, "<br/>").replace(/\n/g, "<br/>");
|
11 |
-
|
12 |
-
jQuery("#wp-content-editor-container textarea").val(variation.content_area);
|
13 |
-
jQuery("#content_ifr").contents().find("body").html(variation.content_area);
|
14 |
-
|
15 |
-
|
16 |
-
var html;
|
17 |
-
if (variation.vid>0&&variation.new_variation!=1)
|
18 |
-
{
|
19 |
-
html = '<a class="add-new-h2" href="?post='+variation.pid+'&action=edit&lp-variation-id='+variation.vid+'&ab-action=delete-variation">Delete This Variation</a>';
|
20 |
-
jQuery('.wrap h2:first').append(html);
|
21 |
-
}
|
22 |
-
|
23 |
-
if (variation.vid>0)
|
24 |
-
{
|
25 |
-
jQuery('#delete-action').remove();
|
26 |
-
}
|
27 |
-
|
28 |
-
//alter preview and customizer buttons based on open variation
|
29 |
-
var preview_href = jQuery('#post-preview').attr('href');
|
30 |
-
jQuery('#post-preview').attr('href',preview_href+'?lp-variation-id='+variation.vid);
|
31 |
-
|
32 |
-
//setup timer and and navigation change events
|
33 |
-
var input_change = jQuery("#switch-lp").text();
|
34 |
-
jQuery('.wrap').on('keyup change', jQuery('form').find('input[type=text],textarea,select'), function() {
|
35 |
-
jQuery("#switch-lp").text("1");
|
36 |
-
console.log("change");
|
37 |
-
});
|
38 |
-
|
39 |
-
/*setTimeout(function () {
|
40 |
-
input_change = 1;
|
41 |
-
}, 15000);
|
42 |
-
*/
|
43 |
-
jQuery('.wrap').on('click', '.nav-tab-wrapper a', function(e) {
|
44 |
-
var this_id = this.id.replace('tabs-','');
|
45 |
-
if (input_change==1)
|
46 |
-
{
|
47 |
-
var answer = confirm('Do you want to change variations without saving the changes made here?');
|
48 |
-
if (answer){
|
49 |
-
// do the default action
|
50 |
-
} else {
|
51 |
-
e.preventDefault();
|
52 |
-
}
|
53 |
-
}
|
54 |
-
|
55 |
-
jQuery('.lp-tab-display').css('display','none');
|
56 |
-
jQuery('#'+this_id).css('display','block');
|
57 |
-
jQuery('.lp-nav-tab').removeClass('nav-tab-special-active');
|
58 |
-
jQuery('.lp-nav-tab').addClass('nav-tab-special-inactive');
|
59 |
-
jQuery('#tabs-'+this_id).addClass('nav-tab-special-active');
|
60 |
-
jQuery('#id-open-tab').val(this_id);
|
61 |
-
|
62 |
-
});
|
63 |
-
|
64 |
});
|
1 |
+
jQuery(document).ready(function ($) {
|
2 |
+
var variations = new Array();
|
3 |
+
var has_variations = 0;
|
4 |
+
variations = variation.variations;
|
5 |
+
|
6 |
+
|
7 |
+
var replace_slash = '\\';
|
8 |
+
|
9 |
+
//variation.content_area = variation.content_area.replace(/\n/g, replace_slash);
|
10 |
+
//variation.content_area = variation.content_area.replace(/\r\n/g, "<br/>").replace(/\r/g, "<br/>").replace(/\n/g, "<br/>");
|
11 |
+
|
12 |
+
jQuery("#wp-content-editor-container textarea").val(variation.content_area);
|
13 |
+
jQuery("#content_ifr").contents().find("body").html(variation.content_area);
|
14 |
+
|
15 |
+
|
16 |
+
var html;
|
17 |
+
if (variation.vid>0&&variation.new_variation!=1)
|
18 |
+
{
|
19 |
+
html = '<a class="add-new-h2" href="?post='+variation.pid+'&action=edit&lp-variation-id='+variation.vid+'&ab-action=delete-variation">Delete This Variation</a>';
|
20 |
+
jQuery('.wrap h2:first').append(html);
|
21 |
+
}
|
22 |
+
|
23 |
+
if (variation.vid>0)
|
24 |
+
{
|
25 |
+
jQuery('#delete-action').remove();
|
26 |
+
}
|
27 |
+
|
28 |
+
//alter preview and customizer buttons based on open variation
|
29 |
+
var preview_href = jQuery('#post-preview').attr('href');
|
30 |
+
jQuery('#post-preview').attr('href',preview_href+'?lp-variation-id='+variation.vid);
|
31 |
+
|
32 |
+
//setup timer and and navigation change events
|
33 |
+
var input_change = jQuery("#switch-lp").text();
|
34 |
+
jQuery('.wrap').on('keyup change', jQuery('form').find('input[type=text],textarea,select'), function() {
|
35 |
+
jQuery("#switch-lp").text("1");
|
36 |
+
console.log("change");
|
37 |
+
});
|
38 |
+
|
39 |
+
/*setTimeout(function () {
|
40 |
+
input_change = 1;
|
41 |
+
}, 15000);
|
42 |
+
*/
|
43 |
+
jQuery('.wrap').on('click', '.nav-tab-wrapper a', function(e) {
|
44 |
+
var this_id = this.id.replace('tabs-','');
|
45 |
+
if (input_change==1)
|
46 |
+
{
|
47 |
+
var answer = confirm('Do you want to change variations without saving the changes made here?');
|
48 |
+
if (answer){
|
49 |
+
// do the default action
|
50 |
+
} else {
|
51 |
+
e.preventDefault();
|
52 |
+
}
|
53 |
+
}
|
54 |
+
|
55 |
+
jQuery('.lp-tab-display').css('display','none');
|
56 |
+
jQuery('#'+this_id).css('display','block');
|
57 |
+
jQuery('.lp-nav-tab').removeClass('nav-tab-special-active');
|
58 |
+
jQuery('.lp-nav-tab').addClass('nav-tab-special-inactive');
|
59 |
+
jQuery('#tabs-'+this_id).addClass('nav-tab-special-active');
|
60 |
+
jQuery('#id-open-tab').val(this_id);
|
61 |
+
|
62 |
+
});
|
63 |
+
|
64 |
});
|
assets/js/admin/admin.post-edit.js
CHANGED
@@ -1,322 +1,322 @@
|
|
1 |
-
jQuery(document).ready(function ($) {
|
2 |
-
|
3 |
-
var cookies = (typeof (jQuery.cookie) != "undefined" ? true : false); // Check for JQuery Cookie
|
4 |
-
function cookie_notice() {
|
5 |
-
alert('Oh no! jQuery Cookie not loaded. Your Server Might be Blocking this. Some functionality may be impaired');
|
6 |
-
}
|
7 |
-
|
8 |
-
jQuery('.button.button-small').each(function () {
|
9 |
-
var $this = jQuery(this);
|
10 |
-
var text = $this.text();
|
11 |
-
if (text === "Get Shortlink") {
|
12 |
-
$this.hide();
|
13 |
-
}
|
14 |
-
});
|
15 |
-
|
16 |
-
var width = jQuery("#lp-thumbnail-sidebar-preview").width();
|
17 |
-
jQuery('#zoomer').zoomer({width: width, height: 225, zoom: 0.27, tranformOrigin: '0px 40px 1px',});
|
18 |
-
|
19 |
-
// Filter Styling
|
20 |
-
jQuery('#template-filter li').first().addClass('button-primary');
|
21 |
-
// filter items when filter link is clicked
|
22 |
-
jQuery('#template-filter a').click(function () {
|
23 |
-
var selector = jQuery(this).attr('data-filter');
|
24 |
-
jQuery("ul#template-filter li").removeClass('button-primary');
|
25 |
-
jQuery(this).parent().addClass('button-primary');
|
26 |
-
$(".template-item-boxes").fadeOut(500);
|
27 |
-
setTimeout(function () {
|
28 |
-
$(selector).fadeIn(500);
|
29 |
-
}, 500);
|
30 |
-
|
31 |
-
return false;
|
32 |
-
});
|
33 |
-
|
34 |
-
|
35 |
-
jQuery("body").on('click', '#content-tmce, .wp-switch-editor.switch-tmce', function () {
|
36 |
-
if (cookies) {
|
37 |
-
$.cookie("lp-edit-view-choice", "editor", {path: '/', expires: 7});
|
38 |
-
} else {
|
39 |
-
cookie_notice();
|
40 |
-
}
|
41 |
-
});
|
42 |
-
|
43 |
-
jQuery("body").on('click', '#content-html, .wp-switch-editor.switch-html', function () {
|
44 |
-
if (cookies) {
|
45 |
-
$.cookie("lp-edit-view-choice", "html", {path: '/', expires: 7});
|
46 |
-
} else {
|
47 |
-
cookie_notice();
|
48 |
-
}
|
49 |
-
});
|
50 |
-
|
51 |
-
if (cookies) {
|
52 |
-
var which_editor = $.cookie("lp-edit-view-choice");
|
53 |
-
} else {
|
54 |
-
var which_editor = 'editor';
|
55 |
-
cookie_notice();
|
56 |
-
}
|
57 |
-
if (which_editor === null) {
|
58 |
-
setTimeout(function () {
|
59 |
-
//jQuery("#content-tmce").click();
|
60 |
-
//jQuery(".wp-switch-editor.switch-tmce").click();
|
61 |
-
}, 1000);
|
62 |
-
|
63 |
-
}
|
64 |
-
|
65 |
-
if (which_editor === 'editor') {
|
66 |
-
setTimeout(function () {
|
67 |
-
|
68 |
-
jQuery('.switch-tmce').each(function () {
|
69 |
-
jQuery(this).click();
|
70 |
-
});
|
71 |
-
|
72 |
-
}, 1000);
|
73 |
-
}
|
74 |
-
|
75 |
-
/* Tour Start JS */
|
76 |
-
var tourbutton = '<a class="" id="lp-tour" style="font-size:13px;">Need help? Take the tour</a>';
|
77 |
-
jQuery(tourbutton).appendTo("h2:eq(0)");
|
78 |
-
jQuery("body").on('click', '#lp-tour', function () {
|
79 |
-
jQuery(this).hide();
|
80 |
-
var tour = jQuery("#lp-tour-style").length;
|
81 |
-
if (tour === 0) {
|
82 |
-
jQuery('head').append("<link rel='stylesheet' id='lp-tour-style' href='/wp-content/plugins/landing-pages/assets/css/admin-tour.css' type='text/css' /><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/tour/tour.post-edit.js'></script><script type='text/javascript' src='/wp-content/plugins/landing-pages/assets/js/admin/intro.js'></script>");
|
83 |
-
}
|
84 |
-
setTimeout(function () {
|
85 |
-
introJs().start(); // start tour
|
86 |
-
}, 300);
|
87 |
-
|
88 |
-
});
|
89 |
-
|
90 |
-
var current_a_tab = jQuery("#tabs-0").hasClass('nav-tab-special-active');
|
91 |
-
if (current_a_tab === true) {
|
92 |
-
var url_norm = jQuery("#view-post-btn a").attr('href');
|
93 |
-
var new_url = url_norm + "?lp-variation-id=0";
|
94 |
-
jQuery("#view-post-btn a").attr('href', new_url);
|
95 |
-
}
|
96 |
-
|
97 |
-
/* Fix inactivate theme display */
|
98 |
-
jQuery("#template-box a").live('click', function () {
|
99 |
-
|
100 |
-
setTimeout(function () {
|
101 |
-
jQuery('#TB_window iframe').contents().find("#customize-controls").hide();
|
102 |
-
jQuery('#TB_window iframe').contents().find(".wp-full-overlay.expanded").css("margin-left", "0px");
|
103 |
-
}, 600);
|
104 |
-
|
105 |
-
});
|
106 |
-
|
107 |
-
/* Fix Split testing iframe size */
|
108 |
-
jQuery("#lp-metabox-splittesting a.thickbox, #leads-table-container-inside .column-details a").live('click', function () {
|
109 |
-
jQuery('#TB_iframeContent, #TB_window').hide();
|
110 |
-
setTimeout(function () {
|
111 |
-
|
112 |
-
jQuery('#TB_iframeContent, #TB_window').width(640).height(800).css("margin-left", "0px").css("left", "35%");
|
113 |
-
jQuery('#TB_iframeContent, #TB_window').show();
|
114 |
-
}, 600);
|
115 |
-
});
|
116 |
-
|
117 |
-
/* Load meta box in correct position on page load */
|
118 |
-
var current_template = jQuery("input#lp_select_template ").val();
|
119 |
-
var current_template_meta = "#lp_" + current_template + "_custom_meta_box";
|
120 |
-
jQuery(current_template_meta).removeClass("postbox").appendTo("#template-display-options").addClass("Old-Template");
|
121 |
-
var current_template_h3 = "#lp_" + current_template + "_custom_meta_box h3";
|
122 |
-
|
123 |
-
/* jQuery(current_template_h3).css("background","#f8f8f8"); */
|
124 |
-
jQuery(current_template_meta + ' .handlediv').hide();
|
125 |
-
jQuery(current_template_meta + ' .hndle').css('cursor', 'default');
|
126 |
-
|
127 |
-
|
128 |
-
/* Fix Thickbox width/hieght */
|
129 |
-
jQuery(function ($) {
|
130 |
-
tb_position = function () {
|
131 |
-
var tbWindow = $('#TB_window');
|
132 |
-
var width = $(window).width();
|
133 |
-
var H = $(window).height();
|
134 |
-
var W = ( 1720 < width ) ? 1720 : width;
|
135 |
-
|
136 |
-
if (tbWindow.size()) {
|
137 |
-
tbWindow.width(W - 50).height(H - 45);
|
138 |
-
$('#TB_iframeContent').width(W - 50).height(H - 75);
|
139 |
-
tbWindow.css({'margin-left': '-' + parseInt((( W - 50 ) / 2), 10) + 'px'});
|
140 |
-
if (typeof document.body.style.maxWidth != 'undefined') {
|
141 |
-
tbWindow.css({'top': '40px', 'margin-top': '0'});
|
142 |
-
}
|
143 |
-
|
144 |
-
}
|
145 |
-
;
|
146 |
-
|
147 |
-
return $('a.thickbox').each(function () {
|
148 |
-
var href = $(this).attr('href');
|
149 |
-
if (!href) return;
|
150 |
-
href = href.replace(/&width=[0-9]+/g, '');
|
151 |
-
href = href.replace(/&height=[0-9]+/g, '');
|
152 |
-
$(this).attr('href', href + '&width=' + ( W - 80 ) + '&height=' + ( H - 85 ));
|
153 |
-
|
154 |