WordPress Infinite Scroll – Ajax Load More - Version 2.8.1.2

Version Description

  • SECURITY - Due to a security scare with non-admin logged-in users I have updated all admin-ajax.php calls to verify nonce variables (wp_verify_nonce) and check user capabilities(edit_theme_options).
Download this release

Release Info

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

Code changes from version 2.8.0 to 2.8.1.2

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.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -132,7 +132,7 @@ Ajax Load More accepts a number of parameters that are passed to the WordPress q
132
  > [Get More Information](http://connekthq.com/plugins/ajax-load-more/preloaded/)
133
  >
134
  > #### Previous Post
135
- > The **[Preloaded](http://connekthq.com/plugins/ajax-load-more/previous-post/)** add-on will allow you to navigate single posts with Ajax Load More.<br />
136
  > [Get More Information](http://connekthq.com/plugins/ajax-load-more/previous-post/)
137
  >
138
  > #### Search Engine Optimization
@@ -278,6 +278,20 @@ How to install Ajax Load More.
278
  == Changelog ==
279
 
280
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
281
  = 2.8.0 =
282
  * NEW - Adding required support and functionality for new Previous Post add-on - https://connekthq.com/plugins/ajax-load-more/add-ons/previous-post/
283
  * NEW - Adding a set of filters to inject content into ALM containers.
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.1.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
132
  > [Get More Information](http://connekthq.com/plugins/ajax-load-more/preloaded/)
133
  >
134
  > #### Previous Post
135
+ > The **[Previous Post](http://connekthq.com/plugins/ajax-load-more/previous-post/)** add-on will allow you to navigate single posts with Ajax Load More.<br />
136
  > [Get More Information](http://connekthq.com/plugins/ajax-load-more/previous-post/)
137
  >
138
  > #### Search Engine Optimization
278
  == Changelog ==
279
 
280
 
281
+ = 2.8.1.2 =
282
+ * SECURITY - Due to a security scare with non-admin logged-in users I have updated all admin-ajax.php calls to verify nonce variables (wp_verify_nonce) and check user capabilities(edit_theme_options).
283
+
284
+ = 2.8.1.1 =
285
+ * FIX - Update for issue where Ajax Load More CSS would load even if unchecked.
286
+
287
+
288
+ = 2.8.1.1 =
289
+ * UPDATE - Adding required support/update for Language Pack translations (https://translate.wordpress.org/)
290
+ * FIX - Update to automatically set posts_per_page to 1 if Previous Post add-on is in use.
291
+ * FIX - Various core JS updates/improvements
292
+ * FIX - Licenses not showing for Theme Repeaters and Previous Post add-ons
293
+ * UPDATE - Various admin UI updates and enhancements.
294
+
295
  = 2.8.0 =
296
  * NEW - Adding required support and functionality for new Previous Post add-on - https://connekthq.com/plugins/ajax-load-more/add-ons/previous-post/
297
  * NEW - Adding a set of filters to inject content into ALM containers.
admin/admin.php CHANGED
@@ -3,7 +3,6 @@
3
  /* Admin function */
4
 
5
  add_action( 'plugins_loaded', 'alm_core_update' ); // Core Update
6
- add_action( 'admin_head', 'alm_admin_vars' ); // Localized Vars
7
  add_action( 'wp_ajax_alm_save_repeater', 'alm_save_repeater' ); // Ajax Save Repeater
8
  add_action( 'wp_ajax_alm_update_repeater', 'alm_update_repeater' ); // Ajax Update Repeater
9
  add_action( 'wp_ajax_alm_get_tax_terms', 'alm_get_tax_terms' ); // Ajax Get Taxonomy Terms
@@ -29,6 +28,17 @@ function alm_admin_vars() { ?>
29
  <?php }
30
 
31
 
 
 
 
 
 
 
 
 
 
 
 
32
 
33
  /**
34
  * alm_core_update
@@ -114,11 +124,11 @@ function alm_update_template_files(){
114
  try {
115
  $o = fopen($f, 'w+'); //Open file
116
  if ( !$o ) {
117
- throw new Exception(__('[Ajax Load More] Error opening default repeater template - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files within the /ajax-load-more/core/repeater directory', ALM_NAME));
118
  }
119
  $w = fwrite($o, $data); //Save the file
120
  if ( !$w ) {
121
- throw new Exception(__('[Ajax Load More] Error updating default repeater template - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files within the /ajax-load-more/core/repeater directory.', ALM_NAME));
122
  }
123
  fclose($o); //now close it
124
 
@@ -228,6 +238,7 @@ function alm_admin_menu() {
228
  //Add our admin scripts
229
  add_action( 'load-' . $alm_settings_page, 'alm_load_admin_js' );
230
  add_action( 'load-' . $alm_template_page, 'alm_load_admin_js' );
 
231
  add_action( 'load-' . $alm_shortcode_page, 'alm_load_admin_js' );
232
  add_action( 'load-' . $alm_examples_page, 'alm_load_admin_js' );
233
  add_action( 'load-' . $alm_addons_page, 'alm_load_admin_js' );
@@ -265,7 +276,7 @@ function alm_enqueue_admin_scripts(){
265
  wp_enqueue_style( 'alm-admin-css', ALM_ADMIN_URL. 'css/admin.css');
266
  wp_enqueue_style( 'alm-select2-css', ALM_ADMIN_URL. 'css/select2.css');
267
  wp_enqueue_style( 'alm-core-css', ALM_URL. '/core/css/ajax-load-more.css');
268
- wp_enqueue_style( 'alm-font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css');
269
 
270
  //Load CodeMirror Syntax Highlighting if on Repater Template page
271
  $screen = get_current_screen();
@@ -390,37 +401,6 @@ function alm_cache_page(){
390
 
391
 
392
 
393
- /*
394
- * alm_delete_cache
395
- * Delete induvidual cached items
396
- *
397
- * @return null
398
- * @since 2.6.0
399
- */
400
-
401
- function alm_delete_cache(){
402
- $nonce = $_POST["nonce"];
403
- $cache = $_POST["cache"];
404
- // Check our nonce, if they don't match then bounce!
405
- if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
406
- die('Get Bounced!');
407
-
408
- $dir = ALM_CACHE_PATH .'_cache/'.$cache;
409
-
410
- if (is_dir($dir)) {
411
- foreach (glob($dir."/*.*") as $filename) {
412
- if (is_file($filename)) {
413
- unlink($filename);
414
- }
415
- }
416
- rmdir($dir);
417
- }
418
-
419
- die();
420
- }
421
-
422
-
423
-
424
  /*
425
  * alm_save_repeater
426
  * Repeater Save function
@@ -431,102 +411,108 @@ function alm_delete_cache(){
431
 
432
  function alm_save_repeater(){
433
 
434
- global $wpdb;
435
- $table_name = $wpdb->prefix . "alm";
436
- $blog_id = $wpdb->blogid;
437
- $options = get_option( 'alm_settings' ); //Get plugin options
438
-
439
- $nonce = $_POST["nonce"];
440
- // Check our nonce, if they don't match then bounce!
441
- if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
442
- die('Error - unable to verify nonce, please try again.');
443
 
444
- // Get _POST Vars
445
- $c = Trim(stripslashes($_POST["value"])); // Repeater Value
446
- $n = Trim(stripslashes($_POST["repeater"])); // Repeater name
447
- $t = Trim(stripslashes($_POST["type"])); // Repeater name
448
- $a = Trim(stripslashes($_POST["alias"])); // Repeater alias
449
-
450
- // Write to repeater templates
451
-
452
- // (Default)
453
- if($t === 'default'){
454
 
455
- if($blog_id > 1){
456
- $dir = ALM_PATH. 'core/repeater/'. $blog_id;
457
- if( !is_dir($dir) ){
458
- mkdir($dir);
459
- }
460
- $f = ALM_PATH. 'core/repeater/'. $blog_id .'/default.php';
461
- }else{
462
- $f = ALM_PATH. 'core/repeater/default.php';
463
- }
 
464
 
465
- }
466
- // (Unlimited)
467
- elseif($t === 'unlimited'){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
468
 
469
- if($blog_id > 1){
470
- $dir = ALM_UNLIMITED_PATH. 'repeaters/'. $blog_id;
471
- if( !is_dir($dir) ){
472
- mkdir($dir);
473
  }
474
- $f = ALM_UNLIMITED_PATH. 'repeaters/'. $blog_id .'/'.$n .'.php';
475
- }else{
476
- $f = ALM_UNLIMITED_PATH. 'repeaters/'.$n .'.php';
477
- }
478
 
479
- }
480
- // (Unlimited v1)
481
- else{
482
-
483
- $f = ALM_REPEATER_PATH. 'repeaters/'.$n .'.php';
 
 
 
 
 
 
 
 
 
 
 
 
484
 
485
- }
486
-
487
- try {
488
- $o = fopen($f, 'w+'); //Open file
489
- if ( !$o ) {
490
- throw new Exception(__('[Ajax Load More] Unable to open repeater template - '.$f.' - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files.', ALM_NAME));
491
- }
492
- $w = fwrite($o, $c); //Save the file
493
- if ( !$w ) {
494
- throw new Exception(__('[Ajax Load More] Error saving repeater template - '.$f.' - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files.', ALM_NAME));
495
- }
496
- fclose($o); //now close it
497
-
498
- } catch ( Exception $e ) {
499
- // Display error message in console.
500
- if(!isset($options['_alm_error_notices']) || $options['_alm_error_notices'] == '1'){
501
- echo '<script>console.log("' .$e->getMessage(). '");</script>';
502
- }
503
- }
504
-
505
- //Save to database
506
 
507
- if($t === 'default') {
508
- $data_update = array('repeaterDefault' => "$c", 'pluginVersion' => ALM_VERSION);
509
- $data_where = array('name' => "default");
510
- }
511
- elseif($t === 'unlimited'){ // Unlimited Repeaters
512
- $table_name = $wpdb->prefix . "alm_unlimited";
513
- $data_update = array('repeaterDefault' => "$c", 'alias' => "$a", 'pluginVersion' => ALM_UNLIMITED_VERSION);
514
- $data_where = array('name' => $n);
515
- }
516
- else{ // Custom Repeaters
517
- $data_update = array('repeaterDefault' => "$c", 'alias' => "$a", 'pluginVersion' => ALM_REPEATER_VERSION);
518
- $data_where = array('name' => $n);
519
- }
520
-
521
- $wpdb->update($table_name , $data_update, $data_where);
522
-
523
- //Our results
524
- if($w){
525
- echo '<span class="saved">Template Saved Successfully</span>';
526
- } else {
527
- echo '<span class="saved-error"><b>'. __('Error Writing File', ALM_NAME) .'</b></span><br/>Something went wrong and the data could not be saved.';
528
  }
529
- die();
530
  }
531
 
532
 
@@ -542,28 +528,36 @@ function alm_save_repeater(){
542
  */
543
 
544
  function alm_update_repeater(){
545
- $nonce = $_POST["nonce"];
546
- // Check our nonce, if they don't match then bounce!
547
- if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
548
- die('Error - unable to verify nonce, please try again.');
549
 
550
- // Get _POST Vars
551
- $n = Trim(stripslashes($_POST["repeater"])); // Repeater name
552
- $t = Trim(stripslashes($_POST["type"])); // Repeater type (default | unlimited)
553
-
554
-
555
- // Get value from database
556
- global $wpdb;
557
- $table_name = $wpdb->prefix . "alm";
558
 
559
- if($t === 'default') $n = 'default';
560
- if($t === 'unlimited') $table_name = $wpdb->prefix . "alm_unlimited";
561
-
562
- $the_repeater = $wpdb->get_var("SELECT repeaterDefault FROM " . $table_name . " WHERE name = '$n'");
563
-
564
- echo $the_repeater; // Return repeater value
565
-
566
- die();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
567
  }
568
 
569
 
@@ -638,7 +632,7 @@ function alm_admin_init(){
638
 
639
  add_settings_field( // Container type
640
  '_alm_container_type',
641
- __('Container Type', ALM_NAME ),
642
  'alm_container_type_callback',
643
  'ajax-load-more',
644
  'alm_general_settings'
@@ -646,7 +640,7 @@ function alm_admin_init(){
646
 
647
  add_settings_field( // Classnames
648
  '_alm_classname',
649
- __('Container Classes', ALM_NAME ),
650
  'alm_class_callback',
651
  'ajax-load-more',
652
  'alm_general_settings'
@@ -654,7 +648,7 @@ function alm_admin_init(){
654
 
655
  add_settings_field( // Disbale CSS
656
  '_alm_disable_css',
657
- __('Disable CSS', ALM_NAME ),
658
  'alm_disable_css_callback',
659
  'ajax-load-more',
660
  'alm_general_settings'
@@ -662,7 +656,7 @@ function alm_admin_init(){
662
 
663
  add_settings_field( // Btn color
664
  '_alm_btn_color',
665
- __('Button Color', ALM_NAME ),
666
  'alm_btn_color_callback',
667
  'ajax-load-more',
668
  'alm_general_settings'
@@ -670,7 +664,7 @@ function alm_admin_init(){
670
 
671
  add_settings_field( // Button classes
672
  '_alm_btn_classname',
673
- __('Button Classes', ALM_NAME ),
674
  'alm_btn_class_callback',
675
  'ajax-load-more',
676
  'alm_general_settings'
@@ -678,7 +672,7 @@ function alm_admin_init(){
678
 
679
  add_settings_field( // Nonce security
680
  '_alm_nonce_security',
681
- __('Ajax Security', ALM_NAME ),
682
  '_alm_nonce_security_callback',
683
  'ajax-load-more',
684
  'alm_general_settings'
@@ -686,7 +680,7 @@ function alm_admin_init(){
686
 
687
  add_settings_field( // Scroll to top on load
688
  '_alm_scroll_top',
689
- __('Top of Page', ALM_NAME ),
690
  '_alm_scroll_top_callback',
691
  'ajax-load-more',
692
  'alm_general_settings'
@@ -694,7 +688,7 @@ function alm_admin_init(){
694
 
695
  add_settings_field( // Load dynamic queries
696
  '_alm_disable_dynamic',
697
- __('Dynamic Content', ALM_NAME ),
698
  'alm_disable_dynamic_callback',
699
  'ajax-load-more',
700
  'alm_admin_settings'
@@ -702,7 +696,7 @@ function alm_admin_init(){
702
 
703
  add_settings_field( // Hide btn
704
  '_alm_hide_btn',
705
- __('Editor Button', ALM_NAME ),
706
  'alm_hide_btn_callback',
707
  'ajax-load-more',
708
  'alm_admin_settings'
@@ -710,7 +704,7 @@ function alm_admin_init(){
710
 
711
  add_settings_field( // Display error notices
712
  '_alm_error_notices',
713
- __('Error Notices', ALM_NAME ),
714
  '_alm_error_notices_callback',
715
  'ajax-load-more',
716
  'alm_admin_settings'
@@ -769,7 +763,7 @@ function alm_admin_init(){
769
  */
770
 
771
  function alm_general_settings_callback() {
772
- echo '<p>' . __('Customize the user experience of Ajax Load More by updating the fields below.', ALM_NAME) . '</p>';
773
  }
774
 
775
 
@@ -782,7 +776,7 @@ function alm_general_settings_callback() {
782
  */
783
 
784
  function alm_admin_settings_callback() {
785
- echo '<p>' . __('The following settings affect the WordPress admin area only.', ALM_NAME) . '</p>';
786
  }
787
 
788
 
@@ -813,7 +807,7 @@ function alm_disable_css_callback(){
813
 
814
  $html = '<input type="hidden" name="alm_settings[_alm_disable_css]" value="0" />';
815
  $html .= '<input type="checkbox" id="alm_disable_css_input" name="alm_settings[_alm_disable_css]" value="1"'. (($options['_alm_disable_css']) ? ' checked="checked"' : '') .' />';
816
- $html .= '<label for="alm_disable_css_input">'.__('I want to use my own CSS styles.', ALM_NAME).'<br/><span style="display:block;"><i class="fa fa-file-text-o"></i> &nbsp;<a href="'.ALM_URL.'/core/css/ajax-load-more.css" target="blank">'.__('View Ajax Load More CSS', ALM_NAME).'</a></span></label>';
817
 
818
  echo $html;
819
  }
@@ -833,7 +827,7 @@ function alm_hide_btn_callback(){
833
  $options['_alm_hide_btn'] = '0';
834
 
835
  $html = '<input type="hidden" name="alm_settings[_alm_hide_btn]" value="0" /><input type="checkbox" id="alm_hide_btn" name="alm_settings[_alm_hide_btn]" value="1"'. (($options['_alm_hide_btn']) ? ' checked="checked"' : '') .' />';
836
- $html .= '<label for="alm_hide_btn">'.__('Hide shortcode button in WYSIWYG editor.', ALM_NAME).'</label>';
837
 
838
  echo $html;
839
  }
@@ -854,7 +848,7 @@ function _alm_error_notices_callback(){
854
 
855
  $html = '<input type="hidden" name="alm_settings[_alm_error_notices]" value="0" />';
856
  $html .= '<input type="checkbox" name="alm_settings[_alm_error_notices]" id="_alm_error_notices" value="1"'. (($options['_alm_error_notices']) ? ' checked="checked"' : '') .' />';
857
- $html .= '<label for="_alm_error_notices">'.__('Display error messaging regarding repeater template updates in the browser console.', ALM_NAME).'</label>';
858
 
859
  echo $html;
860
  }
@@ -875,7 +869,7 @@ function alm_disable_dynamic_callback(){
875
 
876
  $html = '<input type="hidden" name="alm_settings[_alm_disable_dynamic]" value="0" />';
877
  $html .= '<input type="checkbox" name="alm_settings[_alm_disable_dynamic]" id="_alm_disable_dynamic" value="1"'. (($options['_alm_disable_dynamic']) ? ' checked="checked"' : '') .' />';
878
- $html .= '<label for="_alm_disable_dynamic">'.__('Disable dynamic population of categories, tags and authors in the Shortcode Builder.<span style="display:block">Recommended if you have an extraordinary number of categories, tags and/or authors.', ALM_NAME).'</label>';
879
 
880
  echo $html;
881
  }
@@ -896,12 +890,12 @@ function alm_container_type_callback() {
896
  $options['_alm_container_type'] = '1';
897
 
898
  $html = '<input type="radio" id="_alm_container_type_one" name="alm_settings[_alm_container_type]" value="1"' . checked( 1, $options['_alm_container_type'], false ) . '/>';
899
- $html .= '<label for="_alm_container_type_one">&lt;ul&gt; <span>&lt;!-- '.__('Ajax Posts Here', ALM_NAME).' --&gt;</span> &lt;/ul&gt;</label><br/>';
900
 
901
  $html .= '<input type="radio" id="_alm_container_type_two" name="alm_settings[_alm_container_type]" value="2"' . checked( 2, $options['_alm_container_type'], false ) . '/>';
902
- $html .= '<label for="_alm_container_type_two">&lt;div&gt; <span>&lt;!-- '.__('Ajax Posts Here', ALM_NAME).' --&gt;</span> &lt;/div&gt;</label>';
903
 
904
- $html .= '<label style="cursor: default !important"><span style="display:block">'.__('You can modify the container type when building a shortcode.', ALM_NAME).'</span></label>';
905
 
906
  echo $html;
907
 
@@ -918,7 +912,7 @@ function alm_container_type_callback() {
918
  function alm_class_callback(){
919
  $options = get_option( 'alm_settings' );
920
 
921
- $html = '<label for="alm_settings[_alm_classname]">'.__('Add classes to Ajax Load More container - classes are applied globally and will appear with every instance of Ajax Load More. <span style="display:block">You can also add classes when building a shortcode.</span>', ALM_NAME).'</label><br/>';
922
  $html .= '<input type="text" id="alm_settings[_alm_classname]" name="alm_settings[_alm_classname]" value="'.$options['_alm_classname'].'" placeholder="posts listing etc..." /> ';
923
 
924
  echo $html;
@@ -962,7 +956,7 @@ function alm_btn_color_callback() {
962
  $selected6 = '';
963
  if($color == 'white') $selected6 = 'selected="selected"';
964
 
965
- $html = '<label for="alm_settings_btn_color">'.__('Choose your <strong>Load More</strong> button color', ALM_NAME).'.</label><br/>';
966
  $html .= '<select id="alm_settings_btn_color" name="alm_settings[_alm_btn_color]">';
967
  $html .= '<option value="default" ' . $selected0 .'>Default (Orange)</option>';
968
  $html .= '<option value="blue" ' . $selected1 .'>Blue</option>';
@@ -973,7 +967,7 @@ function alm_btn_color_callback() {
973
  $html .= '<option value="white" ' . $selected6 .'>White</option>';
974
  $html .= '</select>';
975
 
976
- $html .= '<div class="clear"></div><div class="ajax-load-more-wrap core '.$color.'"><span>'.__('Preview', ALM_NAME) .'</span><button class="alm-load-more-btn loading" disabled="disabled">Load More</button></div>';
977
  echo $html;
978
  }
979
 
@@ -992,7 +986,7 @@ function alm_btn_class_callback(){
992
  if(!isset($options['_alm_btn_classname']))
993
  $options['_alm_btn_classname'] = '';
994
 
995
- $html = '<label for="alm_settings[_alm_btn_classname]">'.__('Add classes to your <strong>Load More</strong> button', ALM_NAME).'.</label>';
996
  $html .= '<input type="text" class="btn-classes" id="alm_settings[_alm_btn_classname]" name="alm_settings[_alm_btn_classname]" value="'.$options['_alm_btn_classname'].'" placeholder="button rounded listing etc..." /> ';
997
 
998
  echo $html;
@@ -1052,7 +1046,7 @@ function _alm_scroll_top_callback(){
1052
 
1053
  $html = '<input type="hidden" name="alm_settings[_alm_scroll_top]" value="0" />';
1054
  $html .= '<input type="checkbox" name="alm_settings[_alm_scroll_top]" id="_alm_scroll_top" value="1"'. (($options['_alm_scroll_top']) ? ' checked="checked"' : '') .' />';
1055
- $html .= '<label for="_alm_scroll_top">'.__('On initial page load, move the user\'s browser window to the top of the screen.<span style="display:block">This <u>may</u> help prevent the loading of unnecessary posts.</span>', ALM_NAME).'</label>';
1056
 
1057
  echo $html;
1058
  }
@@ -1073,7 +1067,7 @@ function _alm_nonce_security_callback(){
1073
 
1074
  $html = '<input type="hidden" name="alm_settings[_alm_nonce_security]" value="0" />';
1075
  $html .= '<input type="checkbox" name="alm_settings[_alm_nonce_security]" id="_alm_nonce_security" value="1"'. (($options['_alm_nonce_security']) ? ' checked="checked"' : '') .' />';
1076
- $html .= '<label for="_alm_nonce_security">'.__('Enable <a href="https://codex.wordpress.org/WordPress_Nonces" target="_blank">WP nonce</a> verification to help protect URLs against certain types of misuse, malicious or otherwise on each Ajax Load More query.', ALM_NAME).'</label>';
1077
 
1078
  echo $html;
1079
  }
3
  /* Admin function */
4
 
5
  add_action( 'plugins_loaded', 'alm_core_update' ); // Core Update
 
6
  add_action( 'wp_ajax_alm_save_repeater', 'alm_save_repeater' ); // Ajax Save Repeater
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
28
  <?php }
29
 
30
 
31
+ /*
32
+ * alm_set_admin_nonce
33
+ * Create admin nonce on Repeater Template page only
34
+ *
35
+ * @since 2.8.2
36
+ */
37
+ function alm_set_admin_nonce(){
38
+ add_action( 'admin_head', 'alm_admin_vars' ); // Localized Vars
39
+ }
40
+
41
+
42
 
43
  /**
44
  * alm_core_update
124
  try {
125
  $o = fopen($f, 'w+'); //Open file
126
  if ( !$o ) {
127
+ throw new Exception(__('[Ajax Load More] Error opening default repeater template - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files within the /ajax-load-more/core/repeater directory', 'ajax-load-more'));
128
  }
129
  $w = fwrite($o, $data); //Save the file
130
  if ( !$w ) {
131
+ throw new Exception(__('[Ajax Load More] Error updating default repeater template - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files within the /ajax-load-more/core/repeater directory.', 'ajax-load-more'));
132
  }
133
  fclose($o); //now close it
134
 
238
  //Add our admin scripts
239
  add_action( 'load-' . $alm_settings_page, 'alm_load_admin_js' );
240
  add_action( 'load-' . $alm_template_page, 'alm_load_admin_js' );
241
+ add_action( 'load-' . $alm_template_page, 'alm_set_admin_nonce' );
242
  add_action( 'load-' . $alm_shortcode_page, 'alm_load_admin_js' );
243
  add_action( 'load-' . $alm_examples_page, 'alm_load_admin_js' );
244
  add_action( 'load-' . $alm_addons_page, 'alm_load_admin_js' );
276
  wp_enqueue_style( 'alm-admin-css', ALM_ADMIN_URL. 'css/admin.css');
277
  wp_enqueue_style( 'alm-select2-css', ALM_ADMIN_URL. 'css/select2.css');
278
  wp_enqueue_style( 'alm-core-css', ALM_URL. '/core/css/ajax-load-more.css');
279
+ wp_enqueue_style( 'alm-font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css');
280
 
281
  //Load CodeMirror Syntax Highlighting if on Repater Template page
282
  $screen = get_current_screen();
401
 
402
 
403
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
404
  /*
405
  * alm_save_repeater
406
  * Repeater Save function
411
 
412
  function alm_save_repeater(){
413
 
414
+ if (current_user_can( 'edit_theme_options' )){
 
 
 
 
 
 
 
 
415
 
416
+ global $wpdb;
417
+ $table_name = $wpdb->prefix . "alm";
418
+ $blog_id = $wpdb->blogid;
419
+ $options = get_option( 'alm_settings' ); //Get plugin options
 
 
 
 
 
 
420
 
421
+ $nonce = $_POST["nonce"];
422
+ // Check our nonce, if they don't match then bounce!
423
+ if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
424
+ die('Error - unable to verify nonce, please try again.');
425
+
426
+ // Get _POST Vars
427
+ $c = Trim(stripslashes($_POST["value"])); // Repeater Value
428
+ $n = Trim(stripslashes($_POST["repeater"])); // Repeater name
429
+ $t = Trim(stripslashes($_POST["type"])); // Repeater name
430
+ $a = Trim(stripslashes($_POST["alias"])); // Repeater alias
431
 
432
+ // Write to repeater templates
433
+
434
+ // (Default)
435
+ if($t === 'default'){
436
+
437
+ if($blog_id > 1){
438
+ $dir = ALM_PATH. 'core/repeater/'. $blog_id;
439
+ if( !is_dir($dir) ){
440
+ mkdir($dir);
441
+ }
442
+ $f = ALM_PATH. 'core/repeater/'. $blog_id .'/default.php';
443
+ }else{
444
+ $f = ALM_PATH. 'core/repeater/default.php';
445
+ }
446
+
447
+ }
448
+ // (Unlimited)
449
+ elseif($t === 'unlimited'){
450
+
451
+ if($blog_id > 1){
452
+ $dir = ALM_UNLIMITED_PATH. 'repeaters/'. $blog_id;
453
+ if( !is_dir($dir) ){
454
+ mkdir($dir);
455
+ }
456
+ $f = ALM_UNLIMITED_PATH. 'repeaters/'. $blog_id .'/'.$n .'.php';
457
+ }else{
458
+ $f = ALM_UNLIMITED_PATH. 'repeaters/'.$n .'.php';
459
+ }
460
+
461
+ }
462
+ // (Unlimited v1)
463
+ else{
464
+
465
+ $f = ALM_REPEATER_PATH. 'repeaters/'.$n .'.php';
466
+
467
+ }
468
+
469
+ try {
470
+ $o = fopen($f, 'w+'); //Open file
471
+ if ( !$o ) {
472
+ throw new Exception(__('[Ajax Load More] Unable to open repeater template - '.$f.' - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files.', 'ajax-load-more'));
473
+ }
474
+ $w = fwrite($o, $c); //Save the file
475
+ if ( !$w ) {
476
+ throw new Exception(__('[Ajax Load More] Error saving repeater template - '.$f.' - Please check your file path and ensure your server is configured to allow Ajax Load More to read and write files.', 'ajax-load-more'));
477
+ }
478
+ fclose($o); //now close it
479
 
480
+ } catch ( Exception $e ) {
481
+ // Display error message in console.
482
+ if(!isset($options['_alm_error_notices']) || $options['_alm_error_notices'] == '1'){
483
+ echo '<script>console.log("' .$e->getMessage(). '");</script>';
484
  }
485
+ }
 
 
 
486
 
487
+ //Save to database
488
+
489
+ if($t === 'default') {
490
+ $data_update = array('repeaterDefault' => "$c", 'pluginVersion' => ALM_VERSION);
491
+ $data_where = array('name' => "default");
492
+ }
493
+ elseif($t === 'unlimited'){ // Unlimited Repeaters
494
+ $table_name = $wpdb->prefix . "alm_unlimited";
495
+ $data_update = array('repeaterDefault' => "$c", 'alias' => "$a", 'pluginVersion' => ALM_UNLIMITED_VERSION);
496
+ $data_where = array('name' => $n);
497
+ }
498
+ else{ // Custom Repeaters
499
+ $data_update = array('repeaterDefault' => "$c", 'alias' => "$a", 'pluginVersion' => ALM_REPEATER_VERSION);
500
+ $data_where = array('name' => $n);
501
+ }
502
+
503
+ $wpdb->update($table_name , $data_update, $data_where);
504
 
505
+ //Our results
506
+ if($w){
507
+ echo '<span class="saved">Template Saved Successfully</span>';
508
+ } else {
509
+ echo '<span class="saved-error"><b>'. __('Error Writing File', 'ajax-load-more') .'</b></span><br/>Something went wrong and the data could not be saved.';
510
+ }
511
+ die();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
512
 
513
+ }else {
514
+ echo __('You don\'t belong here.', 'ajax-load-more');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
515
  }
 
516
  }
517
 
518
 
528
  */
529
 
530
  function alm_update_repeater(){
 
 
 
 
531
 
532
+ if (current_user_can( 'edit_theme_options' )){
 
 
 
 
 
 
 
533
 
534
+ $nonce = $_POST["nonce"];
535
+ // Check our nonce, if they don't match then bounce!
536
+ if (! wp_verify_nonce( $nonce, 'alm_repeater_nonce' ))
537
+ die('Error - unable to verify nonce, please try again.');
538
+
539
+ // Get _POST Vars
540
+ $n = Trim(stripslashes($_POST["repeater"])); // Repeater name
541
+ $t = Trim(stripslashes($_POST["type"])); // Repeater type (default | unlimited)
542
+
543
+
544
+ // Get value from database
545
+ global $wpdb;
546
+ $table_name = $wpdb->prefix . "alm";
547
+
548
+ if($t === 'default') $n = 'default';
549
+ if($t === 'unlimited') $table_name = $wpdb->prefix . "alm_unlimited";
550
+
551
+ $the_repeater = $wpdb->get_var("SELECT repeaterDefault FROM " . $table_name . " WHERE name = '$n'");
552
+
553
+ echo $the_repeater; // Return repeater value
554
+
555
+ die();
556
+
557
+ } else {
558
+ echo __('You don\'t belong here.', 'ajax-load-more');
559
+ }
560
+
561
  }
562
 
563
 
632
 
633
  add_settings_field( // Container type
634
  '_alm_container_type',
635
+ __('Container Type', 'ajax-load-more' ),
636
  'alm_container_type_callback',
637
  'ajax-load-more',
638
  'alm_general_settings'
640
 
641
  add_settings_field( // Classnames
642
  '_alm_classname',
643
+ __('Container Classes', 'ajax-load-more' ),
644
  'alm_class_callback',
645
  'ajax-load-more',
646
  'alm_general_settings'
648
 
649
  add_settings_field( // Disbale CSS
650
  '_alm_disable_css',
651
+ __('Disable CSS', 'ajax-load-more' ),
652
  'alm_disable_css_callback',
653
  'ajax-load-more',
654
  'alm_general_settings'
656
 
657
  add_settings_field( // Btn color
658
  '_alm_btn_color',
659
+ __('Button Color', 'ajax-load-more' ),
660
  'alm_btn_color_callback',
661
  'ajax-load-more',
662
  'alm_general_settings'
664
 
665
  add_settings_field( // Button classes
666
  '_alm_btn_classname',
667
+ __('Button Classes', 'ajax-load-more' ),
668
  'alm_btn_class_callback',
669
  'ajax-load-more',
670
  'alm_general_settings'
672
 
673
  add_settings_field( // Nonce security
674
  '_alm_nonce_security',
675
+ __('Ajax Security', 'ajax-load-more' ),
676
  '_alm_nonce_security_callback',
677
  'ajax-load-more',
678
  'alm_general_settings'
680
 
681
  add_settings_field( // Scroll to top on load
682
  '_alm_scroll_top',
683
+ __('Top of Page', 'ajax-load-more' ),
684
  '_alm_scroll_top_callback',
685
  'ajax-load-more',
686
  'alm_general_settings'
688
 
689
  add_settings_field( // Load dynamic queries
690
  '_alm_disable_dynamic',
691
+ __('Dynamic Content', 'ajax-load-more' ),
692
  'alm_disable_dynamic_callback',
693
  'ajax-load-more',
694
  'alm_admin_settings'
696
 
697
  add_settings_field( // Hide btn
698
  '_alm_hide_btn',
699
+ __('Editor Button', 'ajax-load-more' ),
700
  'alm_hide_btn_callback',
701
  'ajax-load-more',
702
  'alm_admin_settings'
704
 
705
  add_settings_field( // Display error notices
706
  '_alm_error_notices',
707
+ __('Error Notices', 'ajax-load-more' ),
708
  '_alm_error_notices_callback',
709
  'ajax-load-more',
710
  'alm_admin_settings'
763
  */
764
 
765
  function alm_general_settings_callback() {
766
+ echo '<p>' . __('Customize the user experience of Ajax Load More by updating the fields below.', 'ajax-load-more') . '</p>';
767
  }
768
 
769
 
776
  */
777
 
778
  function alm_admin_settings_callback() {
779
+ echo '<p>' . __('The following settings affect the WordPress admin area only.', 'ajax-load-more') . '</p>';
780
  }
781
 
782
 
807
 
808
  $html = '<input type="hidden" name="alm_settings[_alm_disable_css]" value="0" />';
809
  $html .= '<input type="checkbox" id="alm_disable_css_input" name="alm_settings[_alm_disable_css]" value="1"'. (($options['_alm_disable_css']) ? ' checked="checked"' : '') .' />';
810
+ $html .= '<label for="alm_disable_css_input">'.__('I want to use my own CSS styles.', 'ajax-load-more').'<br/><span style="display:block;"><i class="fa fa-file-text-o"></i> &nbsp;<a href="'.ALM_URL.'/core/css/ajax-load-more.css" target="blank">'.__('View Ajax Load More CSS', 'ajax-load-more').'</a></span></label>';
811
 
812
  echo $html;
813
  }
827
  $options['_alm_hide_btn'] = '0';
828
 
829
  $html = '<input type="hidden" name="alm_settings[_alm_hide_btn]" value="0" /><input type="checkbox" id="alm_hide_btn" name="alm_settings[_alm_hide_btn]" value="1"'. (($options['_alm_hide_btn']) ? ' checked="checked"' : '') .' />';
830
+ $html .= '<label for="alm_hide_btn">'.__('Hide shortcode button in WYSIWYG editor.', 'ajax-load-more').'</label>';
831
 
832
  echo $html;
833
  }
848
 
849
  $html = '<input type="hidden" name="alm_settings[_alm_error_notices]" value="0" />';
850
  $html .= '<input type="checkbox" name="alm_settings[_alm_error_notices]" id="_alm_error_notices" value="1"'. (($options['_alm_error_notices']) ? ' checked="checked"' : '') .' />';
851
+ $html .= '<label for="_alm_error_notices">'.__('Display error messaging regarding repeater template updates in the browser console.', 'ajax-load-more').'</label>';
852
 
853
  echo $html;
854
  }
869
 
870
  $html = '<input type="hidden" name="alm_settings[_alm_disable_dynamic]" value="0" />';
871
  $html .= '<input type="checkbox" name="alm_settings[_alm_disable_dynamic]" id="_alm_disable_dynamic" value="1"'. (($options['_alm_disable_dynamic']) ? ' checked="checked"' : '') .' />';
872
+ $html .= '<label for="_alm_disable_dynamic">'.__('Disable dynamic population of categories, tags and authors in the Shortcode Builder.<span style="display:block">Recommended if you have an extraordinary number of categories, tags and/or authors.', 'ajax-load-more').'</label>';
873
 
874
  echo $html;
875
  }
890
  $options['_alm_container_type'] = '1';
891
 
892
  $html = '<input type="radio" id="_alm_container_type_one" name="alm_settings[_alm_container_type]" value="1"' . checked( 1, $options['_alm_container_type'], false ) . '/>';
893
+ $html .= '<label for="_alm_container_type_one">&lt;ul&gt; <span>&lt;!-- '.__('Ajax Posts Here', 'ajax-load-more').' --&gt;</span> &lt;/ul&gt;</label><br/>';
894
 
895
  $html .= '<input type="radio" id="_alm_container_type_two" name="alm_settings[_alm_container_type]" value="2"' . checked( 2, $options['_alm_container_type'], false ) . '/>';
896
+ $html .= '<label for="_alm_container_type_two">&lt;div&gt; <span>&lt;!-- '.__('Ajax Posts Here', 'ajax-load-more').' --&gt;</span> &lt;/div&gt;</label>';
897
 
898
+ $html .= '<label style="cursor: default !important"><span style="display:block">'.__('You can modify the container type when building a shortcode.', 'ajax-load-more').'</span></label>';
899
 
900
  echo $html;
901
 
912
  function alm_class_callback(){
913
  $options = get_option( 'alm_settings' );
914
 
915
+ $html = '<label for="alm_settings[_alm_classname]">'.__('Add classes to Ajax Load More container - classes are applied globally and will appear with every instance of Ajax Load More. <span style="display:block">You can also add classes when building a shortcode.</span>', 'ajax-load-more').'</label><br/>';
916
  $html .= '<input type="text" id="alm_settings[_alm_classname]" name="alm_settings[_alm_classname]" value="'.$options['_alm_classname'].'" placeholder="posts listing etc..." /> ';
917
 
918
  echo $html;
956
  $selected6 = '';
957
  if($color == 'white') $selected6 = 'selected="selected"';
958
 
959
+ $html = '<label for="alm_settings_btn_color">'.__('Choose your <strong>Load More</strong> button color', 'ajax-load-more').'.</label><br/>';
960
  $html .= '<select id="alm_settings_btn_color" name="alm_settings[_alm_btn_color]">';
961
  $html .= '<option value="default" ' . $selected0 .'>Default (Orange)</option>';
962
  $html .= '<option value="blue" ' . $selected1 .'>Blue</option>';
967
  $html .= '<option value="white" ' . $selected6 .'>White</option>';
968
  $html .= '</select>';
969
 
970
+ $html .= '<div class="clear"></div><div class="ajax-load-more-wrap core '.$color.'"><span>'.__('Preview', 'ajax-load-more') .'</span><button class="alm-load-more-btn loading" disabled="disabled">Load More</button></div>';
971
  echo $html;
972
  }
973
 
986
  if(!isset($options['_alm_btn_classname']))
987
  $options['_alm_btn_classname'] = '';
988
 
989
+ $html = '<label for="alm_settings[_alm_btn_classname]">'.__('Add classes to your <strong>Load More</strong> button', 'ajax-load-more').'.</label>';
990
  $html .= '<input type="text" class="btn-classes" id="alm_settings[_alm_btn_classname]" name="alm_settings[_alm_btn_classname]" value="'.$options['_alm_btn_classname'].'" placeholder="button rounded listing etc..." /> ';
991
 
992
  echo $html;
1046
 
1047
  $html = '<input type="hidden" name="alm_settings[_alm_scroll_top]" value="0" />';
1048
  $html .= '<input type="checkbox" name="alm_settings[_alm_scroll_top]" id="_alm_scroll_top" value="1"'. (($options['_alm_scroll_top']) ? ' checked="checked"' : '') .' />';
1049
+ $html .= '<label for="_alm_scroll_top">'.__('On initial page load, move the user\'s browser window to the top of the screen.<span style="display:block">This <u>may</u> help prevent the loading of unnecessary posts.</span>', 'ajax-load-more').'</label>';
1050
 
1051
  echo $html;
1052
  }
1067
 
1068
  $html = '<input type="hidden" name="alm_settings[_alm_nonce_security]" value="0" />';
1069
  $html .= '<input type="checkbox" name="alm_settings[_alm_nonce_security]" id="_alm_nonce_security" value="1"'. (($options['_alm_nonce_security']) ? ' checked="checked"' : '') .' />';
1070
+ $html .= '<label for="_alm_nonce_security">'.__('Enable <a href="https://codex.wordpress.org/WordPress_Nonces" target="_blank">WP nonce</a> verification to help protect URLs against certain types of misuse, malicious or otherwise on each Ajax Load More query.', 'ajax-load-more').'</label>';
1071
 
1072
  echo $html;
1073
  }
admin/css/admin.css CHANGED
@@ -1578,6 +1578,31 @@ table.highlight{
1578
  margin: 0 0 10px;
1579
  line-height: 1.4;
1580
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1581
  .ajax-load-more .cnkt-sidebar .item i{
1582
  font-size: 12px;
1583
  float: left;
@@ -2393,20 +2418,36 @@ p.cache-stats{
2393
  */
2394
 
2395
  #alm-mailing-list{}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2396
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn{
2397
  display: inline-block;
2398
  background-color: #fff;
2399
  color: #333;
2400
- font-size: 24px;
2401
  padding: 0;
2402
  width: 44px;
2403
  height: 44px;
2404
  line-height: 44px;
2405
  text-align: center;
2406
  vertical-align: top;
2407
- border-radius: 4px;
2408
- margin: 5px 5px 20px 0;
2409
- opacity: 0.9;
2410
  }
2411
 
2412
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn.facebook{
@@ -2418,7 +2459,6 @@ p.cache-stats{
2418
  color: #fff;
2419
  }
2420
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn:hover{
2421
- box-shadow: 0 0 0 4px #efefef;
2422
  opacity: 1;
2423
  }
2424
 
1578
  margin: 0 0 10px;
1579
  line-height: 1.4;
1580
  }
1581
+
1582
+ .ajax-load-more .cnkt-sidebar .cta.resources li{
1583
+ display: block;
1584
+ width: 100%;
1585
+ line-height: 1;
1586
+ margin: 1px 0;
1587
+ }
1588
+ .ajax-load-more .cnkt-sidebar .cta.resources li a{
1589
+ text-decoration: none;
1590
+ padding: 10px 0;
1591
+ display: block;
1592
+ border-top: 1px solid #efefef;
1593
+ }
1594
+ .ajax-load-more .cnkt-sidebar .cta.resources li:first-of-type a{
1595
+ border: none;
1596
+ padding-top: 0;
1597
+ }
1598
+ .ajax-load-more .cnkt-sidebar .cta.resources li i{
1599
+ display: inline-block;
1600
+ width: 20px;
1601
+ text-align: center;
1602
+ color: #ccc;
1603
+ text-decoration: none;
1604
+ font-size: 14px;
1605
+ }
1606
  .ajax-load-more .cnkt-sidebar .item i{
1607
  font-size: 12px;
1608
  float: left;
2418
  */
2419
 
2420
  #alm-mailing-list{}
2421
+ #alm-mailing-list .center{
2422
+ text-align: center;
2423
+ display: block;
2424
+ background: #f7f7f7;
2425
+ border: 1px solid #efefef;
2426
+ padding: 15px;
2427
+ margin: -5px 0 20px;
2428
+ border-radius: 2px;
2429
+ box-shadow: inset 0 0 0 1px #fff;
2430
+ }
2431
+ .center-text{
2432
+ text-align: center;
2433
+ }
2434
+ #alm-mailing-list .center p{
2435
+ margin-bottom: 15px;
2436
+ }
2437
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn{
2438
  display: inline-block;
2439
  background-color: #fff;
2440
  color: #333;
2441
+ font-size: 20px;
2442
  padding: 0;
2443
  width: 44px;
2444
  height: 44px;
2445
  line-height: 44px;
2446
  text-align: center;
2447
  vertical-align: top;
2448
+ border-radius: 100%;
2449
+ margin: 0 1px 0 0;
2450
+ opacity: 0.8;
2451
  }
2452
 
2453
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn.facebook{
2459
  color: #fff;
2460
  }
2461
  .ajax-load-more .cnkt-sidebar .cta.social .follow-btn:hover{
 
2462
  opacity: 1;
2463
  }
2464
 
admin/editor/editor-build.php CHANGED
@@ -37,21 +37,21 @@ tinyMCEPopup.onInit.add(AjaxLoadMoreModal.init, AjaxLoadMoreModal);
37
  <div class="pop-up-jump">
38
  <div class="jump-menu-wrap">
39
  <select class="jump-menu">
40
- <option value="null" selected="selected">-- <?php _e('Jump to Option', ALM_NAME); ?> --</option>
41
  </select>
42
  </div>
43
  <div class="intro-wrap">
44
- <p class="intro"><?php _e('Create your own Ajax Load More shortcode by adjusting the parameters below:', ALM_NAME); ?></p>
45
  </div>
46
  </div>
47
  <div class="clear"></div>
48
  <?php include (ALM_PATH . '/admin/shortcode-builder/shortcode-builder.php'); ?>
49
 
50
  <div class="output-wrap">
51
- <a href="javascript:AjaxLoadMoreModal.insert(AjaxLoadMoreModal.local_ed)" id="insert" class="insert_alm"><i class="fa fa-chevron-circle-right"></i> <?php _e('Insert Shortcode', ALM_NAME); ?></a>
52
  <div class="shortcode-display">
53
  <div id="shortcode_output"></div>
54
- <span class="copy"><?php _e('Copy', ALM_NAME); ?></span>
55
  </div>
56
  </div
57
  </div>
37
  <div class="pop-up-jump">
38
  <div class="jump-menu-wrap">
39
  <select class="jump-menu">
40
+ <option value="null" selected="selected">-- <?php _e('Jump to Option', 'ajax-load-more'); ?> --</option>
41
  </select>
42
  </div>
43
  <div class="intro-wrap">
44
+ <p class="intro"><?php _e('Create your own Ajax Load More shortcode by adjusting the parameters below:', 'ajax-load-more'); ?></p>
45
  </div>
46
  </div>
47
  <div class="clear"></div>
48
  <?php include (ALM_PATH . '/admin/shortcode-builder/shortcode-builder.php'); ?>
49
 
50
  <div class="output-wrap">
51
+ <a href="javascript:AjaxLoadMoreModal.insert(AjaxLoadMoreModal.local_ed)" id="insert" class="insert_alm"><i class="fa fa-chevron-circle-right"></i> <?php _e('Insert Shortcode', 'ajax-load-more'); ?></a>
52
  <div class="shortcode-display">
53
  <div id="shortcode_output"></div>
54
+ <span class="copy"><?php _e('Copy', 'ajax-load-more'); ?></span>
55
  </div>
56
  </div
57
  </div>
admin/editor/editor.php CHANGED
@@ -16,7 +16,7 @@ add_action('wp_ajax_alm_lightbox', 'alm_ajax_tinymce' );
16
  function alm_ajax_tinymce(){
17
  // check for rights
18
  if ( ! current_user_can('edit_pages') && ! current_user_can('edit_posts') )
19
- die( __("You are not allowed to be here", ALM_NAME) );
20
 
21
  $window = dirname(__FILE__) . '/editor-build.php';
22
  include_once( $window );
16
  function alm_ajax_tinymce(){
17
  // check for rights
18
  if ( ! current_user_can('edit_pages') && ! current_user_can('edit_posts') )
19
+ die( __("You are not allowed to be here", 'ajax-load-more') );
20
 
21
  $window = dirname(__FILE__) . '/editor-build.php';
22
  include_once( $window );
admin/includes/components/repeater-options.php CHANGED
@@ -1,10 +1,10 @@
1
  <div class="alm-drop-btn alm-repeater-options">
2
- <a href="javascript:void(0);" class="target"><i class="fa fa-cog"></i> <?php _e('Options', ALM_NAME); ?></a>
3
  <div class="alm-dropdown">
4
  <div class="alm-drop-inner">
5
  <ul>
6
- <li class="option-update"><a href="javascript:void(0);"><i class="fa fa-download"></i> <?php _e('Update Template from Database', ALM_NAME); ?></a></li>
7
- <li class="copy"><a href="javascript:void(0);"><i class="fa fa-files-o"></i> <?php _e('Copy Template Data', ALM_NAME); ?></a></li>
8
  </ul>
9
  </div>
10
  </div>
1
  <div class="alm-drop-btn alm-repeater-options">
2
+ <a href="javascript:void(0);" class="target"><i class="fa fa-cog"></i> <?php _e('Options', 'ajax-load-more'); ?></a>
3
  <div class="alm-dropdown">
4
  <div class="alm-drop-inner">
5
  <ul>
6
+ <li class="option-update"><a href="javascript:void(0);"><i class="fa fa-download"></i> <?php _e('Update Template from Database', 'ajax-load-more'); ?></a></li>
7
+ <li class="copy"><a href="javascript:void(0);"><i class="fa fa-files-o"></i> <?php _e('Copy Template Data', 'ajax-load-more'); ?></a></li>
8
  </ul>
9
  </div>
10
  </div>
admin/includes/cta/config.php CHANGED
@@ -1,13 +1,13 @@
1
  <div class="cta">
2
- <h3><?php _e('Plugin Configurations', ALM_NAME); ?></h3>
3
  <div class="item">
4
- <h4><?php _e('Plugin Version', ALM_NAME); ?></h4>
5
  <?php
6
  echo '<p>'. ALM_VERSION .'</p>';
7
  ?>
8
  </div>
9
  <div class="item">
10
- <h4><?php _e('Release Date', ALM_NAME); ?></h4>
11
  <?php
12
  echo '<p>'. ALM_RELEASE .'</p>';
13
  ?>
1
  <div class="cta">
2
+ <h3><?php _e('Plugin Configurations', 'ajax-load-more'); ?></h3>
3
  <div class="item">
4
+ <h4><?php _e('Plugin Version', 'ajax-load-more'); ?></h4>
5
  <?php
6
  echo '<p>'. ALM_VERSION .'</p>';
7
  ?>
8
  </div>
9
  <div class="item">
10
+ <h4><?php _e('Release Date', 'ajax-load-more'); ?></h4>
11
  <?php
12
  echo '<p>'. ALM_RELEASE .'</p>';
13
  ?>
admin/includes/cta/dyk.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="cta">
2
- <h3><?php _e('Did you know?', ALM_NAME); ?></h3>
3
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/shortcode-editor.jpg"><br/>
4
- <?php _e('<p class="addon-intro">You can generate shortcodes while editing pages!</p><p>Click the Ajax Load More icon in the content editor toolbar and the <a href="?page=ajax-load-more-shortcode-builder">shortcode builder</a> will open in an overlay window.', ALM_NAME); ?></p>
5
  </div>
1
  <div class="cta">
2
+ <h3><?php _e('Did you know?', 'ajax-load-more'); ?></h3>
3
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/shortcode-editor.jpg"><br/>
4
+ <?php _e('<p class="addon-intro">You can generate shortcodes while editing pages!</p><p>Click the Ajax Load More icon in the content editor toolbar and the <a href="?page=ajax-load-more-shortcode-builder">shortcode builder</a> will open in an overlay window.', 'ajax-load-more'); ?></p>
5
  </div>
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>', ALM_NAME); ?> <a class="cnkt-button" href="http://connekthq.com/plugins/ajax-load-more/custom-repeaters" target="_blank"><?php _e('More Info', ALM_NAME); ?></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/custom-repeaters" target="_blank"><?php _e('More Info', 'ajax-load-more'); ?></a></div>
admin/includes/cta/mailinglist.php CHANGED
@@ -1,20 +1,15 @@
1
  <div class="cta mailing-list social" id="alm-mailing-list">
2
  <div class="head-wrap">
3
- <h3><?php _e('Stay Informed', ALM_NAME); ?></h3>
4
- <h4><?php _e('Follow Ajax Load More', ALM_NAME); ?></h4>
5
- <a class="follow-btn facebook" href="http://facebook.com/ajaxloadmore" target="_blank"><i class="fa fa-facebook"></i></a>
6
- <a class="follow-btn twitter" href="http://twitter.com/ajaxloadmore" target="_blank"><i class="fa fa-twitter"></i></a>
7
-
8
- <h4 style="padding-top: 15px; border-top: 1px solid #efefef;"><?php _e('Join the Mailing List', ALM_NAME); ?></h4>
9
- <p><?php _e('Receive product updates delivered (infrequently) directly to your inbox.', ALM_NAME); ?></p>
10
  </div>
11
  <form action="" method="post" id="alm-mc-embedded" name="mc-embedded-subscribe-form" class="validate" data-path="<?php echo ALM_ADMIN_URL; ?>includes/mailchimp/mailchimp-info.php" novalidate>
12
  <div class="form-wrap">
13
  <div class="inner-wrap">
14
  <i class="fa fa-envelope"></i>
15
- <label for="mc_email" class="offscreen"><?php _e('Email Address', ALM_NAME); ?> <span class="asterisk">*</span> </label>
16
- <input type="email" value="" name="email" placeholder="<?php _e('Enter email address', ALM_NAME); ?>" class="required email" id="mc_email">
17
- <button type="submit" class="submit" id="mc_signup_submit" name="mc_signup_submit" title="Subscribe"><span class="offscreen"><?php _e('Subscribe', ALM_NAME); ?></span><i class="fa fa-arrow-circle-right"></i></button>
18
  <div id="response"><div class="p-wrap"><p></p></div></div>
19
  </div>
20
  </div>
1
  <div class="cta mailing-list social" id="alm-mailing-list">
2
  <div class="head-wrap">
3
+ <h3><?php _e('Join the Mailing List', 'ajax-load-more'); ?></h3>
4
+ <p><?php _e('Enter your email below to receive product updates delivered directly to your inbox.', 'ajax-load-more'); ?></p>
 
 
 
 
 
5
  </div>
6
  <form action="" method="post" id="alm-mc-embedded" name="mc-embedded-subscribe-form" class="validate" data-path="<?php echo ALM_ADMIN_URL; ?>includes/mailchimp/mailchimp-info.php" novalidate>
7
  <div class="form-wrap">
8
  <div class="inner-wrap">
9
  <i class="fa fa-envelope"></i>
10
+ <label for="mc_email" class="offscreen"><?php _e('Email Address', 'ajax-load-more'); ?> <span class="asterisk">*</span> </label>
11
+ <input type="email" value="" name="email" placeholder="<?php _e('Enter email address', 'ajax-load-more'); ?>" class="required email" id="mc_email">
12
+ <button type="submit" class="submit" id="mc_signup_submit" name="mc_signup_submit" title="Subscribe"><span class="offscreen"><?php _e('Subscribe', 'ajax-load-more'); ?></span><i class="fa fa-arrow-circle-right"></i></button>
13
  <div id="response"><div class="p-wrap"><p></p></div></div>
14
  </div>
15
  </div>
admin/includes/cta/resources.php CHANGED
@@ -1,10 +1,12 @@
1
- <div class="cta padding-bottom">
2
- <h3>Resources</h3>
3
  <ul>
4
- <li><a target="blank" href="https://connekthq.com/plugins/ajax-load-more/">Ajax Load More Demo Site</a></li>
5
- <li><a target="blank" href="http://wordpress.org/plugins/ajax-load-more">Documentation</a></li>
6
- <li><a target="blank" href="http://wordpress.org/support/plugin/ajax-load-more">Plugin Support/Issues</a></li>
7
- <li><a target="blank" href="https://wordpress.org/support/view/plugin-reviews/ajax-load-more">Reviews</a></li>
 
 
8
  </ul>
9
- <a href="https://github.com/dcooney/wordpress-ajax-load-more" target="blank" class="visit"><i class="fa fa-github"></i> Latest build on Github</a>
10
  </div>
1
+ <div class="cta padding-bottom resources">
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>
admin/includes/cta/writeable.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="cta">
2
- <h3><?php _e('Read/Write Access', ALM_NAME); ?></h3>
3
  <div class="item">
4
  <?php
5
  //Test server for write capabilities
@@ -7,11 +7,11 @@
7
  $alm_file = ALM_PATH .'core/repeater/default.php'; // Default ALM repeater
8
  if(file_exists($alm_file)){
9
  if (is_writable($alm_file))
10
- echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>Ajax Load More</strong></p><p class="desc">Yay! Read/Write access is enabled within the /ajax-load-more/ directory.', ALM_NAME);
11
  else
12
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>Ajax Load More</strong></p>Access Denied! You must enable read and write access for Ajax Load More directory (/ajax-load-more/core/repeater/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', ALM_NAME);
13
  }else{
14
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>Ajax Load More</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', ALM_NAME);
15
  }
16
  ?>
17
 
@@ -22,11 +22,11 @@
22
  $alm_custom_repeater_file = ALM_REPEATER_PATH. '/repeaters/repeater2.php'; // Test file
23
  if(file_exists($alm_custom_repeater_file)){
24
  if (is_writable($alm_custom_repeater_file))
25
- echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>ALM - Custom Repeaters</strong></p><p class="desc">Nice! Read/Write access is enabled within the /ajax-load-more-repeaters/repeaters/ directory.', ALM_NAME);
26
  else
27
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Custom Repeaters</strong></p><p class="desc">Access Denied! You must enable read and write access for Ajax Load More Custom Repeaters directory (/ajax-load-more-repeaters/repeaters/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', ALM_NAME);
28
  }else{
29
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Custom Repeaters</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', ALM_NAME);
30
  }
31
  }
32
  ?>
@@ -38,11 +38,11 @@
38
  $alm_unlimited_file = ALM_UNLIMITED_REPEATER_PATH .'_is_writeable.php'; // Test file
39
  if(file_exists($alm_unlimited_file)){
40
  if (is_writable($alm_unlimited_file))
41
- echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>ALM - Custom Repeaters v2</strong></p><p class="desc">Oh Ya! Read/Write access is enabled within the /ajax-load-more-repeaters-v2/repeaters/ directory.', ALM_NAME);
42
  else
43
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM - Custom Repeaters v2</strong></p><p class="desc">Access Denied! You must enable read and write access for Ajax Load More Unlimited directory (/ajax-load-more-repeaters-v2/repeaters/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', ALM_NAME);
44
  }else{
45
- echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Unlimited</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', ALM_NAME);
46
  }
47
  }
48
  ?>
1
  <div class="cta">
2
+ <h3><?php _e('Read/Write Access', 'ajax-load-more'); ?></h3>
3
  <div class="item">
4
  <?php
5
  //Test server for write capabilities
7
  $alm_file = ALM_PATH .'core/repeater/default.php'; // Default ALM repeater
8
  if(file_exists($alm_file)){
9
  if (is_writable($alm_file))
10
+ echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>Ajax Load More</strong></p><p class="desc">Yay! Read/Write access is enabled within the /ajax-load-more/ directory.', 'ajax-load-more');
11
  else
12
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>Ajax Load More</strong></p>Access Denied! You must enable read and write access for Ajax Load More directory (/ajax-load-more/core/repeater/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', 'ajax-load-more');
13
  }else{
14
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>Ajax Load More</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', 'ajax-load-more');
15
  }
16
  ?>
17
 
22
  $alm_custom_repeater_file = ALM_REPEATER_PATH. '/repeaters/repeater2.php'; // Test file
23
  if(file_exists($alm_custom_repeater_file)){
24
  if (is_writable($alm_custom_repeater_file))
25
+ echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>ALM - Custom Repeaters</strong></p><p class="desc">Nice! Read/Write access is enabled within the /ajax-load-more-repeaters/repeaters/ directory.', 'ajax-load-more');
26
  else
27
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Custom Repeaters</strong></p><p class="desc">Access Denied! You must enable read and write access for Ajax Load More Custom Repeaters directory (/ajax-load-more-repeaters/repeaters/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', 'ajax-load-more');
28
  }else{
29
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Custom Repeaters</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', 'ajax-load-more');
30
  }
31
  }
32
  ?>
38
  $alm_unlimited_file = ALM_UNLIMITED_REPEATER_PATH .'_is_writeable.php'; // Test file
39
  if(file_exists($alm_unlimited_file)){
40
  if (is_writable($alm_unlimited_file))
41
+ echo __('<p class="writeable-title"><i class="fa fa-check"></i><strong>ALM - Custom Repeaters v2</strong></p><p class="desc">Oh Ya! Read/Write access is enabled within the /ajax-load-more-repeaters-v2/repeaters/ directory.', 'ajax-load-more');
42
  else
43
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM - Custom Repeaters v2</strong></p><p class="desc">Access Denied! You must enable read and write access for Ajax Load More Unlimited directory (/ajax-load-more-repeaters-v2/repeaters/) in order to save repeater template data.<br/><br/>Please contact your hosting provider or site administrator for more information.', 'ajax-load-more');
44
  }else{
45
+ echo __('<p class="writeable-title"><i class="fa fa-exclamation"></i><strong>ALM Unlimited</strong></p><p class="desc">Unable to locate configuration file. Directory access may not be granted.', 'ajax-load-more');
46
  }
47
  }
48
  ?>
admin/js/admin.js CHANGED
@@ -200,8 +200,7 @@ jQuery(document).ready(function($) {
200
  $(window).resize(function() {
201
  setTimeout(function(){
202
  equalheight(addOnColumns);
203
- }, 500);
204
-
205
  });
206
  }
207
 
200
  $(window).resize(function() {
201
  setTimeout(function(){
202
  equalheight(addOnColumns);
203
+ }, 500);
 
204
  });
205
  }
206
 
admin/shortcode-builder/includes/meta-query-options.php CHANGED
@@ -1,18 +1,18 @@
1
  <div class="inner border-top">
2
  <div class="wrap-30 wrap-50">
3
  <?php // Meta Key ?>
4
- <label for="meta-key" class="full"><?php _e('Key (Name):', ALM_NAME); ?></label>
5
- <input class="alm_element sm meta-key" name="meta-key" type="text" value="" placeholder="<?php _e('Enter custom field key(name)', ALM_NAME); ?>">
6
  </div>
7
  <?php // Meta Value ?>
8
  <div class="wrap-30 wrap-50">
9
- <label for="meta-value" class="full"><?php _e('Value:', ALM_NAME); ?></label>
10
- <input class="alm_element sm meta-value" name="meta-value" type="text" value="" placeholder="<?php _e('Enter custom field value', ALM_NAME); ?>">
11
  </div>
12
  <div class="clear"></div>
13
  <?php // Meta Compare ?>
14
  <div class="wrap-30 wrap-50 padding-top">
15
- <label for="meta-compare" class="full"><?php _e('Operator:', ALM_NAME); ?></label>
16
  <select class="alm_element meta-compare" name="meta-compare">
17
  <option value="IN" selected="selected">IN</option>
18
  <option value="NOT IN">NOT IN</option>
@@ -32,7 +32,7 @@
32
  </div>
33
  <?php // Meta Type ?>
34
  <div class="wrap-30 wrap-50 padding-top">
35
- <label for="meta-type" class="full"><?php _e('Type:', ALM_NAME); ?></label>
36
  <select class="alm_element meta-type" name="meta-type">
37
  <option value="BINARY">BINARY</option>
38
  <option value="CHAR" selected="selected">CHAR</option>
1
  <div class="inner border-top">
2
  <div class="wrap-30 wrap-50">
3
  <?php // Meta Key ?>
4
+ <label for="meta-key" class="full"><?php _e('Key (Name):', 'ajax-load-more'); ?></label>
5
+ <input class="alm_element sm meta-key" name="meta-key" type="text" value="" placeholder="<?php _e('Enter custom field key(name)', 'ajax-load-more'); ?>">
6
  </div>
7
  <?php // Meta Value ?>
8
  <div class="wrap-30 wrap-50">
9
+ <label for="meta-value" class="full"><?php _e('Value:', 'ajax-load-more'); ?></label>
10
+ <input class="alm_element sm meta-value" name="meta-value" type="text" value="" placeholder="<?php _e('Enter custom field value', 'ajax-load-more'); ?>">
11
  </div>
12
  <div class="clear"></div>
13
  <?php // Meta Compare ?>
14
  <div class="wrap-30 wrap-50 padding-top">
15
+ <label for="meta-compare" class="full"><?php _e('Operator:', 'ajax-load-more'); ?></label>
16
  <select class="alm_element meta-compare" name="meta-compare">
17
  <option value="IN" selected="selected">IN</option>
18
  <option value="NOT IN">NOT IN</option>
32
  </div>
33
  <?php // Meta Type ?>
34
  <div class="wrap-30 wrap-50 padding-top">
35
+ <label for="meta-type" class="full"><?php _e('Type:', 'ajax-load-more'); ?></label>
36
  <select class="alm_element meta-type" name="meta-type">
37
  <option value="BINARY">BINARY</option>
38
  <option value="CHAR" selected="selected">CHAR</option>
admin/shortcode-builder/shortcode-builder.php CHANGED
@@ -1,4 +1,4 @@
1
- <span class="toggle-all"><span class="inner-wrap"><em class="collapse"><?php _e('Collapse All', ALM_NAME); ?></em><em class="expand"><?php _e('Expand All', ALM_NAME); ?></em></span></span>
2
 
3
  <?php
4
  $alm_options = get_option( 'alm_settings' );
@@ -13,22 +13,22 @@
13
  <?php if(has_action('alm_cache_installed')){ ?>
14
  <!-- CACHE -->
15
  <div class="row input cache add-on" id="alm-cache">
16
- <h3 class="heading"><?php _e('Cache', ALM_NAME); ?></h3>
17
  <div class="expand-wrap">
18
  <div class="section-title">
19
- <h4>Enable Caching</h4>
20
- <p><?php _e('Turn on content caching.', ALM_NAME); ?></p>
21
  </div>
22
  <div class="wrap">
23
  <div class="inner">
24
  <ul>
25
  <li>
26
  <input class="alm_element" type="radio" name="cache" value="true" id="cache-true" >
27
- <label for="cache-true"><?php _e('True', ALM_NAME); ?></label>
28
  </li>
29
  <li>
30
  <input class="alm_element" type="radio" name="cache" value="false" id="cache-false" checked="checked">
31
- <label for="cache-false"><?php _e('False', ALM_NAME); ?></label>
32
  </li>
33
  </ul>
34
  </div>
@@ -38,14 +38,14 @@
38
  <div class="clear"></div>
39
  <hr>
40
  <div class="section-title">
41
- <h4>Cache ID</h4>
42
- <p><?php _e('You <u>must</u> generate a unique ID for this cached query - this unique ID will be used as a content identifier.', ALM_NAME); ?></p>
43
  </div>
44
  <div class="wrap">
45
  <div class="inner">
46
  <input type="text" class="alm_element disabled" name="cache-id" id="cache-id" disabled="disabled">
47
  <div class="clear"></div>
48
- <p class="generate-cache-id"><a href="javascript:void(0);"><i class="fa fa-random"></i> <?php _e('Generate New ID', ALM_NAME); ?></a></p>
49
  </div>
50
  </div>
51
  </div>
@@ -56,21 +56,21 @@
56
  <?php if(has_action('alm_paging_installed')){ ?>
57
  <!-- PAGING -->
58
  <div class="row input paging add-on" id="alm-paging">
59
- <h3 class="heading"><?php _e('Paging', ALM_NAME); ?></h3>
60
  <div class="expand-wrap">
61
  <div class="section-title">
62
- <p><?php _e('Replace infinite scrolling with a paged ajax navigation system.', ALM_NAME); ?></p>
63
  </div>
64
  <div class="wrap">
65
  <div class="inner">
66
  <ul>
67
  <li>
68
  <input class="alm_element" type="radio" name="paging" value="true" id="paging-true" >
69
- <label for="paging-true"><?php _e('True', ALM_NAME); ?></label>
70
  </li>
71
  <li>
72
  <input class="alm_element" type="radio" name="paging" value="false" id="paging-false" checked="checked">
73
- <label for="paging-false"><?php _e('False', ALM_NAME); ?></label>
74
  </li>
75
  </ul>
76
  </div>
@@ -81,19 +81,19 @@
81
 
82
  <hr/>
83
  <div class="section-title">
84
- <h4><?php _e('Paging Controls', ALM_NAME); ?></h4>
85
- <p><?php _e('Show (&laquo;)previous and next(&raquo;) buttons.', ALM_NAME); ?></p>
86
  </div>
87
  <div class="wrap">
88
  <div class="inner">
89
  <ul>
90
  <li>
91
  <input class="alm_element" type="radio" name="paging-controls" value="true" id="paging-controls-true" >
92
- <label for="paging-controls-true"><?php _e('True', ALM_NAME); ?></label>
93
  </li>
94
  <li>
95
  <input class="alm_element" type="radio" name="paging-controls" value="false" id="paging-controls-false" checked="checked">
96
- <label for="paging-controls-false"><?php _e('False', ALM_NAME); ?></label>
97
  </li>
98
  </ul>
99
  </div>
@@ -102,8 +102,8 @@
102
  <div class="clear"></div>
103
  <hr/>
104
  <div class="section-title">
105
- <h4><?php _e('Paging Navigation Classes', ALM_NAME); ?></h4>
106
- <p><?php _e('Add custom CSS classes to the paging navigation menu.', ALM_NAME); ?></p>
107
  </div>
108
  <div class="wrap">
109
  <div class="inner">
@@ -114,8 +114,8 @@
114
  <div class="clear"></div>
115
  <hr/>
116
  <div class="section-title">
117
- <h4><?php _e('Show at Most', ALM_NAME); ?></h4>
118
- <p><?php _e('The maximum amount of page menu items to show at a time. <br/.>0 = no maximum', ALM_NAME); ?></p>
119
  </div>
120
  <div class="wrap">
121
  <div class="inner">
@@ -133,21 +133,21 @@
133
  <?php if(has_action('alm_preload_installed')){ ?>
134
  <!-- PRELOAD -->
135
  <div class="row input preload add-on" id="alm-preload">
136
- <h3 class="heading"><?php _e('Preloaded', ALM_NAME); ?></h3>
137
  <div class="expand-wrap">
138
  <div class="section-title">
139
- <p><?php _e('Preload posts prior to making Ajax requests.', ALM_NAME); ?></p>
140
  </div>
141
  <div class="wrap">
142
  <div class="inner">
143
  <ul>
144
  <li>
145
  <input class="alm_element" type="radio" name="preload" value="true" id="preload-true" >
146
- <label for="preload-true"><?php _e('True', ALM_NAME); ?></label>
147
  </li>
148
  <li>
149
  <input class="alm_element" type="radio" name="preload" value="false" id="preload-false" checked="checked">
150
- <label for="preload-false"><?php _e('False', ALM_NAME); ?></label>
151
  </li>
152
  </ul>
153
  </div>
@@ -157,8 +157,8 @@
157
  <div class="clear"></div>
158
  <hr>
159
  <div class="section-title">
160
- <h4><?php _e('Preload Amount', ALM_NAME); ?></h4>
161
- <p><?php _e('Enter the number of posts to preload.', ALM_NAME); ?></p>
162
  </div>
163
  <div class="wrap">
164
  <div class="inner">
@@ -174,21 +174,21 @@
174
  <?php if(has_action('alm_prev_post_installed')){ ?>
175
  <!-- PREV POST -->
176
  <div class="row input previous-post add-on" id="alm-previous-post">
177
- <h3 class="heading"><?php _e('Previous Post', ALM_NAME); ?></h3>
178
  <div class="expand-wrap">
179
  <div class="section-title">
180
- <p><?php _e('Enable the infinite scrolling of single posts.', ALM_NAME); ?></p>
181
  </div>
182
  <div class="wrap">
183
  <div class="inner">
184
  <ul>
185
  <li>
186
  <input class="alm_element" type="radio" name="prev-post" value="true" id="prev-post-true" >
187
- <label for="prev-post-true"><?php _e('True', ALM_NAME); ?></label>
188
  </li>
189
  <li>
190
  <input class="alm_element" type="radio" name="prev-post" value="false" id="prev-post-false" checked="checked">
191
- <label for="prev-post-false"><?php _e('False', ALM_NAME); ?></label>
192
  </li>
193
  </ul>
194
  </div>
@@ -198,8 +198,8 @@
198
  <div class="clear"></div>
199
  <hr>
200
  <div class="section-title">
201
- <h4><?php _e('Post ID', ALM_NAME); ?></h4>
202
- <p><?php _e('The current post ID to pass to Ajax Load More.', ALM_NAME); ?></p>
203
  </div>
204
  <div class="wrap">
205
  <div class="inner">
@@ -207,7 +207,7 @@
207
  </div>
208
  </div>
209
  <p class="warning-callout">
210
- <?php _e('You must add the Previous Post shortcode directly to your single template file using the <a href="https://developer.wordpress.org/reference/functions/do_shortcode/" target="_blank">do_shortcode</a> method. &raquo; <a href="https://connekthq.com/plugins/ajax-load-more/add-ons/previous-post/" target="_blank">View documentation</a>', ALM_NAME); ?>
211
  </p>
212
  </div>
213
  </div>
@@ -218,21 +218,21 @@
218
  <?php if(has_action('alm_seo_installed')){ ?>
219
  <!-- SEO -->
220
  <div class="row input seo add-on" id="alm-seo">
221
- <h3 class="heading"><?php _e('SEO (Search Engine Optimization)', ALM_NAME); ?></h3>
222
  <div class="expand-wrap">
223
  <div class="section-title">
224
- <p><?php _e('Enable address bar URL rewrites as users page through ajax loaded content.', ALM_NAME); ?></p>
225
  </div>
226
  <div class="wrap">
227
  <div class="inner">
228
  <ul>
229
  <li>
230
  <input class="alm_element" type="radio" name="seo" value="true" id="seo-true" >
231
- <label for="seo-true"><?php _e('True', ALM_NAME); ?></label>
232
  </li>
233
  <li>
234
  <input class="alm_element" type="radio" name="seo" value="false" id="seo-false" checked="checked">
235
- <label for="seo-false"><?php _e('False', ALM_NAME); ?></label>
236
  </li>
237
  </ul>
238
  </div>
@@ -245,13 +245,13 @@
245
 
246
  // List available repeaters
247
  echo '<div class="row repeater" id="alm-repeaters">';
248
- echo '<h3 class="heading">'.__('Template', ALM_NAME). '</h3>';
249
  echo '<div class="expand-wrap">';
250
  echo '<div class="section-title">';
251
  if (has_action('alm_theme_repeaters_selection')){
252
- echo '<h4>'.__('Repeater Template', ALM_NAME).'</h4>';
253
  }
254
- echo '<p>'.__('Select which <a href="admin.php?page=ajax-load-more-repeaters" target="_parent">repeater template</a> you would like to use.', ALM_NAME). '</p>';
255
  echo '</div>';
256
  echo '<div class="wrap"><div class="inner">';
257
  echo '<select name="repeater-select" id="repeater-select" class="alm_element">';
@@ -288,10 +288,10 @@
288
  $types = get_post_types($pt_args);
289
  if($types){
290
  echo '<div class="row checkboxes post_types" id="alm-post-types">';
291
- echo '<h3 class="heading">'.__('Post Types', ALM_NAME). '</h3>';
292
  echo '<div class="expand-wrap">';
293
  echo '<div class="section-title">';
294
- echo '<p>'.__('Select Post Types to query.', ALM_NAME). '</p>';
295
  echo '</div>';
296
  echo '<div class="wrap"><div class="inner"><ul>';
297
  foreach( $types as $type ){
@@ -312,14 +312,14 @@
312
  $post_formats = get_theme_support( 'post-formats' );
313
  if($post_formats){
314
  echo '<div class="row checkboxes post_format" id="alm-post-format">';
315
- echo '<h3 class="heading">'.__('Post Format', ALM_NAME). '</h3>';
316
  echo '<div class="expand-wrap">';
317
  echo '<div class="section-title">';
318
- echo '<p>'.__('Select a <a href="http://codex.wordpress.org/Post_Formats" target="_blank">Post Format</a> to query.', ALM_NAME). '</p>';
319
  echo '</div>';
320
  echo '<div class="wrap"><div class="inner"><select class="alm_element" name="post-format-select" id="post-format-select">';
321
- echo '<option value="" selected="selected">-- ' . __('Select Post Format', ALM_NAME) . ' --</option>';
322
- echo '<option name="chk-standard" id="chk-standard" value="standard">' . __('Standard', ALM_NAME) . '</option>';
323
  foreach( $post_formats[0] as $post_format ){
324
  echo '<option name="chk-'.$post_format.'" id="chk-'.$post_format.'" value="'.$post_format.'">'.ucwords($post_format).'</option>';
325
  }
@@ -339,13 +339,13 @@
339
  }
340
  if($cats){ ?>
341
  <div class="row checkboxes categories" id="alm-categories">
342
- <h3 class="heading"><?php _e('Category', ALM_NAME); ?></h3>
343
  <div class="expand-wrap">
344
  <div class="section-title">
345
  <h4>Include</h4>
346
- <p><?php _e('A comma separated list of categories to include by slug. (design, research etc...)', ALM_NAME); ?><br/>
347
  &raquo; <a href="admin.php?page=ajax-load-more-examples#example-category">
348
- <?php _e('view example', ALM_NAME); ?></a></p>
349
  </div>
350
  <div class="wrap">
351
  <div class="inner">
@@ -367,8 +367,8 @@
367
  <hr/>
368
 
369
  <div class="section-title">
370
- <h4><?php _e('Exclude', ALM_NAME); ?></h4>
371
- <p><?php _e('A comma separated list of categories to exclude by ID. (3, 12, 35 etc..)', ALM_NAME); ?></p>
372
  </div>
373
  <div class="wrap">
374
  <div class="inner">
@@ -399,11 +399,11 @@
399
  }
400
  if($tags){ ?>
401
  <div class="row checkboxes tags" id="alm-tags">
402
- <h3 class="heading"><?php _e('Tag', ALM_NAME); ?></h3>
403
  <div class="expand-wrap">
404
  <div class="section-title">
405
- <h4><?php _e('Include', ALM_NAME); ?></h4>
406
- <p><?php _e('A comma separated list of tags to include by slug. (toronto, canada etc...)', ALM_NAME); ?><br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-tag">view example</a></p>
407
  </div>
408
  <div class="wrap">
409
  <div class="inner">
@@ -424,8 +424,8 @@
424
  <hr/>
425
 
426
  <div class="section-title">
427
- <h4><?php _e('Exclude', ALM_NAME); ?></h4>
428
- <p><?php _e('A comma separated list of tags to exclude by ID. (30, 12, 99 etc..)', ALM_NAME); ?></p>
429
  </div>
430
  <div class="wrap">
431
  <div class="inner">
@@ -457,17 +457,17 @@
457
  $taxonomies = get_taxonomies( $tax_args, $tax_output );
458
  if ( $taxonomies ) {
459
  echo '<div class="row taxonomy" id="alm-taxonomy">';
460
- echo '<h3 class="heading">'.__('Taxonomy', ALM_NAME). '</h3>';
461
  echo '<div class="expand-wrap">';
462
  echo '<div class="section-title">';
463
- echo '<p>'.__('Select your custom taxonomy then select the terms and operator.', ALM_NAME). '</p>';
464
  echo '</div>';
465
 
466
  echo '<div class="wrap">';
467
 
468
  echo '<div class="inner">';
469
  echo '<select class="alm_element" name="taxonomy-select" id="taxonomy-select">';
470
- echo '<option value="" selected="selected">-- ' . __('Select Taxonomy', ALM_NAME) . ' --</option>';
471
  foreach( $taxonomies as $taxonomy ){
472
  echo '<option name="chk-'.$taxonomy->query_var.'" id="chk-'.$taxonomy->query_var.'" value="'.$taxonomy->query_var.'">'.$taxonomy->label.'</option>';
473
  }
@@ -476,12 +476,12 @@
476
 
477
  echo '<div id="taxonomy-extended">';
478
  echo '<div class="inner border-top" id="tax-terms">';
479
- echo '<label class="full">'. __('Taxonomy Terms:', ALM_NAME) .'</label>';
480
  echo '<div id="tax-terms-container" class="checkboxes"></div>';
481
  echo '</div>';
482
 
483
  echo '<div class="inner border-top" id="tax-operator-select">';
484
- echo '<label class="full">'. __('Taxonomy Operator:', ALM_NAME) .'</label>';
485
  echo '<ul class="radio">';
486
  echo '<li><input class="alm_element" name="tax-operator" id="tax-in-radio" value="IN" type="radio" checked="checked"><label for="tax-in-radio">IN (default)</li>';
487
  echo '<li><input class="alm_element" name="tax-operator" id="tax-not-in-radio" value="NOT IN" type="radio"><label for="tax-not-in-radio">NOT IN</li>';
@@ -497,24 +497,24 @@
497
 
498
  <!-- Date -->
499
  <div class="row input date" id="alm-date">
500
- <h3 class="heading"><?php _e('Date', ALM_NAME); ?></h3>
501
  <div class="expand-wrap">
502
  <div class="section-title">
503
- <p><?php _e('Enter a year, month(number) and day to query by date archive.<br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-date">view example</a>', ALM_NAME); ?></p>
504
  </div>
505
  <div class="wrap">
506
  <div class="inner">
507
  <div class="wrap-30">
508
  <?php $today = getdate(); ?>
509
- <label for="input-year" class="full"><?php _e('Year:', ALM_NAME); ?></label>
510
  <input name="input-year" class="alm_element sm numbers-only" type="text" id="input-year" maxlength="4" placeholder="<?php echo $today['year']; ?>">
511
  </div>
512
  <div class="wrap-30">
513
- <label for="input-month" class="full"><?php _e('Month:', ALM_NAME); ?></label>
514
  <input name="input-month" class="alm_element sm numbers-only" type="text" id="input-month" maxlength="2" placeholder="<?php echo $today['mon']; ?>">
515
  </div>
516
  <div class="wrap-30">
517
- <label for="input-day" class="full"><?php _e('Day:', ALM_NAME); ?></label>
518
  <input name="input-day" class="alm_element sm numbers-only" type="text" id="input-day" maxlength="2" placeholder="<?php echo $today['mday']; ?>">
519
  </div>
520
  </div>
@@ -525,10 +525,10 @@
525
 
526
  <?php // Meta_Query / Custom Fields ?>
527
  <div class="row input meta-key" id="alm-meta-key">
528
- <h3 class="heading"><?php _e('Custom Fields (Meta_Query)', ALM_NAME); ?></h3>
529
  <div class="expand-wrap">
530
  <div class="section-title full">
531
- <p><?php _e('Query for <a href="http://codex.wordpress.org/Class_Reference/WP_Meta_Query" target="_blank">custom field</a> by entering a custom field key, value and operator.', ALM_NAME); ?></p>
532
  </div>
533
  <div class="wrap full">
534
 
@@ -538,7 +538,7 @@
538
  <div id="meta-query-relation">
539
  <div class="inner border-top highlighted">
540
  <div class="wrap-30">
541
- <label for="meta-relation" class="full"><?php _e('Relation:', ALM_NAME); ?></label>
542
  <select class="alm_element meta-relation" name="meta-relation">
543
  <option value="AND" selected="selected">AND</option>
544
  <option value="OR">OR</option>
@@ -551,7 +551,7 @@
551
  </div>
552
 
553
  <div class="inner border-top controls">
554
- <button class="button button-primary" id="add-meta-query"><?php _e('Add Another', ALM_NAME); ?></button>
555
  </div>
556
 
557
  </div>
@@ -567,15 +567,15 @@
567
  }
568
  if($authors){
569
  echo '<div class="row checkboxes authors" id="alm-authors">';
570
- echo '<h3 class="heading">' . __('Author', ALM_NAME) . '</h3>';
571
  echo '<div class="expand-wrap">';
572
  echo '<div class="section-title">';
573
- echo '<p>' . __('Select an Author to query(by ID).', ALM_NAME) . '<br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-author">view example</a></p>';
574
  echo '</div>';
575
  echo '<div class="wrap"><div class="inner">';
576
  if(!$disable_dynamic_content){
577
  echo '<select class="alm_element" name="author-select" id="author-select">';
578
- echo '<option value="" selected="selected">-- ' . __('Select Author', ALM_NAME) . ' --</option>';
579
  foreach( $authors as $author ){
580
  echo '<option name="chk-'.$author->user_login.'" id="chk-'.$author->user_login.'" value="'.$author->ID.'">'.$author->display_name.'</option>';
581
  }
@@ -591,14 +591,14 @@
591
 
592
  <!-- Search term -->
593
  <div class="row input search-term" id="alm-search">
594
- <h3 class="heading"><?php _e('Search Term', ALM_NAME); ?></h3>
595
  <div class="expand-wrap">
596
  <div class="section-title">
597
- <p><?php _e('Enter a search term to query.', ALM_NAME); ?></p>
598
  </div>
599
  <div class="wrap">
600
  <div class="inner">
601
- <input name="search-term" class="alm_element" type="text" id="search-term" value="" placeholder="<?php _e('Enter search term', ALM_NAME); ?>">
602
  </div>
603
  </div>
604
  </div>
@@ -606,14 +606,14 @@
606
 
607
  <!-- Custom Arguments -->
608
  <div class="row input custom-arguments" id="alm-custom-args">
609
- <h3 class="heading"><?php _e('Custom Arguments', ALM_NAME); ?></h3>
610
  <div class="expand-wrap">
611
  <div class="section-title">
612
- <p><?php _e('A semicolon separated list of custom value:pair arguments.<br/><br/>e.g. tag_slug__and:design,development; event_display:upcoming. Default', ALM_NAME); ?></p>
613
  </div>
614
  <div class="wrap">
615
  <div class="inner">
616
- <input name="custom-args" class="alm_element" type="text" id="custom-args" value="" placeholder="<?php _e('event_display:upcoming', ALM_NAME); ?>">
617
  </div>
618
  </div>
619
  </div>
@@ -621,22 +621,22 @@
621
 
622
  <!-- Post Parameters -->
623
  <div class="row input post-in" id="alm-post-in">
624
- <h3 class="heading"><?php _e('Post Parameters', ALM_NAME); ?></h3>
625
  <div class="expand-wrap">
626
  <div class="section-title">
627
- <h4><?php _e('Include', ALM_NAME); ?></h4>
628
- <p><?php _e('A comma separated list of post ID\'s to query.', ALM_NAME); ?></p>
629
  </div>
630
  <div class="wrap">
631
  <div class="inner">
632
- <input name="post__in" class="alm_element numbers-only" type="text" id="post__in" value="" placeholder="<?php _e('225, 340, 818, etc...', ALM_NAME); ?>">
633
  </div>
634
  </div>
635
  <div class="clear"></div>
636
  <hr/>
637
  <div class="section-title">
638
- <h4><?php _e('Exclude', ALM_NAME); ?></h4>
639
- <p><?php _e('A comma separated list of post ID\'s to exclude from query.', ALM_NAME); ?><br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-exclude">view example</a></p>
640
  </div>
641
  <div class="wrap">
642
  <div class="inner">
@@ -648,15 +648,15 @@
648
 
649
  <!-- Post Status -->
650
  <div class="row input post-status" id="alm-post-status">
651
- <h3 class="heading"><?php _e('Post Status', ALM_NAME); ?></h3>
652
  <div class="expand-wrap">
653
  <div class="section-title">
654
- <p><?php _e('Select status of the post.', ALM_NAME); ?></p>
655
  </div>
656
  <div class="wrap">
657
  <div class="inner">
658
  <select class="alm_element" name="post-status" id="post-status">
659
- <option value="publish" selected="selected"><?php _e('Published', ALM_NAME); ?></option>
660
  <option value="future">Future</option>
661
  <option value="draft">Draft</option>
662
  <option value="pending">Pending</option>
@@ -670,21 +670,21 @@
670
 
671
  <!-- Ordering -->
672
  <div class="row ordering" id="alm-order">
673
- <h3 class="heading"><?php _e('Ordering', ALM_NAME); ?></h3>
674
  <div class="expand-wrap">
675
  <div class="section-title">
676
- <p><?php _e('Sort posts by Order and Orderby parameters.', ALM_NAME); ?></p>
677
  </div>
678
  <div class="wrap">
679
  <div class="inner half">
680
- <label class="full"><?php _e('Order', ALM_NAME); ?>:</label>
681
  <select class="alm_element" name="post-order" id="post-order">
682
  <option value="DESC" selected="selected">DESC (default)</option>
683
  <option value="ASC">ASC</option>
684
  </select>
685
  </div>
686
  <div class="inner half">
687
- <label class="full"><?php _e('Order By', ALM_NAME); ?>:</label>
688
  <select class="alm_element" name="post-orderby" id="post-orderby">
689
  <option value="date" selected="selected">Date (default)</option>
690
  <option value="title">Title</option>
@@ -702,10 +702,10 @@
702
 
703
  <!-- Offset -->
704
  <div class="row input offset" id="alm-offset">
705
- <h3 class="heading"><?php _e('Offset', ALM_NAME); ?></h3>
706
  <div class="expand-wrap">
707
  <div class="section-title">
708
- <p><?php _e('Offset the initial WordPress query by <em>\'n\'</em> number of posts', ALM_NAME); ?></p>
709
  </div>
710
  <div class="wrap">
711
  <div class="inner">
@@ -717,10 +717,10 @@
717
 
718
  <!-- Posts Per Page -->
719
  <div class="row input posts_per_page" id="alm-post-page">
720
- <h3 class="heading"><?php _e('Posts Per Page', ALM_NAME); ?></h3>
721
  <div class="expand-wrap">
722
  <div class="section-title">
723
- <p><?php _e('Select the number of posts to load with each request.', ALM_NAME); ?></p>
724
  </div>
725
  <div class="wrap">
726
  <div class="inner">
@@ -732,21 +732,21 @@
732
 
733
  <!-- Pause -->
734
  <div class="row checkbox pause_load" id="alm-pause">
735
- <h3 class="heading"><?php _e('Pause', ALM_NAME); ?></h3>
736
  <div class="expand-wrap">
737
  <div class="section-title">
738
- <p><?php _e('Do <u>NOT</u> load any posts until user the clicks <em>Load More</em> button.', ALM_NAME); ?></p>
739
  </div>
740
  <div class="wrap">
741
  <div class="inner">
742
  <ul>
743
  <li>
744
  <input class="alm_element" type="radio" name="pause" value="t" id="pause_t">
745
- <label for="pause_t"><?php _e('True', ALM_NAME); ?></label>
746
  </li>
747
  <li>
748
  <input class="alm_element" type="radio" name="pause" value="f" id="pause_f" checked>
749
- <label for="pause_f"><?php _e('False', ALM_NAME); ?></label>
750
  </li>
751
  </ul>
752
  </div>
@@ -756,22 +756,22 @@
756
 
757
  <!-- Allow Scrolling Load -->
758
  <div class="row checkbox scroll_load" id="alm-scroll">
759
- <h3 class="heading"><?php _e('Scrolling', ALM_NAME); ?></h3>
760
  <div class="expand-wrap">
761
  <div class="section-title">
762
- <h4><?php _e('Enable Scrolling', ALM_NAME); ?></h4>
763
- <p><?php _e('Load more posts as the user scrolls the page.', ALM_NAME); ?></p>
764
  </div>
765
  <div class="wrap">
766
  <div class="inner">
767
  <ul>
768
  <li>
769
  <input class="alm_element" type="radio" name="scroll" value="t" id="scroll_t" checked>
770
- <label for="scroll_t"><?php _e('True', ALM_NAME); ?></label>
771
  </li>
772
  <li>
773
  <input class="alm_element" type="radio" name="scroll" value="f" id="scroll_f">
774
- <label for="scroll_f"><?php _e('False', ALM_NAME); ?></label>
775
  </li>
776
  </ul>
777
  </div>
@@ -781,8 +781,8 @@
781
  <div class="clear"></div>
782
  <hr>
783
  <div class="section-title">
784
- <h4><?php _e('Scroll Distance', ALM_NAME); ?></h4>
785
- <p><?php _e('The distance from the bottom of the screen to trigger the loading of posts while scrolling. (Default = 150)', ALM_NAME); ?></p>
786
  </div>
787
  <div class="wrap">
788
  <div class="inner">
@@ -794,8 +794,8 @@
794
  <div class="clear"></div>
795
  <hr>
796
  <div class="section-title">
797
- <h4><?php _e('Maximum Pages', ALM_NAME); ?></h4>
798
- <p><?php _e('Maximum number of pages to load while scrolling. (0 = unlimited)', ALM_NAME); ?></p>
799
  </div>
800
  <div class="wrap">
801
  <div class="inner">
@@ -807,18 +807,18 @@
807
  <div class="clear"></div>
808
  <hr>
809
  <div class="section-title">
810
- <h4><?php _e('Pause Override', ALM_NAME); ?></h4>
811
- <p><?php _e('Allow scrolling to override the Pause parameter and trigger the loading of posts on scroll.', ALM_NAME); ?></p>
812
  </div>
813
  <div class="wrap">
814
  <ul>
815
  <li>
816
  <input class="alm_element" type="radio" name="pause_override" value="t" id="pause_override_t">
817
- <label for="pause_override_t"><?php _e('True', ALM_NAME); ?></label>
818
  </li>
819
  <li>
820
  <input class="alm_element" type="radio" name="pause_override" value="f" id="pause_override_f" checked="checked">
821
- <label for="pause_override_f"><?php _e('False', ALM_NAME); ?></label>
822
  </li>
823
  </ul>
824
  </div>
@@ -828,25 +828,25 @@
828
 
829
  <!-- Transition -->
830
  <div class="row input transition" id="alm-transition">
831
- <h3 class="heading"><?php _e('Transition', ALM_NAME); ?></h3>
832
  <div class="expand-wrap">
833
  <div class="section-title">
834
- <p><?php _e('Select a loading transition.', ALM_NAME); ?></p>
835
  </div>
836
  <div class="wrap">
837
  <div class="inner">
838
  <ul>
839
  <li>
840
  <input class="alm_element" type="radio" name="transition" value="slide" id="transition-slide" checked="checked">
841
- <label for="transition-slide"><?php _e('Slide', ALM_NAME); ?></label>
842
  </li>
843
  <li>
844
  <input class="alm_element" type="radio" name="transition" value="fade" id="transition-fade">
845
- <label for="transition-fade"><?php _e('Fade', ALM_NAME); ?></label>
846
  </li>
847
  <li>
848
  <input class="alm_element" type="radio" name="transition" value="none" id="transition-none">
849
- <label for="transition-none"><?php _e('None', ALM_NAME); ?></label>
850
  </li>
851
  </ul>
852
  </div>
@@ -856,21 +856,21 @@
856
 
857
  <!-- Images Loaded -->
858
  <div class="row checkbox images_loaded" id="alm-images-loaded">
859
- <h3 class="heading"><?php _e('Images Loaded', ALM_NAME); ?></h3>
860
  <div class="expand-wrap">
861
  <div class="section-title">
862
- <p><?php _e('Wait for all images to load before displaying ajax loaded content.', ALM_NAME); ?></p>
863
  </div>
864
  <div class="wrap">
865
  <div class="inner">
866
  <ul>
867
  <li>
868
  <input class="alm_element" type="radio" name="images_loaded" value="t" id="images_loaded_t">
869
- <label for="images_loaded_t"><?php _e('True', ALM_NAME); ?></label>
870
  </li>
871
  <li>
872
  <input class="alm_element" type="radio" name="images_loaded" value="f" id="images_loaded_f" checked="checked">
873
- <label for="images_loaded_f"><?php _e('False', ALM_NAME); ?></label>
874
  </li>
875
  </ul>
876
  </div>
@@ -880,10 +880,10 @@
880
 
881
  <!-- Destroy After -->
882
  <div class="row input destroy-after" id="alm-destroy-after">
883
- <h3 class="heading"><?php _e('Destroy After', ALM_NAME); ?></h3>
884
  <div class="expand-wrap">
885
  <div class="section-title">
886
- <p><?php _e('Remove ajax load more functionality after \'<em>n</em>\' number of pages have been loaded.', ALM_NAME); ?></p>
887
  </div>
888
  <div class="wrap">
889
  <div class="inner">
@@ -895,14 +895,14 @@
895
 
896
  <!-- Button Text -->
897
  <div class="row input btn-label" id="alm-btn-label">
898
- <h3 class="heading"><?php _e('Button Label', ALM_NAME); ?></h3>
899
  <div class="expand-wrap">
900
  <div class="section-title">
901
- <p><?php _e('Customize the <em>Load More</em> button label.', ALM_NAME); ?></p>
902
  </div>
903
  <div class="wrap">
904
  <div class="inner">
905
- <input class="alm_element" name="button-label" type="text" id="button-label" value="<?php _e('Older Posts', ALM_NAME); ?>">
906
  </div>
907
  </div>
908
  </div>
@@ -910,12 +910,12 @@
910
 
911
  <!-- Container Classes -->
912
  <div class="row input alm-classes" id="alm-classes">
913
- <h3 class="heading"><?php _e('Container Options', ALM_NAME); ?></h3>
914
  <div class="expand-wrap">
915
 
916
  <div class="section-title">
917
- <h4><?php _e('Container Type', ALM_NAME); ?></h4>
918
- <p><?php _e('Override the global Container Type that was set on <a href="admin.php?page=ajax-load-more">ALM Settings page</a>.', ALM_NAME); ?></p>
919
  </div>
920
  <div class="wrap">
921
  <div class="inner">
@@ -934,8 +934,8 @@
934
  <div class="clear"></div>
935
  <hr/>
936
  <div class="section-title">
937
- <h4><?php _e('Container Classes', ALM_NAME); ?></h4>
938
- <p><?php _e('Add custom CSS classes to the Ajax Load More container. <br/><br/> e.g. portfolio-listing large-12 etc', ALM_NAME); ?></p>
939
  </div>
940
  <div class="wrap">
941
  <div class="inner">
1
+ <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>
2
 
3
  <?php
4
  $alm_options = get_option( 'alm_settings' );
13
  <?php if(has_action('alm_cache_installed')){ ?>
14
  <!-- CACHE -->
15
  <div class="row input cache add-on" id="alm-cache">
16
+ <h3 class="heading"><?php _e('Cache', 'ajax-load-more'); ?></h3>
17
  <div class="expand-wrap">
18
  <div class="section-title">
19
+ <h4><?php _e('Enable Caching', 'ajax-load-more'); ?></h4>
20
+ <p><?php _e('Turn on content caching.', 'ajax-load-more'); ?></p>
21
  </div>
22
  <div class="wrap">
23
  <div class="inner">
24
  <ul>
25
  <li>
26
  <input class="alm_element" type="radio" name="cache" value="true" id="cache-true" >
27
+ <label for="cache-true"><?php _e('True', 'ajax-load-more'); ?></label>
28
  </li>
29
  <li>
30
  <input class="alm_element" type="radio" name="cache" value="false" id="cache-false" checked="checked">
31
+ <label for="cache-false"><?php _e('False', 'ajax-load-more'); ?></label>
32
  </li>
33
  </ul>
34
  </div>
38
  <div class="clear"></div>
39
  <hr>
40
  <div class="section-title">
41
+ <h4><?php _e('Cache ID', 'ajax-load-more'); ?></h4>
42
+ <p><?php _e('You <u>must</u> generate a unique ID for this cached query - this unique ID will be used as a content identifier.', 'ajax-load-more'); ?></p>
43
  </div>
44
  <div class="wrap">
45
  <div class="inner">
46
  <input type="text" class="alm_element disabled" name="cache-id" id="cache-id" disabled="disabled">
47
  <div class="clear"></div>
48
+ <p class="generate-cache-id"><a href="javascript:void(0);"><i class="fa fa-random"></i> <?php _e('Generate New ID', 'ajax-load-more'); ?></a></p>
49
  </div>
50
  </div>
51
  </div>
56
  <?php if(has_action('alm_paging_installed')){ ?>
57
  <!-- PAGING -->
58
  <div class="row input paging add-on" id="alm-paging">
59
+ <h3 class="heading"><?php _e('Paging', 'ajax-load-more'); ?></h3>
60
  <div class="expand-wrap">
61
  <div class="section-title">
62
+ <p><?php _e('Replace infinite scrolling with a paged ajax navigation system.', 'ajax-load-more'); ?></p>
63
  </div>
64
  <div class="wrap">
65
  <div class="inner">
66
  <ul>
67
  <li>
68
  <input class="alm_element" type="radio" name="paging" value="true" id="paging-true" >
69
+ <label for="paging-true"><?php _e('True', 'ajax-load-more'); ?></label>
70
  </li>
71
  <li>
72
  <input class="alm_element" type="radio" name="paging" value="false" id="paging-false" checked="checked">
73
+ <label for="paging-false"><?php _e('False', 'ajax-load-more'); ?></label>
74
  </li>
75
  </ul>
76
  </div>
81
 
82
  <hr/>
83
  <div class="section-title">
84
+ <h4><?php _e('Paging Controls', 'ajax-load-more'); ?></h4>
85
+ <p><?php _e('Show (&laquo;)previous and next(&raquo;) buttons.', 'ajax-load-more'); ?></p>
86
  </div>
87
  <div class="wrap">
88
  <div class="inner">
89
  <ul>
90
  <li>
91
  <input class="alm_element" type="radio" name="paging-controls" value="true" id="paging-controls-true" >
92
+ <label for="paging-controls-true"><?php _e('True', 'ajax-load-more'); ?></label>
93
  </li>
94
  <li>
95
  <input class="alm_element" type="radio" name="paging-controls" value="false" id="paging-controls-false" checked="checked">
96
+ <label for="paging-controls-false"><?php _e('False', 'ajax-load-more'); ?></label>
97
  </li>
98
  </ul>
99
  </div>
102
  <div class="clear"></div>
103
  <hr/>
104
  <div class="section-title">
105
+ <h4><?php _e('Paging Navigation Classes', 'ajax-load-more'); ?></h4>
106
+ <p><?php _e('Add custom CSS classes to the paging navigation menu.', 'ajax-load-more'); ?></p>
107
  </div>
108
  <div class="wrap">
109
  <div class="inner">
114
  <div class="clear"></div>
115
  <hr/>
116
  <div class="section-title">
117
+ <h4><?php _e('Show at Most', 'ajax-load-more'); ?></h4>
118
+ <p><?php _e('The maximum amount of page menu items to show at a time. <br/.>0 = no maximum', 'ajax-load-more'); ?></p>
119
  </div>
120
  <div class="wrap">
121
  <div class="inner">
133
  <?php if(has_action('alm_preload_installed')){ ?>
134
  <!-- PRELOAD -->
135
  <div class="row input preload add-on" id="alm-preload">
136
+ <h3 class="heading"><?php _e('Preloaded', 'ajax-load-more'); ?></h3>
137
  <div class="expand-wrap">
138
  <div class="section-title">
139
+ <p><?php _e('Preload posts prior to making Ajax requests.', 'ajax-load-more'); ?></p>
140
  </div>
141
  <div class="wrap">
142
  <div class="inner">
143
  <ul>
144
  <li>
145
  <input class="alm_element" type="radio" name="preload" value="true" id="preload-true" >
146
+ <label for="preload-true"><?php _e('True', 'ajax-load-more'); ?></label>
147
  </li>
148
  <li>
149
  <input class="alm_element" type="radio" name="preload" value="false" id="preload-false" checked="checked">
150
+ <label for="preload-false"><?php _e('False', 'ajax-load-more'); ?></label>
151
  </li>
152
  </ul>
153
  </div>
157
  <div class="clear"></div>
158
  <hr>
159
  <div class="section-title">
160
+ <h4><?php _e('Preload Amount', 'ajax-load-more'); ?></h4>
161
+ <p><?php _e('Enter the number of posts to preload.', 'ajax-load-more'); ?></p>
162
  </div>
163
  <div class="wrap">
164
  <div class="inner">
174
  <?php if(has_action('alm_prev_post_installed')){ ?>
175
  <!-- PREV POST -->
176
  <div class="row input previous-post add-on" id="alm-previous-post">
177
+ <h3 class="heading"><?php _e('Previous Post', 'ajax-load-more'); ?></h3>
178
  <div class="expand-wrap">
179
  <div class="section-title">
180
+ <p><?php _e('Enable the infinite scrolling of single posts.', 'ajax-load-more'); ?></p>
181
  </div>
182
  <div class="wrap">
183
  <div class="inner">
184
  <ul>
185
  <li>
186
  <input class="alm_element" type="radio" name="prev-post" value="true" id="prev-post-true" >
187
+ <label for="prev-post-true"><?php _e('True', 'ajax-load-more'); ?></label>
188
  </li>
189
  <li>
190
  <input class="alm_element" type="radio" name="prev-post" value="false" id="prev-post-false" checked="checked">
191
+ <label for="prev-post-false"><?php _e('False', 'ajax-load-more'); ?></label>
192
  </li>
193
  </ul>
194
  </div>
198
  <div class="clear"></div>
199
  <hr>
200
  <div class="section-title">
201
+ <h4><?php _e('Post ID', 'ajax-load-more'); ?></h4>
202
+ <p><?php _e('The current post ID to pass to Ajax Load More.', 'ajax-load-more'); ?></p>
203
  </div>
204
  <div class="wrap">
205
  <div class="inner">
207
  </div>
208
  </div>
209
  <p class="warning-callout">
210
+ <?php _e('You must add the Previous Post shortcode directly to your single template file using the <a href="https://developer.wordpress.org/reference/functions/do_shortcode/" target="_blank">do_shortcode</a> method. &raquo; <a href="https://connekthq.com/plugins/ajax-load-more/add-ons/previous-post/" target="_blank">View documentation</a>', 'ajax-load-more'); ?>
211
  </p>
212
  </div>
213
  </div>
218
  <?php if(has_action('alm_seo_installed')){ ?>
219
  <!-- SEO -->
220
  <div class="row input seo add-on" id="alm-seo">
221
+ <h3 class="heading"><?php _e('SEO (Search Engine Optimization)', 'ajax-load-more'); ?></h3>
222
  <div class="expand-wrap">
223
  <div class="section-title">
224
+ <p><?php _e('Enable address bar URL rewrites as users page through ajax loaded content.', 'ajax-load-more'); ?></p>
225
  </div>
226
  <div class="wrap">
227
  <div class="inner">
228
  <ul>
229
  <li>
230
  <input class="alm_element" type="radio" name="seo" value="true" id="seo-true" >
231
+ <label for="seo-true"><?php _e('True', 'ajax-load-more'); ?></label>
232
  </li>
233
  <li>
234
  <input class="alm_element" type="radio" name="seo" value="false" id="seo-false" checked="checked">
235
+ <label for="seo-false"><?php _e('False', 'ajax-load-more'); ?></label>
236
  </li>
237
  </ul>
238
  </div>
245
 
246
  // List available repeaters
247
  echo '<div class="row repeater" id="alm-repeaters">';
248
+ echo '<h3 class="heading">'.__('Template', 'ajax-load-more'). '</h3>';
249
  echo '<div class="expand-wrap">';
250
  echo '<div class="section-title">';
251
  if (has_action('alm_theme_repeaters_selection')){
252
+ echo '<h4>'.__('Repeater Template', 'ajax-load-more').'</h4>';
253
  }
254
+ echo '<p>'.__('Select which <a href="admin.php?page=ajax-load-more-repeaters" target="_parent">repeater template</a> you would like to use.', 'ajax-load-more'). '</p>';
255
  echo '</div>';
256
  echo '<div class="wrap"><div class="inner">';
257
  echo '<select name="repeater-select" id="repeater-select" class="alm_element">';
288
  $types = get_post_types($pt_args);
289
  if($types){
290
  echo '<div class="row checkboxes post_types" id="alm-post-types">';
291
+ echo '<h3 class="heading">'.__('Post Types', 'ajax-load-more'). '</h3>';
292
  echo '<div class="expand-wrap">';
293
  echo '<div class="section-title">';
294
+ echo '<p>'.__('Select Post Types to query.', 'ajax-load-more'). '</p>';
295
  echo '</div>';
296
  echo '<div class="wrap"><div class="inner"><ul>';
297
  foreach( $types as $type ){
312
  $post_formats = get_theme_support( 'post-formats' );
313
  if($post_formats){
314
  echo '<div class="row checkboxes post_format" id="alm-post-format">';
315
+ echo '<h3 class="heading">'.__('Post Format', 'ajax-load-more'). '</h3>';
316
  echo '<div class="expand-wrap">';
317
  echo '<div class="section-title">';
318
+ echo '<p>'.__('Select a <a href="http://codex.wordpress.org/Post_Formats" target="_blank">Post Format</a> to query.', 'ajax-load-more'). '</p>';
319
  echo '</div>';
320
  echo '<div class="wrap"><div class="inner"><select class="alm_element" name="post-format-select" id="post-format-select">';
321
+ echo '<option value="" selected="selected">-- ' . __('Select Post Format', 'ajax-load-more') . ' --</option>';
322
+ echo '<option name="chk-standard" id="chk-standard" value="standard">' . __('Standard', 'ajax-load-more') . '</option>';
323
  foreach( $post_formats[0] as $post_format ){
324
  echo '<option name="chk-'.$post_format.'" id="chk-'.$post_format.'" value="'.$post_format.'">'.ucwords($post_format).'</option>';
325
  }
339
  }
340
  if($cats){ ?>
341
  <div class="row checkboxes categories" id="alm-categories">
342
+ <h3 class="heading"><?php _e('Category', 'ajax-load-more'); ?></h3>
343
  <div class="expand-wrap">
344
  <div class="section-title">
345
  <h4>Include</h4>
346
+ <p><?php _e('A comma separated list of categories to include by slug. (design, research etc...)', 'ajax-load-more'); ?><br/>
347
  &raquo; <a href="admin.php?page=ajax-load-more-examples#example-category">
348
+ <?php _e('view example', 'ajax-load-more'); ?></a></p>
349
  </div>
350
  <div class="wrap">
351
  <div class="inner">
367
  <hr/>
368
 
369
  <div class="section-title">
370
+ <h4><?php _e('Exclude', 'ajax-load-more'); ?></h4>
371
+ <p><?php _e('A comma separated list of categories to exclude by ID. (3, 12, 35 etc..)', 'ajax-load-more'); ?></p>
372
  </div>
373
  <div class="wrap">
374
  <div class="inner">
399
  }
400
  if($tags){ ?>
401
  <div class="row checkboxes tags" id="alm-tags">
402
+ <h3 class="heading"><?php _e('Tag', 'ajax-load-more'); ?></h3>
403
  <div class="expand-wrap">
404
  <div class="section-title">
405
+ <h4><?php _e('Include', 'ajax-load-more'); ?></h4>
406
+ <p><?php _e('A comma separated list of tags to include by slug. (toronto, canada etc...)', 'ajax-load-more'); ?><br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-tag">view example</a></p>
407
  </div>
408
  <div class="wrap">
409
  <div class="inner">
424
  <hr/>
425
 
426
  <div class="section-title">
427
+ <h4><?php _e('Exclude', 'ajax-load-more'); ?></h4>
428
+ <p><?php _e('A comma separated list of tags to exclude by ID. (30, 12, 99 etc..)', 'ajax-load-more'); ?></p>
429
  </div>
430
  <div class="wrap">
431
  <div class="inner">
457
  $taxonomies = get_taxonomies( $tax_args, $tax_output );
458
  if ( $taxonomies ) {
459
  echo '<div class="row taxonomy" id="alm-taxonomy">';
460
+ echo '<h3 class="heading">'.__('Taxonomy', 'ajax-load-more'). '</h3>';
461
  echo '<div class="expand-wrap">';
462
  echo '<div class="section-title">';
463
+ echo '<p>'.__('Select your custom taxonomy then select the terms and operator.', 'ajax-load-more'). '</p>';
464
  echo '</div>';
465
 
466
  echo '<div class="wrap">';
467
 
468
  echo '<div class="inner">';
469
  echo '<select class="alm_element" name="taxonomy-select" id="taxonomy-select">';
470
+ echo '<option value="" selected="selected">-- ' . __('Select Taxonomy', 'ajax-load-more') . ' --</option>';
471
  foreach( $taxonomies as $taxonomy ){
472
  echo '<option name="chk-'.$taxonomy->query_var.'" id="chk-'.$taxonomy->query_var.'" value="'.$taxonomy->query_var.'">'.$taxonomy->label.'</option>';
473
  }
476
 
477
  echo '<div id="taxonomy-extended">';
478
  echo '<div class="inner border-top" id="tax-terms">';
479
+ echo '<label class="full">'. __('Taxonomy Terms:', 'ajax-load-more') .'</label>';
480
  echo '<div id="tax-terms-container" class="checkboxes"></div>';
481
  echo '</div>';
482
 
483
  echo '<div class="inner border-top" id="tax-operator-select">';
484
+ echo '<label class="full">'. __('Taxonomy Operator:', 'ajax-load-more') .'</label>';
485
  echo '<ul class="radio">';
486
  echo '<li><input class="alm_element" name="tax-operator" id="tax-in-radio" value="IN" type="radio" checked="checked"><label for="tax-in-radio">IN (default)</li>';
487
  echo '<li><input class="alm_element" name="tax-operator" id="tax-not-in-radio" value="NOT IN" type="radio"><label for="tax-not-in-radio">NOT IN</li>';
497
 
498
  <!-- Date -->
499
  <div class="row input date" id="alm-date">
500
+ <h3 class="heading"><?php _e('Date', 'ajax-load-more'); ?></h3>
501
  <div class="expand-wrap">
502
  <div class="section-title">
503
+ <p><?php _e('Enter a year, month(number) and day to query by date archive.<br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-date">view example</a>', 'ajax-load-more'); ?></p>
504
  </div>
505
  <div class="wrap">
506
  <div class="inner">
507
  <div class="wrap-30">
508
  <?php $today = getdate(); ?>
509
+ <label for="input-year" class="full"><?php _e('Year:', 'ajax-load-more'); ?></label>
510
  <input name="input-year" class="alm_element sm numbers-only" type="text" id="input-year" maxlength="4" placeholder="<?php echo $today['year']; ?>">
511
  </div>
512
  <div class="wrap-30">
513
+ <label for="input-month" class="full"><?php _e('Month:', 'ajax-load-more'); ?></label>
514
  <input name="input-month" class="alm_element sm numbers-only" type="text" id="input-month" maxlength="2" placeholder="<?php echo $today['mon']; ?>">
515
  </div>
516
  <div class="wrap-30">
517
+ <label for="input-day" class="full"><?php _e('Day:', 'ajax-load-more'); ?></label>
518
  <input name="input-day" class="alm_element sm numbers-only" type="text" id="input-day" maxlength="2" placeholder="<?php echo $today['mday']; ?>">
519
  </div>
520
  </div>
525
 
526
  <?php // Meta_Query / Custom Fields ?>
527
  <div class="row input meta-key" id="alm-meta-key">
528
+ <h3 class="heading"><?php _e('Custom Fields (Meta_Query)', 'ajax-load-more'); ?></h3>
529
  <div class="expand-wrap">
530
  <div class="section-title full">
531
+ <p><?php _e('Query for <a href="http://codex.wordpress.org/Class_Reference/WP_Meta_Query" target="_blank">custom field</a> by entering a custom field key, value and operator.', 'ajax-load-more'); ?></p>
532
  </div>
533
  <div class="wrap full">
534
 
538
  <div id="meta-query-relation">
539
  <div class="inner border-top highlighted">
540
  <div class="wrap-30">
541
+ <label for="meta-relation" class="full"><?php _e('Relation:', 'ajax-load-more'); ?></label>
542
  <select class="alm_element meta-relation" name="meta-relation">
543
  <option value="AND" selected="selected">AND</option>
544
  <option value="OR">OR</option>
551
  </div>
552
 
553
  <div class="inner border-top controls">
554
+ <button class="button button-primary" id="add-meta-query"><?php _e('Add Another', 'ajax-load-more'); ?></button>
555
  </div>
556
 
557
  </div>
567
  }
568
  if($authors){
569
  echo '<div class="row checkboxes authors" id="alm-authors">';
570
+ echo '<h3 class="heading">' . __('Author', 'ajax-load-more') . '</h3>';
571
  echo '<div class="expand-wrap">';
572
  echo '<div class="section-title">';
573
+ echo '<p>' . __('Select an Author to query(by ID).', 'ajax-load-more') . '<br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-author">view example</a></p>';
574
  echo '</div>';
575
  echo '<div class="wrap"><div class="inner">';
576
  if(!$disable_dynamic_content){
577
  echo '<select class="alm_element" name="author-select" id="author-select">';
578
+ echo '<option value="" selected="selected">-- ' . __('Select Author', 'ajax-load-more') . ' --</option>';
579
  foreach( $authors as $author ){
580
  echo '<option name="chk-'.$author->user_login.'" id="chk-'.$author->user_login.'" value="'.$author->ID.'">'.$author->display_name.'</option>';
581
  }
591
 
592
  <!-- Search term -->
593
  <div class="row input search-term" id="alm-search">
594
+ <h3 class="heading"><?php _e('Search Term', 'ajax-load-more'); ?></h3>
595
  <div class="expand-wrap">
596
  <div class="section-title">
597
+ <p><?php _e('Enter a search term to query.', 'ajax-load-more'); ?></p>
598
  </div>
599
  <div class="wrap">
600
  <div class="inner">
601
+ <input name="search-term" class="alm_element" type="text" id="search-term" value="" placeholder="<?php _e('Enter search term', 'ajax-load-more'); ?>">
602
  </div>
603
  </div>
604
  </div>
606
 
607
  <!-- Custom Arguments -->
608
  <div class="row input custom-arguments" id="alm-custom-args">
609
+ <h3 class="heading"><?php _e('Custom Arguments', 'ajax-load-more'); ?></h3>
610
  <div class="expand-wrap">
611
  <div class="section-title">
612
+ <p><?php _e('A semicolon separated list of custom value:pair arguments.<br/><br/>e.g. tag_slug__and:design,development; event_display:upcoming. Default', 'ajax-load-more'); ?></p>
613
  </div>
614
  <div class="wrap">
615
  <div class="inner">
616
+ <input name="custom-args" class="alm_element" type="text" id="custom-args" value="" placeholder="<?php _e('event_display:upcoming', 'ajax-load-more'); ?>">
617
  </div>
618
  </div>
619
  </div>
621
 
622
  <!-- Post Parameters -->
623
  <div class="row input post-in" id="alm-post-in">
624
+ <h3 class="heading"><?php _e('Post Parameters', 'ajax-load-more'); ?></h3>
625
  <div class="expand-wrap">
626
  <div class="section-title">
627
+ <h4><?php _e('Include', 'ajax-load-more'); ?></h4>
628
+ <p><?php _e('A comma separated list of post ID\'s to query.', 'ajax-load-more'); ?></p>
629
  </div>
630
  <div class="wrap">
631
  <div class="inner">
632
+ <input name="post__in" class="alm_element numbers-only" type="text" id="post__in" value="" placeholder="<?php _e('225, 340, 818, etc...', 'ajax-load-more'); ?>">
633
  </div>
634
  </div>
635
  <div class="clear"></div>
636
  <hr/>
637
  <div class="section-title">
638
+ <h4><?php _e('Exclude', 'ajax-load-more'); ?></h4>
639
+ <p><?php _e('A comma separated list of post ID\'s to exclude from query.', 'ajax-load-more'); ?><br/>&raquo; <a href="admin.php?page=ajax-load-more-examples#example-exclude"><?php _e('view example', 'ajax-load-more'); ?></a></p>
640
  </div>
641
  <div class="wrap">
642
  <div class="inner">
648
 
649
  <!-- Post Status -->
650
  <div class="row input post-status" id="alm-post-status">
651
+ <h3 class="heading"><?php _e('Post Status', 'ajax-load-more'); ?></h3>
652
  <div class="expand-wrap">
653
  <div class="section-title">
654
+ <p><?php _e('Select status of the post.', 'ajax-load-more'); ?></p>
655
  </div>
656
  <div class="wrap">
657
  <div class="inner">
658
  <select class="alm_element" name="post-status" id="post-status">
659
+ <option value="publish" selected="selected"><?php _e('Published', 'ajax-load-more'); ?></option>
660
  <option value="future">Future</option>
661
  <option value="draft">Draft</option>
662
  <option value="pending">Pending</option>
670
 
671
  <!-- Ordering -->
672
  <div class="row ordering" id="alm-order">
673
+ <h3 class="heading"><?php _e('Ordering', 'ajax-load-more'); ?></h3>
674
  <div class="expand-wrap">
675
  <div class="section-title">
676
+ <p><?php _e('Sort posts by Order and Orderby parameters.', 'ajax-load-more'); ?></p>
677
  </div>
678
  <div class="wrap">
679
  <div class="inner half">
680
+ <label class="full"><?php _e('Order', 'ajax-load-more'); ?>:</label>
681
  <select class="alm_element" name="post-order" id="post-order">
682
  <option value="DESC" selected="selected">DESC (default)</option>
683
  <option value="ASC">ASC</option>
684
  </select>
685
  </div>
686
  <div class="inner half">
687
+ <label class="full"><?php _e('Order By', 'ajax-load-more'); ?>:</label>
688
  <select class="alm_element" name="post-orderby" id="post-orderby">
689
  <option value="date" selected="selected">Date (default)</option>
690
  <option value="title">Title</option>
702
 
703
  <!-- Offset -->
704
  <div class="row input offset" id="alm-offset">
705
+ <h3 class="heading"><?php _e('Offset', 'ajax-load-more'); ?></h3>
706
  <div class="expand-wrap">
707
  <div class="section-title">
708
+ <p><?php _e('Offset the initial WordPress query by <em>\'n\'</em> number of posts', 'ajax-load-more'); ?></p>
709
  </div>
710
  <div class="wrap">
711
  <div class="inner">
717
 
718
  <!-- Posts Per Page -->
719
  <div class="row input posts_per_page" id="alm-post-page">
720
+ <h3 class="heading"><?php _e('Posts Per Page', 'ajax-load-more'); ?></h3>
721
  <div class="expand-wrap">
722
  <div class="section-title">
723
+ <p><?php _e('Select the number of posts to load with each request.', 'ajax-load-more'); ?></p>
724
  </div>
725
  <div class="wrap">
726
  <div class="inner">
732
 
733
  <!-- Pause -->
734
  <div class="row checkbox pause_load" id="alm-pause">
735
+ <h3 class="heading"><?php _e('Pause', 'ajax-load-more'); ?></h3>
736
  <div class="expand-wrap">
737
  <div class="section-title">
738
+ <p><?php _e('Do <u>NOT</u> load any posts until user the clicks <em>Load More</em> button.', 'ajax-load-more'); ?></p>
739
  </div>
740
  <div class="wrap">
741
  <div class="inner">
742
  <ul>
743
  <li>
744
  <input class="alm_element" type="radio" name="pause" value="t" id="pause_t">
745
+ <label for="pause_t"><?php _e('True', 'ajax-load-more'); ?></label>
746
  </li>
747
  <li>
748
  <input class="alm_element" type="radio" name="pause" value="f" id="pause_f" checked>
749
+ <label for="pause_f"><?php _e('False', 'ajax-load-more'); ?></label>
750
  </li>
751
  </ul>
752
  </div>
756
 
757
  <!-- Allow Scrolling Load -->
758
  <div class="row checkbox scroll_load" id="alm-scroll">
759
+ <h3 class="heading"><?php _e('Scrolling', 'ajax-load-more'); ?></h3>
760
  <div class="expand-wrap">
761
  <div class="section-title">
762
+ <h4><?php _e('Enable Scrolling', 'ajax-load-more'); ?></h4>
763
+ <p><?php _e('Load more posts as the user scrolls the page.', 'ajax-load-more'); ?></p>
764
  </div>
765
  <div class="wrap">
766
  <div class="inner">
767
  <ul>
768
  <li>
769
  <input class="alm_element" type="radio" name="scroll" value="t" id="scroll_t" checked>
770
+ <label for="scroll_t"><?php _e('True', 'ajax-load-more'); ?></label>
771
  </li>
772
  <li>
773
  <input class="alm_element" type="radio" name="scroll" value="f" id="scroll_f">
774
+ <label for="scroll_f"><?php _e('False', 'ajax-load-more'); ?></label>
775
  </li>
776
  </ul>
777
  </div>
781
  <div class="clear"></div>
782
  <hr>
783
  <div class="section-title">
784
+ <h4><?php _e('Scroll Distance', 'ajax-load-more'); ?></h4>
785
+ <p><?php _e('The distance from the bottom of the screen to trigger the loading of posts while scrolling. (Default = 150)', 'ajax-load-more'); ?></p>
786
  </div>
787
  <div class="wrap">
788
  <div class="inner">
794
  <div class="clear"></div>
795
  <hr>
796
  <div class="section-title">
797
+ <h4><?php _e('Maximum Pages', 'ajax-load-more'); ?></h4>
798
+ <p><?php _e('Maximum number of pages to load while scrolling. (0 = unlimited)', 'ajax-load-more'); ?></p>
799
  </div>
800
  <div class="wrap">
801
  <div class="inner">
807
  <div class="clear"></div>
808
  <hr>
809
  <div class="section-title">
810
+ <h4><?php _e('Pause Override', 'ajax-load-more'); ?></h4>
811
+ <p><?php _e('Allow scrolling to override the Pause parameter and trigger the loading of posts on scroll.', 'ajax-load-more'); ?></p>
812
  </div>
813
  <div class="wrap">
814
  <ul>
815
  <li>
816
  <input class="alm_element" type="radio" name="pause_override" value="t" id="pause_override_t">
817
+ <label for="pause_override_t"><?php _e('True', 'ajax-load-more'); ?></label>
818
  </li>
819
  <li>
820
  <input class="alm_element" type="radio" name="pause_override" value="f" id="pause_override_f" checked="checked">
821
+ <label for="pause_override_f"><?php _e('False', 'ajax-load-more'); ?></label>
822
  </li>
823
  </ul>
824
  </div>
828
 
829
  <!-- Transition -->
830
  <div class="row input transition" id="alm-transition">
831
+ <h3 class="heading"><?php _e('Transition', 'ajax-load-more'); ?></h3>
832
  <div class="expand-wrap">
833
  <div class="section-title">
834
+ <p><?php _e('Select a loading transition.', 'ajax-load-more'); ?></p>
835
  </div>
836
  <div class="wrap">
837
  <div class="inner">
838
  <ul>
839
  <li>
840
  <input class="alm_element" type="radio" name="transition" value="slide" id="transition-slide" checked="checked">
841
+ <label for="transition-slide"><?php _e('Slide', 'ajax-load-more'); ?></label>
842
  </li>
843
  <li>
844
  <input class="alm_element" type="radio" name="transition" value="fade" id="transition-fade">
845
+ <label for="transition-fade"><?php _e('Fade', 'ajax-load-more'); ?></label>
846
  </li>
847
  <li>
848
  <input class="alm_element" type="radio" name="transition" value="none" id="transition-none">
849
+ <label for="transition-none"><?php _e('None', 'ajax-load-more'); ?></label>
850
  </li>
851
  </ul>
852
  </div>
856
 
857
  <!-- Images Loaded -->
858
  <div class="row checkbox images_loaded" id="alm-images-loaded">
859
+ <h3 class="heading"><?php _e('Images Loaded', 'ajax-load-more'); ?></h3>
860
  <div class="expand-wrap">
861
  <div class="section-title">
862
+ <p><?php _e('Wait for all images to load before displaying ajax loaded content.', 'ajax-load-more'); ?></p>
863
  </div>
864
  <div class="wrap">
865
  <div class="inner">
866
  <ul>
867
  <li>
868
  <input class="alm_element" type="radio" name="images_loaded" value="t" id="images_loaded_t">
869
+ <label for="images_loaded_t"><?php _e('True', 'ajax-load-more'); ?></label>
870
  </li>
871
  <li>
872
  <input class="alm_element" type="radio" name="images_loaded" value="f" id="images_loaded_f" checked="checked">
873
+ <label for="images_loaded_f"><?php _e('False', 'ajax-load-more'); ?></label>
874
  </li>
875
  </ul>
876
  </div>
880
 
881
  <!-- Destroy After -->
882
  <div class="row input destroy-after" id="alm-destroy-after">
883
+ <h3 class="heading"><?php _e('Destroy After', 'ajax-load-more'); ?></h3>
884
  <div class="expand-wrap">
885
  <div class="section-title">
886
+ <p><?php _e('Remove ajax load more functionality after \'<em>n</em>\' number of pages have been loaded.', 'ajax-load-more'); ?></p>
887
  </div>
888
  <div class="wrap">
889
  <div class="inner">
895
 
896
  <!-- Button Text -->
897
  <div class="row input btn-label" id="alm-btn-label">
898
+ <h3 class="heading"><?php _e('Button Label', 'ajax-load-more'); ?></h3>
899
  <div class="expand-wrap">
900
  <div class="section-title">
901
+ <p><?php _e('Customize the <em>Load More</em> button label.', 'ajax-load-more'); ?></p>
902
  </div>
903
  <div class="wrap">
904
  <div class="inner">
905
+ <input class="alm_element" name="button-label" type="text" id="button-label" value="<?php _e('Older Posts', 'ajax-load-more'); ?>">
906
  </div>
907
  </div>
908
  </div>
910
 
911
  <!-- Container Classes -->
912
  <div class="row input alm-classes" id="alm-classes">
913
+ <h3 class="heading"><?php _e('Container Options', 'ajax-load-more'); ?></h3>
914
  <div class="expand-wrap">
915
 
916
  <div class="section-title">
917
+ <h4><?php _e('Container Type', 'ajax-load-more'); ?></h4>
918
+ <p><?php _e('Override the global Container Type that was set on <a href="admin.php?page=ajax-load-more">ALM Settings page</a>.', 'ajax-load-more'); ?></p>
919
  </div>
920
  <div class="wrap">
921
  <div class="inner">
934
  <div class="clear"></div>
935
  <hr/>
936
  <div class="section-title">
937
+ <h4><?php _e('Container Classes', 'ajax-load-more'); ?></h4>
938
+ <p><?php _e('Add custom CSS classes to the Ajax Load More container. <br/><br/> e.g. portfolio-listing large-12 etc', 'ajax-load-more'); ?></p>
939
  </div>
940
  <div class="wrap">
941
  <div class="inner">
admin/views/add-ons.php CHANGED
@@ -1,8 +1,8 @@
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', ALM_NAME); ?></strong></h2>
5
- <p><?php _e('Add-ons are available to extend and enhance the core functionality of Ajax Load More', ALM_NAME); ?></p>
6
  </div>
7
  <div class="cnkt-main full">
8
 
@@ -15,9 +15,9 @@
15
  <a href="<?php echo $cache_url; ?>">
16
  <div class="expand-wrap">
17
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/cache-add-on.jpg">
18
- <h2 class="addon-title"><?php _e('Cache', ALM_NAME); ?></h2>
19
- <p class="addon-intro"><?php _e('Improve performance with the Ajax Load More caching engine.', ALM_NAME); ?></p>
20
- <p><?php _e('The Cache add-on creates static HTML files of Ajax Load More requests then delivers those static files to your visitors.', ALM_NAME); ?></p>
21
  <?php
22
  if (has_action('alm_cache_installed')){
23
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
@@ -40,9 +40,9 @@
40
  <a href="<?php echo $cr_url; ?>">
41
  <div class="expand-wrap">
42
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/unlimited-add-ons.jpg">
43
- <h2 class="addon-title"><?php _e('Custom Repeaters', ALM_NAME); ?></h2>
44
- <p class="addon-intro"><?php _e('Extend Ajax Load More with unlimited repeater templates.', ALM_NAME); ?></p>
45
- <p><?php _e('Create, delete and modify repeater templates as you need them with absolutely zero restrictions.', ALM_NAME); ?></p>
46
  <?php
47
 
48
  if (has_action('alm_unlimited_installed')){
@@ -68,9 +68,9 @@
68
  <a href="<?php echo $paging_url; ?>">
69
  <div class="expand-wrap">
70
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/paging-add-ons.jpg">
71
- <h2 class="addon-title"><?php _e('Paging', ALM_NAME); ?></h2>
72
- <p class="addon-intro"><?php _e('Extend Ajax Load More with a numbered navigation.', ALM_NAME); ?></p>
73
- <p><?php _e('The Paging add-on will transform the default infinite scroll functionality into a robust ajax powered navigation system.', ALM_NAME); ?></p>
74
  <?php
75
  if (has_action('alm_paging_installed')){
76
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
@@ -95,9 +95,9 @@
95
  <a href="<?php echo $preload_url; ?>">
96
  <div class="expand-wrap">
97
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/preloaded-add-ons.jpg">
98
- <h2 class="addon-title"><?php _e('Preloaded', ALM_NAME); ?></h2>
99
- <p class="addon-intro"><?php _e('Load an initial set of posts before making Ajax requests to the server.', ALM_NAME); ?></p>
100
- <p><?php _e('The Preloaded add-on will display content quicker and allow caching of the initial query which can reduce stress on your server.', ALM_NAME); ?></p>
101
  <?php
102
  if (has_action('alm_preload_installed')){
103
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
@@ -121,9 +121,9 @@
121
  <a href="<?php echo $prev_url; ?>">
122
  <div class="expand-wrap">
123
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/prev-post-add-on.jpg">
124
- <h2 class="addon-title"><?php _e('Previous Post', ALM_NAME); ?></h2>
125
- <p class="addon-intro"><?php _e('An extension to enable infinite scrolling of single posts.', ALM_NAME); ?></p>
126
- <p><?php _e('The Previous Post add-on will load single posts as you scroll and update the browser URL to the current post.', ALM_NAME); ?></p>
127
  <?php
128
  if (has_action('alm_prev_post_installed')){
129
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
@@ -147,9 +147,9 @@
147
  <a href="<?php echo $seo_url; ?>">
148
  <div class="expand-wrap">
149
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/seo-add-ons.jpg">
150
- <h2 class="addon-title"><?php _e('Search Engine Optimization', ALM_NAME); ?></h2>
151
- <p class="addon-intro"><?php _e('Generate unique paging URLs with every Ajax Load More query.', ALM_NAME); ?></p>
152
- <p><?php _e('The SEO add-on will optimize your ajax loaded content for search engines by generating unique URLs with every query.</p>', ALM_NAME); ?></p>
153
  <?php
154
 
155
  if (has_action('alm_seo_installed')){
@@ -173,9 +173,9 @@
173
  <a href="<?php echo $themer_url; ?>">
174
  <div class="expand-wrap">
175
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/theme-repeater-add-on.jpg">
176
- <h2 class="addon-title"><?php _e('Theme Repeaters', ALM_NAME); ?></h2>
177
- <p class="addon-intro"><?php _e('Manage repeater templates within your current theme directory.', ALM_NAME); ?></p>
178
- <p><?php _e('The Theme Repeater add-on will allow you load, edit and maintain templates from your current theme directory.</p>', ALM_NAME); ?></p>
179
  <?php
180
 
181
  if (has_action('alm_theme_repeaters_installed')){
@@ -194,7 +194,7 @@
194
  </div>
195
 
196
  <div class="call-out light">
197
- <p><?php _e('All add-ons are installed as stand alone plugins and with a valid license key will receive plugin update notifications directly within the <a href="plugins.php">WordPress plugin dashboard</a>.', ALM_NAME); ?></p>
198
  </div>
199
 
200
  </div>
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">
8
 
15
  <a href="<?php echo $cache_url; ?>">
16
  <div class="expand-wrap">
17
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/cache-add-on.jpg">
18
+ <h2 class="addon-title"><?php _e('Cache', 'ajax-load-more'); ?></h2>
19
+ <p class="addon-intro"><?php _e('Improve performance with the Ajax Load More caching engine.', 'ajax-load-more'); ?></p>
20
+ <p><?php _e('The Cache add-on creates static HTML files of Ajax Load More requests then delivers those static files to your visitors.', 'ajax-load-more'); ?></p>
21
  <?php
22
  if (has_action('alm_cache_installed')){
23
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
40
  <a href="<?php echo $cr_url; ?>">
41
  <div class="expand-wrap">
42
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/unlimited-add-ons.jpg">
43
+ <h2 class="addon-title"><?php _e('Custom Repeaters', 'ajax-load-more'); ?></h2>
44
+ <p class="addon-intro"><?php _e('Extend Ajax Load More with unlimited repeater templates.', 'ajax-load-more'); ?></p>
45
+ <p><?php _e('Create, delete and modify repeater templates as you need them with absolutely zero restrictions.', 'ajax-load-more'); ?></p>
46
  <?php
47
 
48
  if (has_action('alm_unlimited_installed')){
68
  <a href="<?php echo $paging_url; ?>">
69
  <div class="expand-wrap">
70
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/paging-add-ons.jpg">
71
+ <h2 class="addon-title"><?php _e('Paging', 'ajax-load-more'); ?></h2>
72
+ <p class="addon-intro"><?php _e('Extend Ajax Load More with a numbered navigation.', 'ajax-load-more'); ?></p>
73
+ <p><?php _e('The Paging add-on will transform the default infinite scroll functionality into a robust ajax powered navigation system.', 'ajax-load-more'); ?></p>
74
  <?php
75
  if (has_action('alm_paging_installed')){
76
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
95
  <a href="<?php echo $preload_url; ?>">
96
  <div class="expand-wrap">
97
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/preloaded-add-ons.jpg">
98
+ <h2 class="addon-title"><?php _e('Preloaded', 'ajax-load-more'); ?></h2>
99
+ <p class="addon-intro"><?php _e('Load an initial set of posts before making Ajax requests to the server.', 'ajax-load-more'); ?></p>
100
+ <p><?php _e('The Preloaded add-on will display content quicker and allow caching of the initial query which can reduce stress on your server.', 'ajax-load-more'); ?></p>
101
  <?php
102
  if (has_action('alm_preload_installed')){
103
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
121
  <a href="<?php echo $prev_url; ?>">
122
  <div class="expand-wrap">
123
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/prev-post-add-on.jpg">
124
+ <h2 class="addon-title"><?php _e('Previous Post', 'ajax-load-more'); ?></h2>
125
+ <p class="addon-intro"><?php _e('An extension to enable infinite scrolling of single posts.', 'ajax-load-more'); ?></p>
126
+ <p><?php _e('The Previous Post add-on will load single posts as you scroll and update the browser URL to the current post.', 'ajax-load-more'); ?></p>
127
  <?php
128
  if (has_action('alm_prev_post_installed')){
129
  echo '<span class="cnkt-button installed"><i class="fa fa-check-square"></i> Installed</span> ';
147
  <a href="<?php echo $seo_url; ?>">
148
  <div class="expand-wrap">
149
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/seo-add-ons.jpg">
150
+ <h2 class="addon-title"><?php _e('Search Engine Optimization', 'ajax-load-more'); ?></h2>
151
+ <p class="addon-intro"><?php _e('Generate unique paging URLs with every Ajax Load More query.', 'ajax-load-more'); ?></p>
152
+ <p><?php _e('The SEO add-on will optimize your ajax loaded content for search engines by generating unique URLs with every query.</p>', 'ajax-load-more'); ?></p>
153
  <?php
154
 
155
  if (has_action('alm_seo_installed')){
173
  <a href="<?php echo $themer_url; ?>">
174
  <div class="expand-wrap">
175
  <img src="<?php echo ALM_ADMIN_URL; ?>img/add-ons/theme-repeater-add-on.jpg">
176
+ <h2 class="addon-title"><?php _e('Theme Repeaters', 'ajax-load-more'); ?></h2>
177
+ <p class="addon-intro"><?php _e('Manage repeater templates within your current theme directory.', 'ajax-load-more'); ?></p>
178
+ <p><?php _e('The Theme Repeater add-on will allow you load, edit and maintain templates from your current theme directory.</p>', 'ajax-load-more'); ?></p>
179
  <?php
180
 
181
  if (has_action('alm_theme_repeaters_installed')){
194
  </div>
195
 
196
  <div class="call-out light">
197
+ <p><?php _e('All add-ons are installed as stand alone plugins and with a valid license key will receive plugin update notifications directly within the <a href="plugins.php">WordPress plugin dashboard</a>.', 'ajax-load-more'); ?></p>
198
  </div>
199
 
200
  </div>
admin/views/examples.php CHANGED
@@ -1,17 +1,17 @@
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', ALM_NAME); ?></strong></h2>
5
- <p><?php _e('A collection of everyday shortcode usages and implementation examples', ALM_NAME); ?></p>
6
  </div>
7
  <div class="cnkt-main forceColors">
8
  <div class="group">
9
- <span class="toggle-all"><span class="inner-wrap"><em class="collapse"><?php _e('Collapse All', ALM_NAME); ?></em><em class="expand"><?php _e('Expand All', ALM_NAME); ?></em></span></span>
10
 
11
  <div class="row gist" id="example-archive">
12
- <h3 class="heading"><?php _e('Archive.php', ALM_NAME); ?></h3>
13
  <div class="expand-wrap">
14
- <p><?php _e('Shortcode for use on generic archive page.', ALM_NAME); ?></p>
15
  <div class="inner">
16
  <script src="https://gist.github.com/dcooney/ebe912c7772e669f1370.js"></script>
17
  </div>
@@ -19,44 +19,44 @@
19
  </div>
20
 
21
  <div class="row gist" id="example-author">
22
- <h3 class="heading"><?php _e('Author.php', ALM_NAME); ?></h3>
23
  <div class="expand-wrap">
24
- <p><?php _e('Shortcode for use on author archive pages.', ALM_NAME); ?></p>
25
  <div class="inner">
26
  <script src="https://gist.github.com/dcooney/4d07ff95f7274f38fd3a.js"></script>
27
  </div>
28
  </div>
29
  </div>
30
  <div class="row gist" id="example-category">
31
- <h3 class="heading"><?php _e('Category.php', ALM_NAME); ?></h3>
32
  <div class="expand-wrap">
33
- <p><?php _e('Shortcode for use on category archive pages.', ALM_NAME); ?></p>
34
  <div class="inner">
35
  <script src="https://gist.github.com/dcooney/ae4caec3f9061dd47627.js"></script>
36
  </div>
37
  </div>
38
  </div>
39
  <div class="row gist" id="example-date">
40
- <h3 class="heading"><?php _e('Date Archives', ALM_NAME); ?></h3>
41
  <div class="expand-wrap">
42
- <p><?php _e('Shortcode for use for archiving by date.', ALM_NAME); ?></p>
43
  <div class="inner">
44
  <script src="https://gist.github.com/dcooney/6f74bebdd40cad9e3ee7.js"></script>
45
  </div>
46
  </div>
47
  </div>
48
  <div class="row gist" id="example-exclude">
49
- <h3 class="heading"><?php _e('Excluding Posts', ALM_NAME); ?></h3>
50
  <div class="expand-wrap">
51
- <p><?php _e('Shortcode for excluding an array of posts.', ALM_NAME); ?></p>
52
  <script src="https://gist.github.com/dcooney/9b037efbd166b4dba5ae.js"></script>
53
  </div>
54
  </div>
55
 
56
  <div class="row gist" id="example-tag">
57
- <h3 class="heading"><?php _e('Tag.php', ALM_NAME); ?></h3>
58
  <div class="expand-wrap">
59
- <p><?php _e('Shortcode for use on tag archive pages.', ALM_NAME); ?></p>
60
  <div class="inner">
61
  <script src="https://gist.github.com/dcooney/fc4276bebbdd05af64d1.js"></script>
62
  </div>
@@ -64,7 +64,7 @@
64
  </div>
65
 
66
  <div class="row no-brd">
67
- <p class="back2top"><a href="#wpcontent"><i class="fa fa-chevron-up"></i> <?php _e('Back to Top', ALM_NAME); ?></a></p>
68
  </div>
69
  </div>
70
 
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">
8
  <div class="group">
9
+ <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>
10
 
11
  <div class="row gist" id="example-archive">
12
+ <h3 class="heading"><?php _e('Archive.php', 'ajax-load-more'); ?></h3>
13
  <div class="expand-wrap">
14
+ <p><?php _e('Shortcode for use on generic archive page.', 'ajax-load-more'); ?></p>
15
  <div class="inner">
16
  <script src="https://gist.github.com/dcooney/ebe912c7772e669f1370.js"></script>
17
  </div>
19
  </div>
20
 
21
  <div class="row gist" id="example-author">
22
+ <h3 class="heading"><?php _e('Author.php', 'ajax-load-more'); ?></h3>
23
  <div class="expand-wrap">
24
+ <p><?php _e('Shortcode for use on author archive pages.', 'ajax-load-more'); ?></p>
25
  <div class="inner">
26
  <script src="https://gist.github.com/dcooney/4d07ff95f7274f38fd3a.js"></script>
27
  </div>
28
  </div>
29
  </div>
30
  <div class="row gist" id="example-category">
31
+ <h3 class="heading"><?php _e('Category.php', 'ajax-load-more'); ?></h3>
32
  <div class="expand-wrap">
33
+ <p><?php _e('Shortcode for use on category archive pages.', 'ajax-load-more'); ?></p>
34
  <div class="inner">
35
  <script src="https://gist.github.com/dcooney/ae4caec3f9061dd47627.js"></script>
36
  </div>
37
  </div>
38
  </div>
39
  <div class="row gist" id="example-date">
40
+ <h3 class="heading"><?php _e('Date Archives', 'ajax-load-more'); ?></h3>
41
  <div class="expand-wrap">
42
+ <p><?php _e('Shortcode for use for archiving by date.', 'ajax-load-more'); ?></p>
43
  <div class="inner">
44
  <script src="https://gist.github.com/dcooney/6f74bebdd40cad9e3ee7.js"></script>
45
  </div>
46
  </div>
47
  </div>
48
  <div class="row gist" id="example-exclude">
49
+ <h3 class="heading"><?php _e('Excluding Posts', 'ajax-load-more'); ?></h3>
50
  <div class="expand-wrap">
51
+ <p><?php _e('Shortcode for excluding an array of posts.', 'ajax-load-more'); ?></p>
52
  <script src="https://gist.github.com/dcooney/9b037efbd166b4dba5ae.js"></script>
53
  </div>
54
  </div>
55
 
56
  <div class="row gist" id="example-tag">
57
+ <h3 class="heading"><?php _e('Tag.php', 'ajax-load-more'); ?></h3>
58
  <div class="expand-wrap">
59
+ <p><?php _e('Shortcode for use on tag archive pages.', 'ajax-load-more'); ?></p>
60
  <div class="inner">
61
  <script src="https://gist.github.com/dcooney/fc4276bebbdd05af64d1.js"></script>
62
  </div>
64
  </div>
65
 
66
  <div class="row no-brd">
67
+ <p class="back2top"><a href="#wpcontent"><i class="fa fa-chevron-up"></i> <?php _e('Back to Top', 'ajax-load-more'); ?></a></p>
68
  </div>
69
  </div>
70
 
admin/views/licenses.php CHANGED
@@ -1,14 +1,14 @@
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', ALM_NAME); ?></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>.', ALM_NAME); ?></p>
6
  </div>
7
  <div class="cnkt-main">
8
  <div class="group">
9
- <h3><?php _e('License Keys', ALM_NAME); ?></h3>
10
 
11
- <p><?php _e('Manage your Ajax Load More license key\'s below - enter a key for each of your add-ons to receive plugin update notifications directly within the <a href="plugins.php">WP Plugins dashboard</a>.', ALM_NAME); ?></p>
12
 
13
  <?php
14
  // alm_cache_installed
@@ -22,7 +22,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_seo_installed')) : ?>
26
 
27
 
28
  <?php
@@ -34,38 +34,38 @@
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', ALM_NAME); ?></h2>
38
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
46
  <?php if( $alm_cache_status !== false && $alm_cache_status == 'valid' ) { ?>
47
  <span class="status active">
48
- <?php _e('Active', ALM_NAME); ?>
49
  </span>
50
  <?php } else { ?>
51
  <span class="status inactive">
52
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
69
  <?php } ?>
70
  <?php } ?>
71
  <?php } ?>
@@ -88,38 +88,38 @@
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', ALM_NAME); ?></h2>
92
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
100
  <?php if( $alm_unlimited_status !== false && $alm_unlimited_status == 'valid' ) { ?>
101
  <span class="status active">
102
- <?php _e('Active', ALM_NAME); ?>
103
  </span>
104
  <?php } else { ?>
105
  <span class="status inactive">
106
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
123
  <?php } ?>
124
  <?php } ?>
125
  <?php } ?>
@@ -142,38 +142,38 @@
142
  <div class="license" id="license-paging">
143
  <div class="license-title">
144
  <div class="status <?php if($alm_paging_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
145
- <h2><?php _e('Paging', ALM_NAME); ?></h2>
146
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
154
  <?php if( $alm_paging_status !== false && $alm_paging_status == 'valid' ) { ?>
155
  <span class="status active">
156
- <?php _e('Active', ALM_NAME); ?>
157
  </span>
158
  <?php } else { ?>
159
  <span class="status inactive">
160
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
177
  <?php } ?>
178
  <?php } ?>
179
  <?php } ?>
@@ -195,38 +195,38 @@
195
  <div class="license" id="license-preloaded">
196
  <div class="license-title">
197
  <div class="status <?php if($alm_preloaded_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
198
- <h2><?php _e('Preloaded', ALM_NAME); ?></h2>
199
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
207
  <?php if( $alm_preloaded_status !== false && $alm_preloaded_status == 'valid' ) { ?>
208
  <span class="status active">
209
- <?php _e('Active', ALM_NAME); ?>
210
  </span>
211
  <?php } else { ?>
212
  <span class="status inactive">
213
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
230
  <?php } ?>
231
  <?php } ?>
232
  <?php } ?>
@@ -248,38 +248,38 @@
248
  <div class="license" id="license-previous-post">
249
  <div class="license-title">
250
  <div class="status <?php if($alm_prev_post_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
251
- <h2><?php _e('Previous Post', ALM_NAME); ?></h2>
252
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
260
  <?php if( $alm_prev_post_status !== false && $alm_prev_post_status == 'valid' ) { ?>
261
  <span class="status active">
262
- <?php _e('Active', ALM_NAME); ?>
263
  </span>
264
  <?php } else { ?>
265
  <span class="status inactive">
266
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
283
  <?php } ?>
284
  <?php } ?>
285
  <?php } ?>
@@ -302,38 +302,38 @@
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', ALM_NAME); ?></h2>
306
  </div>
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', ALM_NAME); ?></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', ALM_NAME); ?>" />
314
  <?php if( $alm_seo_status !== false && $alm_seo_status == 'valid' ) { ?>
315
  <span class="status active">
316
- <?php _e('Active', ALM_NAME); ?>
317
  </span>
318
  <?php } else { ?>
319
  <span class="status inactive">
320
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
337
  <?php } ?>
338
  <?php } ?>
339
  <?php } ?>
@@ -356,38 +356,38 @@
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', ALM_NAME); ?></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', ALM_NAME); ?></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', ALM_NAME); ?>" />
368
  <?php if( $alm_theme_repeaters_status !== false && $alm_theme_repeaters_status == 'valid' ) { ?>
369
  <span class="status active">
370
- <?php _e('Active', ALM_NAME); ?>
371
  </span>
372
  <?php } else { ?>
373
  <span class="status inactive">
374
- <?php _e('In-active', ALM_NAME); ?>
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', ALM_NAME), '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', ALM_NAME); ?>"/>
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', ALM_NAME); ?>"/>
391
  <?php } ?>
392
  <?php } ?>
393
  <?php } ?>
@@ -404,7 +404,7 @@
404
  <?php else : ?>
405
 
406
  <div class="license-no-addons">
407
- <p><?php _e('You do not have any Ajax Load More add-ons installed', ALM_NAME); ?>. &raquo; <a href="admin.php?page=ajax-load-more-add-ons"><strong><?php _e('Browse Add-ons', ALM_NAME); ?></strong></a></p>
408
  </div>
409
 
410
  <?php endif; ?>
@@ -415,17 +415,17 @@
415
 
416
  <div class="cnkt-sidebar">
417
  <div class="cta">
418
- <h3><?php _e('About Licenses', ALM_NAME); ?></h3>
419
  <div class="cta-wrap">
420
  <ul>
421
- <li><?php _e('Add-on licenses will enable updates directly in your WP dashboard.', ALM_NAME);?></li>
422
- <li><?php _e('License keys are found in the purchase receipt email that was sent immediately after your successful purchase.', ALM_NAME);?></li>
423
- <li><?php _e('If you cannot locate your key please use the <a href="https://connekthq.com/contact/">contact form</a> on our website and reference the email address used when you completed the purchase.', ALM_NAME); ?></li>
424
  </ul>
425
  </div>
426
  </div>
427
  <div class="cta">
428
- <h3><?php _e('Legacy Users', ALM_NAME); ?></h3>
429
  <div class="cta-wrap">
430
  <ul>
431
  <li>If you have made a purchase prior to <u>July 6, 2015</u> you will require a license after updating your add-ons. Please <a href="https://connekthq.com/contact/">email us</a> with a reference to the email address used when you completed the add-on purchase and we will send your license key.</li>
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">
8
  <div class="group">
9
+ <h3><?php _e('License Keys', 'ajax-load-more'); ?></h3>
10
 
11
+ <p><?php _e('Manage your Ajax Load More license key\'s below - enter a key for each of your add-ons to receive plugin update notifications directly within the <a href="plugins.php">WP Plugins dashboard</a>.', 'ajax-load-more'); ?></p>
12
 
13
  <?php
14
  // alm_cache_installed
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
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>
38
  </div>
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 } ?>
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>
92
  </div>
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 } ?>
142
  <div class="license" id="license-paging">
143
  <div class="license-title">
144
  <div class="status <?php if($alm_paging_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
145
+ <h2><?php _e('Paging', 'ajax-load-more'); ?></h2>
146
  </div>
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 } ?>
195
  <div class="license" id="license-preloaded">
196
  <div class="license-title">
197
  <div class="status <?php if($alm_preloaded_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
198
+ <h2><?php _e('Preloaded', 'ajax-load-more'); ?></h2>
199
  </div>
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 } ?>
248
  <div class="license" id="license-previous-post">
249
  <div class="license-title">
250
  <div class="status <?php if($alm_prev_post_status == 'valid'){echo 'valid';}else{echo 'invalid';} ?> "></div>
251
+ <h2><?php _e('Previous Post', 'ajax-load-more'); ?></h2>
252
  </div>
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 } ?>
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>
306
  </div>
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 } ?>
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 } ?>
404
  <?php else : ?>
405
 
406
  <div class="license-no-addons">
407
+ <p><?php _e('You do not have any Ajax Load More add-ons installed', 'ajax-load-more'); ?>. &raquo; <a href="admin.php?page=ajax-load-more-add-ons"><strong><?php _e('Browse Add-ons', 'ajax-load-more'); ?></strong></a></p>
408
  </div>
409
 
410
  <?php endif; ?>
415
 
416
  <div class="cnkt-sidebar">
417
  <div class="cta">
418
+ <h3><?php _e('About Licenses', 'ajax-load-more'); ?></h3>
419
  <div class="cta-wrap">
420
  <ul>
421
+ <li><?php _e('Add-on licenses will enable updates directly in your WP dashboard.', 'ajax-load-more');?></li>
422
+ <li><?php _e('License keys are found in the purchase receipt email that was sent immediately after your successful purchase.', 'ajax-load-more');?></li>
423
+ <li><?php _e('If you cannot locate your key please use the <a href="https://connekthq.com/contact/">contact form</a> on our website and reference the email address used when you completed the purchase.', 'ajax-load-more'); ?></li>
424
  </ul>
425
  </div>
426
  </div>
427
  <div class="cta">
428
+ <h3><?php _e('Legacy Users', 'ajax-load-more'); ?></h3>
429
  <div class="cta-wrap">
430
  <ul>
431
  <li>If you have made a purchase prior to <u>July 6, 2015</u> you will require a license after updating your add-ons. Please <a href="https://connekthq.com/contact/">email us</a> with a reference to the email address used when you completed the add-on purchase and we will send your license key.</li>
admin/views/repeater-templates.php CHANGED
@@ -1,8 +1,8 @@
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', ALM_NAME); ?></strong></h2>
5
- <p><?php _e('The library of available templates to use within your theme', ALM_NAME); ?></p>
6
  </div>
7
  <div class="cnkt-main form-table repeaters">
8
 
@@ -10,7 +10,7 @@
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', ALM_NAME); ?></em><em class="expand"><?php _e('Expand All', ALM_NAME); ?></em></span></span>
14
  <?php } ?>
15
 
16
  <!-- Default -->
@@ -32,13 +32,13 @@
32
  }
33
  fclose ($handle);
34
  ?>
35
- <h3 class="heading"><?php _e('Default Template', ALM_NAME); ?></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', ALM_NAME); ?></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"), {
@@ -51,7 +51,7 @@
51
  extraKeys: {"Ctrl-Space": "autocomplete"},
52
  });
53
  </script>
54
- <input type="submit" value="<?php _e('Save Template', ALM_NAME); ?>" 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>
@@ -120,7 +120,7 @@
120
  //If template is not already saving, then proceed
121
  if (!btn.hasClass('saving')) {
122
  btn.addClass('saving');
123
- responseText.addClass('loading').html('<?php _e('Saving template...', ALM_NAME) ?>');
124
  responseText.animate({'opacity' : 1});
125
 
126
  $.ajax({
@@ -152,7 +152,7 @@
152
 
153
  },
154
  error: function(xhr, status, error) {
155
- responseText.html('<?php _e('Something went wrong and the data could not be saved.', ALM_NAME) ?>').removeClass('loading');
156
  btn.removeClass('saving');
157
  }
158
  });
@@ -192,7 +192,7 @@
192
 
193
  //If template is not already saving, then proceed
194
  if (!btn.hasClass('updating')) {
195
- btn.addClass('updating').text("<?php _e('Updating template...', ALM_NAME); ?>");
196
 
197
  $.ajax({
198
  type: 'POST',
@@ -213,7 +213,7 @@
213
 
214
  // Clear button styles
215
  setTimeout(function() {
216
- btn.text("<?php _e('Template Updated', ALM_NAME); ?>").blur();
217
  setTimeout(function() {
218
  btn.removeClass('updating').html(btn_text).blur();
219
  }, 750);
@@ -242,19 +242,19 @@
242
  <div class="cnkt-sidebar">
243
  <?php include_once( ALM_PATH . 'admin/includes/cta/writeable.php'); ?>
244
  <div class="cta">
245
- <h3><?php _e('Templating Help', ALM_NAME); ?></h3>
246
  <div class="item">
247
- <p><strong><?php _e('What is a repeater template?', ALM_NAME); ?></strong></p>
248
- <p><?php _e('A repeater template is a snippet of code that will execute over and over within a <a href="http://codex.wordpress.org/The_Loop" target="_blank">WordPress loop</a>.</p>', ALM_NAME); ?></p>
249
  </div>
250
  <div class="item">
251
- <p><strong><?php _e('Can I include PHP in the repeater template?', ALM_NAME); ?></strong></p>
252
- <p><?php _e('Yes, PHP and core WordPress functions such as, <code>the_title()</code> and <code>the_permalink()</code> are required.</p>', ALM_NAME); ?></p>
253
  </div>
254
  <div class="item">
255
- <p><strong><?php _e('Tips and Tricks', ALM_NAME); ?></strong></p>
256
  <ul>
257
- <li><?php _e('Always open and close your templates with an HTML element. In some rare cases data may not be displayed if not wrapped in HTML.<br/>e.g. <code>&lt;li> &lt;/li></code> or <code>&lt;div> &lt;/div></code>', ALM_NAME); ?><br/> </li>
258
  </ul>
259
  </div>
260
  </div>
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
 
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 -->
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"), {
51
  extraKeys: {"Ctrl-Space": "autocomplete"},
52
  });
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>
120
  //If template is not already saving, then proceed
121
  if (!btn.hasClass('saving')) {
122
  btn.addClass('saving');
123
+ responseText.addClass('loading').html('<?php _e('Saving template...', 'ajax-load-more') ?>');
124
  responseText.animate({'opacity' : 1});
125
 
126
  $.ajax({
152
 
153
  },
154
  error: function(xhr, status, error) {
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
  });
192
 
193
  //If template is not already saving, then proceed
194
  if (!btn.hasClass('updating')) {
195
+ btn.addClass('updating').text("<?php _e('Updating template...', 'ajax-load-more'); ?>");
196
 
197
  $.ajax({
198
  type: 'POST',
213
 
214
  // Clear button styles
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);
242
  <div class="cnkt-sidebar">
243
  <?php include_once( ALM_PATH . 'admin/includes/cta/writeable.php'); ?>
244
  <div class="cta">
245
+ <h3><?php _e('Templating Help', 'ajax-load-more'); ?></h3>
246
  <div class="item">
247
+ <p><strong><?php _e('What is a repeater template?', 'ajax-load-more'); ?></strong></p>
248
+ <p><?php _e('A repeater template is a snippet of code that will execute over and over within a <a href="http://codex.wordpress.org/The_Loop" target="_blank">WordPress loop</a>.</p>', 'ajax-load-more'); ?></p>
249
  </div>
250
  <div class="item">
251
+ <p><strong><?php _e('Can I include PHP in the repeater template?', 'ajax-load-more'); ?></strong></p>
252
+ <p><?php _e('Yes, PHP and core WordPress functions such as, <code>the_title()</code> and <code>the_permalink()</code> are required.</p>', 'ajax-load-more'); ?></p>
253
  </div>
254
  <div class="item">
255
+ <p><strong><?php _e('Tips and Tricks', 'ajax-load-more'); ?></strong></p>
256
  <ul>
257
+ <li><?php _e('Always open and close your templates with an HTML element. In some rare cases data may not be displayed if not wrapped in HTML.<br/>e.g. <code>&lt;li> &lt;/li></code> or <code>&lt;div> &lt;/div></code>', 'ajax-load-more'); ?><br/> </li>
258
  </ul>
259
  </div>
260
  </div>
admin/views/settings.php CHANGED
@@ -2,7 +2,7 @@
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 solution to add infinite scroll functionality to any website.', ALM_NAME); ?></p>
6
  </div>
7
  <?php if( isset($_GET['settings-updated']) ) { ?>
8
  <div id="message" class="updated inline">
@@ -15,19 +15,19 @@
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', ALM_NAME); ?></a></li>
19
- <li><a href="javascript:void(0);"><?php _e('Admin', ALM_NAME); ?></a></li>
20
  <?php
21
  if(has_action('alm_cache_settings'))
22
- echo '<li><a href="javascript:void(0);">'.__('Cache', ALM_NAME).'</a></li>';
23
  if(has_action('alm_paging_settings'))
24
- echo '<li><a href="javascript:void(0);">'.__('Paging', ALM_NAME).'</a></li>';
25
  if(has_action('alm_prev_post_settings'))
26
- echo '<li><a href="javascript:void(0);">'.__('Previous Post', ALM_NAME).'</a></li>';
27
  if(has_action('alm_seo_settings'))
28
- echo '<li><a href="javascript:void(0);">'.__('SEO', ALM_NAME).'</a></li>';
29
  if(has_action('alm_theme_repeaters_settings'))
30
- echo '<li><a href="javascript:void(0);">'.__('Theme Repeaters', ALM_NAME).'</a></li>';
31
  ?>
32
  </ul>
33
  <?php
@@ -55,7 +55,7 @@
55
  });
56
  },
57
  error: function(){
58
- alert("<?php _e('Sorry, settings could not be saved.', ALM_NAME); ?>");
59
  }
60
  });
61
  return false;
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']) ) { ?>
8
  <div id="message" class="updated inline">
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>
19
+ <li><a href="javascript:void(0);"><?php _e('Admin', '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_paging_settings'))
24
+ echo '<li><a href="javascript:void(0);">'.__('Paging', 'ajax-load-more').'</a></li>';
25
  if(has_action('alm_prev_post_settings'))
26
+ echo '<li><a href="javascript:void(0);">'.__('Previous Post', 'ajax-load-more').'</a></li>';
27
  if(has_action('alm_seo_settings'))
28
+ echo '<li><a href="javascript:void(0);">'.__('SEO', 'ajax-load-more').'</a></li>';
29
  if(has_action('alm_theme_repeaters_settings'))
30
+ echo '<li><a href="javascript:void(0);">'.__('Theme Repeaters', 'ajax-load-more').'</a></li>';
31
  ?>
32
  </ul>
33
  <?php
55
  });
56
  },
57
  error: function(){
58
+ alert("<?php _e('Sorry, settings could not be saved.', 'ajax-load-more'); ?>");
59
  }
60
  });
61
  return false;
admin/views/shortcode-builder.php CHANGED
@@ -1,8 +1,8 @@
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', ALM_NAME); ?></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', ALM_NAME); ?></p>
6
  </div>
7
  <div class="cnkt-main">
8
  <div class="group">
@@ -10,7 +10,7 @@
10
  <?php include_once( ALM_PATH . 'admin/shortcode-builder/shortcode-builder.php'); ?>
11
  </form>
12
  <div class="row no-brd">
13
- <p class="back2top"><a href="#wpcontent"><i class="fa fa-chevron-up"></i> <?php _e('Back to Top', ALM_NAME); ?></a></p>
14
  </div>
15
  </div>
16
  </div>
@@ -20,13 +20,13 @@
20
  <select class="toc"></select>
21
  </div>
22
  <div class="cta">
23
- <h3><?php _e('Shortcode Output', ALM_NAME); ?></h3>
24
- <p><?php _e('Place the following shortcode into the content editor or widget area of your theme.', ALM_NAME); ?></p>
25
  <div class="output-wrap">
26
  <div id="shortcode_output"></div>
27
- <span class="copy"><?php _e('Copy', ALM_NAME); ?></span>
28
  </div>
29
- <p class="small reset-shortcode-builder"><a href="javascript:void(0);" title="<?php _e('Clear all Shortcode Builder settings', ALM_NAME); ?>"><i class="fa fa-refresh"></i> Reset Shortcode Builder</a></p>
30
  </div>
31
  </div>
32
  </div>
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">
8
  <div class="group">
10
  <?php include_once( ALM_PATH . 'admin/shortcode-builder/shortcode-builder.php'); ?>
11
  </form>
12
  <div class="row no-brd">
13
+ <p class="back2top"><a href="#wpcontent"><i class="fa fa-chevron-up"></i> <?php _e('Back to Top', 'ajax-load-more'); ?></a></p>
14
  </div>
15
  </div>
16
  </div>
20
  <select class="toc"></select>
21
  </div>
22
  <div class="cta">
23
+ <h3><?php _e('Shortcode Output', 'ajax-load-more'); ?></h3>
24
+ <p><?php _e('Place the following shortcode into the content editor or widget area of your theme.', 'ajax-load-more'); ?></p>
25
  <div class="output-wrap">
26
  <div id="shortcode_output"></div>
27
+ <span class="copy"><?php _e('Copy', 'ajax-load-more'); ?></span>
28
  </div>
29
+ <p class="small reset-shortcode-builder"><a href="javascript:void(0);" title="<?php _e('Clear all Shortcode Builder settings', 'ajax-load-more'); ?>"><i class="fa fa-refresh"></i> Reset Shortcode Builder</a></p>
30
  </div>
31
  </div>
32
  </div>
ajax-load-more.php CHANGED
@@ -3,16 +3,18 @@
3
  Plugin Name: Ajax Load More
4
  Plugin URI: http://connekthq.com/plugins/ajax-load-more
5
  Description: A powerful solution to add infinite scroll functionality to your website.
 
6
  Author: Darren Cooney
7
  Twitter: @KaptonKaos
8
  Author URI: http://connekthq.com
9
- Version: 2.8.0
10
  License: GPL
11
  Copyright: Darren Cooney & Connekt Media
12
  */
 
13
 
14
- define( 'ALM_VERSION', '2.8.0' );
15
- define( 'ALM_RELEASE', 'September 14, 2015' );
16
  define( 'ALM_STORE_URL', 'https://connekthq.com' );
17
 
18
 
@@ -105,32 +107,26 @@ if( !class_exists('AjaxLoadMore') ):
105
 
106
  define('ALM_PATH', plugin_dir_path(__FILE__));
107
  define('ALM_URL', plugins_url('', __FILE__));
108
- define('ALM_ADMIN_URL', plugins_url('admin/', __FILE__));
109
- define('ALM_NAME', '_ajax_load_more');
110
  define('ALM_TITLE', 'Ajax Load More');
111
 
112
  add_action( 'wp_ajax_alm_query_posts', array(&$this, 'alm_query_posts') );
113
  add_action( 'wp_ajax_nopriv_alm_query_posts', array(&$this, 'alm_query_posts') );
114
  add_action( 'wp_ajax_alm_query_total', array(&$this, 'alm_query_total') );
115
- add_action( 'wp_ajax_nopriv_alm_query_total', array(&$this, 'alm_query_total') );
116
-
117
  add_action( 'wp_enqueue_scripts', array(&$this, 'alm_enqueue_scripts') );
118
  add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), array(&$this, 'alm_action_links') );
119
- add_filter( 'plugin_row_meta', array(&$this, 'alm_plugin_meta_links'), 10, 2 );
120
-
121
- add_shortcode( 'ajax_load_more', array(&$this, 'alm_shortcode') );
122
 
123
- // Allow shortcodes in widget areas
124
- add_filter( 'widget_text', 'do_shortcode' );
125
 
126
- // load text domain
127
- load_plugin_textdomain( 'ajax-load-more', false, dirname( plugin_basename( __FILE__ ) ) . '/lang/' );
128
 
129
- // Include ALM query functions
130
- include_once( ALM_PATH . 'core/functions.php');
131
 
132
- // includes WP admin core
133
- $this->alm_before_theme();
134
 
135
  }
136
 
@@ -159,7 +155,7 @@ if( !class_exists('AjaxLoadMore') ):
159
  */
160
 
161
  function alm_action_links( $links ) {
162
- $links[] = '<a href="'. get_admin_url(null, 'admin.php?page=ajax-load-more') .'">'.__('Settings', ALM_NAME).'</a>';
163
  return $links;
164
  }
165
 
@@ -196,11 +192,16 @@ if( !class_exists('AjaxLoadMore') ):
196
 
197
  function alm_enqueue_scripts(){
198
 
 
199
  //wp_enqueue_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.js', __FILE__ ), array('jquery'), '1.1', true );
200
  wp_enqueue_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.min.js', __FILE__ ), array('jquery'), '1.1', true );
201
 
202
- $options = get_option( 'alm_settings' );
203
 
 
 
 
 
 
204
  // Prevent loading of unnessasry posts - move user to top of page
205
  $scrolltop = 'false';
206
  if(!isset($options['_alm_scroll_top']) || $options['_alm_scroll_top'] != '1'){ // if unset or false
@@ -209,11 +210,6 @@ if( !class_exists('AjaxLoadMore') ):
209
  $scrolltop = 'true';
210
  }
211
 
212
- // Load CSS
213
- if(!isset($options['_alm_disable_css']) || $options['_alm_disable_css'] != '1'){
214
- wp_enqueue_style( 'ajax-load-more', plugins_url('/core/css/ajax-load-more.css', __FILE__ ));
215
- }
216
-
217
  wp_localize_script(
218
  'ajax-load-more',
219
  'alm_localize',
@@ -287,7 +283,7 @@ if( !class_exists('AjaxLoadMore') ):
287
  'destroy_after' => '',
288
  'transition' => 'slide',
289
  'images_loaded' => 'false',
290
- 'button_label' => __('Older Posts', ALM_NAME),
291
  'container_type' => '',
292
  'css_classes' => '',
293
  ), $atts));
@@ -305,6 +301,7 @@ if( !class_exists('AjaxLoadMore') ):
305
  }
306
  // Previous post override
307
  if($previous_post){
 
308
  $container_element = 'div';
309
  }
310
 
@@ -571,14 +568,10 @@ if( !class_exists('AjaxLoadMore') ):
571
 
572
  function alm_query_posts() {
573
 
574
- $nonce = $_GET['nonce'];
575
-
576
- $options = get_option( 'alm_settings' );
577
-
578
- if(!is_user_logged_in()){ // Skip nonce verification if user is logged in
579
-
580
- $options = get_option( 'alm_settings' );
581
-
582
  // check alm_settings for _alm_nonce_security
583
  if(isset($options['_alm_nonce_security']) & $options['_alm_nonce_security'] == '1'){
584
  if (! wp_verify_nonce( $nonce, 'ajax_load_more_nonce' )) // Check our nonce, if they don't match then bounce!
@@ -653,7 +646,7 @@ if( !class_exists('AjaxLoadMore') ):
653
  $offset = $offset + $preloaded_amount;
654
  }
655
 
656
- //Next Post Add-on
657
  $is_previous_post = (isset($_GET['previous_post'])) ? $_GET['previous_post'] : false;
658
  $previous_post_id = (isset($_GET['previous_post_id'])) ? $_GET['previous_post_id'] : '';
659
 
3
  Plugin Name: Ajax Load More
4
  Plugin URI: http://connekthq.com/plugins/ajax-load-more
5
  Description: A powerful solution to add infinite scroll functionality to your website.
6
+ Text Domain: ajax-load-more
7
  Author: Darren Cooney
8
  Twitter: @KaptonKaos
9
  Author URI: http://connekthq.com
10
+ Version: 2.8.1.2
11
  License: GPL
12
  Copyright: Darren Cooney & Connekt Media
13
  */
14
+
15
 
16
+ define( 'ALM_VERSION', '2.8.1.2' );
17
+ define( 'ALM_RELEASE', 'October 2, 2015' );
18
  define( 'ALM_STORE_URL', 'https://connekthq.com' );
19
 
20
 
107
 
108
  define('ALM_PATH', plugin_dir_path(__FILE__));
109
  define('ALM_URL', plugins_url('', __FILE__));
110
+ define('ALM_ADMIN_URL', plugins_url('admin/', __FILE__));
111
+ define('ALM_NAME', '_ajax_load_more');
112
  define('ALM_TITLE', 'Ajax Load More');
113
 
114
  add_action( 'wp_ajax_alm_query_posts', array(&$this, 'alm_query_posts') );
115
  add_action( 'wp_ajax_nopriv_alm_query_posts', array(&$this, 'alm_query_posts') );
116
  add_action( 'wp_ajax_alm_query_total', array(&$this, 'alm_query_total') );
117
+ add_action( 'wp_ajax_nopriv_alm_query_total', array(&$this, 'alm_query_total') );
 
118
  add_action( 'wp_enqueue_scripts', array(&$this, 'alm_enqueue_scripts') );
119
  add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), array(&$this, 'alm_action_links') );
120
+ add_filter( 'plugin_row_meta', array(&$this, 'alm_plugin_meta_links'), 10, 2 );
121
+ add_shortcode( 'ajax_load_more', array(&$this, 'alm_shortcode') );
 
122
 
123
+ add_filter( 'widget_text', 'do_shortcode' ); // Allow shortcodes in widget areas
 
124
 
125
+ load_plugin_textdomain( 'ajax-load-more', false, dirname(plugin_basename( __FILE__ )).'/lang/');//load text domain
 
126
 
127
+ include_once( ALM_PATH . 'core/functions.php'); // Include ALM query functions
 
128
 
129
+ $this->alm_before_theme(); // includes WP admin core
 
130
 
131
  }
132
 
155
  */
156
 
157
  function alm_action_links( $links ) {
158
+ $links[] = '<a href="'. get_admin_url(null, 'admin.php?page=ajax-load-more') .'">'.__('Settings', 'ajax-load-more').'</a>';
159
  return $links;
160
  }
161
 
192
 
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
210
  $scrolltop = 'true';
211
  }
212
 
 
 
 
 
 
213
  wp_localize_script(
214
  'ajax-load-more',
215
  'alm_localize',
283
  'destroy_after' => '',
284
  'transition' => 'slide',
285
  'images_loaded' => 'false',
286
+ 'button_label' => __('Older Posts', 'ajax-load-more'),
287
  'container_type' => '',
288
  'css_classes' => '',
289
  ), $atts));
301
  }
302
  // Previous post override
303
  if($previous_post){
304
+ $posts_per_page = 1;
305
  $container_element = 'div';
306
  }
307
 
568
 
569
  function alm_query_posts() {
570
 
571
+ $nonce = $_GET['nonce'];
572
+ $options = get_option( 'alm_settings' );
573
+ if(!is_user_logged_in()){ // Skip nonce verification if user is logged in
574
+ $options = get_option( 'alm_settings' );
 
 
 
 
575
  // check alm_settings for _alm_nonce_security
576
  if(isset($options['_alm_nonce_security']) & $options['_alm_nonce_security'] == '1'){
577
  if (! wp_verify_nonce( $nonce, 'ajax_load_more_nonce' )) // Check our nonce, if they don't match then bounce!
646
  $offset = $offset + $preloaded_amount;
647
  }
648
 
649
+ //Previous Post Add-on
650
  $is_previous_post = (isset($_GET['previous_post'])) ? $_GET['previous_post'] : false;
651
  $previous_post_id = (isset($_GET['previous_post_id'])) ? $_GET['previous_post_id'] : '';
652
 
core/css/ajax-load-more.css CHANGED
@@ -1,7 +1,6 @@
1
  /*
2
- * WordPress Ajax Load More
3
  * http://wordpress.org/plugins/ajax-load-more/
4
- * https://github.com/dcooney/wordpress-ajax-load-more
5
  *
6
  * Copyright 2015 Connekt Media - http://connekthq.com
7
  * Free to use under the GPLv2 license.
@@ -36,13 +35,10 @@ button.alm-load-more-btn{
36
  -webkit-appearance: none;
37
  -moz-appearance: none;
38
  appearance: none;
39
- /* Prevents text selection */
40
  -webkit-touch-callout: none;
41
  -webkit-user-select: none;
42
- -khtml-user-select: none;
43
  -moz-user-select: -moz-none;
44
  -ms-user-select: none;
45
- -o-user-select: none;
46
  user-select: none;
47
  cursor: pointer;
48
  }
@@ -172,7 +168,6 @@ button.alm-load-more-btn{
172
 
173
  /*
174
  * Generic alm-listing styles
175
- *
176
  * @since 1.0.0
177
  */
178
 
1
  /*
2
+ * Ajax Load More
3
  * http://wordpress.org/plugins/ajax-load-more/
 
4
  *
5
  * Copyright 2015 Connekt Media - http://connekthq.com
6
  * Free to use under the GPLv2 license.
35
  -webkit-appearance: none;
36
  -moz-appearance: none;
37
  appearance: none;
 
38
  -webkit-touch-callout: none;
39
  -webkit-user-select: none;
 
40
  -moz-user-select: -moz-none;
41
  -ms-user-select: none;
 
42
  user-select: none;
43
  cursor: pointer;
44
  }
168
 
169
  /*
170
  * Generic alm-listing styles
 
171
  * @since 1.0.0
172
  */
173
 
core/js/ajax-load-more.js CHANGED
@@ -16,9 +16,7 @@
16
  "use strict";
17
 
18
  $.ajaxloadmore = function (el, e) {
19
-
20
- // Add unique classname
21
-
22
  //Prevent loading of unnessasry posts - move user to top of page
23
  if(alm_localize.scrolltop === 'true'){
24
  $(window).scrollTop(0);
@@ -38,7 +36,7 @@
38
  alm.data;
39
  alm.el = el;
40
  alm.container = el;
41
- alm.container.addClass('alm-'+e).attr('data-id', e);
42
  alm.content = $('.alm-listing.alm-ajax', alm.container);
43
  alm.content_preloaded = $('.alm-listing.alm-preloaded', alm.container);
44
  alm.prefix = 'alm-';
@@ -89,11 +87,7 @@
89
  alm.paging_controls = true;
90
  }else{
91
  alm.paging_controls = false;
92
- }
93
-
94
- if($(".ajax-load-more-wrap").length > 1){ // if ALM is greater than 1, paging is false.
95
- //alm.paging = false;
96
- }
97
  /* /end Paging */
98
 
99
 
@@ -432,8 +426,7 @@
432
  */
433
 
434
  alm.AjaxLoadMore.success = function (data) {
435
-
436
- var previousPostID = '';
437
  if(alm.previous_post){
438
  alm.AjaxLoadMore.getPreviousPost(); // Get previous page data
439
  }
@@ -466,7 +459,7 @@
466
  }
467
 
468
  // ALM Empty - triggers if zero results were returned
469
- if(!alm.data.length > 0){
470
  if ($.isFunction($.fn.almEmpty)) {
471
  $.fn.almEmpty(alm);
472
  }
@@ -665,7 +658,7 @@
665
  url: alm_localize.ajaxurl,
666
  data: {
667
  action: 'alm_query_previous_post',
668
- id: alm.previous_post_id,
669
  },
670
  success: function (data) {
671
  if(data.has_previous_post){
@@ -690,7 +683,7 @@
690
  }
691
 
692
  });
693
- }
694
 
695
 
696
 
@@ -868,7 +861,7 @@
868
 
869
  //Custom easing function
870
  $.easing.alm_easeInOutQuad = function (x, t, b, c, d) {
871
- if ((t /= d / 2) < 1) return c / 2 * t * t + b;
872
  return -c / 2 * ((--t) * (t - 2) - 1) + b;
873
  };
874
 
16
  "use strict";
17
 
18
  $.ajaxloadmore = function (el, e) {
19
+
 
 
20
  //Prevent loading of unnessasry posts - move user to top of page
21
  if(alm_localize.scrolltop === 'true'){
22
  $(window).scrollTop(0);
36
  alm.data;
37
  alm.el = el;
38
  alm.container = el;
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-';
87
  alm.paging_controls = true;
88
  }else{
89
  alm.paging_controls = false;
90
+ }
 
 
 
 
91
  /* /end Paging */
92
 
93
 
426
  */
427
 
428
  alm.AjaxLoadMore.success = function (data) {
429
+
 
430
  if(alm.previous_post){
431
  alm.AjaxLoadMore.getPreviousPost(); // Get previous page data
432
  }
459
  }
460
 
461
  // ALM Empty - triggers if zero results were returned
462
+ if(alm.data.length === 0){
463
  if ($.isFunction($.fn.almEmpty)) {
464
  $.fn.almEmpty(alm);
465
  }
658
  url: alm_localize.ajaxurl,
659
  data: {
660
  action: 'alm_query_previous_post',
661
+ id: alm.previous_post_id
662
  },
663
  success: function (data) {
664
  if(data.has_previous_post){
683
  }
684
 
685
  });
686
+ };
687
 
688
 
689
 
861
 
862
  //Custom easing function
863
  $.easing.alm_easeInOutQuad = function (x, t, b, c, d) {
864
+ if ((t /= d / 2) < 1) { return c / 2 * t * t + b; }
865
  return -c / 2 * ((--t) * (t - 2) - 1) + b;
866
  };
867
 
core/js/ajax-load-more.min.js CHANGED
@@ -44,9 +44,9 @@ alm.AjaxLoadMore.loadPosts=function(){if(!alm.disable_ajax){if(!alm.paging){alm.
44
  alm.loading=true;if(alm.cache==='true'&&!alm.cache_logged_in){if(alm.init&&alm.seo&&alm.isPaged){alm.AjaxLoadMore.ajax('standard');}else{var cachePage=alm.cache_path+'/page-'+alm.page+'.html';$.get(cachePage,function(data){alm.AjaxLoadMore.success(data);}).fail(function(){alm.AjaxLoadMore.ajax('standard');});}}else{alm.AjaxLoadMore.ajax('standard');}}};alm.AjaxLoadMore.ajax=function(queryType){if(alm.previous_post){alm.previous_post_id=alm.content.attr('data-previous-post-id');}
45
  $.ajax({type:"GET",url:alm_localize.ajaxurl,data:{action:'alm_query_posts',query_type:queryType,nonce:alm_localize.alm_nonce,cache_id:alm.cache_id,repeater:alm.repeater,theme_repeater:alm.theme_repeater,post_type:alm.post_type,post_format:alm.content.attr('data-post-format'),category:alm.content.attr('data-category'),category__not_in:alm.content.attr('data-category-not-in'),tag:alm.content.attr('data-tag'),tag__not_in:alm.content.attr('data-tag-not-in'),taxonomy:alm.content.attr('data-taxonomy'),taxonomy_terms:alm.content.attr('data-taxonomy-terms'),taxonomy_operator:alm.content.attr('data-taxonomy-operator'),meta_key:alm.content.attr('data-meta-key'),meta_value:alm.content.attr('data-meta-value'),meta_compare:alm.content.attr('data-meta-compare'),meta_relation:alm.content.attr('data-meta-relation'),meta_type:alm.content.attr('data-meta-type'),author:alm.content.attr('data-author'),year:alm.content.attr('data-year'),month:alm.content.attr('data-month'),day:alm.content.attr('data-day'),post_status:alm.content.attr('data-post-status'),order:alm.content.attr('data-order'),orderby:alm.content.attr('data-orderby'),post__in:alm.content.attr('data-post-in'),exclude:alm.content.attr('data-exclude'),search:alm.content.attr('data-search'),custom_args:alm.content.attr('data-custom-args'),posts_per_page:alm.posts_per_page,pageNumber:alm.page,offset:alm.offset,preloaded:alm.preloaded,preloaded_amount:alm.preloaded_amount,seo_start_page:alm.start_page,previous_post:alm.previous_post,previous_post_id:alm.previous_post_id,lang:alm.lang},dataType:"html",beforeSend:function(){if(alm.page!=1&&!alm.paging){alm.button.addClass('loading');}},success:function(data){if(queryType==='standard'){alm.AjaxLoadMore.success(data);}
46
  else if(queryType==='totalposts'&&alm.paging){if($.isFunction($.fn.almBuildPagination)){$.fn.almBuildPagination(data,alm);}}},error:function(jqXHR,textStatus,errorThrown){alm.AjaxLoadMore.error(jqXHR,textStatus,errorThrown);}});};if(alm.paging){alm.AjaxLoadMore.ajax('totalposts');}
47
- alm.AjaxLoadMore.success=function(data){var previousPostID='';if(alm.previous_post){alm.AjaxLoadMore.getPreviousPost();}
48
  alm.data=$(data);if(alm.init){if(!alm.paging){alm.button.text(alm.button_label);}else{if(alm.data.length>0){alm.el=$('<div class="alm-reveal"/>');alm.el.append('<div class="alm-paging-content"></div><div class="alm-paging-loading"></div>');$('.alm-paging-content',alm.el).append(alm.data).hide();alm.content.append(alm.el);alm.content.parent().removeClass('loading');$('.alm-paging-content',alm.el).fadeIn(alm.speed,'alm_easeInOutQuad',function(){var paddingT=parseInt(alm.content.css('padding-top')),paddingB=parseInt(alm.content.css('padding-bottom'));alm.content.css('height',alm.el.height()+paddingT+paddingB+'px');if($.isFunction($.fn.almFadePageControls)){$.fn.almFadePageControls(alm.btnWrap);}});}}
49
- if(!alm.data.length>0){if($.isFunction($.fn.almEmpty)){$.fn.almEmpty(alm);}}
50
  if(alm.isPaged){alm.posts_per_page=alm.content.attr('data-posts-per-page');alm.page=alm.start_page-1;}}
51
  if(alm.data.length>0){if(!alm.paging){if(alm.previous_post){alm.el=$('<div class="alm-reveal alm-previous-post post-'+alm.previous_post_id+'" data-id="'+alm.previous_post_id+'" data-title="'+alm.previous_post_title+'" data-url="'+alm.previous_post_permalink+'"/>');}else{alm.el=$('<div class="alm-reveal"/>');}
52
  alm.el.append(alm.data).hide();alm.content.append(alm.el);if(alm.transition==='fade'){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){alm.el.fadeIn(alm.speed,'alm_easeInOutQuad',function(){alm.loading=false;if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading');}
@@ -61,10 +61,9 @@ if($(".ajax-load-more-wrap").length===1){if($.isFunction($.fn.almSEO)&&alm.seo){
61
  alm.loading=false;alm.finished=true;}
62
  if(alm.destroy_after!==undefined&&alm.destroy_after!==''){var currentPage=alm.page+1;if(alm.preload){currentPage++;}
63
  if(currentPage==alm.destroy_after){alm.disable_ajax=true;if(!alm.paging){alm.button.delay(alm.speed).fadeOut(alm.speed);}}}
64
- alm.init=false;};alm.fetchingPreviousPost=false;alm.AjaxLoadMore.getPreviousPost=function(){alm.fetchingPreviousPost=true;$.ajax({type:"GET",dataType:"JSON",url:alm_localize.ajaxurl,data:{action:'alm_query_previous_post',id:alm.previous_post_id,},success:function(data){if(data.has_previous_post){alm.content.attr('data-previous-post-id',data.prev_id);alm.previous_post_permalink=data.prev_permalink;alm.previous_post_title=data.prev_title;}else{if(!data.has_previous_post){alm.finished=true;alm.button.addClass('done');}}
65
  if($.isFunction($.fn.almSetPreviousPost)){$.fn.almSetPreviousPost(alm,data.current_id,data.permalink,data.title);}
66
- alm.fetchingPreviousPost=false;},error:function(jqXHR,textStatus,errorThrown){alm.AjaxLoadMore.error(jqXHR,textStatus,errorThrown);alm.fetchingPreviousPost=false;}});}
67
- alm.AjaxLoadMore.error=function(jqXHR,textStatus,errorThrown){alm.loading=false;if(!alm.paging){alm.button.removeClass('loading');}
68
  console.log(errorThrown);};if(!alm.paging&&!alm.fetchingPreviousPost){alm.button.on('click',function(){if(alm.pause==='true'){alm.pause=false;alm.pause_override=false;alm.AjaxLoadMore.loadPosts();}
69
  if(!alm.loading&&!alm.finished&&!$(this).hasClass('done')){alm.loading=true;alm.page++;alm.AjaxLoadMore.loadPosts();}});}
70
  if(alm.paging){alm.window.resize(function(){if($.isFunction($.fn.almOnWindowResize)){setTimeout(function(){$.fn.almOnWindowResize(alm);},250);}});}
@@ -73,7 +72,8 @@ return alm.visible;};if(alm.scroll&&!alm.paging){alm.window.bind("scroll touchst
73
  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();}}}});}
74
  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();}}}
75
  if(alm.previous_post){alm.AjaxLoadMore.getPreviousPost();alm.loading=false;}
76
- 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;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];}}
79
  finishedCallback=finishedCallback||$.noop;eachCallback=eachCallback||$.noop;waitForAll=!!waitForAll;if(!$.isFunction(finishedCallback)||!$.isFunction(eachCallback)){throw new TypeError('An invalid callback was supplied.');}
44
  alm.loading=true;if(alm.cache==='true'&&!alm.cache_logged_in){if(alm.init&&alm.seo&&alm.isPaged){alm.AjaxLoadMore.ajax('standard');}else{var cachePage=alm.cache_path+'/page-'+alm.page+'.html';$.get(cachePage,function(data){alm.AjaxLoadMore.success(data);}).fail(function(){alm.AjaxLoadMore.ajax('standard');});}}else{alm.AjaxLoadMore.ajax('standard');}}};alm.AjaxLoadMore.ajax=function(queryType){if(alm.previous_post){alm.previous_post_id=alm.content.attr('data-previous-post-id');}
45
  $.ajax({type:"GET",url:alm_localize.ajaxurl,data:{action:'alm_query_posts',query_type:queryType,nonce:alm_localize.alm_nonce,cache_id:alm.cache_id,repeater:alm.repeater,theme_repeater:alm.theme_repeater,post_type:alm.post_type,post_format:alm.content.attr('data-post-format'),category:alm.content.attr('data-category'),category__not_in:alm.content.attr('data-category-not-in'),tag:alm.content.attr('data-tag'),tag__not_in:alm.content.attr('data-tag-not-in'),taxonomy:alm.content.attr('data-taxonomy'),taxonomy_terms:alm.content.attr('data-taxonomy-terms'),taxonomy_operator:alm.content.attr('data-taxonomy-operator'),meta_key:alm.content.attr('data-meta-key'),meta_value:alm.content.attr('data-meta-value'),meta_compare:alm.content.attr('data-meta-compare'),meta_relation:alm.content.attr('data-meta-relation'),meta_type:alm.content.attr('data-meta-type'),author:alm.content.attr('data-author'),year:alm.content.attr('data-year'),month:alm.content.attr('data-month'),day:alm.content.attr('data-day'),post_status:alm.content.attr('data-post-status'),order:alm.content.attr('data-order'),orderby:alm.content.attr('data-orderby'),post__in:alm.content.attr('data-post-in'),exclude:alm.content.attr('data-exclude'),search:alm.content.attr('data-search'),custom_args:alm.content.attr('data-custom-args'),posts_per_page:alm.posts_per_page,pageNumber:alm.page,offset:alm.offset,preloaded:alm.preloaded,preloaded_amount:alm.preloaded_amount,seo_start_page:alm.start_page,previous_post:alm.previous_post,previous_post_id:alm.previous_post_id,lang:alm.lang},dataType:"html",beforeSend:function(){if(alm.page!=1&&!alm.paging){alm.button.addClass('loading');}},success:function(data){if(queryType==='standard'){alm.AjaxLoadMore.success(data);}
46
  else if(queryType==='totalposts'&&alm.paging){if($.isFunction($.fn.almBuildPagination)){$.fn.almBuildPagination(data,alm);}}},error:function(jqXHR,textStatus,errorThrown){alm.AjaxLoadMore.error(jqXHR,textStatus,errorThrown);}});};if(alm.paging){alm.AjaxLoadMore.ajax('totalposts');}
47
+ alm.AjaxLoadMore.success=function(data){if(alm.previous_post){alm.AjaxLoadMore.getPreviousPost();}
48
  alm.data=$(data);if(alm.init){if(!alm.paging){alm.button.text(alm.button_label);}else{if(alm.data.length>0){alm.el=$('<div class="alm-reveal"/>');alm.el.append('<div class="alm-paging-content"></div><div class="alm-paging-loading"></div>');$('.alm-paging-content',alm.el).append(alm.data).hide();alm.content.append(alm.el);alm.content.parent().removeClass('loading');$('.alm-paging-content',alm.el).fadeIn(alm.speed,'alm_easeInOutQuad',function(){var paddingT=parseInt(alm.content.css('padding-top')),paddingB=parseInt(alm.content.css('padding-bottom'));alm.content.css('height',alm.el.height()+paddingT+paddingB+'px');if($.isFunction($.fn.almFadePageControls)){$.fn.almFadePageControls(alm.btnWrap);}});}}
49
+ if(alm.data.length===0){if($.isFunction($.fn.almEmpty)){$.fn.almEmpty(alm);}}
50
  if(alm.isPaged){alm.posts_per_page=alm.content.attr('data-posts-per-page');alm.page=alm.start_page-1;}}
51
  if(alm.data.length>0){if(!alm.paging){if(alm.previous_post){alm.el=$('<div class="alm-reveal alm-previous-post post-'+alm.previous_post_id+'" data-id="'+alm.previous_post_id+'" data-title="'+alm.previous_post_title+'" data-url="'+alm.previous_post_permalink+'"/>');}else{alm.el=$('<div class="alm-reveal"/>');}
52
  alm.el.append(alm.data).hide();alm.content.append(alm.el);if(alm.transition==='fade'){if(alm.images_loaded==='true'){alm.el.almWaitForImages().done(function(){alm.el.fadeIn(alm.speed,'alm_easeInOutQuad',function(){alm.loading=false;if(!alm.paging){alm.button.delay(alm.speed).removeClass('loading');}
61
  alm.loading=false;alm.finished=true;}
62
  if(alm.destroy_after!==undefined&&alm.destroy_after!==''){var currentPage=alm.page+1;if(alm.preload){currentPage++;}
63
  if(currentPage==alm.destroy_after){alm.disable_ajax=true;if(!alm.paging){alm.button.delay(alm.speed).fadeOut(alm.speed);}}}
64
+ alm.init=false;};alm.fetchingPreviousPost=false;alm.AjaxLoadMore.getPreviousPost=function(){alm.fetchingPreviousPost=true;$.ajax({type:"GET",dataType:"JSON",url:alm_localize.ajaxurl,data:{action:'alm_query_previous_post',id:alm.previous_post_id},success:function(data){if(data.has_previous_post){alm.content.attr('data-previous-post-id',data.prev_id);alm.previous_post_permalink=data.prev_permalink;alm.previous_post_title=data.prev_title;}else{if(!data.has_previous_post){alm.finished=true;alm.button.addClass('done');}}
65
  if($.isFunction($.fn.almSetPreviousPost)){$.fn.almSetPreviousPost(alm,data.current_id,data.permalink,data.title);}
66
+ alm.fetchingPreviousPost=false;},error:function(jqXHR,textStatus,errorThrown){alm.AjaxLoadMore.error(jqXHR,textStatus,errorThrown);alm.fetchingPreviousPost=false;}});};alm.AjaxLoadMore.error=function(jqXHR,textStatus,errorThrown){alm.loading=false;if(!alm.paging){alm.button.removeClass('loading');}
 
67
  console.log(errorThrown);};if(!alm.paging&&!alm.fetchingPreviousPost){alm.button.on('click',function(){if(alm.pause==='true'){alm.pause=false;alm.pause_override=false;alm.AjaxLoadMore.loadPosts();}
68
  if(!alm.loading&&!alm.finished&&!$(this).hasClass('done')){alm.loading=true;alm.page++;alm.AjaxLoadMore.loadPosts();}});}
69
  if(alm.paging){alm.window.resize(function(){if($.isFunction($.fn.almOnWindowResize)){setTimeout(function(){$.fn.almOnWindowResize(alm);},250);}});}
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];}}
79
  finishedCallback=finishedCallback||$.noop;eachCallback=eachCallback||$.noop;waitForAll=!!waitForAll;if(!$.isFunction(finishedCallback)||!$.isFunction(eachCallback)){throw new TypeError('An invalid callback was supplied.');}
lang/ajax-load-more.pot CHANGED
@@ -1,15 +1,15 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Ajax Load More\n"
4
- "POT-Creation-Date: 2015-09-14 22:19-0500\n"
5
- "PO-Revision-Date: 2015-09-14 22:19-0500\n"
6
- "Last-Translator: Darren Cooney <darren.cooney@gmail.com>\n"
7
  "Language-Team: \n"
8
  "Language: en_CA\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.7\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
  "X-Poedit-KeywordsList: __;_e\n"
@@ -224,34 +224,61 @@ msgid "More Info"
224
  msgstr ""
225
 
226
  #: ../admin/includes/cta/mailinglist.php:3
227
- msgid "Stay Informed"
228
- msgstr ""
229
-
230
- #: ../admin/includes/cta/mailinglist.php:4
231
- msgid "Follow Ajax Load More"
232
- msgstr ""
233
-
234
- #: ../admin/includes/cta/mailinglist.php:8
235
  msgid "Join the Mailing List"
236
  msgstr ""
237
 
238
- #: ../admin/includes/cta/mailinglist.php:9
239
  msgid ""
240
- "Receive product updates delivered (infrequently) directly to your inbox."
 
241
  msgstr ""
242
 
243
- #: ../admin/includes/cta/mailinglist.php:15
244
  msgid "Email Address"
245
  msgstr ""
246
 
247
- #: ../admin/includes/cta/mailinglist.php:16
248
  msgid "Enter email address"
249
  msgstr ""
250
 
251
- #: ../admin/includes/cta/mailinglist.php:17
252
  msgid "Subscribe"
253
  msgstr ""
254
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
255
  #: ../admin/includes/cta/writeable.php:2
256
  msgid "Read/Write Access"
257
  msgstr ""
@@ -367,6 +394,10 @@ msgstr ""
367
  msgid "Cache"
368
  msgstr ""
369
 
 
 
 
 
370
  #: ../admin/shortcode-builder/shortcode-builder.php:20
371
  msgid "Turn on content caching."
372
  msgstr ""
@@ -397,6 +428,10 @@ msgstr ""
397
  msgid "False"
398
  msgstr ""
399
 
 
 
 
 
400
  #: ../admin/shortcode-builder/shortcode-builder.php:42
401
  msgid ""
402
  "You <u>must</u> generate a unique ID for this cached query - this unique ID "
@@ -546,6 +581,7 @@ msgid ""
546
  msgstr ""
547
 
548
  #: ../admin/shortcode-builder/shortcode-builder.php:348
 
549
  msgid "view example"
550
  msgstr ""
551
 
@@ -833,7 +869,7 @@ msgid "Customize the <em>Load More</em> button label."
833
  msgstr ""
834
 
835
  #: ../admin/shortcode-builder/shortcode-builder.php:905
836
- #: ../ajax-load-more.php:290
837
  msgid "Older Posts"
838
  msgstr ""
839
 
@@ -1185,8 +1221,7 @@ msgid ""
1185
  msgstr ""
1186
 
1187
  #: ../admin/views/settings.php:5
1188
- msgid ""
1189
- "A powerful solution to add infinite scroll functionality to any website."
1190
  msgstr ""
1191
 
1192
  #: ../admin/views/settings.php:9
@@ -1233,7 +1268,7 @@ msgstr ""
1233
  msgid "Clear all Shortcode Builder settings"
1234
  msgstr ""
1235
 
1236
- #: ../ajax-load-more.php:162
1237
  msgid "Settings"
1238
  msgstr ""
1239
 
@@ -1271,12 +1306,6 @@ msgstr ""
1271
  #~ msgid "share"
1272
  #~ msgstr "Partager"
1273
 
1274
- #~ msgid "Share on Twitter"
1275
- #~ msgstr "Partager sur Twitter"
1276
-
1277
- #~ msgid "Share on Facebook"
1278
- #~ msgstr "Partager sur Facebook"
1279
-
1280
  #~ msgid "Share via Email"
1281
  #~ msgstr "Partager par courriel"
1282
 
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"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.6.4\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
  "X-Poedit-KeywordsList: __;_e\n"
224
  msgstr ""
225
 
226
  #: ../admin/includes/cta/mailinglist.php:3
 
 
 
 
 
 
 
 
227
  msgid "Join the Mailing List"
228
  msgstr ""
229
 
230
+ #: ../admin/includes/cta/mailinglist.php:4
231
  msgid ""
232
+ "Enter your email below to receive product updates delivered directly to your "
233
+ "inbox."
234
  msgstr ""
235
 
236
+ #: ../admin/includes/cta/mailinglist.php:10
237
  msgid "Email Address"
238
  msgstr ""
239
 
240
+ #: ../admin/includes/cta/mailinglist.php:11
241
  msgid "Enter email address"
242
  msgstr ""
243
 
244
+ #: ../admin/includes/cta/mailinglist.php:12
245
  msgid "Subscribe"
246
  msgstr ""
247
 
248
+ #: ../admin/includes/cta/resources.php:2
249
+ msgid "Resources"
250
+ msgstr ""
251
+
252
+ #: ../admin/includes/cta/resources.php:4
253
+ 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
283
  msgid "Read/Write Access"
284
  msgstr ""
394
  msgid "Cache"
395
  msgstr ""
396
 
397
+ #: ../admin/shortcode-builder/shortcode-builder.php:19
398
+ msgid "Enable Caching"
399
+ msgstr ""
400
+
401
  #: ../admin/shortcode-builder/shortcode-builder.php:20
402
  msgid "Turn on content caching."
403
  msgstr ""
428
  msgid "False"
429
  msgstr ""
430
 
431
+ #: ../admin/shortcode-builder/shortcode-builder.php:41
432
+ msgid "Cache ID"
433
+ msgstr ""
434
+
435
  #: ../admin/shortcode-builder/shortcode-builder.php:42
436
  msgid ""
437
  "You <u>must</u> generate a unique ID for this cached query - this unique ID "
581
  msgstr ""
582
 
583
  #: ../admin/shortcode-builder/shortcode-builder.php:348
584
+ #: ../admin/shortcode-builder/shortcode-builder.php:639
585
  msgid "view example"
586
  msgstr ""
587
 
869
  msgstr ""
870
 
871
  #: ../admin/shortcode-builder/shortcode-builder.php:905
872
+ #: ../ajax-load-more.php:287
873
  msgid "Older Posts"
874
  msgstr ""
875
 
1221
  msgstr ""
1222
 
1223
  #: ../admin/views/settings.php:5
1224
+ msgid "A powerful plugin to add infinite scroll functionality to your website."
 
1225
  msgstr ""
1226
 
1227
  #: ../admin/views/settings.php:9
1268
  msgid "Clear all Shortcode Builder settings"
1269
  msgstr ""
1270
 
1271
+ #: ../ajax-load-more.php:158
1272
  msgid "Settings"
1273
  msgstr ""
1274
 
1306
  #~ msgid "share"
1307
  #~ msgstr "Partager"
1308
 
 
 
 
 
 
 
1309
  #~ msgid "Share via Email"
1310
  #~ msgstr "Partager par courriel"
1311