WordPress Infinite Scroll – Ajax Load More - Version 2.8.3

Version Description

  • PERFORMANCE - Updating ALM core to enqueue Ajax Load More js only when shortcode is present on screen.
  • NEW - Adding 'canonical-url' data attribute to ALM plugin wrapper - this will be used by various functions throughout the core plugin and add-ons.
  • NEW - Adding new alm-thumbnail image size.
  • NEW - Adding required functionality for upcoming Layouts add-on.
  • NEW - To increase SEO and crawler access we added a
  • FIX - Fixed issue with almDone() function not firing in certain instances.
  • UPDATE - Rebuilt License activation screen to use ajax and alert users when licenses run out.
  • UPDATE - Various admin UI enhancements.
Download this release

Release Info

Developer dcooney
Plugin Icon 128x128 WordPress Infinite Scroll – Ajax Load More
Version 2.8.3
Comparing to
See all releases

Code changes from version 2.8.2 to 2.8.3

README.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://connekthq.com/donate/
4
  Tags: infinite scroll, scroll, infinite, lazy load, lazy loading, pagination, ajax pagination, ajax, ajax posts, ajax load posts, loop, query, dynamic, shortcode builder, wp_query, search, tags, category, post types, taxonomy, meta_query, archives, date, infinite scrolling
5
  Requires at least: 3.6
6
  Tested up to: 4.3.1
7
- Stable tag: 2.8.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -12,8 +12,7 @@ A powerful solution to add infinite scroll functionality to your website
12
 
13
  == Description ==
14
 
15
- Ajax Load More is a robust and intuitive solution for infinite scrolling posts, custom post types and pages with Ajax powered queries.
16
-
17
 
18
  Build complex WordPress queries using the Ajax Load More custom shortcode builder then add the shortcode to your pages via the content editor or directly into your template files.
19
 
@@ -202,7 +201,7 @@ Ajax Load More passes the following PHP [variables](https://connekthq.com/plugin
202
  ***
203
 
204
  = Website =
205
- https://connekthq.com/ajax-load-more/
206
 
207
  ***
208
 
@@ -284,9 +283,21 @@ How to install Ajax Load More.
284
  6. Edit Page Shortcode Builder
285
  7. Shortcode and implementation examples
286
 
 
287
  == Changelog ==
288
 
289
 
 
 
 
 
 
 
 
 
 
 
 
290
  = 2.8.2 =
291
  * FIX - Fixed issue with the passing of ALM template variables to Theme Repeaters add-on.
292
  * FIX - Fixed issue shortcode builder returning an error when loading custom taxonomies.
4
  Tags: infinite scroll, scroll, infinite, lazy load, lazy loading, pagination, ajax pagination, ajax, ajax posts, ajax load posts, loop, query, dynamic, shortcode builder, wp_query, search, tags, category, post types, taxonomy, meta_query, archives, date, infinite scrolling
5
  Requires at least: 3.6
6
  Tested up to: 4.3.1
7
+ Stable tag: 2.8.3
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
12
 
13
  == Description ==
14
 
15
+ Ajax Load More is the ultimate solution for infinite scrolling and lazy loading posts, custom post types and pages with Ajax powered queries.
 
16
 
17
  Build complex WordPress queries using the Ajax Load More custom shortcode builder then add the shortcode to your pages via the content editor or directly into your template files.
18
 
201
  ***
202
 
203
  = Website =
204
+ http://connekthq.com/ajax-load-more/
205
 
206
  ***
207
 
283
  6. Edit Page Shortcode Builder
284
  7. Shortcode and implementation examples
285
 
286
+
287
  == Changelog ==
288
 
289
 
290
+ = 2.8.3 =
291
+ * PERFORMANCE - Updating ALM core to enqueue Ajax Load More js only when shortcode is present on screen.
292
+ * NEW - Adding 'canonical-url' data attribute to ALM plugin wrapper - this will be used by various functions throughout the core plugin and add-ons.
293
+ * NEW - Adding new alm-thumbnail image size.
294
+ * NEW - Adding required functionality for upcoming Layouts add-on.
295
+ * NEW - To increase SEO and crawler access we added a <noscript> paging navigation when seo and preloaded are both 'true'.
296
+ * FIX - Fixed issue with almDone() function not firing in certain instances.
297
+ * UPDATE - Rebuilt License activation screen to use ajax and alert users when licenses run out.
298
+ * UPDATE - Various admin UI enhancements.
299
+
300
+
301
  = 2.8.2 =
302
  * FIX - Fixed issue with the passing of ALM template variables to Theme Repeaters add-on.
303
  * FIX - Fixed issue shortcode builder returning an error when loading custom taxonomies.
admin/admin.php CHANGED
@@ -7,6 +7,137 @@ add_action( 'wp_ajax_alm_save_repeater', 'alm_save_repeater' ); // Ajax Save Rep
7
  add_action( 'wp_ajax_alm_update_repeater', 'alm_update_repeater' ); // Ajax Update Repeater
8
  add_action( 'wp_ajax_alm_get_tax_terms', 'alm_get_tax_terms' ); // Ajax Get Taxonomy Terms
9
  add_action( 'wp_ajax_alm_delete_cache', 'alm_delete_cache' ); // Delete Cache
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
 
11
 
12
 
@@ -21,6 +152,8 @@ function alm_admin_vars() { ?>
21
  /* <![CDATA[ */
22
  var alm_admin_localize = <?php echo json_encode( array(
23
  'ajax_admin_url' => admin_url( 'admin-ajax.php' ),
 
 
24
  'alm_admin_nonce' => wp_create_nonce( 'alm_repeater_nonce' )
25
  )); ?>
26
  /* ]]> */
@@ -244,6 +377,7 @@ function alm_admin_menu() {
244
  add_action( 'load-' . $alm_examples_page, 'alm_load_admin_js' );
245
  add_action( 'load-' . $alm_addons_page, 'alm_load_admin_js' );
246
  add_action( 'load-' . $alm_licenses_page, 'alm_load_admin_js' );
 
247
  }
248
 
249
 
@@ -607,6 +741,31 @@ function alm_get_tax_terms(){
607
  }
608
 
609
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
610
  /*
611
  * admin_init
612
  * Initiate the plugin, create our setting variables.
@@ -728,6 +887,12 @@ function alm_admin_init(){
728
  if(has_action('alm_unlimited_settings')){
729
  do_action('alm_unlimited_settings');
730
  }
 
 
 
 
 
 
731
 
732
 
733
  // PAGINATION
7
  add_action( 'wp_ajax_alm_update_repeater', 'alm_update_repeater' ); // Ajax Update Repeater
8
  add_action( 'wp_ajax_alm_get_tax_terms', 'alm_get_tax_terms' ); // Ajax Get Taxonomy Terms
9
  add_action( 'wp_ajax_alm_delete_cache', 'alm_delete_cache' ); // Delete Cache
10
+ add_action( 'wp_ajax_alm_layouts_dismiss', 'alm_layouts_dismiss' ); // Dismiss Layouts CTA
11
+ add_action( 'wp_ajax_alm_license_activation', 'alm_license_activation' ); // Activate Add-on
12
+ add_action( 'add_layout_listing', 'add_layout_listing' ); // Add layout dropmenu
13
+ add_action( 'wp_ajax_alm_layouts_get', 'alm_layouts_get' ); // Get layout
14
+ add_action( 'admin_init', 'alm_image_sizes' ); // Add image size
15
+
16
+
17
+ /*
18
+ * alm_license_activation
19
+ * Activate Add-on licenses
20
+ *
21
+ * @since 2.8.3
22
+ */
23
+
24
+ function alm_license_activation(){
25
+
26
+ $nonce = $_GET["nonce"];
27
+ $type = $_GET["type"]; // activate / deactivate
28
+ $item = $_GET["item"];
29
+ $license = $_GET["license"];
30
+ $url = $_GET["url"];
31
+ $upgrade = $_GET["upgrade"];
32
+ $option_status = $_GET["status"];
33
+ $option_key = $_GET["key"];
34
+
35
+ // Check our nonce, if they don't match then bounce!
36
+ if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
37
+ die('Error - unable to verify nonce, please try again.');
38
+
39
+ // data to send in our API request
40
+ if($type === 'activate'){
41
+ $action = 'activate_license';
42
+ }else{
43
+ $action = 'deactivate_license';
44
+ }
45
+
46
+ $api_params = array(
47
+ 'edd_action'=> $action,
48
+ 'license' => $license,
49
+ 'item_id' => $item, // the ID of our product in EDD
50
+ 'url' => home_url()
51
+ );
52
+
53
+ // Call the custom API.
54
+ $response = wp_remote_get( add_query_arg( $api_params, $url ), array( 'timeout' => 15, 'sslverify' => false ) );
55
+
56
+ $license_data = $response['body'];
57
+ $license_data = json_decode($license_data); // decode the license data
58
+
59
+
60
+ $return["success"] = $license_data->success;
61
+
62
+ $msg = '';
63
+ if($type === 'activate'){
64
+ $return["license_limit"] = $license_data->license_limit;
65
+ $return["expires"] = $license_data->expires;
66
+ $return["site_count"] = $license_data->site_count;
67
+ $return["activations_left"] = $license_data->activations_left;
68
+ $return["license"] = $license_data->license;
69
+ $return["item_name"] = $license_data->item_name;
70
+ if($license_data->activations_left === 0 && $license_data->success === false){
71
+ $msg = '<strong>Sorry, but you are out of available licenses <em>('. $license_data->license_limit .' / '. $license_data->site_count .')</em>.</strong> Please visit the <a href="'.$upgrade.'" target="_blank">'.$license_data->item_name.'</a> page to add additional licenses.';
72
+ }
73
+ }
74
+ $return["msg"] = $msg;
75
+
76
+
77
+ update_option( $option_status, $license_data->license);
78
+ update_option( $option_key, $license );
79
+
80
+ echo json_encode($return);
81
+
82
+ die();
83
+ }
84
+
85
+
86
+
87
+ /*
88
+ * alm_layouts_get
89
+ * Get layout and return value to repeater template
90
+ *
91
+ * @since 2.8.3
92
+ */
93
+
94
+ function alm_layouts_get(){
95
+ if (current_user_can( 'edit_theme_options' )){
96
+
97
+ $nonce = $_GET["nonce"];
98
+ $type = $_GET["type"];
99
+ // Check our nonce, if they don't match then bounce!
100
+ if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
101
+ die('Error - unable to verify nonce, please try again.');
102
+
103
+ if($type === 'default'){
104
+ $content = file_get_contents(ALM_PATH.'admin/includes/layout/'.$type.'.php');
105
+ }else{
106
+ $content = file_get_contents(ALM_LAYOUTS_PATH.'layouts/'.$type.'.php');
107
+ }
108
+
109
+ $return["value"] = $content;
110
+ echo json_encode($return);
111
+ }else {
112
+ echo __('You don\'t belong here.', ALM_NAME);
113
+ }
114
+ die();
115
+ }
116
+
117
+
118
+
119
+ /*
120
+ * alm_layouts_image_sizes
121
+ * Add the required image sizes
122
+ *
123
+ * @since 2.8.3
124
+ */
125
+
126
+ function alm_image_sizes(){
127
+ add_image_size( 'alm-thumbnail', 150, 150, true); // Custom ALM thumbnail size
128
+ }
129
+
130
+
131
+
132
+ /*
133
+ * add_layout_listing
134
+ * Get the list of layouts
135
+ *
136
+ * @since 2.8.3
137
+ */
138
+ function add_layout_listing(){
139
+ //include( ALM_PATH . 'admin/includes/components/layout-list.php');
140
+ }
141
 
142
 
143
 
152
  /* <![CDATA[ */
153
  var alm_admin_localize = <?php echo json_encode( array(
154
  'ajax_admin_url' => admin_url( 'admin-ajax.php' ),
155
+ 'active' => __('Active', 'ajax-load-more'),
156
+ 'inactive' => __('Inactive', 'ajax-load-more'),
157
  'alm_admin_nonce' => wp_create_nonce( 'alm_repeater_nonce' )
158
  )); ?>
159
  /* ]]> */
377
  add_action( 'load-' . $alm_examples_page, 'alm_load_admin_js' );
378
  add_action( 'load-' . $alm_addons_page, 'alm_load_admin_js' );
379
  add_action( 'load-' . $alm_licenses_page, 'alm_load_admin_js' );
380
+ add_action( 'load-' . $alm_licenses_page, 'alm_set_admin_nonce' );
381
  }
382
 
383
 
741
  }
742
 
743
 
744
+
745
+ /*
746
+ * alm_layouts_dismiss
747
+ * Dismiss Add Layouts CTA in repeater templates.
748
+ *
749
+ * @since 2.8.2.1
750
+ */
751
+ function alm_layouts_dismiss(){
752
+ if (current_user_can( 'edit_theme_options' )){
753
+
754
+ $nonce = $_POST["nonce"];
755
+
756
+ // Check our nonce, if they don't match then bounce!
757
+ if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
758
+ die('Error - unable to verify nonce, please try again.');
759
+
760
+ update_option('alm_layouts_dismiss', 'true');
761
+ echo 'Success';
762
+
763
+ die();
764
+ }
765
+ }
766
+
767
+
768
+
769
  /*
770
  * admin_init
771
  * Initiate the plugin, create our setting variables.
887
  if(has_action('alm_unlimited_settings')){
888
  do_action('alm_unlimited_settings');
889
  }
890
+
891
+
892
+ // LAYOUTS
893
+ if(has_action('alm_layouts_settings')){
894
+ do_action('alm_layouts_settings');
895
+ }
896
 
897
 
898
  // PAGINATION
admin/css/admin.css CHANGED
@@ -156,7 +156,7 @@
156
  /* Expand/Collapse all rows */
157
  .ajax-load-more .toggle-all{
158
  position: absolute;
159
- top:-12px;
160
  right: 20px;
161
  width: auto;
162
  display: inline-block;
@@ -442,7 +442,7 @@
442
  .ajax-load-more input[type=number]{
443
  padding: 10px;
444
  line-height: 1.3;
445
- border: 1px solid #ccc;
446
  width: 60%;
447
  }
448
  .ajax-load-more input[type=text].full{
@@ -497,7 +497,7 @@
497
  background: #f7f7f7;
498
  }
499
  .ajax-load-more .repeaters input[type=text]{
500
- padding: 7px 10px;
501
  }
502
 
503
  .ajax-load-more input.disabled-input{
@@ -541,6 +541,9 @@
541
  -webkit-border-radius: 2px;
542
  -moz-border-radius: 2px;
543
  border-radius: 2px;
 
 
 
544
  }
545
  .ajax-load-more .row.no-brd{
546
  border: none !important;
@@ -667,7 +670,7 @@
667
  .ajax-load-more label.template-title{
668
  padding: 10px 0;
669
  margin: 0;
670
- font-size: 0.9em;
671
  color: #888;
672
  }
673
 
@@ -1006,23 +1009,22 @@
1006
  overflow: hidden;
1007
  padding-top: 11px;
1008
  }
1009
- .ajax-load-more .header-wrap h2{
1010
  padding-top: 0;
1011
- font-size: 26px;
1012
  }
1013
- .ajax-load-more .header-wrap h2 + p{
1014
  margin-top: -3px;
1015
  opacity: 0.8;
1016
  }
1017
 
1018
- .ajax-load-more h2 span{
1019
  color: #999;
1020
  background: #fff;
1021
  padding: 0 5px;
1022
  border-radius: 2px;
1023
- font-size: 0.8em;
1024
  position: relative;
1025
- top: -2px;
1026
  }
1027
  .ajax-load-more h2.addon-title{
1028
  font-size: 19px !important;
@@ -1113,13 +1115,13 @@ p.loading{
1113
  .saved-response.loading,
1114
  p.loading,
1115
  .alm-dropdown ul li a.updating{
1116
- background: url(../img/loader.gif) no-repeat left center;
1117
  padding-left: 24px;
1118
  }
1119
 
1120
  .alm-dropdown ul li a.updating{
1121
- background-position: 1px center;
1122
- padding-left: 25px;
1123
  }
1124
 
1125
  input.save-repeater{
@@ -1147,7 +1149,7 @@ input.save-repeater{
1147
  height: 26px;
1148
  display: none;
1149
  float: left;
1150
- background: #fff url(../img/loader.gif) no-repeat center center;
1151
  }
1152
 
1153
 
@@ -1398,6 +1400,7 @@ table.highlight{
1398
  padding: 20px 0 0;
1399
  position: relative;
1400
  }
 
1401
  .license:first-of-type{
1402
  padding: 10px 0 0;
1403
  }
@@ -1449,6 +1452,38 @@ table.highlight{
1449
  border-color: transparent !important;
1450
  }
1451
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1452
  .license-wrap,
1453
  .license-no-addons{
1454
  overflow: hidden;
@@ -1669,7 +1704,7 @@ table.highlight{
1669
  border-radius: 3px;
1670
  padding: 8px;
1671
  background: #f7f7f7;
1672
- border: 1px solid #ccc;
1673
  color: #999;
1674
  line-height: 1.3;
1675
  }
@@ -1697,7 +1732,7 @@ table.highlight{
1697
  color: #0a4b83 !important;
1698
  }
1699
  .ajax-load-more .cm-string{ /* Elements in " " */
1700
- color: #d14 !important;
1701
  }
1702
  .ajax-load-more .cm-attribute{ /* class names */
1703
  color: #008080 !important;
@@ -1753,7 +1788,7 @@ table.highlight{
1753
  }
1754
 
1755
  .admin.ajax-load-more .row.unlimited.deleting{ /* Deleting Row */
1756
- background: #fff url(../img/loader-unlimited.gif) no-repeat center center;
1757
  border-color: #fff;
1758
  opacity: 0.4;
1759
  }
@@ -1761,7 +1796,7 @@ table.highlight{
1761
  background-image: none !important;
1762
  }
1763
  .admin.ajax-load-more .row.unlimited.new{ /* New Row */
1764
- background: url(../img/loader-unlimited.gif) no-repeat center center;
1765
  border-color: #efefef !important;
1766
  min-height: 60px;
1767
  display: none;
@@ -1800,7 +1835,7 @@ table.highlight{
1800
  transition: all 0.2s ease;
1801
  position: absolute;
1802
  right: 15px;
1803
- bottom: 15px;
1804
  }
1805
  .repeaters .alm-delete a{
1806
  border-radius: 2px;
@@ -1814,9 +1849,6 @@ table.highlight{
1814
  .repeaters .alm-delete a:hover{
1815
  background-color: #c94141;
1816
  color: #fff;
1817
- -webkit-box-shadow: 0 0 3px #ccc;
1818
- -moz-box-shadow: 0 0 3px #ccc;
1819
- box-shadow: 0 0 3px #ccc;
1820
  }
1821
  .repeaters .alm-delete a:focus{
1822
  -webkit-box-shadow: none;
@@ -1977,7 +2009,7 @@ table.highlight{
1977
 
1978
  .alm-dir-listing.deleting{
1979
  opacity: 0.5;
1980
- background: #fff url(../img/loader-unlimited.gif) no-repeat center center;
1981
  }
1982
 
1983
  .alm-dir-listing .dir-title{
@@ -2252,16 +2284,17 @@ p.cache-stats{
2252
  opacity: 1;
2253
  }
2254
 
2255
- .alm-repeater-options{
2256
  position: absolute;
2257
  top: -38px;
2258
  right: 6px;
2259
  z-index:99;
2260
  }
2261
- .alm-repeater-options a.target{
 
2262
  color: #999;
2263
  text-decoration: none !important;
2264
- padding: 5px 9px;
2265
  border: 1px solid #e7e7e7;
2266
  -webkit-border-radius: 3px;
2267
  -moz-border-radius: 3px;
@@ -2279,11 +2312,10 @@ p.cache-stats{
2279
  top:1px;
2280
  left: -2px;
2281
  }
2282
- .alm-repeater-options a.target:hover,
2283
- .alm-repeater-options a.target:active{
2284
- border-color: #c9c9c9;
2285
- color: #666;
2286
  background-color: #fff;
 
 
2287
  -webkit-box-shadow: 0 0 3px #ccc;
2288
  -moz-box-shadow: 0 0 3px #ccc;
2289
  box-shadow: 0 0 3px #ccc;
@@ -2305,8 +2337,151 @@ p.cache-stats{
2305
  .alm-repeater-options.active a.target i.fa-cog{
2306
  color: #444;
2307
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2308
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2309
  /* Dropwbown */
 
 
 
 
 
 
 
2310
  .alm-dropdown{
2311
  display: none;
2312
  position: absolute;
@@ -2324,7 +2499,10 @@ p.cache-stats{
2324
  border: 1px solid #ccc;
2325
  box-shadow: 0 0 4px #ccc;
2326
  padding: 8px;
2327
- width: 230px;
 
 
 
2328
  }
2329
  .alm-drop-inner:after,
2330
  .alm-drop-inner:before {
@@ -2353,54 +2531,60 @@ p.cache-stats{
2353
  }
2354
 
2355
  .alm-dropdown.active{
2356
- display: block;
2357
  }
2358
  .alm-dropdown ul{
2359
  padding:0;
2360
  margin:0;
 
 
 
 
 
2361
  }
2362
  .alm-dropdown ul li{
2363
  margin:0;
2364
  padding:0;
2365
  list-style: none;
2366
  clear: both;
2367
- font-size: 11px;
2368
  margin: 0;
2369
  padding: 0;
2370
  line-height: 1.2;
2371
- border-top: 1px solid #efefef;
2372
  }
2373
  .alm-dropdown ul li:first-child{
2374
  border: none;
2375
  }
2376
  .alm-dropdown ul li a{
2377
- padding: 11px 5px 11px 24px;
2378
  display: block;
2379
  text-decoration: none;
2380
- background-position: 1px center;
2381
  color: #666;
2382
  -webkit-box-shadow: none !important;
2383
  -moz-box-shadow: none !important;
2384
  box-shadow: none !important;
2385
  position: relative;
2386
  }
 
2387
  .alm-dropdown ul li a i{
2388
  margin: 0;
2389
  color: #999 !important;
2390
  position: absolute;
2391
- left: 0px;
2392
- top: 11px;
2393
  font-size: 14px;
2394
  width: 19px;
2395
  padding-left: 3px;
2396
  display: inline-block;
2397
- }
2398
- .alm-dropdown ul li.copy a i{
2399
- left: -1px;
2400
- }
2401
  .alm-dropdown ul li.option-update a i{
2402
- top: 12px;
2403
- }
 
 
 
2404
 
2405
  .alm-dropdown ul li a:hover{
2406
  color: #111;
@@ -2663,6 +2847,10 @@ p.cache-stats{
2663
  .call-out.light {
2664
  padding: 15px !important;
2665
  }
 
 
 
 
2666
  }
2667
 
2668
  @media screen and (max-width: 480px){
@@ -2722,6 +2910,21 @@ p.cache-stats{
2722
  .call-out.light p{
2723
  padding: 0;
2724
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2725
 
2726
  }
2727
 
156
  /* Expand/Collapse all rows */
157
  .ajax-load-more .toggle-all{
158
  position: absolute;
159
+ top:-13px;
160
  right: 20px;
161
  width: auto;
162
  display: inline-block;
442
  .ajax-load-more input[type=number]{
443
  padding: 10px;
444
  line-height: 1.3;
445
+ border: 1px solid #e7e7e7;
446
  width: 60%;
447
  }
448
  .ajax-load-more input[type=text].full{
497
  background: #f7f7f7;
498
  }
499
  .ajax-load-more .repeaters input[type=text]{
500
+ padding: 9px 10px;
501
  }
502
 
503
  .ajax-load-more input.disabled-input{
541
  -webkit-border-radius: 2px;
542
  -moz-border-radius: 2px;
543
  border-radius: 2px;
544
+ }
545
+ .ajax-load-more#alm-repeaters .row{
546
+ overflow: visible;
547
  }
548
  .ajax-load-more .row.no-brd{
549
  border: none !important;
670
  .ajax-load-more label.template-title{
671
  padding: 10px 0;
672
  margin: 0;
673
+ font-size: 13px;
674
  color: #888;
675
  }
676
 
1009
  overflow: hidden;
1010
  padding-top: 11px;
1011
  }
1012
+ .ajax-load-more .header-wrap h1{
1013
  padding-top: 0;
 
1014
  }
1015
+ .ajax-load-more .header-wrap h1 + p{
1016
  margin-top: -3px;
1017
  opacity: 0.8;
1018
  }
1019
 
1020
+ .ajax-load-more h1 span{
1021
  color: #999;
1022
  background: #fff;
1023
  padding: 0 5px;
1024
  border-radius: 2px;
1025
+ font-size: 0.9em;
1026
  position: relative;
1027
+ top: -1px;
1028
  }
1029
  .ajax-load-more h2.addon-title{
1030
  font-size: 19px !important;
1115
  .saved-response.loading,
1116
  p.loading,
1117
  .alm-dropdown ul li a.updating{
1118
+ background: url("../img/loader.gif") no-repeat left center;
1119
  padding-left: 24px;
1120
  }
1121
 
1122
  .alm-dropdown ul li a.updating{
1123
+ background-position: 4px center;
1124
+ padding-left: 29px;
1125
  }
1126
 
1127
  input.save-repeater{
1149
  height: 26px;
1150
  display: none;
1151
  float: left;
1152
+ background: #fff url("../img/loader.gif") no-repeat center center;
1153
  }
1154
 
1155
 
1400
  padding: 20px 0 0;
1401
  position: relative;
1402
  }
1403
+
1404
  .license:first-of-type{
1405
  padding: 10px 0 0;
1406
  }
1452
  border-color: transparent !important;
1453
  }
1454
 
1455
+
1456
+
1457
+ .license .loading{
1458
+ position: absolute;
1459
+ left: 0;
1460
+ top: 0;
1461
+ width: 100%;
1462
+ height: 100%;
1463
+ background: rgba(255, 255, 255, 0.6) url("../img/loader.gif") no-repeat center center;
1464
+ z-index: 9;
1465
+ display: none;
1466
+ }
1467
+ .license-btn.hide{
1468
+ display: none;
1469
+ }
1470
+ .license-btn-wrap{
1471
+ display: block;
1472
+ }
1473
+ .license-btn-wrap .msg{
1474
+ display: block;
1475
+ padding: 10px 0 0;
1476
+ font-size: 13px;
1477
+ line-height: 18px;
1478
+ }
1479
+ .license-btn-wrap .msg strong{
1480
+ display: block;
1481
+ }
1482
+ .license-btn-wrap .msg em{
1483
+ opacity: 0.7;
1484
+ font-style: normal;
1485
+ }
1486
+
1487
  .license-wrap,
1488
  .license-no-addons{
1489
  overflow: hidden;
1704
  border-radius: 3px;
1705
  padding: 8px;
1706
  background: #f7f7f7;
1707
+ border: 1px solid #e7e7e7;
1708
  color: #999;
1709
  line-height: 1.3;
1710
  }
1732
  color: #0a4b83 !important;
1733
  }
1734
  .ajax-load-more .cm-string{ /* Elements in " " */
1735
+ color: #c75050 !important;
1736
  }
1737
  .ajax-load-more .cm-attribute{ /* class names */
1738
  color: #008080 !important;
1788
  }
1789
 
1790
  .admin.ajax-load-more .row.unlimited.deleting{ /* Deleting Row */
1791
+ background: #fff url("../img/loader-unlimited.gif") no-repeat center center;
1792
  border-color: #fff;
1793
  opacity: 0.4;
1794
  }
1796
  background-image: none !important;
1797
  }
1798
  .admin.ajax-load-more .row.unlimited.new{ /* New Row */
1799
+ background: url("../img/loader-unlimited.gif") no-repeat center center;
1800
  border-color: #efefef !important;
1801
  min-height: 60px;
1802
  display: none;
1835
  transition: all 0.2s ease;
1836
  position: absolute;
1837
  right: 15px;
1838
+ bottom: 17px;
1839
  }
1840
  .repeaters .alm-delete a{
1841
  border-radius: 2px;
1849
  .repeaters .alm-delete a:hover{
1850
  background-color: #c94141;
1851
  color: #fff;
 
 
 
1852
  }
1853
  .repeaters .alm-delete a:focus{
1854
  -webkit-box-shadow: none;
2009
 
2010
  .alm-dir-listing.deleting{
2011
  opacity: 0.5;
2012
+ background: #fff url("../img/loader-unlimited.gif") no-repeat center center;
2013
  }
2014
 
2015
  .alm-dir-listing .dir-title{
2284
  opacity: 1;
2285
  }
2286
 
2287
+ .alm-drop-btn.alm-repeater-options{
2288
  position: absolute;
2289
  top: -38px;
2290
  right: 6px;
2291
  z-index:99;
2292
  }
2293
+ .alm-repeater-options a.target,
2294
+ .alm-drop-btn.alm-layout-selection a.target{
2295
  color: #999;
2296
  text-decoration: none !important;
2297
+ padding: 5px 11px;
2298
  border: 1px solid #e7e7e7;
2299
  -webkit-border-radius: 3px;
2300
  -moz-border-radius: 3px;
2312
  top:1px;
2313
  left: -2px;
2314
  }
2315
+ .alm-repeater-options a.target:hover{
 
 
 
2316
  background-color: #fff;
2317
+ color: #666;
2318
+ border-color: #c9c9c9;
2319
  -webkit-box-shadow: 0 0 3px #ccc;
2320
  -moz-box-shadow: 0 0 3px #ccc;
2321
  box-shadow: 0 0 3px #ccc;
2337
  .alm-repeater-options.active a.target i.fa-cog{
2338
  color: #444;
2339
  }
2340
+
2341
+
2342
+ /* Layout Dropdown */
2343
+ .alm-drop-btn.alm-layout-selection{
2344
+ display: inline-block;
2345
+ float: none;
2346
+ margin: 0 0 13px;
2347
+ }
2348
+ .alm-drop-btn.alm-layout-selection a.target{
2349
+ background-color: #fefeed;
2350
+ border-color: #e7e7e7;
2351
+ color: #555;
2352
+ text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.2);
2353
+ }
2354
+ .alm-drop-btn.alm-layout-selection a i{
2355
+ margin: 0 2px 0 0;
2356
+ }
2357
+
2358
+ .alm-drop-btn.alm-layout-selection li.type{
2359
+ height: 34px;
2360
+ line-height: 34px;
2361
+ padding: 0 0 0 29px;
2362
+ position: relative;
2363
+ }
2364
+ .alm-dropdown ul li.type i {
2365
+ color: #999 !important;
2366
+ display: inline-block;
2367
+ font-size: 14px;
2368
+ left: 4px;
2369
+ margin: 0;
2370
+ padding-left: 3px;
2371
+ position: absolute;
2372
+ top: 10px;
2373
+ width: 19px;
2374
+ }
2375
+ .alm-drop-btn.alm-layout-selection li.type .col-select{
2376
+ float: right;
2377
+ text-align: right;
2378
+ width: auto;
2379
+ height: 34px;
2380
+ line-height: 34px;
2381
+ }
2382
+ .alm-drop-btn.alm-layout-selection li.type .col-select a{
2383
+ width: 30px;
2384
+ height: 34px;
2385
+ display: inline-block;
2386
+ margin: 0;
2387
+ border-left: 1px solid #efefef;
2388
+ padding: 0;
2389
+ text-align: center;
2390
+ }
2391
+
2392
+ /* External Link + Add-on */
2393
+ .alm-drop-btn.alm-layout-selection a.external,
2394
+ .alm-drop-btn.alm-layout-selection a.add-on{
2395
+ border-top: 1px solid #ccc;
2396
+ background-color: #f7f7f7;
2397
+ padding: 13px 10px 13px 29px;
2398
+ display: block;
2399
+ }
2400
+ .alm-drop-btn.alm-layout-selection a.add-on{
2401
+ line-height: 1.45;
2402
+ }
2403
+ .alm-drop-btn.alm-layout-selection a.add-on strong{
2404
+ color: #111;
2405
+ }
2406
+ .alm-drop-btn.alm-layout-selection a.add-on i,
2407
+ .alm-drop-btn.alm-layout-selection a.external i{
2408
+ top: 14px;
2409
+ }
2410
+
2411
+ .alm-drop-btn.alm-layout-selection a.target:hover,
2412
+ .alm-drop-btn.alm-layout-selection a.target:active,
2413
+ .alm-drop-btn.alm-layout-selection.active a.target{
2414
+ color: #222;
2415
+ background-color: #fafad7;
2416
+ border-color: #ccc;
2417
+ -webkit-box-shadow: 0 0 3px #efefef;
2418
+ -moz-box-shadow: 0 0 3px #efefef;
2419
+ box-shadow: 0 0 3px #efefef;
2420
+ }
2421
+ .alm-drop-btn.alm-layout-selection.active a.target,
2422
+ .alm-drop-btn.alm-layout-selection a.target:active{
2423
+ -webkit-box-shadow: inset 0 1px 1px #ccc !important;
2424
+ -moz-box-shadow: inset 0 1px 1px #ccc !important;
2425
+ box-shadow: inset 0 1px 1px #ccc !important;
2426
+ }
2427
 
2428
+
2429
+ .alm-drop-btn.alm-layout-selection .alm-dropdown {
2430
+ display: none;
2431
+ position: absolute;
2432
+ right: auto;
2433
+ left: -2px;
2434
+ top: 108%;
2435
+ z-index: 9;
2436
+ }
2437
+ .alm-drop-btn .alm-dropdown:hover{
2438
+ display: block !important;
2439
+ }
2440
+ .alm-drop-btn.alm-layout-selection .alm-dropdown .alm-drop-inner:after,
2441
+ .alm-drop-btn.alm-layout-selection .alm-dropdown .alm-drop-inner:before {
2442
+ right: auto;
2443
+ left: 36px;
2444
+ }
2445
+ .alm-drop-btn.alm-layout-selection .alm-dropdown .alm-drop-inner::after{
2446
+ margin-left: 0;
2447
+ }
2448
+ .alm-drop-btn.alm-layout-selection .alm-dropdown .alm-drop-inner:before {
2449
+ right: auto;
2450
+ left: 35px;
2451
+ }
2452
+
2453
+ .add-layout-cta{
2454
+ border-radius: 2px;
2455
+ border: 1px solid #e7e7e7;
2456
+ background-color: #fefeed;
2457
+ padding: 10px 100px 10px 10px;
2458
+ display: block;
2459
+ margin: 5px 0 15px;
2460
+ font-weight: 600;
2461
+ position: relative;
2462
+ }
2463
+ .add-layout-cta p{
2464
+ margin: 0;
2465
+ font-size: 13px;
2466
+ }
2467
+ span.dismiss{
2468
+ position: absolute;
2469
+ right: 10px;
2470
+ top:11px;
2471
+ font-size: 13px;
2472
+ }
2473
+ span.dismiss a{
2474
+ text-decoration: none;
2475
+ }
2476
+
2477
  /* Dropwbown */
2478
+ .alm-drop-btn{
2479
+ position: relative;
2480
+ width: auto;
2481
+ }
2482
+ .alm-drop-btn a.target{
2483
+ font-weight: 600;
2484
+ }
2485
  .alm-dropdown{
2486
  display: none;
2487
  position: absolute;
2499
  border: 1px solid #ccc;
2500
  box-shadow: 0 0 4px #ccc;
2501
  padding: 8px;
2502
+ width: 260px;
2503
+ }
2504
+ .alm-layout-selection .alm-dropdown .alm-drop-inner{
2505
+ width: 280px;
2506
  }
2507
  .alm-drop-inner:after,
2508
  .alm-drop-inner:before {
2531
  }
2532
 
2533
  .alm-dropdown.active{
2534
+ display: block !important;
2535
  }
2536
  .alm-dropdown ul{
2537
  padding:0;
2538
  margin:0;
2539
+ -webkit-border-radius: 2px;
2540
+ -moz-border-radius: 2px;
2541
+ border-radius: 2px;
2542
+ border: 1px solid #f7f7f7;
2543
+ overflow: hidden;
2544
  }
2545
  .alm-dropdown ul li{
2546
  margin:0;
2547
  padding:0;
2548
  list-style: none;
2549
  clear: both;
2550
+ font-size: 13px;
2551
  margin: 0;
2552
  padding: 0;
2553
  line-height: 1.2;
2554
+ border-top: 1px solid #f7f7f7;
2555
  }
2556
  .alm-dropdown ul li:first-child{
2557
  border: none;
2558
  }
2559
  .alm-dropdown ul li a{
2560
+ padding: 13px 5px 13px 29px;
2561
  display: block;
2562
  text-decoration: none;
2563
+ background-position: 4px center;
2564
  color: #666;
2565
  -webkit-box-shadow: none !important;
2566
  -moz-box-shadow: none !important;
2567
  box-shadow: none !important;
2568
  position: relative;
2569
  }
2570
+
2571
  .alm-dropdown ul li a i{
2572
  margin: 0;
2573
  color: #999 !important;
2574
  position: absolute;
2575
+ left: 4px;
2576
+ top: 13px;
2577
  font-size: 14px;
2578
  width: 19px;
2579
  padding-left: 3px;
2580
  display: inline-block;
2581
+ }
 
 
 
2582
  .alm-dropdown ul li.option-update a i{
2583
+ top: 14px;
2584
+ }
2585
+ .alm-dropdown ul li a i.fa-th-large{
2586
+ left: 5px;
2587
+ }
2588
 
2589
  .alm-dropdown ul li a:hover{
2590
  color: #111;
2847
  .call-out.light {
2848
  padding: 15px !important;
2849
  }
2850
+
2851
+ .repeaters input.save-repeater{
2852
+ max-width: 50%;
2853
+ }
2854
  }
2855
 
2856
  @media screen and (max-width: 480px){
2910
  .call-out.light p{
2911
  padding: 0;
2912
  }
2913
+
2914
+ .ajax-load-more .one_half{
2915
+ width: 100%;
2916
+ margin: 0 0 2%;
2917
+ display: block;
2918
+ }
2919
+ .add-layout-cta{
2920
+ padding: 10px;
2921
+ }
2922
+ span.dismiss{
2923
+ position: static;
2924
+ padding-top: 20px;
2925
+ display: block;
2926
+ font-size: 12px;
2927
+ }
2928
 
2929
  }
2930
 
admin/css/select2.css CHANGED
@@ -26,7 +26,7 @@
26
  padding: 0 10px;
27
  overflow: hidden;
28
  position: relative;
29
- border: 1px solid #ccc;
30
  white-space: nowrap;
31
  line-height: 40px;
32
  color: #333;
26
  padding: 0 10px;
27
  overflow: hidden;
28
  position: relative;
29
+ border: 1px solid #e7e7e7;
30
  white-space: nowrap;
31
  line-height: 40px;
32
  color: #333;
admin/img/loader-unlimited.gif CHANGED
Binary file
admin/includes/components/layout-list.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="clear"></div>
2
+ <div class="alm-drop-btn alm-layout-selection">
3
+ <a href="javascript:void(0);" class="target"><i class="fa fa-chevron-circle-down"></i> <?php _e('Apply Layout', 'ajax-load-more'); ?></a>
4
+ <div class="alm-dropdown">
5
+ <div class="alm-drop-inner">
6
+ <ul>
7
+ <li>
8
+ <a href="javascript:void(0);" class="layout" data-type="default"><i class="fa fa-picture-o"></i>
9
+ <?php _e('Default', 'ajax-load-more'); ?>
10
+ </a>
11
+ </li>
12
+ <?php if (has_action('alm_layouts_installed')){
13
+ do_action('alm_get_layouts_add_on');
14
+ } else {
15
+ echo '<li><a href="https://connekthq.com/plugins/ajax-load-more/add-ons/layouts/?utm_source=WP%20Admin&utm_medium=Extend&utm_campaign=Layouts" class="add-on" target="_blank">';
16
+ echo '<i class="fa fa-key"></i>';
17
+ _e('Unlock additional layout templates with the <strong>Layouts add-on</strong>', 'ajax-load-more');
18
+ echo '</a></li>';
19
+ }?>
20
+
21
+ </ul>
22
+ </div>
23
+ </div>
24
+ </div>
admin/includes/cta/about.php CHANGED
@@ -1,10 +1,10 @@
1
  <div class="cta">
2
  <h3>Other Projects</h3>
3
  <ul>
4
- <li><strong><a target="blank" href="https://wordpress.org/plugins/easy-query/">Easy Query</a></strong><br>The fastest and simplest way to build WordPress queries without ever touching a single line of code.</li>
5
- <li><strong><a target="blank" href="https://wordpress.org/plugins/unsplash-stock-photo-library/">Unsplash WP</a></strong><br>The fastest way to upload high quality stock photos from unsplash.com directly to your media library</li>
6
  <li><strong><a target="blank" href="https://github.com/dcooney/flexpanel">FlexPanel</a></strong><br>A responsive scrolling panel navigation for mobile and desktop</li>
7
- <li><strong><a target="blank" href="http://connekthq.com">Connekt Media</a></strong><br>A digital creation company</li>
8
  </ul>
9
  </div>
10
 
1
  <div class="cta">
2
  <h3>Other Projects</h3>
3
  <ul>
4
+ <li><strong><a target="blank" href="https://connekthq.com/plugins/easy-query/">Easy Query</a></strong><br>A simple solution to build and display WordPress queries without touching a single line of code.</li>
5
+ <li><strong><a target="blank" href="https://connekthq.com/plugins/unsplash-wp/">Unsplash WP</a></strong><br>The fastest way to upload high quality stock photos from unsplash.com directly to your media library</li>
6
  <li><strong><a target="blank" href="https://github.com/dcooney/flexpanel">FlexPanel</a></strong><br>A responsive scrolling panel navigation for mobile and desktop</li>
7
+ <li><strong><a target="blank" href="https://connekthq.com">Connekt Media</a></strong><br>A digital creation company</li>
8
  </ul>
9
  </div>
10
 
admin/includes/cta/extend.php CHANGED
@@ -1 +1 @@
1
- <div class="clear"></div><div class="call-out"><?php _e('Unlock additional templates with the <a href="?page=ajax-load-more-add-ons" target="_parent">Custom Repeaters add-on</a>', 'ajax-load-more'); ?> <a class="cnkt-button" href="https://connekthq.com/plugins/ajax-load-more/custom-repeaters" target="_blank"><?php _e('More Info', 'ajax-load-more'); ?></a></div>
1
+ <div class="clear"></div><div class="call-out"><?php _e('Unlock additional templates with the <a href="?page=ajax-load-more-add-ons" target="_parent">Custom Repeaters add-on</a>', 'ajax-load-more'); ?> <a class="cnkt-button" href="https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/?utm_source=WP%20Admin&utm_medium=CustomRepeaters%20Extend&utm_campaign=Custom%20Repeaters" target="_blank"><?php _e('More Info', 'ajax-load-more'); ?></a></div>
admin/includes/cta/resources.php CHANGED
@@ -2,11 +2,11 @@
2
  <h3><?php _e('Resources', 'ajax-load-more'); ?></h3>
3
  <ul>
4
  <li><a target="blank" href="https://connekthq.com/plugins/ajax-load-more/"><i class="fa fa-mouse-pointer"></i> <?php _e('Ajax Load More Demo Site', 'ajax-load-more'); ?></a></li>
5
- <li><a target="blank" href="http://wordpress.org/plugins/ajax-load-more"><i class="fa fa-file-text"></i> <?php _e('Documentation', 'ajax-load-more'); ?></a></li>
6
- <li><a target="blank" href="http://wordpress.org/support/plugin/ajax-load-more"><i class="fa fa-question-circle"></i> <?php _e('Plugin Support/Issue', 'ajax-load-more'); ?>s</a></li>
7
  <li><a target="blank" href="https://wordpress.org/support/view/plugin-reviews/ajax-load-more"><i class="fa fa-star"></i> <?php _e('Reviews', 'ajax-load-more'); ?></a></li>
8
  <li><a target="blank" href="http://facebook.com/ajaxloadmore"><i class="fa fa-facebook"></i> <?php _e('Facebook', 'ajax-load-more'); ?></a></li>
9
  <li><a target="blank" href="http://twitter.com/ajaxloadmore"><i class="fa fa-twitter"></i> <?php _e('Twitter', 'ajax-load-more'); ?></a></li>
 
10
  </ul>
11
- <a href="https://github.com/dcooney/wordpress-ajax-load-more" target="blank" class="visit"><i class="fa fa-github"></i> <?php _e('Latest build on Github', 'ajax-load-more'); ?></a>
12
  </div>
2
  <h3><?php _e('Resources', 'ajax-load-more'); ?></h3>
3
  <ul>
4
  <li><a target="blank" href="https://connekthq.com/plugins/ajax-load-more/"><i class="fa fa-mouse-pointer"></i> <?php _e('Ajax Load More Demo Site', 'ajax-load-more'); ?></a></li>
5
+ <li><a target="blank" href="http://wordpress.org/support/plugin/ajax-load-more"><i class="fa fa-question-circle"></i> <?php _e('Plugin Support and Issues', 'ajax-load-more'); ?>s</a></li>
 
6
  <li><a target="blank" href="https://wordpress.org/support/view/plugin-reviews/ajax-load-more"><i class="fa fa-star"></i> <?php _e('Reviews', 'ajax-load-more'); ?></a></li>
7
  <li><a target="blank" href="http://facebook.com/ajaxloadmore"><i class="fa fa-facebook"></i> <?php _e('Facebook', 'ajax-load-more'); ?></a></li>
8
  <li><a target="blank" href="http://twitter.com/ajaxloadmore"><i class="fa fa-twitter"></i> <?php _e('Twitter', 'ajax-load-more'); ?></a></li>
9
+ <li><a target="blank" href="https://github.com/dcooney/wordpress-ajax-load-more"><i class="fa fa-github"></i> <?php _e('Github', 'ajax-load-more'); ?></a></li>
10
  </ul>
11
+ <a href="https://wordpress.org/plugins/ajax-load-more/" target="blank" class="visit"><i class="fa fa-wordpress"></i> <?php _e('WordPress Repository', 'ajax-load-more'); ?></a>
12
  </div>
admin/includes/layout/default.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <li<?php if (! has_post_thumbnail() ) { echo ' class="no-img"'; } ?>>
2
+ <?php if ( has_post_thumbnail() ) {
3
+ the_post_thumbnail(array(150,150));
4
+ }?>
5
+ <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
6
+ <p class="entry-meta">
7
+ <?php the_time("F d, Y"); ?>
8
+ </p>
9
+ <?php the_excerpt(); ?>
10
+ </li>
admin/js/admin.js CHANGED
@@ -134,6 +134,141 @@ jQuery(document).ready(function($) {
134
  });
135
 
136
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
137
 
138
  /*
139
  * Scroll to setting section
134
  });
135
 
136
 
137
+ /*
138
+ * Activate License
139
+ *
140
+ * @since 2.8.3
141
+ */
142
+ //
143
+ var almActivating = false;
144
+ $(document).on('click', '.license-btn', function(e){
145
+ e.preventDefault();
146
+ if(!almActivating){
147
+ $('.license-btn-wrap .msg').remove();
148
+ almActivating = true;
149
+ var el = $(this),
150
+ wrap = el.closest('.license-btn-wrap'),
151
+ parent = el.closest('.license'),
152
+ type = el.data('type'),
153
+ item = wrap.data('name'),
154
+ url = wrap.data('url'),
155
+ upgrade = wrap.data('upgrade-url'),
156
+ status = wrap.data('option-status'),
157
+ key = wrap.data('option-key'),
158
+ license = parent.find('input[type=text]').val();
159
+
160
+ $('.loading', parent).fadeIn(300);
161
+
162
+ // Get value from Ajax
163
+ $.ajax({
164
+ type: 'GET',
165
+ url: alm_admin_localize.ajax_admin_url,
166
+ dataType: 'json',
167
+
168
+ data: {
169
+ action: 'alm_license_activation',
170
+ nonce: alm_admin_localize.alm_admin_nonce,
171
+ type: type,
172
+ item: item,
173
+ status: status,
174
+ url: url,
175
+ upgrade: upgrade,
176
+ key: key,
177
+ license: license,
178
+ },
179
+
180
+ success: function(data) {
181
+
182
+ //console.log(data);
183
+
184
+ if(data['msg']){
185
+ $('.license-btn-wrap', parent).append('<div class="msg">'+data['msg']+'</div>');
186
+ }
187
+
188
+ if(data['license'] === 'valid'){
189
+ $('.license-key-field .status', parent).addClass('active').removeClass('inactive').text(alm_admin_localize.active);
190
+ $('.license-title .status', parent).addClass('valid').removeClass('invalid');
191
+ $('.activate.license-btn', parent).addClass('hide');
192
+ $('.deactivate.license-btn', parent).removeClass('hide');
193
+
194
+ }else{
195
+ $('.license-key-field .status', parent).removeClass('active').addClass('inactive').text(alm_admin_localize.inactive);
196
+ $('.license-title .status', parent).removeClass('valid').addClass('invalid');
197
+ $('.activate.license-btn', parent).removeClass('hide');
198
+ $('.deactivate.license-btn', parent).addClass('hide');
199
+ }
200
+
201
+ $('.loading', parent).delay(250).fadeOut(300);
202
+ almActivating = false;
203
+
204
+ },
205
+ error: function(xhr, status, error) {
206
+ console.log(status);
207
+ $('.loading', parent).delay(250).fadeOut(300);
208
+ almActivating = false;
209
+ }
210
+ });
211
+ }
212
+
213
+ });
214
+
215
+
216
+
217
+ // Get layout value Ajax
218
+ //$('.alm-layout-selection ul li a.layout').click(function(){
219
+ $(document).on('click', '.alm-layout-selection li a.layout', function(e){
220
+ e.preventDefault();
221
+ var el = $(this),
222
+ type = el.data('type'),
223
+ layout_btn_text = el.html(),
224
+ name = el.closest('.repeater-wrap').data('name');
225
+
226
+ if(!el.hasClass('updating')){
227
+
228
+ el.addClass('updating').text("Applying layout...");
229
+
230
+ // Get editor ID
231
+ var eid = '';
232
+ if(name === 'default'){ // Default Template
233
+ eid = window['editorDefault'];
234
+ }else{ // Repeater Templates
235
+ eid = window['editor_'+name]; // Set editor ID
236
+ }
237
+
238
+ // Get value from Ajax
239
+ $.ajax({
240
+ type: 'GET',
241
+ url: alm_admin_localize.ajax_admin_url,
242
+ data: {
243
+ action: 'alm_layouts_get',
244
+ type: type,
245
+ nonce: alm_admin_localize.alm_admin_nonce,
246
+ },
247
+ dataType: "JSON",
248
+ success: function(data) {
249
+ eid.setValue(data.value);
250
+
251
+ // Clear button styles
252
+ setTimeout(function() {
253
+ el.text('Template Updated').blur();
254
+ setTimeout(function() {
255
+ el.removeClass('updating').html(layout_btn_text).blur(); // CLose drop menu
256
+ el.closest('.alm-drop-btn').trigger('click');
257
+ }, 400);
258
+ }, 400);
259
+
260
+
261
+ },
262
+ error: function(xhr, status, error) {
263
+ console.log(status);
264
+ }
265
+ });
266
+ }
267
+
268
+ });
269
+
270
+
271
+
272
 
273
  /*
274
  * Scroll to setting section
admin/js/libs/jquery.drops.js CHANGED
@@ -1,4 +1,5 @@
1
  var drops = drops || {};
 
2
  jQuery(document).ready(function($) {
3
  "use strict";
4
 
@@ -25,9 +26,11 @@ jQuery(document).ready(function($) {
25
  text.focus(); //Focus on input boxes
26
 
27
  $(window).unbind('click').bind('click', drops.closeDropDown); // Bind click event to site container
28
- dropdown.click(function(e){
29
- e.stopPropagation();
 
30
  });
 
31
  };
32
  drops.closeDropDown = function() {
33
  $('.alm-dropdown').each(function(i) {
@@ -37,12 +40,13 @@ jQuery(document).ready(function($) {
37
  };
38
 
39
  //Dropdown links
40
- $('.alm-dropdown').each(function(i){
41
- var el = $(this).parent('.alm-drop-btn');
42
- $('> a', el).click(function(e){
43
- var e = $(this);
44
- drops.dropdown(e);
45
- return false;
46
- });
47
  });
 
 
 
 
48
  });
1
  var drops = drops || {};
2
+
3
  jQuery(document).ready(function($) {
4
  "use strict";
5
 
26
  text.focus(); //Focus on input boxes
27
 
28
  $(window).unbind('click').bind('click', drops.closeDropDown); // Bind click event to site container
29
+
30
+ dropdown.unbind('click').bind('click', function(event){
31
+ //event.stopPropagation();
32
  });
33
+ //http://stackoverflow.com/questions/10439779/closing-modal-popup-by-clicking-away-from-it
34
  };
35
  drops.closeDropDown = function() {
36
  $('.alm-dropdown').each(function(i) {
40
  };
41
 
42
  //Dropdown links
43
+ $(document).on('click', '.alm-drop-btn a.target', function(){
44
+ var e = $(this);
45
+ drops.dropdown(e);
46
+ return false;
 
 
 
47
  });
48
+
49
+
50
+
51
+
52
  });
admin/views/add-ons.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="admin ajax-load-more" id="alm-add-ons">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?>: <strong><?php _e('Add-ons', 'ajax-load-more'); ?></strong></h2>
5
  <p><?php _e('Add-ons are available to extend and enhance the core functionality of Ajax Load More', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main full">
@@ -56,7 +56,9 @@
56
  </div>
57
 
58
  </div>
59
- <!-- End Custom Repeaters -->
 
 
60
 
61
 
62
  <!-- Paging -->
@@ -83,7 +85,7 @@
83
  </div>
84
 
85
  </div>
86
- <!-- End Paging -->
87
 
88
 
89
  <!-- Preloaded -->
@@ -191,6 +193,32 @@
191
  </div>
192
  <!-- End Theme Repeaters -->
193
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  </div>
195
 
196
  <div class="call-out light">
1
  <div class="admin ajax-load-more" id="alm-add-ons">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?>: <strong><?php _e('Add-ons', 'ajax-load-more'); ?></strong></h1>
5
  <p><?php _e('Add-ons are available to extend and enhance the core functionality of Ajax Load More', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main full">
56
  </div>
57
 
58
  </div>
59
+ <!-- End Custom Repeaters -->
60
+
61
+
62
 
63
 
64
  <!-- Paging -->
85
  </div>
86
 
87
  </div>
88
+ <!-- End Paging -->
89
 
90
 
91
  <!-- Preloaded -->
193
  </div>
194
  <!-- End Theme Repeaters -->
195
 
196
+
197
+ <!-- Layouts -->
198
+ <div class="group" style="display: none !important;">
199
+ <div class="row no-brd">
200
+ <?php
201
+ $layouts_url = 'https://connekthq.com/plugins/ajax-load-more/add-ons/layouts/?utm_source=WP%20Admin&utm_medium=ALM%20Add-ons&utm_campaign=Layouts';
202
+ ?>
203
+ <a href="<?php echo $layouts_url; ?>">
204
+ <div class="expand-wrap">
205
+ <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/paging-add-ons.jpg">
206
+ <h2 class="addon-title"><?php _e('Layouts', 'ajax-load-more'); ?></h2>
207
+ <p class="addon-intro"><?php _e('Extend Ajax Load More with predefined responsive layouts.', 'ajax-load-more'); ?></p>
208
+ <p><?php _e('Boost the look of your theme with a library of mobile ready layouts.', 'ajax-load-more'); ?></p>
209
+ <?php
210
+ if (has_action('alm_layouts_installed')){
211
+ echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
212
+ }else{
213
+ echo '<span class="cnkt-button"><i class="fa fa-download"></i> Purchase &amp; Install</span>';
214
+ }
215
+ ?>
216
+ </div>
217
+ </a>
218
+ </div>
219
+ </div>
220
+ <!-- End Layouts -->
221
+
222
  </div>
223
 
224
  <div class="call-out light">
admin/views/examples.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="admin ajax-load-more" id="alm-examples">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?>: <strong><?php _e('Examples', 'ajax-load-more'); ?></strong></h2>
5
  <p><?php _e('A collection of everyday shortcode usages and implementation examples', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main forceColors">
1
  <div class="admin ajax-load-more" id="alm-examples">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?>: <strong><?php _e('Examples', 'ajax-load-more'); ?></strong></h1>
5
  <p><?php _e('A collection of everyday shortcode usages and implementation examples', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main forceColors">
admin/views/licenses.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="admin ajax-load-more" id="alm-licenses">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?>: <strong><?php _e('Licenses', 'ajax-load-more'); ?></strong></h2>
5
  <p><?php _e('Enter your license keys to enable automatic updates for <a href="admin.php?page=ajax-load-more-add-ons">ALM Add-ons</a>.', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main">
@@ -13,6 +13,7 @@
13
  <?php
14
  // alm_cache_installed
15
  // alm_unlimited_installed
 
16
  // alm_preload_installed
17
  // alm_paging_installed
18
  // alm_prev_post_installed
@@ -22,7 +23,7 @@
22
 
23
  <?php
24
  // Check if any add ons are installed.
25
- if(has_action('alm_cache_installed') || has_action('alm_unlimited_installed') || has_action('alm_preload_installed') || has_action('alm_paging_installed') || has_action('alm_prev_post_installed') || has_action('alm_seo_installed') || has_action('alm_theme_repeaters_installed')) : ?>
26
 
27
 
28
  <?php
@@ -31,7 +32,7 @@
31
  $alm_cache_license = get_option( 'alm_cache_license_key' );
32
  $alm_cache_status = get_option( 'alm_cache_license_status' );
33
  ?>
34
- <div class="license" id="license-paging">
35
  <div class="license-title">
36
  <div class="status <?php if($alm_cache_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
37
  <h2><?php _e('Cache', 'ajax-load-more'); ?></h2>
@@ -39,39 +40,40 @@
39
  <div class="license-wrap">
40
  <form method="post" action="options.php">
41
 
42
- <?php settings_fields('alm_cache_license'); ?>
43
- <label class="description" for="alm_cache_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
44
- <div class="license-key-field">
45
- <input id="alm_cache_license_key" name="alm_cache_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_cache_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
46
- <?php if( $alm_cache_status !== false && $alm_cache_status == 'valid' ) { ?>
47
- <span class="status active">
48
- <?php _e('Active', 'ajax-load-more'); ?>
49
- </span>
50
- <?php } else { ?>
51
- <span class="status inactive">
52
- <?php _e('In-active', 'ajax-load-more'); ?>
53
- </span>
54
- <?php } ?>
55
- </div>
56
-
57
- <?php wp_nonce_field( 'alm_cache_license_nonce', 'alm_cache_license_nonce' ); ?>
58
- <?php if($alm_cache_status === '' || $alm_cache_status !== 'valid') {
59
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
60
- } ?>
61
-
62
- <?php if( false !== $alm_cache_license ) { ?>
63
-
64
- <?php if( $alm_cache_status !== false && $alm_cache_status == 'valid' ) { ?>
65
- <input type="submit" class="button-secondary" name="alm_cache_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
66
- <?php } else { ?>
67
- <?php if(!empty($alm_cache_license)){ ?>
68
- <input type="submit" class="button-secondary" name="alm_cache_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
69
- <?php } ?>
70
- <?php } ?>
71
- <?php } ?>
72
 
73
  </form>
74
  </div>
 
75
  </div>
76
  <?php
77
  }
@@ -81,11 +83,11 @@
81
 
82
  <?php
83
  if (has_action('alm_unlimited_installed')){
84
- // PAGING
85
  $alm_unlimited_license = get_option( 'alm_unlimited_license_key' );
86
  $alm_unlimited_status = get_option( 'alm_unlimited_license_status' );
87
  ?>
88
- <div class="license" id="license-paging">
89
  <div class="license-title">
90
  <div class="status <?php if($alm_unlimited_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
91
  <h2><?php _e('Custom Repeaters', 'ajax-load-more'); ?></h2>
@@ -93,39 +95,40 @@
93
  <div class="license-wrap">
94
  <form method="post" action="options.php">
95
 
96
- <?php settings_fields('alm_unlimited_license'); ?>
97
- <label class="description" for="alm_unlimited_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
98
- <div class="license-key-field">
99
- <input id="alm_unlimited_license_key" name="alm_unlimited_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_unlimited_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
100
- <?php if( $alm_unlimited_status !== false && $alm_unlimited_status == 'valid' ) { ?>
101
- <span class="status active">
102
- <?php _e('Active', 'ajax-load-more'); ?>
103
- </span>
104
- <?php } else { ?>
105
- <span class="status inactive">
106
- <?php _e('In-active', 'ajax-load-more'); ?>
107
- </span>
108
- <?php } ?>
109
- </div>
110
 
111
- <?php wp_nonce_field( 'alm_unlimited_license_nonce', 'alm_unlimited_license_nonce' ); ?>
112
- <?php if($alm_unlimited_status === '' || $alm_unlimited_status !== 'valid') {
113
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
114
- } ?>
115
-
116
- <?php if( false !== $alm_unlimited_license ) { ?>
117
-
118
- <?php if( $alm_unlimited_status !== false && $alm_unlimited_status == 'valid' ) { ?>
119
- <input type="submit" class="button-secondary" name="alm_unlimited_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
120
- <?php } else { ?>
121
- <?php if(!empty($alm_unlimited_license)){ ?>
122
- <input type="submit" class="button-secondary" name="alm_unlimited_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
123
- <?php } ?>
124
- <?php } ?>
125
- <?php } ?>
126
 
127
  </form>
128
  </div>
 
129
  </div>
130
  <?php
131
  }
@@ -133,6 +136,7 @@
133
  ?>
134
 
135
 
 
136
  <?php
137
  if (has_action('alm_paging_installed')){
138
  // PAGING
@@ -147,39 +151,40 @@
147
  <div class="license-wrap">
148
  <form method="post" action="options.php">
149
 
150
- <?php settings_fields('alm_paging_license'); ?>
151
- <label class="description" for="alm_paging_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
152
- <div class="license-key-field">
153
- <input id="alm_paging_license_key" name="alm_paging_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_paging_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
154
- <?php if( $alm_paging_status !== false && $alm_paging_status == 'valid' ) { ?>
155
- <span class="status active">
156
- <?php _e('Active', 'ajax-load-more'); ?>
157
- </span>
158
- <?php } else { ?>
159
- <span class="status inactive">
160
- <?php _e('In-active', 'ajax-load-more'); ?>
161
- </span>
162
- <?php } ?>
163
- </div>
164
-
165
- <?php wp_nonce_field( 'alm_paging_license_nonce', 'alm_paging_license_nonce' ); ?>
166
- <?php if($alm_paging_status === '' || $alm_paging_status !== 'valid') {
167
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
168
- } ?>
169
 
170
- <?php if( false !== $alm_paging_license ) { ?>
171
-
172
- <?php if( $alm_paging_status !== false && $alm_paging_status == 'valid' ) { ?>
173
- <input type="submit" class="button-secondary" name="alm_paging_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
174
- <?php } else { ?>
175
- <?php if(!empty($alm_paging_license)){ ?>
176
- <input type="submit" class="button-secondary" name="alm_paging_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
177
- <?php } ?>
178
- <?php } ?>
179
- <?php } ?>
 
 
 
 
 
180
 
181
  </form>
182
  </div>
 
183
  </div>
184
  <?php
185
  }
@@ -200,39 +205,39 @@
200
  <div class="license-wrap">
201
  <form method="post" action="options.php">
202
 
203
- <?php settings_fields('alm_preloaded_license'); ?>
204
- <label class="description" for="alm_preloaded_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
205
- <div class="license-key-field">
206
- <input id="alm_preloaded_license_key" name="alm_preloaded_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_preloaded_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
207
- <?php if( $alm_preloaded_status !== false && $alm_preloaded_status == 'valid' ) { ?>
208
- <span class="status active">
209
- <?php _e('Active', 'ajax-load-more'); ?>
210
- </span>
211
- <?php } else { ?>
212
- <span class="status inactive">
213
- <?php _e('In-active', 'ajax-load-more'); ?>
214
- </span>
215
- <?php } ?>
216
- </div>
217
-
218
- <?php wp_nonce_field( 'alm_preloaded_license_nonce', 'alm_preloaded_license_nonce' ); ?>
219
- <?php if($alm_preloaded_status === '' || $alm_preloaded_status !== 'valid') {
220
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
221
- } ?>
222
-
223
- <?php if( false !== $alm_preloaded_license ) { ?>
224
-
225
- <?php if( $alm_preloaded_status !== false && $alm_preloaded_status == 'valid' ) { ?>
226
- <input type="submit" class="button-secondary" name="alm_preloaded_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
227
- <?php } else { ?>
228
- <?php if(!empty($alm_preloaded_license)){ ?>
229
- <input type="submit" class="button-secondary" name="alm_preloaded_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
230
- <?php } ?>
231
- <?php } ?>
232
- <?php } ?>
233
-
234
  </form>
235
  </div>
 
236
  </div>
237
  <?php
238
  }
@@ -253,39 +258,40 @@
253
  <div class="license-wrap">
254
  <form method="post" action="options.php">
255
 
256
- <?php settings_fields('alm_prev_post_license'); ?>
257
- <label class="description" for="alm_prev_post_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
258
- <div class="license-key-field">
259
- <input id="alm_prev_post_license_key" name="alm_prev_post_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_prev_post_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
260
- <?php if( $alm_prev_post_status !== false && $alm_prev_post_status == 'valid' ) { ?>
261
- <span class="status active">
262
- <?php _e('Active', 'ajax-load-more'); ?>
263
- </span>
264
- <?php } else { ?>
265
- <span class="status inactive">
266
- <?php _e('In-active', 'ajax-load-more'); ?>
267
- </span>
268
- <?php } ?>
269
- </div>
270
-
271
- <?php wp_nonce_field( 'alm_prev_post_license_nonce', 'alm_prev_post_license_nonce' ); ?>
272
- <?php if($alm_prev_post_status === '' || $alm_prev_post_status !== 'valid') {
273
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
274
- } ?>
275
-
276
- <?php if( false !== $alm_prev_post_license ) { ?>
277
-
278
- <?php if( $alm_prev_post_status !== false && $alm_prev_post_status == 'valid' ) { ?>
279
- <input type="submit" class="button-secondary" name="alm_prev_post_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
280
- <?php } else { ?>
281
- <?php if(!empty($alm_prev_post_license)){ ?>
282
- <input type="submit" class="button-secondary" name="alm_prev_post_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
283
- <?php } ?>
284
- <?php } ?>
285
- <?php } ?>
286
-
287
  </form>
288
  </div>
 
289
  </div>
290
  <?php
291
  }
@@ -299,7 +305,7 @@
299
  $alm_seo_license = get_option( 'alm_seo_license_key' );
300
  $alm_seo_status = get_option( 'alm_seo_license_status' );
301
  ?>
302
- <div class="license" id="license-paging">
303
  <div class="license-title">
304
  <div class="status <?php if($alm_seo_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
305
  <h2><?php _e('Search Engine Optimization', 'ajax-load-more'); ?></h2>
@@ -307,39 +313,41 @@
307
  <div class="license-wrap">
308
  <form method="post" action="options.php">
309
 
310
- <?php settings_fields('alm_seo_license'); ?>
311
- <label class="description" for="alm_seo_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
312
- <div class="license-key-field">
313
- <input id="alm_seo_license_key" name="alm_seo_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_seo_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
314
- <?php if( $alm_seo_status !== false && $alm_seo_status == 'valid' ) { ?>
315
- <span class="status active">
316
- <?php _e('Active', 'ajax-load-more'); ?>
317
- </span>
318
- <?php } else { ?>
319
- <span class="status inactive">
320
- <?php _e('In-active', 'ajax-load-more'); ?>
321
- </span>
322
- <?php } ?>
323
- </div>
324
-
325
- <?php wp_nonce_field( 'alm_seo_license_nonce', 'alm_seo_license_nonce' ); ?>
326
- <?php if($alm_seo_status === '' || $alm_seo_status !== 'valid') {
327
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
328
- } ?>
329
-
330
- <?php if( false !== $alm_seo_license ) { ?>
331
-
332
- <?php if( $alm_seo_status !== false && $alm_seo_status == 'valid' ) { ?>
333
- <input type="submit" class="button-secondary" name="alm_seo_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
334
- <?php } else { ?>
335
- <?php if(!empty($alm_seo_license)){ ?>
336
- <input type="submit" class="button-secondary" name="alm_seo_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
337
- <?php } ?>
338
- <?php } ?>
339
- <?php } ?>
340
-
341
  </form>
342
  </div>
 
 
343
  </div>
344
  <?php
345
  }
@@ -350,50 +358,54 @@
350
  <?php
351
  if (has_action('alm_theme_repeaters_installed')){
352
  // Theme Templates
 
353
  $alm_theme_repeaters_license = get_option( 'alm_theme_repeaters_license_key' );
354
  $alm_theme_repeaters_status = get_option( 'alm_theme_repeaters_license_status' );
355
  ?>
356
  <div class="license" id="license-theme_repeaters">
357
  <div class="license-title">
358
  <div class="status <?php if($alm_theme_repeaters_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
359
- <h2><?php _e('Theme Repeaters', 'ajax-load-more'); ?></h2>
360
  </div>
361
  <div class="license-wrap">
362
  <form method="post" action="options.php">
363
 
364
- <?php settings_fields('alm_theme_repeaters_license'); ?>
365
- <label class="description" for="alm_theme_repeaters_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
366
- <div class="license-key-field">
367
- <input id="alm_theme_repeaters_license_key" name="alm_theme_repeaters_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_theme_repeaters_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
368
- <?php if( $alm_theme_repeaters_status !== false && $alm_theme_repeaters_status == 'valid' ) { ?>
369
- <span class="status active">
370
- <?php _e('Active', 'ajax-load-more'); ?>
371
- </span>
372
- <?php } else { ?>
373
- <span class="status inactive">
374
- <?php _e('In-active', 'ajax-load-more'); ?>
375
- </span>
376
- <?php } ?>
377
- </div>
378
-
379
- <?php wp_nonce_field( 'alm_theme_repeaters_license_nonce', 'alm_theme_repeaters_license_nonce' ); ?>
380
- <?php if($alm_theme_repeaters_status === '' || $alm_theme_repeaters_status !== 'valid') {
381
- submit_button(__('Save License Key', 'ajax-load-more'), 'primary', '', false);
382
- } ?>
383
-
384
- <?php if( false !== $alm_theme_repeaters_license ) { ?>
385
-
386
- <?php if( $alm_theme_repeaters_status !== false && $alm_theme_repeaters_status == 'valid' ) { ?>
387
- <input type="submit" class="button-secondary" name="alm_theme_repeaters_license_deactivate" value="<?php _e('De-activate License', 'ajax-load-more'); ?>"/>
388
- <?php } else { ?>
389
- <?php if(!empty($alm_theme_repeaters_license)){ ?>
390
- <input type="submit" class="button-secondary" name="alm_theme_repeaters_license_activate" value="<?php _e('Activate License', 'ajax-load-more'); ?>"/>
391
- <?php } ?>
392
- <?php } ?>
393
- <?php } ?>
 
394
 
395
  </form>
 
396
  </div>
 
397
  </div>
398
  <?php
399
  }
1
  <div class="admin ajax-load-more" id="alm-licenses">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?>: <strong><?php _e('Licenses', 'ajax-load-more'); ?></strong></h1>
5
  <p><?php _e('Enter your license keys to enable automatic updates for <a href="admin.php?page=ajax-load-more-add-ons">ALM Add-ons</a>.', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main">
13
  <?php
14
  // alm_cache_installed
15
  // alm_unlimited_installed
16
+ // alm_layouts_installed
17
  // alm_preload_installed
18
  // alm_paging_installed
19
  // alm_prev_post_installed
23
 
24
  <?php
25
  // Check if any add ons are installed.
26
+ if(has_action('alm_cache_installed') || has_action('alm_unlimited_installed') || has_action('alm_layouts_installed') || has_action('alm_preload_installed') || has_action('alm_paging_installed') || has_action('alm_prev_post_installed') || has_action('alm_seo_installed') || has_action('alm_theme_repeaters_installed')) : ?>
27
 
28
 
29
  <?php
32
  $alm_cache_license = get_option( 'alm_cache_license_key' );
33
  $alm_cache_status = get_option( 'alm_cache_license_status' );
34
  ?>
35
+ <div class="license" id="license-cache">
36
  <div class="license-title">
37
  <div class="status <?php if($alm_cache_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
38
  <h2><?php _e('Cache', 'ajax-load-more'); ?></h2>
40
  <div class="license-wrap">
41
  <form method="post" action="options.php">
42
 
43
+ <?php settings_fields('alm_cache_license'); ?>
44
+ <label class="description" for="alm_cache_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
45
+ <div class="license-key-field">
46
+ <input id="alm_cache_license_key" name="alm_cache_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_cache_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
47
+ <?php if( $alm_cache_status !== false && $alm_cache_status == 'valid' ) { ?>
48
+ <span class="status active">
49
+ <?php _e('Active', 'ajax-load-more'); ?>
50
+ </span>
51
+ <?php } else { ?>
52
+ <span class="status inactive">
53
+ <?php _e('Inactive', 'ajax-load-more'); ?>
54
+ </span>
55
+ <?php } ?>
56
+ </div>
57
+
58
+ <?php wp_nonce_field( 'alm_cache_license_nonce', 'alm_cache_license_nonce' ); ?>
59
+ <div class="license-btn-wrap"
60
+ data-name="<?php echo ALM_CACHE_ITEM_NAME; ?>"
61
+ data-url="<?php echo ALM_STORE_URL; ?>"
62
+ data-option-status="alm_cache_license_status"
63
+ data-option-key="alm_cache_license_key"
64
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/cache/">
65
+ <button type="button" class="activate license-btn <?php if($alm_cache_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
66
+ <?php _e('Activate License', 'ajax-load-more'); ?>
67
+ </button>
68
+
69
+ <button type="button" class="deactivate license-btn <?php if($alm_cache_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
70
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
71
+ </button>
72
+ </div>
73
 
74
  </form>
75
  </div>
76
+ <div class="loading"></div>
77
  </div>
78
  <?php
79
  }
83
 
84
  <?php
85
  if (has_action('alm_unlimited_installed')){
86
+ // Custom Repeaters
87
  $alm_unlimited_license = get_option( 'alm_unlimited_license_key' );
88
  $alm_unlimited_status = get_option( 'alm_unlimited_license_status' );
89
  ?>
90
+ <div class="license" id="license-repeaters">
91
  <div class="license-title">
92
  <div class="status <?php if($alm_unlimited_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
93
  <h2><?php _e('Custom Repeaters', 'ajax-load-more'); ?></h2>
95
  <div class="license-wrap">
96
  <form method="post" action="options.php">
97
 
98
+ <?php settings_fields('alm_unlimited_license'); ?>
99
+ <label class="description" for="alm_unlimited_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
100
+ <div class="license-key-field">
101
+ <input id="alm_unlimited_license_key" name="alm_unlimited_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_unlimited_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
102
+ <?php if( $alm_unlimited_status !== false && $alm_unlimited_status == 'valid' ) { ?>
103
+ <span class="status active">
104
+ <?php _e('Active', 'ajax-load-more'); ?>
105
+ </span>
106
+ <?php } else { ?>
107
+ <span class="status inactive">
108
+ <?php _e('Inactive', 'ajax-load-more'); ?>
109
+ </span>
110
+ <?php } ?>
111
+ </div>
112
 
113
+ <?php wp_nonce_field( 'alm_unlimited_license_nonce', 'alm_unlimited_license_nonce' ); ?>
114
+ <div class="license-btn-wrap"
115
+ data-name="<?php echo ALM_UNLIMITED_ITEM_NAME; ?>"
116
+ data-url="<?php echo ALM_STORE_URL; ?>"
117
+ data-option-status="alm_unlimited_license_status"
118
+ data-option-key="alm_unlimited_license_key"
119
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/custom-repeaters/">
120
+ <button type="button" class="activate license-btn <?php if($alm_unlimited_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
121
+ <?php _e('Activate License', 'ajax-load-more'); ?>
122
+ </button>
123
+
124
+ <button type="button" class="deactivate license-btn <?php if($alm_unlimited_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
125
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
126
+ </button>
127
+ </div>
128
 
129
  </form>
130
  </div>
131
+ <div class="loading"></div>
132
  </div>
133
  <?php
134
  }
136
  ?>
137
 
138
 
139
+
140
  <?php
141
  if (has_action('alm_paging_installed')){
142
  // PAGING
151
  <div class="license-wrap">
152
  <form method="post" action="options.php">
153
 
154
+ <?php settings_fields('alm_paging_license'); ?>
155
+ <label class="description" for="alm_paging_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
156
+ <div class="license-key-field">
157
+ <input id="alm_paging_license_key" name="alm_paging_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_paging_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
158
+ <?php if( $alm_paging_status !== false && $alm_paging_status == 'valid' ) { ?>
159
+ <span class="status active">
160
+ <?php _e('Active', 'ajax-load-more'); ?>
161
+ </span>
162
+ <?php } else { ?>
163
+ <span class="status inactive">
164
+ <?php _e('Inactive', 'ajax-load-more'); ?>
165
+ </span>
166
+ <?php } ?>
167
+ </div>
 
 
 
 
 
168
 
169
+ <?php wp_nonce_field( 'alm_paging_license_nonce', 'alm_paging_license_nonce' ); ?>
170
+ <div class="license-btn-wrap"
171
+ data-name="<?php echo ALM_PAGING_ITEM_NAME; ?>"
172
+ data-url="<?php echo ALM_STORE_URL; ?>"
173
+ data-option-status="alm_paging_license_status"
174
+ data-option-key="alm_paging_license_key"
175
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/paging/">
176
+ <button type="button" class="activate license-btn <?php if($alm_paging_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
177
+ <?php _e('Activate License', 'ajax-load-more'); ?>
178
+ </button>
179
+
180
+ <button type="button" class="deactivate license-btn <?php if($alm_paging_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
181
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
182
+ </button>
183
+ </div>
184
 
185
  </form>
186
  </div>
187
+ <div class="loading"></div>
188
  </div>
189
  <?php
190
  }
205
  <div class="license-wrap">
206
  <form method="post" action="options.php">
207
 
208
+ <?php settings_fields('alm_preloaded_license'); ?>
209
+ <label class="description" for="alm_preloaded_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
210
+ <div class="license-key-field">
211
+ <input id="alm_preloaded_license_key" name="alm_preloaded_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_preloaded_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
212
+ <?php if( $alm_preloaded_status !== false && $alm_preloaded_status == 'valid' ) { ?>
213
+ <span class="status active">
214
+ <?php _e('Active', 'ajax-load-more'); ?>
215
+ </span>
216
+ <?php } else { ?>
217
+ <span class="status inactive">
218
+ <?php _e('Inactive', 'ajax-load-more'); ?>
219
+ </span>
220
+ <?php } ?>
221
+ </div>
222
+ <?php wp_nonce_field( 'alm_preloaded_license_nonce', 'alm_preloaded_license_nonce' ); ?>
223
+ <div class="license-btn-wrap"
224
+ data-name="<?php echo ALM_PRELOADED_ITEM_NAME; ?>"
225
+ data-url="<?php echo ALM_STORE_URL; ?>"
226
+ data-option-status="alm_preloaded_license_status"
227
+ data-option-key="alm_preloaded_license_key"
228
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/preloaded/">
229
+ <button type="button" class="activate license-btn <?php if($alm_preloaded_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
230
+ <?php _e('Activate License', 'ajax-load-more'); ?>
231
+ </button>
232
+
233
+ <button type="button" class="deactivate license-btn <?php if($alm_preloaded_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
234
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
235
+ </button>
236
+ </div>
237
+
 
238
  </form>
239
  </div>
240
+ <div class="loading"></div>
241
  </div>
242
  <?php
243
  }
258
  <div class="license-wrap">
259
  <form method="post" action="options.php">
260
 
261
+ <?php settings_fields('alm_prev_post_license'); ?>
262
+ <label class="description" for="alm_prev_post_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
263
+ <div class="license-key-field">
264
+ <input id="alm_prev_post_license_key" name="alm_prev_post_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_prev_post_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
265
+ <?php if( $alm_prev_post_status !== false && $alm_prev_post_status == 'valid' ) { ?>
266
+ <span class="status active">
267
+ <?php _e('Active', 'ajax-load-more'); ?>
268
+ </span>
269
+ <?php } else { ?>
270
+ <span class="status inactive">
271
+ <?php _e('Inactive', 'ajax-load-more'); ?>
272
+ </span>
273
+ <?php } ?>
274
+ </div>
275
+
276
+ <?php wp_nonce_field( 'alm_prev_post_license_nonce', 'alm_prev_post_license_nonce' ); ?>
277
+ <div class="license-btn-wrap"
278
+ data-name="<?php echo ALM_PREV_POST_ITEM_NAME; ?>"
279
+ data-url="<?php echo ALM_STORE_URL; ?>"
280
+ data-option-status="alm_prev_post_license_status"
281
+ data-option-key="alm_prev_post_license_key"
282
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/previous-post/">
283
+ <button type="button" class="activate license-btn <?php if($alm_prev_post_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
284
+ <?php _e('Activate License', 'ajax-load-more'); ?>
285
+ </button>
286
+
287
+ <button type="button" class="deactivate license-btn <?php if($alm_prev_post_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
288
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
289
+ </button>
290
+ </div>
291
+
292
  </form>
293
  </div>
294
+ <div class="loading"></div>
295
  </div>
296
  <?php
297
  }
305
  $alm_seo_license = get_option( 'alm_seo_license_key' );
306
  $alm_seo_status = get_option( 'alm_seo_license_status' );
307
  ?>
308
+ <div class="license" id="license-seo">
309
  <div class="license-title">
310
  <div class="status <?php if($alm_seo_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
311
  <h2><?php _e('Search Engine Optimization', 'ajax-load-more'); ?></h2>
313
  <div class="license-wrap">
314
  <form method="post" action="options.php">
315
 
316
+ <?php settings_fields('alm_seo_license'); ?>
317
+ <label class="description" for="alm_seo_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
318
+ <div class="license-key-field">
319
+ <input id="alm_seo_license_key" name="alm_seo_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_seo_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
320
+ <?php if( $alm_seo_status !== false && $alm_seo_status == 'valid' ) { ?>
321
+ <span class="status active">
322
+ <?php _e('Active', 'ajax-load-more'); ?>
323
+ </span>
324
+ <?php } else { ?>
325
+ <span class="status inactive">
326
+ <?php _e('Inactive', 'ajax-load-more'); ?>
327
+ </span>
328
+ <?php } ?>
329
+ </div>
330
+
331
+ <?php wp_nonce_field( 'alm_seo_license_nonce', 'alm_seo_license_nonce' ); ?>
332
+ <div class="license-btn-wrap"
333
+ data-name="<?php echo ALM_SEO_ITEM_NAME; ?>"
334
+ data-url="<?php echo ALM_STORE_URL; ?>"
335
+ data-option-status="alm_seo_license_status"
336
+ data-option-key="alm_seo_license_key"
337
+ data-upgrade-url="https://connekthq.com/plugins/ajax-load-more/add-ons/search-engine-optimization/">
338
+ <button type="button" class="activate license-btn <?php if($alm_seo_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
339
+ <?php _e('Activate License', 'ajax-load-more'); ?>
340
+ </button>
341
+
342
+ <button type="button" class="deactivate license-btn <?php if($alm_seo_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
343
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
344
+ </button>
345
+ </div>
346
+
347
  </form>
348
  </div>
349
+
350
+ <div class="loading"></div>
351
  </div>
352
  <?php
353
  }
358
  <?php
359
  if (has_action('alm_theme_repeaters_installed')){
360
  // Theme Templates
361
+
362
  $alm_theme_repeaters_license = get_option( 'alm_theme_repeaters_license_key' );
363
  $alm_theme_repeaters_status = get_option( 'alm_theme_repeaters_license_status' );
364
  ?>
365
  <div class="license" id="license-theme_repeaters">
366
  <div class="license-title">
367
  <div class="status <?php if($alm_theme_repeaters_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
368
+ <h2><?php _e('Theme Repeaters', 'ajax-load-more'); ?> </h2>
369
  </div>
370
  <div class="license-wrap">
371
  <form method="post" action="options.php">
372
 
373
+ <?php settings_fields('alm_theme_repeaters_license'); ?>
374
+ <label class="description" for="alm_theme_repeaters_license_key"><?php _e('Enter License Key', 'ajax-load-more'); ?></label>
375
+ <div class="license-key-field">
376
+ <input id="alm_theme_repeaters_license_key" name="alm_theme_repeaters_license_key" type="text" class="regular-text" value="<?php esc_attr_e( $alm_theme_repeaters_license ); ?>" placeholder="<?php _e('Enter License Key', 'ajax-load-more'); ?>" />
377
+ <?php if( $alm_theme_repeaters_status !== false && $alm_theme_repeaters_status == 'valid' ) { ?>
378
+ <span class="status active">
379
+ <?php _e('Active', 'ajax-load-more'); ?>
380
+ </span>
381
+ <?php } else { ?>
382
+ <span class="status inactive">
383
+ <?php _e('Inactive', 'ajax-load-more'); ?>
384
+ </span>
385
+ <?php } ?>
386
+ </div>
387
+ <?php wp_nonce_field( 'alm_theme_repeaters_license_nonce', 'alm_theme_repeaters_license_nonce' ); ?>
388
+
389
+ <div class="license-btn-wrap"
390
+ data-name="<?php echo ALM_THEME_REPEATERS_ITEM_NAME; ?>"
391
+ data-url="<?php echo ALM_STORE_URL; ?>"
392
+ data-upgrade-url="http://connekthq.com/plugins/ajax-load-more/add-ons/theme-repeaters/"
393
+ data-option-status="alm_theme_repeaters_license_status"
394
+ data-option-key="alm_theme_repeaters_license_key"
395
+ >
396
+ <button type="button" class="activate license-btn <?php if($alm_theme_repeaters_status === 'valid'){ echo 'hide'; } ?> button-primary" data-type="activate">
397
+ <?php _e('Activate License', 'ajax-load-more'); ?>
398
+ </button>
399
+
400
+ <button type="button" class="deactivate license-btn <?php if($alm_theme_repeaters_status !== 'valid'){ echo 'hide'; } ?> button-secondary" data-type="deactivate">
401
+ <?php _e('Deactivate License', 'ajax-load-more'); ?>
402
+ </button>
403
+ </div>
404
 
405
  </form>
406
+
407
  </div>
408
+ <div class="loading"></div>
409
  </div>
410
  <?php
411
  }
admin/views/repeater-templates.php CHANGED
@@ -1,19 +1,17 @@
1
  <div class="admin ajax-load-more" id="alm-repeaters">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?>: <strong><?php _e('Repeater Templates', 'ajax-load-more'); ?></strong></h2>
5
- <p><?php _e('The library of available templates to use within your theme', 'ajax-load-more'); ?></p>
6
  </div>
7
- <div class="cnkt-main form-table repeaters">
8
-
9
  <!-- Repeaters -->
10
  <div class="group">
11
  <?php
12
  if (has_action('alm_custom_repeaters') || has_action('alm_unlimited_repeaters')){ ?>
13
  <span class="toggle-all"><span class="inner-wrap"><em class="collapse"><?php _e('Collapse All', 'ajax-load-more'); ?></em><em class="expand"><?php _e('Expand All', 'ajax-load-more'); ?></em></span></span>
14
- <?php } ?>
15
-
16
- <!-- Default -->
17
  <div class="row template default-repeater">
18
  <?php
19
  global $wpdb;
@@ -32,13 +30,16 @@
32
  }
33
  fclose ($handle);
34
  ?>
35
- <h3 class="heading"><?php _e('Default Template', 'ajax-load-more'); ?></h3>
36
-
37
- <div class="expand-wrap">
38
-
39
- <div class="wrap repeater-wrap" data-name="default" data-type="default">
40
-
41
- <label class="template-title" for="template-default"><?php _e('Enter the HTML and PHP code for the default template', 'ajax-load-more'); ?></label>
 
 
 
42
  <textarea rows="10" id="template-default" class="_alm_repeater"><?php echo $contents; ?></textarea>
43
  <script>
44
  var editorDefault = CodeMirror.fromTextArea(document.getElementById("template-default"), {
@@ -53,12 +54,11 @@
53
  </script>
54
  <input type="submit" value="<?php _e('Save Template', 'ajax-load-more'); ?>" class="button button-primary save-repeater" data-editor-id="template-default">
55
  <div class="saved-response">&nbsp;</div>
56
- <?php include( ALM_PATH . 'admin/includes/components/repeater-options.php'); ?>
57
- </div>
58
-
59
  </div>
60
  </div>
61
- <!-- End Default -->
62
 
63
  <?php
64
  // Custom Repeaters v2 - /cta/extend.php
@@ -66,12 +66,10 @@
66
  echo '<div class="row no-brd">';
67
  include( ALM_PATH . 'admin/includes/cta/extend.php');
68
  echo '</div>';
69
- }
70
-
71
 
72
  if (has_action('alm_custom_repeaters')) // List custom repeaters v1
73
- do_action('alm_custom_repeaters');
74
-
75
 
76
  if (has_action('alm_unlimited_repeaters')) // List custom repeaters v2
77
  do_action('alm_unlimited_repeaters');
@@ -155,17 +153,16 @@
155
  responseText.html('<?php _e('Something went wrong and the data could not be saved.', 'ajax-load-more') ?>').removeClass('loading');
156
  btn.removeClass('saving');
157
  }
158
- });
159
-
160
  }
161
  }
162
 
 
163
  $(document).on('click', 'input.save-repeater', function(){
164
  var btn = $(this),
165
  editorId = btn.data('editor-id');
166
  _alm_admin.saveRepeater(btn, editorId);
167
- });
168
-
169
 
170
 
171
  /*
@@ -182,9 +179,7 @@
182
  btn_text = btn.html(),
183
  editor = $('.CodeMirror', container),
184
  repeater = container.data('name'), // Get templete name
185
- type = container.data('type'); // Get template type (default/repeater/unlimited)
186
-
187
- //console.log(repeater, type);
188
 
189
  //Get value from CodeMirror textarea
190
  var editorId = repeater,
@@ -215,19 +210,18 @@
215
  setTimeout(function() {
216
  btn.text("<?php _e('Template Updated', 'ajax-load-more'); ?>").blur();
217
  setTimeout(function() {
 
218
  btn.removeClass('updating').html(btn_text).blur();
219
- }, 750);
220
- }, 350);
221
 
222
  },
223
  error: function(xhr, status, error) {
224
  btn.removeClass('updating').html(btn_text).blur();
225
  }
226
- });
227
-
228
  }
229
- }
230
-
231
 
232
  $('.option-update a').click(function(){
233
  var btn = $(this);
@@ -236,9 +230,11 @@
236
 
237
  });
238
  </script>
 
239
  </div>
240
  <!-- End Repeaters -->
241
  </div>
 
242
  <div class="cnkt-sidebar">
243
  <?php include_once( ALM_PATH . 'admin/includes/cta/writeable.php'); ?>
244
  <div class="cta">
@@ -259,5 +255,6 @@
259
  </div>
260
  </div>
261
  </div>
 
262
  </div>
263
  </div>
1
  <div class="admin ajax-load-more" id="alm-repeaters">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?>: <strong><?php _e('Repeater Templates', 'ajax-load-more'); ?></strong></h1>
5
+ <p><?php _e('The library of editable templates for use within your theme', 'ajax-load-more'); ?></p>
6
  </div>
7
+ <div class="cnkt-main form-table repeaters">
 
8
  <!-- Repeaters -->
9
  <div class="group">
10
  <?php
11
  if (has_action('alm_custom_repeaters') || has_action('alm_unlimited_repeaters')){ ?>
12
  <span class="toggle-all"><span class="inner-wrap"><em class="collapse"><?php _e('Collapse All', 'ajax-load-more'); ?></em><em class="expand"><?php _e('Expand All', 'ajax-load-more'); ?></em></span></span>
13
+ <?php } ?>
14
+ <!-- Default Template -->
 
15
  <div class="row template default-repeater">
16
  <?php
17
  global $wpdb;
30
  }
31
  fclose ($handle);
32
  ?>
33
+ <h3 class="heading"><?php _e('Default Template', 'ajax-load-more'); ?></h3>
34
+ <div class="expand-wrap">
35
+ <div class="wrap repeater-wrap" data-name="default" data-type="default">
36
+ <label class="template-title" for="template-default">
37
+ <?php _e('Enter the HTML and PHP code for the default template', 'ajax-load-more'); ?>:
38
+ </label>
39
+
40
+ <?php
41
+ do_action('add_layout_listing'); // Layouts - Template Selection
42
+ ?>
43
  <textarea rows="10" id="template-default" class="_alm_repeater"><?php echo $contents; ?></textarea>
44
  <script>
45
  var editorDefault = CodeMirror.fromTextArea(document.getElementById("template-default"), {
54
  </script>
55
  <input type="submit" value="<?php _e('Save Template', 'ajax-load-more'); ?>" class="button button-primary save-repeater" data-editor-id="template-default">
56
  <div class="saved-response">&nbsp;</div>
57
+ <?php include( ALM_PATH . 'admin/includes/components/repeater-options.php'); ?>
58
+ </div>
 
59
  </div>
60
  </div>
61
+ <!-- End Default Template -->
62
 
63
  <?php
64
  // Custom Repeaters v2 - /cta/extend.php
66
  echo '<div class="row no-brd">';
67
  include( ALM_PATH . 'admin/includes/cta/extend.php');
68
  echo '</div>';
69
+ }
 
70
 
71
  if (has_action('alm_custom_repeaters')) // List custom repeaters v1
72
+ do_action('alm_custom_repeaters');
 
73
 
74
  if (has_action('alm_unlimited_repeaters')) // List custom repeaters v2
75
  do_action('alm_unlimited_repeaters');
153
  responseText.html('<?php _e('Something went wrong and the data could not be saved.', 'ajax-load-more') ?>').removeClass('loading');
154
  btn.removeClass('saving');
155
  }
156
+ });
 
157
  }
158
  }
159
 
160
+
161
  $(document).on('click', 'input.save-repeater', function(){
162
  var btn = $(this),
163
  editorId = btn.data('editor-id');
164
  _alm_admin.saveRepeater(btn, editorId);
165
+ });
 
166
 
167
 
168
  /*
179
  btn_text = btn.html(),
180
  editor = $('.CodeMirror', container),
181
  repeater = container.data('name'), // Get templete name
182
+ type = container.data('type'); // Get template type (default/repeater/unlimited)
 
 
183
 
184
  //Get value from CodeMirror textarea
185
  var editorId = repeater,
210
  setTimeout(function() {
211
  btn.text("<?php _e('Template Updated', 'ajax-load-more'); ?>").blur();
212
  setTimeout(function() {
213
+ btn.closest('.alm-drop-btn').trigger('click'); // CLose drop menu
214
  btn.removeClass('updating').html(btn_text).blur();
215
+ }, 400);
216
+ }, 400);
217
 
218
  },
219
  error: function(xhr, status, error) {
220
  btn.removeClass('updating').html(btn_text).blur();
221
  }
222
+ });
 
223
  }
224
+ }
 
225
 
226
  $('.option-update a').click(function(){
227
  var btn = $(this);
230
 
231
  });
232
  </script>
233
+
234
  </div>
235
  <!-- End Repeaters -->
236
  </div>
237
+
238
  <div class="cnkt-sidebar">
239
  <?php include_once( ALM_PATH . 'admin/includes/cta/writeable.php'); ?>
240
  <div class="cta">
255
  </div>
256
  </div>
257
  </div>
258
+
259
  </div>
260
  </div>
admin/views/settings.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="admin ajax-load-more settings" id="alm-settings">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?> <span><?php echo ALM_VERSION; ?></span></h2>
5
  <p><?php _e('A powerful plugin to add infinite scroll functionality to your website.', 'ajax-load-more'); ?></p>
6
  </div>
7
  <?php if( isset($_GET['settings-updated']) ) { ?>
@@ -12,7 +12,7 @@
12
  <div class="cnkt-main">
13
  <div class="group">
14
  <?php
15
- if(has_action('alm_cache_settings') || has_action('alm_next_post_settings') || has_action('alm_paging_settings') || has_action('alm_seo_settings') || has_action('alm_theme_repeaters_settings')) {
16
  ?>
17
  <ul class="alm-settings-nav">
18
  <li><a href="javascript:void(0);"><?php _e('Global Settings', 'ajax-load-more'); ?></a></li>
@@ -20,6 +20,8 @@
20
  <?php
21
  if(has_action('alm_cache_settings'))
22
  echo '<li><a href="javascript:void(0);">'.__('Cache', 'ajax-load-more').'</a></li>';
 
 
23
  if(has_action('alm_paging_settings'))
24
  echo '<li><a href="javascript:void(0);">'.__('Paging', 'ajax-load-more').'</a></li>';
25
  if(has_action('alm_prev_post_settings'))
1
  <div class="admin ajax-load-more settings" id="alm-settings">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?> <span><?php echo ALM_VERSION; ?></span></h1>
5
  <p><?php _e('A powerful plugin to add infinite scroll functionality to your website.', 'ajax-load-more'); ?></p>
6
  </div>
7
  <?php if( isset($_GET['settings-updated']) ) { ?>
12
  <div class="cnkt-main">
13
  <div class="group">
14
  <?php
15
+ if(has_action('alm_cache_settings') || has_action('alm_layouts_installed') || has_action('alm_next_post_settings') || has_action('alm_paging_settings') || has_action('alm_seo_settings') || has_action('alm_theme_repeaters_settings')) {
16
  ?>
17
  <ul class="alm-settings-nav">
18
  <li><a href="javascript:void(0);"><?php _e('Global Settings', 'ajax-load-more'); ?></a></li>
20
  <?php
21
  if(has_action('alm_cache_settings'))
22
  echo '<li><a href="javascript:void(0);">'.__('Cache', 'ajax-load-more').'</a></li>';
23
+ //if(has_action('alm_layouts_installed'))
24
+ //echo '<li><a href="javascript:void(0);">'.__('Layouts', 'ajax-load-more').'</a></li>';
25
  if(has_action('alm_paging_settings'))
26
  echo '<li><a href="javascript:void(0);">'.__('Paging', 'ajax-load-more').'</a></li>';
27
  if(has_action('alm_prev_post_settings'))
admin/views/shortcode-builder.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="admin ajax-load-more shortcode-builder" id="alm-builder">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
- <h2><?php echo ALM_TITLE; ?>: <strong><?php _e('Shortcode Builder', 'ajax-load-more'); ?></strong></h2>
5
  <p><?php _e('Create your own Ajax Load More <a href="http://en.support.wordpress.com/shortcodes/" target="_blank">shortcode</a> by adjusting the values below', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main">
1
  <div class="admin ajax-load-more shortcode-builder" id="alm-builder">
2
  <div class="wrap">
3
  <div class="header-wrap">
4
+ <h1><?php echo ALM_TITLE; ?>: <strong><?php _e('Shortcode Builder', 'ajax-load-more'); ?></strong></h1>
5
  <p><?php _e('Create your own Ajax Load More <a href="http://en.support.wordpress.com/shortcodes/" target="_blank">shortcode</a> by adjusting the values below', 'ajax-load-more'); ?></p>
6
  </div>
7
  <div class="cnkt-main">
ajax-load-more.php CHANGED
@@ -7,15 +7,37 @@ Text Domain: ajax-load-more
7
  Author: Darren Cooney
8
  Twitter: @KaptonKaos
9
  Author URI: http://connekthq.com
10
- Version: 2.8.2
11
  License: GPL
12
  Copyright: Darren Cooney & Connekt Media
13
  */
14
 
15
 
16
- define( 'ALM_VERSION', '2.8.2' );
17
- define( 'ALM_RELEASE', 'October 15, 2015' );
18
- define( 'ALM_STORE_URL', 'https://connekthq.com' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
 
20
 
21
  /*
@@ -56,7 +78,7 @@ function alm_create_table(){
56
  $table_name = $wpdb->prefix . "alm";
57
  $blog_id = $wpdb->blogid;
58
 
59
- $defaultRepeater = '<li <?php if (!has_post_thumbnail()) { ?> class="no-img"<?php } ?>><?php if ( has_post_thumbnail() ) { the_post_thumbnail(array(100,100));}?><h3><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3><p class="entry-meta"><?php the_time("F d, Y"); ?></p><?php the_excerpt(); ?></li>';
60
 
61
  /* MULTISITE */
62
  /* if this is a multisite blog and it's not id = 1, create default template */
@@ -193,15 +215,16 @@ if( !class_exists('AjaxLoadMore') ):
193
  function alm_enqueue_scripts(){
194
 
195
  // Load JS
196
- //wp_enqueue_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.js', __FILE__ ), array('jquery'), '1.1', true );
197
- wp_enqueue_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.min.js', __FILE__ ), array('jquery'), '1.1', true );
198
-
199
 
200
  $options = get_option( 'alm_settings' );
 
201
  // Load CSS
202
  if(!isset($options['_alm_disable_css']) || $options['_alm_disable_css'] != '1'){
203
  wp_enqueue_style( 'ajax-load-more', plugins_url('/core/css/ajax-load-more.css', __FILE__ ));
204
- }
 
205
  // Prevent loading of unnessasry posts - move user to top of page
206
  $scrolltop = 'false';
207
  if(!isset($options['_alm_scroll_top']) || $options['_alm_scroll_top'] != '1'){ // if unset or false
@@ -233,7 +256,9 @@ if( !class_exists('AjaxLoadMore') ):
233
  */
234
 
235
  function alm_shortcode( $atts, $content = null ) {
236
- $options = get_option( 'alm_settings' ); //Get plugin options
 
 
237
  extract(shortcode_atts(array(
238
  'previous_post' => false,
239
  'previous_post_id' => 'null',
@@ -288,7 +313,24 @@ if( !class_exists('AjaxLoadMore') ):
288
  'css_classes' => '',
289
  ), $atts));
290
 
291
- if($previous_post === 'true') $previous_post === true;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
292
 
293
  // Get container elements (ul | div)
294
 
@@ -344,7 +386,7 @@ if( !class_exists('AjaxLoadMore') ):
344
  $paging_container_class = '';
345
  if($paging === 'true'){
346
  $paging_container_class = ' alm-paging-wrap';
347
- $preloaded = 'false'; // temporarily set preloaded to false if paging is true
348
  }
349
 
350
  // Start ALM object
@@ -354,7 +396,7 @@ if( !class_exists('AjaxLoadMore') ):
354
  // ALM Filter (alm_before_container)
355
  $ajaxloadmore .= apply_filters('alm_before_container', '');
356
 
357
- $ajaxloadmore .= '<div id="ajax-load-more" class="ajax-load-more-wrap '. $btn_color .''. $paging_color .'" data-id="">';
358
 
359
 
360
  // Previous Post
@@ -371,11 +413,22 @@ if( !class_exists('AjaxLoadMore') ):
371
  // Get preloaded posts and append to ajax load more object
372
  if(has_action('alm_preload_installed') && $preloaded === 'true'){
373
 
374
- // If SEO then set $preloaded_amount to $posts_per_page
 
 
375
  if(has_action('alm_seo_installed') && $seo === 'true'){
376
  $preloaded_amount = $posts_per_page;
377
  }
378
 
 
 
 
 
 
 
 
 
 
379
  $preloaded_arr = array( // Create preload data array
380
  'post_type' => $post_type,
381
  'post_format' => $post_format,
@@ -402,7 +455,7 @@ if( !class_exists('AjaxLoadMore') ):
402
  'order' => $order,
403
  'orderby' => $orderby,
404
  'exclude' => $exclude,
405
- 'offset' => $offset,
406
  'posts_per_page' => $preloaded_amount,
407
  'lang' => $lang,
408
  'css_classes' => $css_classes,
@@ -432,11 +485,21 @@ if( !class_exists('AjaxLoadMore') ):
432
  $output .= apply_filters('alm_preload_inc', $repeater, $preloaded_type, $theme_repeater, $alm_found_posts, $alm_page, $alm_item);
433
 
434
  endwhile; wp_reset_query();
 
 
 
 
 
 
435
  endif;
436
  $preloaded_output = '<'.$container_element.' class="alm-listing alm-preloaded'. $classname .' '. $css_classes .'" data-total-posts="'. $alm_total_posts .'">';
437
  $preloaded_output .= $output;
438
  $preloaded_output .= '</'.$container_element.'>';
439
 
 
 
 
 
440
  $ajaxloadmore .= $preloaded_output; // Add $preloaded_output data to $ajaxloadmore
441
  }
442
  // End Preload Posts
@@ -810,7 +873,7 @@ if( !class_exists('AjaxLoadMore') ):
810
  }
811
 
812
 
813
- // Next Post Add-on
814
  // Hijack $args and and return previous post only
815
  if($is_previous_post == 'true' && has_action('alm_prev_post_installed')){
816
  $args = apply_filters('alm_prev_post_args', $previous_post_id, $postType);
@@ -856,15 +919,15 @@ if( !class_exists('AjaxLoadMore') ):
856
  include( alm_get_current_repeater($repeater, $type) );//Include repeater template
857
  }
858
 
859
- // If cache is enabled
860
- // Build cache include and store in $page_cache variable
861
  if(!empty($cache_id) && has_action('alm_cache_inc')){
862
  $page_cache .= apply_filters('alm_cache_inc', $repeater, $type, $alm_page, $alm_found_posts, $alm_item);
863
  }
864
 
865
  endwhile; wp_reset_query();
866
-
867
- // If cache is enabled and seo_start_page is 1 (meaning, a user has not requested /page/12/)
868
  // - Only create cached files if the user visits pages in order 1, 2, 3 etc.
869
 
870
  if(!empty($cache_id) && has_action('alm_cache_installed') && $seo_start_page == 1){
7
  Author: Darren Cooney
8
  Twitter: @KaptonKaos
9
  Author URI: http://connekthq.com
10
+ Version: 2.8.3
11
  License: GPL
12
  Copyright: Darren Cooney & Connekt Media
13
  */
14
 
15
 
16
+ define('ALM_VERSION', '2.8.3');
17
+ define('ALM_RELEASE', 'November 9, 2015');
18
+
19
+ define('ALM_STORE_URL', 'https://connekthq.com');
20
+
21
+ if (!defined('ALM_CACHE_ITEM_NAME'))
22
+ define('ALM_CACHE_ITEM_NAME', '4878' );
23
+
24
+ if (!defined('ALM_UNLIMITED_ITEM_NAME'))
25
+ define('ALM_UNLIMITED_ITEM_NAME', '3118' );
26
+
27
+ if (!defined('ALM_PAGING_ITEM_NAME'))
28
+ define('ALM_PAGING_ITEM_NAME', '6898' );
29
+
30
+ if (!defined('ALM_PRELOADED_ITEM_NAME'))
31
+ define('ALM_PRELOADED_ITEM_NAME', '4293' );
32
+
33
+ if (!defined('ALM_PREV_POST_ITEM_NAME'))
34
+ define('ALM_PREV_POST_ITEM_NAME', '9686');
35
+
36
+ if (!defined('ALM_SEO_ITEM_NAME'))
37
+ define('ALM_SEO_ITEM_NAME', '3482');
38
+
39
+ if (!defined('ALM_THEME_REPEATERS_ITEM_NAME'))
40
+ define('ALM_THEME_REPEATERS_ITEM_NAME', '8860');
41
 
42
 
43
  /*
78
  $table_name = $wpdb->prefix . "alm";
79
  $blog_id = $wpdb->blogid;
80
 
81
+ $defaultRepeater = '<li <?php if (!has_post_thumbnail()) { ?> class="no-img"<?php } ?>><?php if ( has_post_thumbnail() ) { the_post_thumbnail(array(150,150));}?><h3><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3><p class="entry-meta"><?php the_time("F d, Y"); ?></p><?php the_excerpt(); ?></li>';
82
 
83
  /* MULTISITE */
84
  /* if this is a multisite blog and it's not id = 1, create default template */
215
  function alm_enqueue_scripts(){
216
 
217
  // Load JS
218
+ //wp_register_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.js', __FILE__ ), array('jquery'), '1.1', true );
219
+ wp_register_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.min.js', __FILE__ ), array('jquery'), '1.1', true );
 
220
 
221
  $options = get_option( 'alm_settings' );
222
+
223
  // Load CSS
224
  if(!isset($options['_alm_disable_css']) || $options['_alm_disable_css'] != '1'){
225
  wp_enqueue_style( 'ajax-load-more', plugins_url('/core/css/ajax-load-more.css', __FILE__ ));
226
+ }
227
+
228
  // Prevent loading of unnessasry posts - move user to top of page
229
  $scrolltop = 'false';
230
  if(!isset($options['_alm_scroll_top']) || $options['_alm_scroll_top'] != '1'){ // if unset or false
256
  */
257
 
258
  function alm_shortcode( $atts, $content = null ) {
259
+
260
+ $options = get_option( 'alm_settings' ); // Get Ajax Load More Settingss
261
+
262
  extract(shortcode_atts(array(
263
  'previous_post' => false,
264
  'previous_post_id' => 'null',
313
  'css_classes' => '',
314
  ), $atts));
315
 
316
+
317
+ // Enqueue core Ajax Load More JS
318
+ wp_enqueue_script( 'ajax-load-more' );
319
+
320
+ // Enqueue add-on JS
321
+ if(has_action('alm_seo_installed') && $seo === 'true'){
322
+ wp_enqueue_script( 'ajax-load-more-seo' );
323
+ }
324
+ if(has_action('alm_paging_installed') && $paging === 'true'){
325
+ wp_enqueue_script( 'ajax-load-more-paging' );
326
+ }
327
+ if(has_action('alm_prev_post_installed') && $previous_post === 'true'){
328
+ wp_enqueue_script( 'ajax-load-more-previous-post' );
329
+ }
330
+
331
+
332
+ if($previous_post === 'true')
333
+ $previous_post === true;
334
 
335
  // Get container elements (ul | div)
336
 
386
  $paging_container_class = '';
387
  if($paging === 'true'){
388
  $paging_container_class = ' alm-paging-wrap';
389
+ $preloaded = "false";
390
  }
391
 
392
  // Start ALM object
396
  // ALM Filter (alm_before_container)
397
  $ajaxloadmore .= apply_filters('alm_before_container', '');
398
 
399
+ $ajaxloadmore .= '<div id="ajax-load-more" class="ajax-load-more-wrap '. $btn_color .''. $paging_color .'" data-id="" data-canonical-url="'.get_permalink().'">';
400
 
401
 
402
  // Previous Post
413
  // Get preloaded posts and append to ajax load more object
414
  if(has_action('alm_preload_installed') && $preloaded === 'true'){
415
 
416
+ $preload_offset = $offset;
417
+
418
+ // If SEO, set $preloaded_amount to $posts_per_page
419
  if(has_action('alm_seo_installed') && $seo === 'true'){
420
  $preloaded_amount = $posts_per_page;
421
  }
422
 
423
+ // If Paging, set $preloaded_amount to $posts_per_page
424
+ if($paging === 'true'){
425
+ $preloaded_amount = $posts_per_page;
426
+ $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
427
+ if($paged > 1){
428
+ $preload_offset = $preloaded_amount * ($paged-2);
429
+ }
430
+ }
431
+
432
  $preloaded_arr = array( // Create preload data array
433
  'post_type' => $post_type,
434
  'post_format' => $post_format,
455
  'order' => $order,
456
  'orderby' => $orderby,
457
  'exclude' => $exclude,
458
+ 'offset' => $preload_offset,
459
  'posts_per_page' => $preloaded_amount,
460
  'lang' => $lang,
461
  'css_classes' => $css_classes,
485
  $output .= apply_filters('alm_preload_inc', $repeater, $preloaded_type, $theme_repeater, $alm_found_posts, $alm_page, $alm_item);
486
 
487
  endwhile; wp_reset_query();
488
+
489
+ if(has_action('alm_seo_installed')){ // If SEO, add noscript paging
490
+ // Create noscript paging for SEO if preload and seo are enabled
491
+ $noscript_paging = alm_paging_no_script($alm_preload_query);
492
+ }
493
+
494
  endif;
495
  $preloaded_output = '<'.$container_element.' class="alm-listing alm-preloaded'. $classname .' '. $css_classes .'" data-total-posts="'. $alm_total_posts .'">';
496
  $preloaded_output .= $output;
497
  $preloaded_output .= '</'.$container_element.'>';
498
 
499
+ if(has_action('alm_seo_installed')){ // If SEO, add noscript paging
500
+ $preloaded_output .= $noscript_paging;
501
+ }
502
+
503
  $ajaxloadmore .= $preloaded_output; // Add $preloaded_output data to $ajaxloadmore
504
  }
505
  // End Preload Posts
873
  }
874
 
875
 
876
+ // Previous Post Add-on
877
  // Hijack $args and and return previous post only
878
  if($is_previous_post == 'true' && has_action('alm_prev_post_installed')){
879
  $args = apply_filters('alm_prev_post_args', $previous_post_id, $postType);
919
  include( alm_get_current_repeater($repeater, $type) );//Include repeater template
920
  }
921
 
922
+ // If ALM Cache is enabled
923
+ // - Build the cache include and store in $page_cache var
924
  if(!empty($cache_id) && has_action('alm_cache_inc')){
925
  $page_cache .= apply_filters('alm_cache_inc', $repeater, $type, $alm_page, $alm_found_posts, $alm_item);
926
  }
927
 
928
  endwhile; wp_reset_query();
929
+
930
+ // If Cache is enabled and seo_start_page is 1 (meaning, a user has not requested /page/12/)
931
  // - Only create cached files if the user visits pages in order 1, 2, 3 etc.
932
 
933
  if(!empty($cache_id) && has_action('alm_cache_installed') && $seo_start_page == 1){
core/functions.php CHANGED
@@ -257,3 +257,66 @@ function alm_parse_meta_value($meta_value, $meta_compare){
257
  return $meta_values;
258
  }
259
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
257
  return $meta_values;
258
  }
259
 
260
+
261
+
262
+
263
+ /*
264
+ * alm_paging_no_script
265
+ * Create paging navigation
266
+ *
267
+ * @return html;
268
+ * @since 2.8.3
269
+ */
270
+ function alm_paging_no_script($alm_preload_query){
271
+ $numposts = $alm_preload_query->found_posts;
272
+ $max_page = $alm_preload_query->max_num_pages;
273
+ if(empty($paged) || $paged == 0) {
274
+ $paged = 1;
275
+ }
276
+ $pages_to_show = 8;
277
+ $pages_to_show_minus_1 = $pages_to_show-1;
278
+ $half_page_start = floor($pages_to_show_minus_1/2);
279
+ $half_page_end = ceil($pages_to_show_minus_1/2);
280
+ $start_page = $paged - $half_page_start;
281
+ if($start_page <= 0) {
282
+ $start_page = 1;
283
+ }
284
+ $end_page = $paged + $half_page_end;
285
+ if(($end_page - $start_page) != $pages_to_show_minus_1) {
286
+ $end_page = $start_page + $pages_to_show_minus_1;
287
+ }
288
+ if($end_page > $max_page) {
289
+ $start_page = $max_page - $pages_to_show_minus_1;
290
+ $end_page = $max_page;
291
+ }
292
+ if($start_page <= 0) {
293
+ $start_page = 1;
294
+ }
295
+ $content = '';
296
+ if ($max_page > 1) {
297
+ $content .= '<noscript>';
298
+ $content .= '<div>';
299
+ $content .= '<span>'.__('Pages:', 'ajax-load-more').' </span>';
300
+ if ($start_page >= 2 && $pages_to_show < $max_page) {
301
+ $first_page_text = "&laquo;";
302
+ $content .= '<span class="page"><a href="'.get_pagenum_link().'">'.$first_page_text.'</a></span>';
303
+ }
304
+ for($i = $start_page; $i <= $end_page; $i++) {
305
+ if($i == $paged) {
306
+ $content .= ' <span class="page current">'.$i.'</span> ';
307
+ } else {
308
+ $content .= ' <span class="page"><a href="'.get_pagenum_link($i).'">'.$i.'</a></span>';
309
+ }
310
+ }
311
+ if ($end_page < $max_page) {
312
+ $last_page_text = "&raquo;";
313
+ $content .= '<span><a href="'.get_pagenum_link($max_page).'" title="'.$last_page_text.'">'.$last_page_text.'</a></span>';
314
+ }
315
+ $content .= '</div>';
316
+ $content .= '</noscript>';
317
+ }
318
+
319
+ return $content;
320
+ }
321
+
322
+
core/js/ajax-load-more.js CHANGED
@@ -39,6 +39,7 @@
39
  alm.container.addClass('alm-'+e).attr('data-id', e); // Add unique classname and data id
40
  alm.content = $('.alm-listing.alm-ajax', alm.container);
41
  alm.content_preloaded = $('.alm-listing.alm-preloaded', alm.container);
 
42
  alm.prefix = 'alm-';
43
 
44
  alm.cache = alm.content.attr('data-cache'); // cache (true/false)
@@ -79,6 +80,10 @@
79
  if(alm.paging_show_at_most === undefined){
80
  alm.paging_show_at_most = 7;
81
  }
 
 
 
 
82
  }else{
83
  alm.paging = false;
84
  }
@@ -154,7 +159,6 @@
154
  /* /end SEO */
155
 
156
 
157
-
158
  /* Previous Post */
159
  if (alm.previous_post === 'true'){
160
  alm.previous_post = true;
@@ -603,6 +607,14 @@
603
  }
604
  }
605
 
 
 
 
 
 
 
 
 
606
  // ALM SEO
607
  if($(".ajax-load-more-wrap").length === 1){ // only run if a single instance
608
  if ($.isFunction($.fn.almSEO) && alm.seo) {
@@ -617,9 +629,12 @@
617
  }
618
 
619
  } else {
 
 
620
  if ($.isFunction($.fn.almDone)) {
621
  $.fn.almDone(alm);
622
  }
 
623
  if(!alm.paging){
624
  alm.button.delay(alm.speed).removeClass('loading').addClass('done');
625
  }
@@ -829,9 +844,22 @@
829
  * @since 2.7.0
830
  */
831
 
832
- $.fn.almUpdateCurrentPage = function(current){
 
833
  alm.page = current;
834
- alm.AjaxLoadMore.loadPosts();
 
 
 
 
 
 
 
 
 
 
 
 
835
  };
836
 
837
 
39
  alm.container.addClass('alm-'+e).attr('data-id', e); // Add unique classname and data id
40
  alm.content = $('.alm-listing.alm-ajax', alm.container);
41
  alm.content_preloaded = $('.alm-listing.alm-preloaded', alm.container);
42
+ alm.canonical_url = alm.el.attr('data-canonical-url');
43
  alm.prefix = 'alm-';
44
 
45
  alm.cache = alm.content.attr('data-cache'); // cache (true/false)
80
  if(alm.paging_show_at_most === undefined){
81
  alm.paging_show_at_most = 7;
82
  }
83
+ // if paging and preload then pause.
84
+ if(alm.preloaded === 'true'){
85
+ alm.pause = true;
86
+ }
87
  }else{
88
  alm.paging = false;
89
  }
159
  /* /end SEO */
160
 
161
 
 
162
  /* Previous Post */
163
  if (alm.previous_post === 'true'){
164
  alm.previous_post = true;
607
  }
608
  }
609
 
610
+ // ALM Done
611
+ // If data is returned but it's less than the posts per page.
612
+ if(alm.data.length < alm.posts_per_page){
613
+ if ($.isFunction($.fn.almDone)) {
614
+ $.fn.almDone(alm);
615
+ }
616
+ }
617
+
618
  // ALM SEO
619
  if($(".ajax-load-more-wrap").length === 1){ // only run if a single instance
620
  if ($.isFunction($.fn.almSEO) && alm.seo) {
629
  }
630
 
631
  } else {
632
+
633
+ // ALM Done
634
  if ($.isFunction($.fn.almDone)) {
635
  $.fn.almDone(alm);
636
  }
637
+
638
  if(!alm.paging){
639
  alm.button.delay(alm.speed).removeClass('loading').addClass('done');
640
  }
844
  * @since 2.7.0
845
  */
846
 
847
+ $.fn.almUpdateCurrentPage = function(current, alm_paging_init){
848
+
849
  alm.page = current;
850
+ // If is paging and preloaded
851
+ if(alm_paging_init && alm.preloaded === 'true'){
852
+
853
+ var data = $('.alm-preloaded', alm.el).html(); // Content of preloaded page
854
+ $('.alm-preloaded', alm.el).remove();
855
+ alm.preloaded_amount = 0; // Reset
856
+ alm.AjaxLoadMore.success(data); // Skip post loading and go right to success() for display
857
+
858
+ }else{
859
+
860
+ alm.AjaxLoadMore.loadPosts();
861
+
862
+ }
863
  };
864
 
865
 
core/js/ajax-load-more.min.js CHANGED
@@ -12,7 +12,8 @@
12
  */
13
 
14
  (function($){"use strict";$.ajaxloadmore=function(el,e){if(alm_localize.scrolltop==='true'){$(window).scrollTop(0);}
15
- var alm=this;alm.AjaxLoadMore={};alm.page=0;alm.speed=250;alm.proceed=false;alm.disable_ajax=false;alm.init=true;alm.loading=true;alm.finished=false;alm.window=$(window);alm.button_label='';alm.data;alm.el=el;alm.container=el;alm.container.addClass('alm-'+e).attr('data-id',e);alm.content=$('.alm-listing.alm-ajax',alm.container);alm.content_preloaded=$('.alm-listing.alm-preloaded',alm.container);alm.prefix='alm-';alm.cache=alm.content.attr('data-cache');alm.cache_id=alm.content.attr('data-cache-id');alm.cache_path=alm.content.attr('data-cache-path');alm.cache_logged_in=alm.content.attr('data-cache-logged-in');alm.repeater=alm.content.attr('data-repeater');alm.theme_repeater=alm.content.attr('data-theme-repeater');alm.scroll_distance=parseInt(alm.content.attr('data-scroll-distance'));alm.max_pages=parseInt(alm.content.attr('data-max-pages'));alm.pause_override=alm.content.attr('data-pause-override');alm.pause=alm.content.attr('data-pause');alm.transition=alm.content.attr('data-transition');alm.images_loaded=alm.content.attr('data-images-loaded');alm.destroy_after=alm.content.attr('data-destroy-after');alm.lang=alm.content.attr('data-lang');alm.orginal_posts_per_page=alm.content.attr('data-posts-per-page');alm.posts_per_page=alm.content.attr('data-posts-per-page');alm.previous_post=alm.content.attr('data-previous-post');alm.previous_post_id=alm.content.attr('data-previous-post-id');alm.seo=alm.content.attr('data-seo');alm.preloaded=alm.content.attr('data-preloaded');alm.preloaded_amount=alm.content.attr('data-preloaded-amount');alm.paging=alm.content.attr('data-paging');alm.paging_controls=alm.content.attr('data-paging-controls');alm.paging_show_at_most=alm.content.attr('data-paging-show-at-most');alm.paging_classes=alm.content.attr('data-paging-classes');if(alm.paging==='true'){alm.paging=true;if(alm.paging_show_at_most===undefined){alm.paging_show_at_most=7;}}else{alm.paging=false;}
 
16
  if(alm.paging_controls==='true'){alm.paging_controls=true;}else{alm.paging_controls=false;}
17
  if(alm.cache===undefined){alm.cache=false;}
18
  if(alm.cache_logged_in===undefined){alm.cache_logged_in=false;}
@@ -56,6 +57,7 @@ if(alm.data.length<alm.posts_per_page){alm.finished=true;if(!alm.paging){alm.but
56
  if(alm.data.length<alm.posts_per_page){alm.finished=true;if(!alm.paging){alm.button.addClass('done');}}});});}else{alm.el.slideDown(alm.speed,'alm_easeInOutQuad',function(){alm.loading=false;if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading');}
57
  if(alm.data.length<alm.posts_per_page){alm.finished=true;if(!alm.paging){alm.button.addClass('done');}}});}}}else{if(!alm.init){$('.alm-paging-content',alm.el).html('').append(alm.data).almWaitForImages().done(function(){$('.alm-paging-loading',alm.el).fadeOut(alm.speed);if($.isFunction($.fn.almOnPagingComplete)){$.fn.almOnPagingComplete(alm);}});}}
58
  if($.isFunction($.fn.almComplete)){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){$.fn.almComplete(alm);});}else{$.fn.almComplete(alm);}}
 
59
  if($(".ajax-load-more-wrap").length===1){if($.isFunction($.fn.almSEO)&&alm.seo){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){$.fn.almSEO(alm);});}else{$.fn.almSEO(alm);}}}}else{if($.isFunction($.fn.almDone)){$.fn.almDone(alm);}
60
  if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading').addClass('done');}
61
  alm.loading=false;alm.finished=true;}
@@ -72,7 +74,7 @@ return alm.visible;};if(alm.scroll&&!alm.paging){alm.window.bind("scroll touchst
72
  else{if(!alm.loading&&!alm.finished&&(alm.window.scrollTop()>=top)&&alm.page<(alm.max_pages-1)&&alm.proceed&&alm.pause!=='true'){alm.page++;alm.AjaxLoadMore.loadPosts();}}}});}
73
  if(!alm.paging&&!alm.previous_post){if(alm.disable_ajax){alm.finished=true;alm.button.addClass('done');}else{if(alm.pause==='true'){alm.button.text(alm.button_label);alm.loading=false;}else{alm.AjaxLoadMore.loadPosts();}}}
74
  if(alm.previous_post){alm.AjaxLoadMore.getPreviousPost();alm.loading=false;}
75
- setTimeout(function(){alm.proceed=true;},500);$.fn.almUpdateCurrentPage=function(current){alm.page=current;alm.AjaxLoadMore.loadPosts();};$.fn.almGetParentContainer=function(){return alm.el.closest('#ajax-load-more');};$.fn.almGetObj=function(){return alm;};$.easing.alm_easeInOutQuad=function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t+b;}
76
  return-c/2*((--t)*(t-2)-1)+b;};};$.fn.almFilter=function(transition,speed,data){$(".ajax-load-more-wrap").each(function(e){var el=$(this);if(transition==='slide'){el.slideUp(speed,function(){$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);});}else if(transition==='fade'){el.fadeOut(speed,function(){$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);});}else{$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);}});};$.fn.almSetFilters=function(el,data){$.each(data,function(key,value){key=key.replace(/\W+/g,'-').replace(/([a-z\d])([A-Z])/g,'$1-$2');$('.alm-listing',el).attr('data-'+key,value);});if($.isFunction($.fn.almFilterComplete)){$.fn.almFilterComplete();}
77
  $(".ajax-load-more-wrap").ajaxloadmore();};$.fn.ajaxloadmore=function(){return this.each(function(e){$(this).data('alm',new $.ajaxloadmore($(this),e));});};if($(".ajax-load-more-wrap").length){$(".ajax-load-more-wrap").ajaxloadmore();}})(jQuery);;(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){module.exports=factory(require('jquery'));}else{factory(jQuery);}}(function($){var eventNamespace='almWaitForImages';$.almWaitForImages={hasImageProperties:['backgroundImage','listStyleImage','borderImage','borderCornerImage','cursor'],hasImageAttributes:['srcset']};$.expr[':']['has-src']=function(obj){return $(obj).is('img[src][src!=""]');};$.expr[':'].uncached=function(obj){if(!$(obj).is(':has-src')){return false;}
78
  return!obj.complete;};$.fn.almWaitForImages=function(){var allImgsLength=0;var allImgsLoaded=0;var deferred=$.Deferred();var finishedCallback;var eachCallback;var waitForAll;if($.isPlainObject(arguments[0])){waitForAll=arguments[0].waitForAll;eachCallback=arguments[0].each;finishedCallback=arguments[0].finished;}else{if(arguments.length===1&&$.type(arguments[0])==='boolean'){waitForAll=arguments[0];}else{finishedCallback=arguments[0];eachCallback=arguments[1];waitForAll=arguments[2];}}
12
  */
13
 
14
  (function($){"use strict";$.ajaxloadmore=function(el,e){if(alm_localize.scrolltop==='true'){$(window).scrollTop(0);}
15
+ var alm=this;alm.AjaxLoadMore={};alm.page=0;alm.speed=250;alm.proceed=false;alm.disable_ajax=false;alm.init=true;alm.loading=true;alm.finished=false;alm.window=$(window);alm.button_label='';alm.data;alm.el=el;alm.container=el;alm.container.addClass('alm-'+e).attr('data-id',e);alm.content=$('.alm-listing.alm-ajax',alm.container);alm.content_preloaded=$('.alm-listing.alm-preloaded',alm.container);alm.canonical_url=alm.el.attr('data-canonical-url');alm.prefix='alm-';alm.cache=alm.content.attr('data-cache');alm.cache_id=alm.content.attr('data-cache-id');alm.cache_path=alm.content.attr('data-cache-path');alm.cache_logged_in=alm.content.attr('data-cache-logged-in');alm.repeater=alm.content.attr('data-repeater');alm.theme_repeater=alm.content.attr('data-theme-repeater');alm.scroll_distance=parseInt(alm.content.attr('data-scroll-distance'));alm.max_pages=parseInt(alm.content.attr('data-max-pages'));alm.pause_override=alm.content.attr('data-pause-override');alm.pause=alm.content.attr('data-pause');alm.transition=alm.content.attr('data-transition');alm.images_loaded=alm.content.attr('data-images-loaded');alm.destroy_after=alm.content.attr('data-destroy-after');alm.lang=alm.content.attr('data-lang');alm.orginal_posts_per_page=alm.content.attr('data-posts-per-page');alm.posts_per_page=alm.content.attr('data-posts-per-page');alm.previous_post=alm.content.attr('data-previous-post');alm.previous_post_id=alm.content.attr('data-previous-post-id');alm.seo=alm.content.attr('data-seo');alm.preloaded=alm.content.attr('data-preloaded');alm.preloaded_amount=alm.content.attr('data-preloaded-amount');alm.paging=alm.content.attr('data-paging');alm.paging_controls=alm.content.attr('data-paging-controls');alm.paging_show_at_most=alm.content.attr('data-paging-show-at-most');alm.paging_classes=alm.content.attr('data-paging-classes');if(alm.paging==='true'){alm.paging=true;if(alm.paging_show_at_most===undefined){alm.paging_show_at_most=7;}
16
+ if(alm.preloaded==='true'){alm.pause=true;}}else{alm.paging=false;}
17
  if(alm.paging_controls==='true'){alm.paging_controls=true;}else{alm.paging_controls=false;}
18
  if(alm.cache===undefined){alm.cache=false;}
19
  if(alm.cache_logged_in===undefined){alm.cache_logged_in=false;}
57
  if(alm.data.length<alm.posts_per_page){alm.finished=true;if(!alm.paging){alm.button.addClass('done');}}});});}else{alm.el.slideDown(alm.speed,'alm_easeInOutQuad',function(){alm.loading=false;if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading');}
58
  if(alm.data.length<alm.posts_per_page){alm.finished=true;if(!alm.paging){alm.button.addClass('done');}}});}}}else{if(!alm.init){$('.alm-paging-content',alm.el).html('').append(alm.data).almWaitForImages().done(function(){$('.alm-paging-loading',alm.el).fadeOut(alm.speed);if($.isFunction($.fn.almOnPagingComplete)){$.fn.almOnPagingComplete(alm);}});}}
59
  if($.isFunction($.fn.almComplete)){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){$.fn.almComplete(alm);});}else{$.fn.almComplete(alm);}}
60
+ if(alm.data.length<alm.posts_per_page){if($.isFunction($.fn.almDone)){$.fn.almDone(alm);}}
61
  if($(".ajax-load-more-wrap").length===1){if($.isFunction($.fn.almSEO)&&alm.seo){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){$.fn.almSEO(alm);});}else{$.fn.almSEO(alm);}}}}else{if($.isFunction($.fn.almDone)){$.fn.almDone(alm);}
62
  if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading').addClass('done');}
63
  alm.loading=false;alm.finished=true;}
74
  else{if(!alm.loading&&!alm.finished&&(alm.window.scrollTop()>=top)&&alm.page<(alm.max_pages-1)&&alm.proceed&&alm.pause!=='true'){alm.page++;alm.AjaxLoadMore.loadPosts();}}}});}
75
  if(!alm.paging&&!alm.previous_post){if(alm.disable_ajax){alm.finished=true;alm.button.addClass('done');}else{if(alm.pause==='true'){alm.button.text(alm.button_label);alm.loading=false;}else{alm.AjaxLoadMore.loadPosts();}}}
76
  if(alm.previous_post){alm.AjaxLoadMore.getPreviousPost();alm.loading=false;}
77
+ setTimeout(function(){alm.proceed=true;},500);$.fn.almUpdateCurrentPage=function(current,alm_paging_init){alm.page=current;if(alm_paging_init&&alm.preloaded==='true'){var data=$('.alm-preloaded',alm.el).html();$('.alm-preloaded',alm.el).remove();alm.preloaded_amount=0;alm.AjaxLoadMore.success(data);}else{alm.AjaxLoadMore.loadPosts();}};$.fn.almGetParentContainer=function(){return alm.el.closest('#ajax-load-more');};$.fn.almGetObj=function(){return alm;};$.easing.alm_easeInOutQuad=function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t+b;}
78
  return-c/2*((--t)*(t-2)-1)+b;};};$.fn.almFilter=function(transition,speed,data){$(".ajax-load-more-wrap").each(function(e){var el=$(this);if(transition==='slide'){el.slideUp(speed,function(){$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);});}else if(transition==='fade'){el.fadeOut(speed,function(){$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);});}else{$('.alm-listing',el).html('');$('.alm-btn-wrap',el).remove();el.fadeIn(speed);$.fn.almSetFilters(el,data);}});};$.fn.almSetFilters=function(el,data){$.each(data,function(key,value){key=key.replace(/\W+/g,'-').replace(/([a-z\d])([A-Z])/g,'$1-$2');$('.alm-listing',el).attr('data-'+key,value);});if($.isFunction($.fn.almFilterComplete)){$.fn.almFilterComplete();}
79
  $(".ajax-load-more-wrap").ajaxloadmore();};$.fn.ajaxloadmore=function(){return this.each(function(e){$(this).data('alm',new $.ajaxloadmore($(this),e));});};if($(".ajax-load-more-wrap").length){$(".ajax-load-more-wrap").ajaxloadmore();}})(jQuery);;(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){module.exports=factory(require('jquery'));}else{factory(jQuery);}}(function($){var eventNamespace='almWaitForImages';$.almWaitForImages={hasImageProperties:['backgroundImage','listStyleImage','borderImage','borderCornerImage','cursor'],hasImageAttributes:['srcset']};$.expr[':']['has-src']=function(obj){return $(obj).is('img[src][src!=""]');};$.expr[':'].uncached=function(obj){if(!$(obj).is(':has-src')){return false;}
80
  return!obj.complete;};$.fn.almWaitForImages=function(){var allImgsLength=0;var allImgsLoaded=0;var deferred=$.Deferred();var finishedCallback;var eachCallback;var waitForAll;if($.isPlainObject(arguments[0])){waitForAll=arguments[0].waitForAll;eachCallback=arguments[0].each;finishedCallback=arguments[0].finished;}else{if(arguments.length===1&&$.type(arguments[0])==='boolean'){waitForAll=arguments[0];}else{finishedCallback=arguments[0];eachCallback=arguments[1];waitForAll=arguments[2];}}
lang/ajax-load-more.pot CHANGED
@@ -1,8 +1,8 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Ajax Load More\n"
4
- "POT-Creation-Date: 2015-10-01 15:28-0500\n"
5
- "PO-Revision-Date: 2015-10-01 15:28-0500\n"
6
  "Last-Translator: Darren Cooney <dcooney@ecentricarts.com>\n"
7
  "Language-Team: \n"
8
  "Language: en_CA\n"
@@ -15,141 +15,160 @@ msgstr ""
15
  "X-Poedit-KeywordsList: __;_e\n"
16
  "X-Poedit-SearchPath-0: ..\n"
17
 
18
- #: ../admin/admin.php:117
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  msgid ""
20
  "[Ajax Load More] Error opening default repeater template - Please check your "
21
  "file path and ensure your server is configured to allow Ajax Load More to "
22
  "read and write files within the /ajax-load-more/core/repeater directory"
23
  msgstr ""
24
 
25
- #: ../admin/admin.php:121
26
  msgid ""
27
  "[Ajax Load More] Error updating default repeater template - Please check "
28
  "your file path and ensure your server is configured to allow Ajax Load More "
29
  "to read and write files within the /ajax-load-more/core/repeater directory."
30
  msgstr ""
31
 
32
- #: ../admin/admin.php:490
33
  msgid "[Ajax Load More] Unable to open repeater template - "
34
  msgstr ""
35
 
36
- #: ../admin/admin.php:494
37
  msgid "[Ajax Load More] Error saving repeater template - "
38
  msgstr ""
39
 
40
- #: ../admin/admin.php:527
41
  msgid "Error Writing File"
42
  msgstr ""
43
 
44
- #: ../admin/admin.php:641 ../admin/shortcode-builder/shortcode-builder.php:917
45
  msgid "Container Type"
46
  msgstr ""
47
 
48
- #: ../admin/admin.php:649 ../admin/shortcode-builder/shortcode-builder.php:937
49
  msgid "Container Classes"
50
  msgstr ""
51
 
52
- #: ../admin/admin.php:657
53
  msgid "Disable CSS"
54
  msgstr ""
55
 
56
- #: ../admin/admin.php:665
57
  msgid "Button Color"
58
  msgstr ""
59
 
60
- #: ../admin/admin.php:673
61
  msgid "Button Classes"
62
  msgstr ""
63
 
64
- #: ../admin/admin.php:681
65
  msgid "Ajax Security"
66
  msgstr ""
67
 
68
- #: ../admin/admin.php:689
69
  msgid "Top of Page"
70
  msgstr ""
71
 
72
- #: ../admin/admin.php:697
73
  msgid "Dynamic Content"
74
  msgstr ""
75
 
76
- #: ../admin/admin.php:705
77
  msgid "Editor Button"
78
  msgstr ""
79
 
80
- #: ../admin/admin.php:713
81
  msgid "Error Notices"
82
  msgstr ""
83
 
84
- #: ../admin/admin.php:772
85
  msgid ""
86
  "Customize the user experience of Ajax Load More by updating the fields below."
87
  msgstr ""
88
 
89
- #: ../admin/admin.php:785
90
  msgid "The following settings affect the WordPress admin area only."
91
  msgstr ""
92
 
93
- #: ../admin/admin.php:816
94
  msgid "I want to use my own CSS styles."
95
  msgstr ""
96
 
97
- #: ../admin/admin.php:816
98
  msgid "View Ajax Load More CSS"
99
  msgstr ""
100
 
101
- #: ../admin/admin.php:836
102
  msgid "Hide shortcode button in WYSIWYG editor."
103
  msgstr ""
104
 
105
- #: ../admin/admin.php:857
106
  msgid ""
107
  "Display error messaging regarding repeater template updates in the browser "
108
  "console."
109
  msgstr ""
110
 
111
- #: ../admin/admin.php:878
112
  msgid ""
113
  "Disable dynamic population of categories, tags and authors in the Shortcode "
114
  "Builder.<span style=\"display:block\">Recommended if you have an "
115
  "extraordinary number of categories, tags and/or authors."
116
  msgstr ""
117
 
118
- #: ../admin/admin.php:899 ../admin/admin.php:902
119
  msgid "Ajax Posts Here"
120
  msgstr ""
121
 
122
- #: ../admin/admin.php:904
123
  msgid "You can modify the container type when building a shortcode."
124
  msgstr ""
125
 
126
- #: ../admin/admin.php:921
127
  msgid ""
128
  "Add classes to Ajax Load More container - classes are applied globally and "
129
  "will appear with every instance of Ajax Load More. <span style=\"display:"
130
  "block\">You can also add classes when building a shortcode.</span>"
131
  msgstr ""
132
 
133
- #: ../admin/admin.php:965
134
  msgid "Choose your <strong>Load More</strong> button color"
135
  msgstr ""
136
 
137
- #: ../admin/admin.php:976
138
  msgid "Preview"
139
  msgstr ""
140
 
141
- #: ../admin/admin.php:995
142
  msgid "Add classes to your <strong>Load More</strong> button"
143
  msgstr ""
144
 
145
- #: ../admin/admin.php:1055
146
  msgid ""
147
  "On initial page load, move the user's browser window to the top of the "
148
  "screen.<span style=\"display:block\">This <u>may</u> help prevent the "
149
  "loading of unnecessary posts.</span>"
150
  msgstr ""
151
 
152
- #: ../admin/admin.php:1076
153
  msgid ""
154
  "Enable <a href=\"https://codex.wordpress.org/WordPress_Nonces\" target="
155
  "\"_blank\">WP nonce</a> verification to help protect URLs against certain "
@@ -177,6 +196,19 @@ msgstr ""
177
  msgid "You are not allowed to be here"
178
  msgstr ""
179
 
 
 
 
 
 
 
 
 
 
 
 
 
 
180
  #: ../admin/includes/components/repeater-options.php:2
181
  msgid "Options"
182
  msgstr ""
@@ -254,29 +286,29 @@ msgid "Ajax Load More Demo Site"
254
  msgstr ""
255
 
256
  #: ../admin/includes/cta/resources.php:5
257
- msgid "Documentation"
258
  msgstr ""
259
 
260
  #: ../admin/includes/cta/resources.php:6
261
- msgid "Plugin Support/Issue"
262
- msgstr ""
263
-
264
- #: ../admin/includes/cta/resources.php:7
265
  msgid "Reviews"
266
  msgstr ""
267
 
268
- #: ../admin/includes/cta/resources.php:8
269
  #, fuzzy
270
  msgid "Facebook"
271
  msgstr "Partager sur Facebook"
272
 
273
- #: ../admin/includes/cta/resources.php:9
274
  #, fuzzy
275
  msgid "Twitter"
276
  msgstr "Partager sur Twitter"
277
 
 
 
 
 
278
  #: ../admin/includes/cta/resources.php:11
279
- msgid "Latest build on Github"
280
  msgstr ""
281
 
282
  #: ../admin/includes/cta/writeable.php:2
@@ -379,17 +411,17 @@ msgid "Type:"
379
  msgstr ""
380
 
381
  #: ../admin/shortcode-builder/shortcode-builder.php:1
382
- #: ../admin/views/examples.php:9 ../admin/views/repeater-templates.php:13
383
  msgid "Collapse All"
384
  msgstr ""
385
 
386
  #: ../admin/shortcode-builder/shortcode-builder.php:1
387
- #: ../admin/views/examples.php:9 ../admin/views/repeater-templates.php:13
388
  msgid "Expand All"
389
  msgstr ""
390
 
391
  #: ../admin/shortcode-builder/shortcode-builder.php:16
392
- #: ../admin/views/add-ons.php:18 ../admin/views/licenses.php:37
393
  #: ../admin/views/settings.php:22
394
  msgid "Cache"
395
  msgstr ""
@@ -443,8 +475,8 @@ msgid "Generate New ID"
443
  msgstr ""
444
 
445
  #: ../admin/shortcode-builder/shortcode-builder.php:59
446
- #: ../admin/views/add-ons.php:71 ../admin/views/licenses.php:145
447
- #: ../admin/views/settings.php:24
448
  msgid "Paging"
449
  msgstr ""
450
 
@@ -478,7 +510,7 @@ msgid ""
478
  msgstr ""
479
 
480
  #: ../admin/shortcode-builder/shortcode-builder.php:136
481
- #: ../admin/views/add-ons.php:98 ../admin/views/licenses.php:198
482
  msgid "Preloaded"
483
  msgstr ""
484
 
@@ -495,8 +527,8 @@ msgid "Enter the number of posts to preload."
495
  msgstr ""
496
 
497
  #: ../admin/shortcode-builder/shortcode-builder.php:177
498
- #: ../admin/views/add-ons.php:124 ../admin/views/licenses.php:251
499
- #: ../admin/views/settings.php:26
500
  msgid "Previous Post"
501
  msgstr ""
502
 
@@ -869,7 +901,7 @@ msgid "Customize the <em>Load More</em> button label."
869
  msgstr ""
870
 
871
  #: ../admin/shortcode-builder/shortcode-builder.php:905
872
- #: ../ajax-load-more.php:287
873
  msgid "Older Posts"
874
  msgstr ""
875
 
@@ -909,7 +941,7 @@ msgid ""
909
  "delivers those static files to your visitors."
910
  msgstr ""
911
 
912
- #: ../admin/views/add-ons.php:43 ../admin/views/licenses.php:91
913
  msgid "Custom Repeaters"
914
  msgstr ""
915
 
@@ -923,66 +955,78 @@ msgid ""
923
  "absolutely zero restrictions."
924
  msgstr ""
925
 
 
 
 
 
926
  #: ../admin/views/add-ons.php:72
927
- msgid "Extend Ajax Load More with a numbered navigation."
928
  msgstr ""
929
 
930
  #: ../admin/views/add-ons.php:73
 
 
 
 
 
 
 
 
931
  msgid ""
932
  "The Paging add-on will transform the default infinite scroll functionality "
933
  "into a robust ajax powered navigation system."
934
  msgstr ""
935
 
936
- #: ../admin/views/add-ons.php:99
937
  msgid "Load an initial set of posts before making Ajax requests to the server."
938
  msgstr ""
939
 
940
- #: ../admin/views/add-ons.php:100
941
  msgid ""
942
  "The Preloaded add-on will display content quicker and allow caching of the "
943
  "initial query which can reduce stress on your server."
944
  msgstr ""
945
 
946
- #: ../admin/views/add-ons.php:125
947
  msgid "An extension to enable infinite scrolling of single posts."
948
  msgstr ""
949
 
950
- #: ../admin/views/add-ons.php:126
951
  msgid ""
952
  "The Previous Post add-on will load single posts as you scroll and update the "
953
  "browser URL to the current post."
954
  msgstr ""
955
 
956
- #: ../admin/views/add-ons.php:150 ../admin/views/licenses.php:305
957
  msgid "Search Engine Optimization"
958
  msgstr ""
959
 
960
- #: ../admin/views/add-ons.php:151
961
  msgid "Generate unique paging URLs with every Ajax Load More query."
962
  msgstr ""
963
 
964
- #: ../admin/views/add-ons.php:152
965
  msgid ""
966
  "The SEO add-on will optimize your ajax loaded content for search engines by "
967
  "generating unique URLs with every query.</p>"
968
  msgstr ""
969
 
970
- #: ../admin/views/add-ons.php:176 ../admin/views/licenses.php:359
971
- #: ../admin/views/settings.php:30
972
  msgid "Theme Repeaters"
973
  msgstr ""
974
 
975
- #: ../admin/views/add-ons.php:177
976
  msgid "Manage repeater templates within your current theme directory."
977
  msgstr ""
978
 
979
- #: ../admin/views/add-ons.php:178
980
  msgid ""
981
  "The Theme Repeater add-on will allow you load, edit and maintain templates "
982
  "from your current theme directory.</p>"
983
  msgstr ""
984
 
985
- #: ../admin/views/add-ons.php:197
986
  msgid ""
987
  "All add-ons are installed as stand alone plugins and with a valid license "
988
  "key will receive plugin update notifications directly within the <a href="
@@ -1070,81 +1114,60 @@ msgid ""
1070
  "href=\"plugins.php\">WP Plugins dashboard</a>."
1071
  msgstr ""
1072
 
1073
- #: ../admin/views/licenses.php:43 ../admin/views/licenses.php:45
1074
- #: ../admin/views/licenses.php:97 ../admin/views/licenses.php:99
1075
- #: ../admin/views/licenses.php:151 ../admin/views/licenses.php:153
1076
- #: ../admin/views/licenses.php:204 ../admin/views/licenses.php:206
1077
- #: ../admin/views/licenses.php:257 ../admin/views/licenses.php:259
1078
- #: ../admin/views/licenses.php:311 ../admin/views/licenses.php:313
1079
- #: ../admin/views/licenses.php:365 ../admin/views/licenses.php:367
1080
  msgid "Enter License Key"
1081
  msgstr ""
1082
 
1083
- #: ../admin/views/licenses.php:48 ../admin/views/licenses.php:102
1084
- #: ../admin/views/licenses.php:156 ../admin/views/licenses.php:209
1085
- #: ../admin/views/licenses.php:262 ../admin/views/licenses.php:316
1086
- #: ../admin/views/licenses.php:370
1087
- msgid "Active"
1088
- msgstr ""
1089
-
1090
- #: ../admin/views/licenses.php:52 ../admin/views/licenses.php:106
1091
- #: ../admin/views/licenses.php:160 ../admin/views/licenses.php:213
1092
- #: ../admin/views/licenses.php:266 ../admin/views/licenses.php:320
1093
- #: ../admin/views/licenses.php:374
1094
- msgid "In-active"
1095
- msgstr ""
1096
-
1097
- #: ../admin/views/licenses.php:59 ../admin/views/licenses.php:113
1098
- #: ../admin/views/licenses.php:167 ../admin/views/licenses.php:220
1099
- #: ../admin/views/licenses.php:273 ../admin/views/licenses.php:327
1100
- #: ../admin/views/licenses.php:381
1101
- msgid "Save License Key"
1102
- msgstr ""
1103
-
1104
- #: ../admin/views/licenses.php:65 ../admin/views/licenses.php:119
1105
- #: ../admin/views/licenses.php:173 ../admin/views/licenses.php:226
1106
- #: ../admin/views/licenses.php:279 ../admin/views/licenses.php:333
1107
- #: ../admin/views/licenses.php:387
1108
- msgid "De-activate License"
1109
  msgstr ""
1110
 
1111
- #: ../admin/views/licenses.php:68 ../admin/views/licenses.php:122
1112
- #: ../admin/views/licenses.php:176 ../admin/views/licenses.php:229
1113
- #: ../admin/views/licenses.php:282 ../admin/views/licenses.php:336
1114
- #: ../admin/views/licenses.php:390
1115
- msgid "Activate License"
1116
  msgstr ""
1117
 
1118
- #: ../admin/views/licenses.php:407
1119
  msgid "You do not have any Ajax Load More add-ons installed"
1120
  msgstr ""
1121
 
1122
- #: ../admin/views/licenses.php:407
1123
  msgid "Browse Add-ons"
1124
  msgstr ""
1125
 
1126
- #: ../admin/views/licenses.php:418
1127
  msgid "About Licenses"
1128
  msgstr ""
1129
 
1130
- #: ../admin/views/licenses.php:421
1131
  msgid "Add-on licenses will enable updates directly in your WP dashboard."
1132
  msgstr ""
1133
 
1134
- #: ../admin/views/licenses.php:422
1135
  msgid ""
1136
  "License keys are found in the purchase receipt email that was sent "
1137
  "immediately after your successful purchase."
1138
  msgstr ""
1139
 
1140
- #: ../admin/views/licenses.php:423
1141
  msgid ""
1142
  "If you cannot locate your key please use the <a href=\"https://connekthq.com/"
1143
  "contact/\">contact form</a> on our website and reference the email address "
1144
  "used when you completed the purchase."
1145
  msgstr ""
1146
 
1147
- #: ../admin/views/licenses.php:428
1148
  msgid "Legacy Users"
1149
  msgstr ""
1150
 
@@ -1153,67 +1176,67 @@ msgid "Repeater Templates"
1153
  msgstr ""
1154
 
1155
  #: ../admin/views/repeater-templates.php:5
1156
- msgid "The library of available templates to use within your theme"
1157
  msgstr ""
1158
 
1159
- #: ../admin/views/repeater-templates.php:35
1160
  msgid "Default Template"
1161
  msgstr ""
1162
 
1163
- #: ../admin/views/repeater-templates.php:41
1164
  msgid "Enter the HTML and PHP code for the default template"
1165
  msgstr ""
1166
 
1167
- #: ../admin/views/repeater-templates.php:54
1168
  msgid "Save Template"
1169
  msgstr ""
1170
 
1171
- #: ../admin/views/repeater-templates.php:123
1172
  msgid "Saving template..."
1173
  msgstr ""
1174
 
1175
- #: ../admin/views/repeater-templates.php:155
1176
  msgid "Something went wrong and the data could not be saved."
1177
  msgstr ""
1178
 
1179
- #: ../admin/views/repeater-templates.php:195
1180
  msgid "Updating template..."
1181
  msgstr ""
1182
 
1183
- #: ../admin/views/repeater-templates.php:216
1184
  msgid "Template Updated"
1185
  msgstr ""
1186
 
1187
- #: ../admin/views/repeater-templates.php:245
1188
  msgid "Templating Help"
1189
  msgstr ""
1190
 
1191
- #: ../admin/views/repeater-templates.php:247
1192
  msgid "What is a repeater template?"
1193
  msgstr ""
1194
 
1195
- #: ../admin/views/repeater-templates.php:248
1196
  msgid ""
1197
  "A repeater template is a snippet of code that will execute over and over "
1198
  "within a <a href=\"http://codex.wordpress.org/The_Loop\" target=\"_blank"
1199
  "\">WordPress loop</a>.</p>"
1200
  msgstr ""
1201
 
1202
- #: ../admin/views/repeater-templates.php:251
1203
  msgid "Can I include PHP in the repeater template?"
1204
  msgstr ""
1205
 
1206
- #: ../admin/views/repeater-templates.php:252
1207
  msgid ""
1208
  "Yes, PHP and core WordPress functions such as, <code>the_title()</code> and "
1209
  "<code>the_permalink()</code> are required.</p>"
1210
  msgstr ""
1211
 
1212
- #: ../admin/views/repeater-templates.php:255
1213
  msgid "Tips and Tricks"
1214
  msgstr ""
1215
 
1216
- #: ../admin/views/repeater-templates.php:257
1217
  msgid ""
1218
  "Always open and close your templates with an HTML element. In some rare "
1219
  "cases data may not be displayed if not wrapped in HTML.<br/>e.g. <code>&lt;"
@@ -1236,11 +1259,11 @@ msgstr ""
1236
  msgid "Admin"
1237
  msgstr ""
1238
 
1239
- #: ../admin/views/settings.php:28
1240
  msgid "SEO"
1241
  msgstr ""
1242
 
1243
- #: ../admin/views/settings.php:58
1244
  msgid "Sorry, settings could not be saved."
1245
  msgstr ""
1246
 
@@ -1268,10 +1291,14 @@ msgstr ""
1268
  msgid "Clear all Shortcode Builder settings"
1269
  msgstr ""
1270
 
1271
- #: ../ajax-load-more.php:158
1272
  msgid "Settings"
1273
  msgstr ""
1274
 
 
 
 
 
1275
  #~ msgid "404 Error"
1276
  #~ msgstr "Erreur 404 "
1277
 
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Ajax Load More\n"
4
+ "POT-Creation-Date: 2015-11-09 13:52-0500\n"
5
+ "PO-Revision-Date: 2015-11-09 13:52-0500\n"
6
  "Last-Translator: Darren Cooney <dcooney@ecentricarts.com>\n"
7
  "Language-Team: \n"
8
  "Language: en_CA\n"
15
  "X-Poedit-KeywordsList: __;_e\n"
16
  "X-Poedit-SearchPath-0: ..\n"
17
 
18
+ #: ../admin/admin.php:112 ../admin/admin.php:649 ../admin/admin.php:693
19
+ #: ../admin/admin.php:739
20
+ msgid "You don't belong here."
21
+ msgstr ""
22
+
23
+ #: ../admin/admin.php:155 ../admin/views/licenses.php:49
24
+ #: ../admin/views/licenses.php:104 ../admin/views/licenses.php:160
25
+ #: ../admin/views/licenses.php:214 ../admin/views/licenses.php:267
26
+ #: ../admin/views/licenses.php:322 ../admin/views/licenses.php:379
27
+ msgid "Active"
28
+ msgstr ""
29
+
30
+ #: ../admin/admin.php:156 ../admin/views/licenses.php:53
31
+ #: ../admin/views/licenses.php:108 ../admin/views/licenses.php:164
32
+ #: ../admin/views/licenses.php:218 ../admin/views/licenses.php:271
33
+ #: ../admin/views/licenses.php:326 ../admin/views/licenses.php:383
34
+ msgid "Inactive"
35
+ msgstr ""
36
+
37
+ #: ../admin/admin.php:260
38
  msgid ""
39
  "[Ajax Load More] Error opening default repeater template - Please check your "
40
  "file path and ensure your server is configured to allow Ajax Load More to "
41
  "read and write files within the /ajax-load-more/core/repeater directory"
42
  msgstr ""
43
 
44
+ #: ../admin/admin.php:264
45
  msgid ""
46
  "[Ajax Load More] Error updating default repeater template - Please check "
47
  "your file path and ensure your server is configured to allow Ajax Load More "
48
  "to read and write files within the /ajax-load-more/core/repeater directory."
49
  msgstr ""
50
 
51
+ #: ../admin/admin.php:607
52
  msgid "[Ajax Load More] Unable to open repeater template - "
53
  msgstr ""
54
 
55
+ #: ../admin/admin.php:611
56
  msgid "[Ajax Load More] Error saving repeater template - "
57
  msgstr ""
58
 
59
+ #: ../admin/admin.php:644
60
  msgid "Error Writing File"
61
  msgstr ""
62
 
63
+ #: ../admin/admin.php:801 ../admin/shortcode-builder/shortcode-builder.php:917
64
  msgid "Container Type"
65
  msgstr ""
66
 
67
+ #: ../admin/admin.php:809 ../admin/shortcode-builder/shortcode-builder.php:937
68
  msgid "Container Classes"
69
  msgstr ""
70
 
71
+ #: ../admin/admin.php:817
72
  msgid "Disable CSS"
73
  msgstr ""
74
 
75
+ #: ../admin/admin.php:825
76
  msgid "Button Color"
77
  msgstr ""
78
 
79
+ #: ../admin/admin.php:833
80
  msgid "Button Classes"
81
  msgstr ""
82
 
83
+ #: ../admin/admin.php:841
84
  msgid "Ajax Security"
85
  msgstr ""
86
 
87
+ #: ../admin/admin.php:849
88
  msgid "Top of Page"
89
  msgstr ""
90
 
91
+ #: ../admin/admin.php:857
92
  msgid "Dynamic Content"
93
  msgstr ""
94
 
95
+ #: ../admin/admin.php:865
96
  msgid "Editor Button"
97
  msgstr ""
98
 
99
+ #: ../admin/admin.php:873
100
  msgid "Error Notices"
101
  msgstr ""
102
 
103
+ #: ../admin/admin.php:938
104
  msgid ""
105
  "Customize the user experience of Ajax Load More by updating the fields below."
106
  msgstr ""
107
 
108
+ #: ../admin/admin.php:951
109
  msgid "The following settings affect the WordPress admin area only."
110
  msgstr ""
111
 
112
+ #: ../admin/admin.php:982
113
  msgid "I want to use my own CSS styles."
114
  msgstr ""
115
 
116
+ #: ../admin/admin.php:982
117
  msgid "View Ajax Load More CSS"
118
  msgstr ""
119
 
120
+ #: ../admin/admin.php:1002
121
  msgid "Hide shortcode button in WYSIWYG editor."
122
  msgstr ""
123
 
124
+ #: ../admin/admin.php:1023
125
  msgid ""
126
  "Display error messaging regarding repeater template updates in the browser "
127
  "console."
128
  msgstr ""
129
 
130
+ #: ../admin/admin.php:1044
131
  msgid ""
132
  "Disable dynamic population of categories, tags and authors in the Shortcode "
133
  "Builder.<span style=\"display:block\">Recommended if you have an "
134
  "extraordinary number of categories, tags and/or authors."
135
  msgstr ""
136
 
137
+ #: ../admin/admin.php:1065 ../admin/admin.php:1068
138
  msgid "Ajax Posts Here"
139
  msgstr ""
140
 
141
+ #: ../admin/admin.php:1070
142
  msgid "You can modify the container type when building a shortcode."
143
  msgstr ""
144
 
145
+ #: ../admin/admin.php:1087
146
  msgid ""
147
  "Add classes to Ajax Load More container - classes are applied globally and "
148
  "will appear with every instance of Ajax Load More. <span style=\"display:"
149
  "block\">You can also add classes when building a shortcode.</span>"
150
  msgstr ""
151
 
152
+ #: ../admin/admin.php:1131
153
  msgid "Choose your <strong>Load More</strong> button color"
154
  msgstr ""
155
 
156
+ #: ../admin/admin.php:1142
157
  msgid "Preview"
158
  msgstr ""
159
 
160
+ #: ../admin/admin.php:1161
161
  msgid "Add classes to your <strong>Load More</strong> button"
162
  msgstr ""
163
 
164
+ #: ../admin/admin.php:1221
165
  msgid ""
166
  "On initial page load, move the user's browser window to the top of the "
167
  "screen.<span style=\"display:block\">This <u>may</u> help prevent the "
168
  "loading of unnecessary posts.</span>"
169
  msgstr ""
170
 
171
+ #: ../admin/admin.php:1242
172
  msgid ""
173
  "Enable <a href=\"https://codex.wordpress.org/WordPress_Nonces\" target="
174
  "\"_blank\">WP nonce</a> verification to help protect URLs against certain "
196
  msgid "You are not allowed to be here"
197
  msgstr ""
198
 
199
+ #: ../admin/includes/components/layout-list.php:3
200
+ msgid "Apply Layout"
201
+ msgstr ""
202
+
203
+ #: ../admin/includes/components/layout-list.php:9
204
+ msgid "Default"
205
+ msgstr ""
206
+
207
+ #: ../admin/includes/components/layout-list.php:17
208
+ msgid ""
209
+ "Unlock additional layout templates with the <strong>Layouts add-on</strong>"
210
+ msgstr ""
211
+
212
  #: ../admin/includes/components/repeater-options.php:2
213
  msgid "Options"
214
  msgstr ""
286
  msgstr ""
287
 
288
  #: ../admin/includes/cta/resources.php:5
289
+ msgid "Plugin Support and Issues"
290
  msgstr ""
291
 
292
  #: ../admin/includes/cta/resources.php:6
 
 
 
 
293
  msgid "Reviews"
294
  msgstr ""
295
 
296
+ #: ../admin/includes/cta/resources.php:7
297
  #, fuzzy
298
  msgid "Facebook"
299
  msgstr "Partager sur Facebook"
300
 
301
+ #: ../admin/includes/cta/resources.php:8
302
  #, fuzzy
303
  msgid "Twitter"
304
  msgstr "Partager sur Twitter"
305
 
306
+ #: ../admin/includes/cta/resources.php:9
307
+ msgid "Github"
308
+ msgstr ""
309
+
310
  #: ../admin/includes/cta/resources.php:11
311
+ msgid "WordPress Repository"
312
  msgstr ""
313
 
314
  #: ../admin/includes/cta/writeable.php:2
411
  msgstr ""
412
 
413
  #: ../admin/shortcode-builder/shortcode-builder.php:1
414
+ #: ../admin/views/examples.php:9 ../admin/views/repeater-templates.php:12
415
  msgid "Collapse All"
416
  msgstr ""
417
 
418
  #: ../admin/shortcode-builder/shortcode-builder.php:1
419
+ #: ../admin/views/examples.php:9 ../admin/views/repeater-templates.php:12
420
  msgid "Expand All"
421
  msgstr ""
422
 
423
  #: ../admin/shortcode-builder/shortcode-builder.php:16
424
+ #: ../admin/views/add-ons.php:18 ../admin/views/licenses.php:38
425
  #: ../admin/views/settings.php:22
426
  msgid "Cache"
427
  msgstr ""
475
  msgstr ""
476
 
477
  #: ../admin/shortcode-builder/shortcode-builder.php:59
478
+ #: ../admin/views/add-ons.php:97 ../admin/views/licenses.php:149
479
+ #: ../admin/views/settings.php:26
480
  msgid "Paging"
481
  msgstr ""
482
 
510
  msgstr ""
511
 
512
  #: ../admin/shortcode-builder/shortcode-builder.php:136
513
+ #: ../admin/views/add-ons.php:124 ../admin/views/licenses.php:203
514
  msgid "Preloaded"
515
  msgstr ""
516
 
527
  msgstr ""
528
 
529
  #: ../admin/shortcode-builder/shortcode-builder.php:177
530
+ #: ../admin/views/add-ons.php:150 ../admin/views/licenses.php:256
531
+ #: ../admin/views/settings.php:28
532
  msgid "Previous Post"
533
  msgstr ""
534
 
901
  msgstr ""
902
 
903
  #: ../admin/shortcode-builder/shortcode-builder.php:905
904
+ #: ../ajax-load-more.php:311
905
  msgid "Older Posts"
906
  msgstr ""
907
 
941
  "delivers those static files to your visitors."
942
  msgstr ""
943
 
944
+ #: ../admin/views/add-ons.php:43 ../admin/views/licenses.php:93
945
  msgid "Custom Repeaters"
946
  msgstr ""
947
 
955
  "absolutely zero restrictions."
956
  msgstr ""
957
 
958
+ #: ../admin/views/add-ons.php:71
959
+ msgid "Layouts"
960
+ msgstr ""
961
+
962
  #: ../admin/views/add-ons.php:72
963
+ msgid "Extend Ajax Load More with predefined responsive layouts."
964
  msgstr ""
965
 
966
  #: ../admin/views/add-ons.php:73
967
+ msgid "Boost the look of your theme with a library of mobile ready layouts."
968
+ msgstr ""
969
+
970
+ #: ../admin/views/add-ons.php:98
971
+ msgid "Extend Ajax Load More with a numbered navigation."
972
+ msgstr ""
973
+
974
+ #: ../admin/views/add-ons.php:99
975
  msgid ""
976
  "The Paging add-on will transform the default infinite scroll functionality "
977
  "into a robust ajax powered navigation system."
978
  msgstr ""
979
 
980
+ #: ../admin/views/add-ons.php:125
981
  msgid "Load an initial set of posts before making Ajax requests to the server."
982
  msgstr ""
983
 
984
+ #: ../admin/views/add-ons.php:126
985
  msgid ""
986
  "The Preloaded add-on will display content quicker and allow caching of the "
987
  "initial query which can reduce stress on your server."
988
  msgstr ""
989
 
990
+ #: ../admin/views/add-ons.php:151
991
  msgid "An extension to enable infinite scrolling of single posts."
992
  msgstr ""
993
 
994
+ #: ../admin/views/add-ons.php:152
995
  msgid ""
996
  "The Previous Post add-on will load single posts as you scroll and update the "
997
  "browser URL to the current post."
998
  msgstr ""
999
 
1000
+ #: ../admin/views/add-ons.php:176 ../admin/views/licenses.php:311
1001
  msgid "Search Engine Optimization"
1002
  msgstr ""
1003
 
1004
+ #: ../admin/views/add-ons.php:177
1005
  msgid "Generate unique paging URLs with every Ajax Load More query."
1006
  msgstr ""
1007
 
1008
+ #: ../admin/views/add-ons.php:178
1009
  msgid ""
1010
  "The SEO add-on will optimize your ajax loaded content for search engines by "
1011
  "generating unique URLs with every query.</p>"
1012
  msgstr ""
1013
 
1014
+ #: ../admin/views/add-ons.php:202 ../admin/views/licenses.php:368
1015
+ #: ../admin/views/settings.php:32
1016
  msgid "Theme Repeaters"
1017
  msgstr ""
1018
 
1019
+ #: ../admin/views/add-ons.php:203
1020
  msgid "Manage repeater templates within your current theme directory."
1021
  msgstr ""
1022
 
1023
+ #: ../admin/views/add-ons.php:204
1024
  msgid ""
1025
  "The Theme Repeater add-on will allow you load, edit and maintain templates "
1026
  "from your current theme directory.</p>"
1027
  msgstr ""
1028
 
1029
+ #: ../admin/views/add-ons.php:223
1030
  msgid ""
1031
  "All add-ons are installed as stand alone plugins and with a valid license "
1032
  "key will receive plugin update notifications directly within the <a href="
1114
  "href=\"plugins.php\">WP Plugins dashboard</a>."
1115
  msgstr ""
1116
 
1117
+ #: ../admin/views/licenses.php:44 ../admin/views/licenses.php:46
1118
+ #: ../admin/views/licenses.php:99 ../admin/views/licenses.php:101
1119
+ #: ../admin/views/licenses.php:155 ../admin/views/licenses.php:157
1120
+ #: ../admin/views/licenses.php:209 ../admin/views/licenses.php:211
1121
+ #: ../admin/views/licenses.php:262 ../admin/views/licenses.php:264
1122
+ #: ../admin/views/licenses.php:317 ../admin/views/licenses.php:319
1123
+ #: ../admin/views/licenses.php:374 ../admin/views/licenses.php:376
1124
  msgid "Enter License Key"
1125
  msgstr ""
1126
 
1127
+ #: ../admin/views/licenses.php:66 ../admin/views/licenses.php:121
1128
+ #: ../admin/views/licenses.php:177 ../admin/views/licenses.php:230
1129
+ #: ../admin/views/licenses.php:284 ../admin/views/licenses.php:339
1130
+ #: ../admin/views/licenses.php:397
1131
+ msgid "Activate License"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1132
  msgstr ""
1133
 
1134
+ #: ../admin/views/licenses.php:70 ../admin/views/licenses.php:125
1135
+ #: ../admin/views/licenses.php:181 ../admin/views/licenses.php:234
1136
+ #: ../admin/views/licenses.php:288 ../admin/views/licenses.php:343
1137
+ #: ../admin/views/licenses.php:401
1138
+ msgid "Deactivate License"
1139
  msgstr ""
1140
 
1141
+ #: ../admin/views/licenses.php:419
1142
  msgid "You do not have any Ajax Load More add-ons installed"
1143
  msgstr ""
1144
 
1145
+ #: ../admin/views/licenses.php:419
1146
  msgid "Browse Add-ons"
1147
  msgstr ""
1148
 
1149
+ #: ../admin/views/licenses.php:430
1150
  msgid "About Licenses"
1151
  msgstr ""
1152
 
1153
+ #: ../admin/views/licenses.php:433
1154
  msgid "Add-on licenses will enable updates directly in your WP dashboard."
1155
  msgstr ""
1156
 
1157
+ #: ../admin/views/licenses.php:434
1158
  msgid ""
1159
  "License keys are found in the purchase receipt email that was sent "
1160
  "immediately after your successful purchase."
1161
  msgstr ""
1162
 
1163
+ #: ../admin/views/licenses.php:435
1164
  msgid ""
1165
  "If you cannot locate your key please use the <a href=\"https://connekthq.com/"
1166
  "contact/\">contact form</a> on our website and reference the email address "
1167
  "used when you completed the purchase."
1168
  msgstr ""
1169
 
1170
+ #: ../admin/views/licenses.php:440
1171
  msgid "Legacy Users"
1172
  msgstr ""
1173
 
1176
  msgstr ""
1177
 
1178
  #: ../admin/views/repeater-templates.php:5
1179
+ msgid "The library of editable templates for use within your theme"
1180
  msgstr ""
1181
 
1182
+ #: ../admin/views/repeater-templates.php:33
1183
  msgid "Default Template"
1184
  msgstr ""
1185
 
1186
+ #: ../admin/views/repeater-templates.php:37
1187
  msgid "Enter the HTML and PHP code for the default template"
1188
  msgstr ""
1189
 
1190
+ #: ../admin/views/repeater-templates.php:55
1191
  msgid "Save Template"
1192
  msgstr ""
1193
 
1194
+ #: ../admin/views/repeater-templates.php:121
1195
  msgid "Saving template..."
1196
  msgstr ""
1197
 
1198
+ #: ../admin/views/repeater-templates.php:153
1199
  msgid "Something went wrong and the data could not be saved."
1200
  msgstr ""
1201
 
1202
+ #: ../admin/views/repeater-templates.php:190
1203
  msgid "Updating template..."
1204
  msgstr ""
1205
 
1206
+ #: ../admin/views/repeater-templates.php:211
1207
  msgid "Template Updated"
1208
  msgstr ""
1209
 
1210
+ #: ../admin/views/repeater-templates.php:241
1211
  msgid "Templating Help"
1212
  msgstr ""
1213
 
1214
+ #: ../admin/views/repeater-templates.php:243
1215
  msgid "What is a repeater template?"
1216
  msgstr ""
1217
 
1218
+ #: ../admin/views/repeater-templates.php:244
1219
  msgid ""
1220
  "A repeater template is a snippet of code that will execute over and over "
1221
  "within a <a href=\"http://codex.wordpress.org/The_Loop\" target=\"_blank"
1222
  "\">WordPress loop</a>.</p>"
1223
  msgstr ""
1224
 
1225
+ #: ../admin/views/repeater-templates.php:247
1226
  msgid "Can I include PHP in the repeater template?"
1227
  msgstr ""
1228
 
1229
+ #: ../admin/views/repeater-templates.php:248
1230
  msgid ""
1231
  "Yes, PHP and core WordPress functions such as, <code>the_title()</code> and "
1232
  "<code>the_permalink()</code> are required.</p>"
1233
  msgstr ""
1234
 
1235
+ #: ../admin/views/repeater-templates.php:251
1236
  msgid "Tips and Tricks"
1237
  msgstr ""
1238
 
1239
+ #: ../admin/views/repeater-templates.php:253
1240
  msgid ""
1241
  "Always open and close your templates with an HTML element. In some rare "
1242
  "cases data may not be displayed if not wrapped in HTML.<br/>e.g. <code>&lt;"
1259
  msgid "Admin"
1260
  msgstr ""
1261
 
1262
+ #: ../admin/views/settings.php:30
1263
  msgid "SEO"
1264
  msgstr ""
1265
 
1266
+ #: ../admin/views/settings.php:60
1267
  msgid "Sorry, settings could not be saved."
1268
  msgstr ""
1269
 
1291
  msgid "Clear all Shortcode Builder settings"
1292
  msgstr ""
1293
 
1294
+ #: ../ajax-load-more.php:180
1295
  msgid "Settings"
1296
  msgstr ""
1297
 
1298
+ #: ../core/functions.php:299
1299
+ msgid "Pages:"
1300
+ msgstr ""
1301
+
1302
  #~ msgid "404 Error"
1303
  #~ msgstr "Erreur 404 "
1304