Custom Login Page Customizer | LoginPress - Version 1.5.8

Version Description

2021-11-01 = * BugFix: Footer div spacing issue. * Bugfix: Add-Ons page - List all LoginPress addons.

Download this release

Release Info

Developer hiddenpearls
Plugin Icon 128x128 Custom Login Page Customizer | LoginPress
Version 1.5.8
Comparing to
See all releases

Code changes from version 1.5.7 to 1.5.8

classes/class-loginpress-addons.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @package LoginPress
6
  * @since 1.0.19
7
- * @since 1.1.24
8
  *
9
  */
10
 
@@ -29,48 +29,52 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
29
  $this->plugins_list = get_plugins();
30
  }
31
 
 
 
 
32
  function _get_addons() {
33
 
34
  // For Testing
35
- //delete_transient( 'loginpress_api_addons' );
36
-
37
- // Get the transient where the addons are stored on-site.
38
- $data = get_transient( 'loginpress_api_addons' );
39
 
40
- // If we already have data, return it.
41
- if ( ! empty( $data ) )
42
- return $data;
 
43
 
44
- // Make sure this matches the exact URL from your site.
45
- //$url = 'http://localhost/wpbrigade.local/wp-json/wpbrigade/v1/plugins?addons=loginpress-pro-add-ons';
46
- $url = 'https://wpbrigade.com/wp-json/wpbrigade/v1/plugins?addons=loginpress-pro-add-ons';
47
 
48
- // Get data from the remote URL.
49
- $response = wp_remote_get( $url, array( 'timeout' => 20 ) );
50
 
51
- if ( ! is_wp_error( $response ) ) {
52
 
53
- // Decode the data that we got.
54
- $data = json_decode( wp_remote_retrieve_body( $response ) );
55
 
56
- if ( ! empty( $data ) && is_array( $data ) ) {
57
 
58
- // Store the data for a week.
59
- set_transient( 'loginpress_api_addons', $data, 7 * DAY_IN_SECONDS );
60
 
61
- return $data;
62
- }
63
- }
 
 
64
 
65
- return false;
66
  }
67
 
68
  function _addon_card( $addon ) { ?>
69
 
70
  <div class="loginpress-extension<?php if( in_array('loginpress-free-add-ons', $this->convert_to_array($addon->categories) ) ){ echo ' loginpress-free-add-ons'; } ?>">
71
- <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&utm_medium=addons-coming-soon&utm_campaign=pro-upgrade" class="logoinpress_addons_links">
72
 
73
- <h3><img src=<?php if ( $addon->media->icon->url ) echo $addon->media->icon->url; else echo plugins_url( '../img/thumbnail/gray-loginpress.png', __FILE__ );?> class="logoinpress_addons_thumbnails"/><span><?php echo esc_html( $addon->title ); ?></span></h3>
74
  </a>
75
 
76
  <?php echo wpautop( wp_strip_all_tags( $addon->excerpt ) ); ?>
@@ -80,13 +84,15 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
80
  $this->sa_check_plugin_status( $addon->id, $addon->slug, $this->convert_to_array( $addon->categories ) );
81
  ?>
82
  </p>
83
- <?php echo $this->_ajax_responce( $addon->title, $addon->slug ); ?>
 
84
  <!-- <input id="<?php // echo $addon->slug ?>" type="checkbox" class="loginpress-radio loginpress-radio-ios" value="<?php // echo $addon->slug ?>"> -->
85
  <!-- <label for="<?php // echo $addon->slug ?>" class="loginpress-radio-btn"></label> -->
86
  </div>
87
 
88
  <?php }
89
 
 
90
  function _ajax_responce( $text, $slug ){
91
  $html = '<div id="loginpressEnableAddon' . $slug . '" class="loginpress-addon-enable" style="display:none;">
92
  <div class="loginpress-logo-container">
@@ -133,9 +139,9 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
133
  function _addon_card_free( $addon ) { ?>
134
 
135
  <div class="loginpress-extension<?php if( in_array('loginpress-free-add-ons', $this->convert_to_array($addon->categories) ) ){ echo ' loginpress-free-add-ons'; } ?>">
136
- <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&utm_medium=addons-coming-soon&utm_campaign=pro-upgrade" class="logoinpress_addons_links">
137
 
138
- <h3><img src=<?php if ( $addon->media->icon->url ) echo $addon->media->icon->url; else echo plugins_url( '../img/thumbnail/gray-loginpress.png', __FILE__ );?> class="logoinpress_addons_thumbnails"/><span><?php echo esc_html( $addon->title ); ?></span></h3>
139
  </a>
140
 
141
  <?php echo wpautop( wp_strip_all_tags( $addon->excerpt ) );
@@ -378,8 +384,16 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
378
  }
379
 
380
  ?> <div class="addon_cards_wraper"> <?php
381
- foreach( $this->_get_addons() as $addon ) {
382
-
 
 
 
 
 
 
 
 
383
  $this->_addon_card( $addon );
384
  }
385
  ?> </div> <?php
@@ -390,8 +404,16 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
390
 
391
  // Show full list of add-ons
392
  ?> <div class="addon_cards_wraper"> <?php
393
- foreach( $this->_get_addons() as $addon ) {
394
-
 
 
 
 
 
 
 
 
395
  $this->_addon_card_free( $addon );
396
  }
397
  ?> </div> <?php
@@ -403,8 +425,16 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
403
 
404
  // Show full list of add-ons
405
  ?> <div class="addon_cards_wraper"> <?php
406
- foreach( $this->_get_addons() as $addon ) {
407
-
 
 
 
 
 
 
 
 
408
  $this->_addon_card_free( $addon );
409
  }
410
  ?> </div> <?php
@@ -516,7 +546,7 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
516
  outline: none;
517
  box-shadow: none;
518
  }
519
- .logoinpress_addons_thumbnails{
520
 
521
  max-width: 100px;
522
  position: absolute;
@@ -526,7 +556,7 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
526
  height: auto;
527
  width: auto;
528
  }
529
- .loginpress-extension .logoinpress_addons_links{
530
  position: relative;
531
  background-color: #d3f3ff;
532
  }
@@ -554,7 +584,7 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
554
  height: 100px;
555
  color: #000000;
556
  }
557
- a.logoinpress_addons_links {
558
  display: inline-block;
559
  width: 100%;
560
  line-height: 90px;
@@ -562,7 +592,7 @@ if ( ! class_exists( 'LoginPress_Addons' ) ) :
562
  height: auto;
563
  text-decoration: none;
564
  }
565
- .logoinpress_addons_thumbnails {
566
  max-width: 100px;
567
  position: absolute;
568
  top: 5px;
4
  *
5
  * @package LoginPress
6
  * @since 1.0.19
7
+ * @version 1.5.8
8
  *
9
  */
10
 
29
  $this->plugins_list = get_plugins();
30
  }
31
 
32
+ /**
33
+ * The Addons listings
34
+ */
35
  function _get_addons() {
36
 
37
  // For Testing
38
+ // delete_transient( 'loginpress_api_addons' );
39
+ // Get the transient where the addons are stored on-site.
40
+ $data = get_transient( 'loginpress_api_addons' );
 
41
 
42
+ // If we already have data, return it.
43
+ if ( ! empty( $data ) && is_array( $data ) ) {
44
+ return $data;
45
+ }
46
 
47
+ // Make sure this matches the exact URL from your site.
48
+ $url = 'https://wpbrigade.com/wp-json/wpbrigade/v1/plugins?addons=loginpress-pro-add-ons';
 
49
 
50
+ // Get data from the remote URL.
51
+ $response = wp_remote_get( $url, array( 'timeout' => 20 ) );
52
 
53
+ if ( ! is_wp_error( $response ) ) {
54
 
55
+ // Decode the data that we got.
56
+ $data = json_decode( wp_remote_retrieve_body( $response ) );
57
 
58
+ if ( ! empty( $data ) && is_array( $data ) ) {
59
 
60
+ // Store the data for a week.
61
+ set_transient( 'loginpress_api_addons', $data, 7 * DAY_IN_SECONDS );
62
 
63
+ return $data;
64
+ } else {
65
+ return array( 'error_message' => __( 'Something went wrong in loading the Add-Ons, Try again later!', 'loginpress' ) );
66
+ }
67
+ }
68
 
69
+ return array( 'error_message' => __( 'Something went wrong in loading the Add-Ons, Try again later!', 'loginpress' ) );
70
  }
71
 
72
  function _addon_card( $addon ) { ?>
73
 
74
  <div class="loginpress-extension<?php if( in_array('loginpress-free-add-ons', $this->convert_to_array($addon->categories) ) ){ echo ' loginpress-free-add-ons'; } ?>">
75
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&utm_medium=addons-coming-soon&utm_campaign=pro-upgrade" class="loginpress_addons_links">
76
 
77
+ <h3><img src=<?php if ( $addon->media->icon->url ) echo $addon->media->icon->url; else echo plugins_url( '../img/thumbnail/gray-loginpress.png', __FILE__ );?> class="loginpress_addons_thumbnails"/><span><?php echo esc_html( $addon->title ); ?></span></h3>
78
  </a>
79
 
80
  <?php echo wpautop( wp_strip_all_tags( $addon->excerpt ) ); ?>
84
  $this->sa_check_plugin_status( $addon->id, $addon->slug, $this->convert_to_array( $addon->categories ) );
85
  ?>
86
  </p>
87
+ <?php
88
+ echo $this->_ajax_responce( $addon->title, $addon->slug ); ?>
89
  <!-- <input id="<?php // echo $addon->slug ?>" type="checkbox" class="loginpress-radio loginpress-radio-ios" value="<?php // echo $addon->slug ?>"> -->
90
  <!-- <label for="<?php // echo $addon->slug ?>" class="loginpress-radio-btn"></label> -->
91
  </div>
92
 
93
  <?php }
94
 
95
+
96
  function _ajax_responce( $text, $slug ){
97
  $html = '<div id="loginpressEnableAddon' . $slug . '" class="loginpress-addon-enable" style="display:none;">
98
  <div class="loginpress-logo-container">
139
  function _addon_card_free( $addon ) { ?>
140
 
141
  <div class="loginpress-extension<?php if( in_array('loginpress-free-add-ons', $this->convert_to_array($addon->categories) ) ){ echo ' loginpress-free-add-ons'; } ?>">
142
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&utm_medium=addons-coming-soon&utm_campaign=pro-upgrade" class="loginpress_addons_links">
143
 
144
+ <h3><img src=<?php if ( $addon->media->icon->url ) echo $addon->media->icon->url; else echo plugins_url( '../img/thumbnail/gray-loginpress.png', __FILE__ );?> class="loginpress_addons_thumbnails"/><span><?php echo esc_html( $addon->title ); ?></span></h3>
145
  </a>
146
 
147
  <?php echo wpautop( wp_strip_all_tags( $addon->excerpt ) );
384
  }
385
 
386
  ?> <div class="addon_cards_wraper"> <?php
387
+ foreach( $this->_get_addons() as $key => $addon ) {
388
+ if ( 'error_message' === $key) {
389
+ include_once( LOGINPRESS_DIR_PATH . 'include/loginpress-static-addons.php' );
390
+ if ( class_exists('LoginPress_Pro') && LoginPress_Pro::is_activated() && LoginPress_Pro::get_license_type() ) {
391
+ LoginPress_Static_Addons::pro_static_addon_cards();
392
+ } else {
393
+ LoginPress_Static_Addons::free_static_addon_cards();
394
+ }
395
+ return;
396
+ }
397
  $this->_addon_card( $addon );
398
  }
399
  ?> </div> <?php
404
 
405
  // Show full list of add-ons
406
  ?> <div class="addon_cards_wraper"> <?php
407
+ foreach( $this->_get_addons() as $key => $addon ) {
408
+ if ( 'error_message' === $key) {
409
+ include_once( LOGINPRESS_DIR_PATH . 'include/loginpress-static-addons.php' );
410
+ if ( class_exists( 'LoginPress_Pro' ) && LoginPress_Pro::is_activated() && LoginPress_Pro::get_license_type() ) {
411
+ LoginPress_Static_Addons::pro_static_addon_cards();
412
+ } else {
413
+ LoginPress_Static_Addons::free_static_addon_cards();
414
+ }
415
+ return;
416
+ }
417
  $this->_addon_card_free( $addon );
418
  }
419
  ?> </div> <?php
425
 
426
  // Show full list of add-ons
427
  ?> <div class="addon_cards_wraper"> <?php
428
+ foreach( $this->_get_addons() as $key => $addon ) {
429
+ if ( 'error_message' === $key) {
430
+ include_once( LOGINPRESS_DIR_PATH . 'include/loginpress-static-addons.php' );
431
+ if ( class_exists('LoginPress_Pro') && LoginPress_Pro::is_activated() && LoginPress_Pro::get_license_type() ) {
432
+ LoginPress_Static_Addons::pro_static_addon_cards();
433
+ } else {
434
+ LoginPress_Static_Addons::free_static_addon_cards();
435
+ }
436
+ return;
437
+ }
438
  $this->_addon_card_free( $addon );
439
  }
440
  ?> </div> <?php
546
  outline: none;
547
  box-shadow: none;
548
  }
549
+ .loginpress_addons_thumbnails{
550
 
551
  max-width: 100px;
552
  position: absolute;
556
  height: auto;
557
  width: auto;
558
  }
559
+ .loginpress-extension .loginpress_addons_links{
560
  position: relative;
561
  background-color: #d3f3ff;
562
  }
584
  height: 100px;
585
  color: #000000;
586
  }
587
+ a.loginpress_addons_links {
588
  display: inline-block;
589
  width: 100%;
590
  line-height: 90px;
592
  height: auto;
593
  text-decoration: none;
594
  }
595
+ .loginpress_addons_thumbnails {
596
  max-width: 100px;
597
  position: absolute;
598
  top: 5px;
css/style-login.php CHANGED
@@ -3,7 +3,7 @@
3
  * Get option and check the key exists in it.
4
  *
5
  * @since 1.0.0
6
- * @version 1.5.2
7
  * * * * * * * * * * * * * * * */
8
 
9
 
@@ -231,6 +231,7 @@ $loginpress_bg_video_position = loginpress_get_option_key( 'video_obj_positio
231
  $loginpress_bg_video_muted = loginpress_bg_option( 'background_video_muted', $loginpress_array );
232
  $loginpress_theme_tem = get_option( 'customize_presets_settings', 'default1' );
233
  $loginpress_video_voice = ( 1 == $loginpress_bg_video_muted ) ? 'muted' : '';
 
234
 
235
  /**
236
  * loginpress_box_shadow [if user pass 0 then we're not going to set the value of box-shedow because it effects the pro templates.]
@@ -258,7 +259,11 @@ function loginpress_box_shadow( $shadow, $opacity, $default_shadow = 0, $inset =
258
  *{
259
  box-sizing: border-box;
260
  }
261
-
 
 
 
 
262
 
263
  .login form input[type=checkbox]:focus{
264
  box-shadow: none;
3
  * Get option and check the key exists in it.
4
  *
5
  * @since 1.0.0
6
+ * @version 1.5.8
7
  * * * * * * * * * * * * * * * */
8
 
9
 
231
  $loginpress_bg_video_muted = loginpress_bg_option( 'background_video_muted', $loginpress_array );
232
  $loginpress_theme_tem = get_option( 'customize_presets_settings', 'default1' );
233
  $loginpress_video_voice = ( 1 == $loginpress_bg_video_muted ) ? 'muted' : '';
234
+ $login_copy_right_display = loginpress_get_option_key( 'login_copy_right_display', $loginpress_array );
235
 
236
  /**
237
  * loginpress_box_shadow [if user pass 0 then we're not going to set the value of box-shedow because it effects the pro templates.]
259
  *{
260
  box-sizing: border-box;
261
  }
262
+ <?php if ( isset( $login_copy_right_display ) && '' === $login_copy_right_display ) { ?>
263
+ .footer-cont{
264
+ height: 0 !important;
265
+ }
266
+ <?php } ?>
267
 
268
  .login form input[type=checkbox]:focus{
269
  box-shadow: none;
css/style-previewer.css CHANGED
@@ -2,6 +2,9 @@
2
  * Style Sceet for Customizer Previewer.
3
  * @since 1.0.23
4
  */
 
 
 
5
  .login form .input, .login input[type=text],.login form input[type=checkbox]{
6
  border-radius: 0;
7
  }
2
  * Style Sceet for Customizer Previewer.
3
  * @since 1.0.23
4
  */
5
+ .login form .forgetmenot{
6
+ float: none;
7
+ }
8
  .login form .input, .login input[type=text],.login form input[type=checkbox]{
9
  border-radius: 0;
10
  }
include/loginpress-static-addons.php ADDED
@@ -0,0 +1,258 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ // Exit if accessed directly.
5
+ exit;
6
+ }
7
+
8
+ /**
9
+ * Handling all the AJAX calls in LoginPress.
10
+ *
11
+ * @since 1.5.8
12
+ * @class LoginPress_Static_Addons
13
+ */
14
+
15
+ if ( ! class_exists( 'LoginPress_Static_Addons' ) ) :
16
+
17
+ class LoginPress_Static_Addons {
18
+
19
+ /**
20
+ * The constructor function
21
+ *
22
+ * @version 1.5.8
23
+ */
24
+ function __construct() {
25
+ include_once( LOGINPRESS_DIR_PATH . 'classes/class-loginpress-addons.php' );
26
+ }
27
+
28
+ /**
29
+ * Check addons status
30
+ *
31
+ * @version 1.5.8
32
+ */
33
+ public static function loginpress_check_addon_status( $version, $slug ) {
34
+ $slug_id = $slug;
35
+ $slug = $slug.'/'.$slug.'.php';
36
+ $plugins_list = get_plugins();
37
+ if ( is_plugin_active( $slug ) ) { ?>
38
+
39
+ <input name="loginpress_pro_addon_nonce" type="hidden" value="<?php echo wp_create_nonce( 'uninstall_' . $slug ); ?>">
40
+ <input name="loginpress_pro_addon_slug" type="hidden" value="<?php echo $slug; ?>">
41
+ <input id="<?php echo $slug ?>" type="checkbox" checked class="loginpress-radio loginpress-radio-ios loginpress-uninstall-pro-addon" value="<?php echo $slug ?>">
42
+ <label for="<?php echo $slug ?>" class="loginpress-radio-btn"></label>
43
+
44
+ <?php
45
+ } elseif ( array_key_exists( $slug , $plugins_list ) ) { ?>
46
+
47
+ <input name="loginpress_pro_addon_nonce" type="hidden" value="<?php echo wp_create_nonce( 'install-plugin_' . $slug ); ?>">
48
+ <input name="loginpress_pro_addon_slug" type="hidden" value="<?php echo $slug; ?>">
49
+ <input id="<?php echo $slug ?>" type="checkbox" class="loginpress-radio loginpress-radio-ios loginpress-active-pro-addon" value="<?php echo $slug ?>">
50
+ <label for="<?php echo $slug ?>" class="loginpress-radio-btn"></label>
51
+ <?php
52
+ } else {
53
+ if ( 'free' === $version && ! array_key_exists( $slug , $plugins_list ) ) {
54
+ $action = 'install-plugin';
55
+ if ( empty( get_option( 'loginpress_pro_license_key' ) ) ) {
56
+ $slug = 'login-logout-menu';
57
+ }
58
+ $link = wp_nonce_url( add_query_arg( array( 'action' => $action, 'plugin' => $slug ), admin_url( 'update.php' ) ), $action . '_' .$slug );
59
+ ?>
60
+ <input name="loginpress_pro_addon_nonce" type="hidden" value="<?php echo wp_create_nonce( 'install-plugin_' . $slug ); ?>">
61
+ <input name="loginpress_pro_addon_slug" type="hidden" value="<?php echo $slug; ?>">
62
+ <input name="loginpress_pro_addon_id" type="hidden" value="3536">
63
+ <input id="<?php echo $slug_id; ?>" type="checkbox" class="loginpress-radio loginpress-radio-ios loginpress-install-pro-addon" value="<?php echo $slug_id; ?>">
64
+ <label for="<?php echo $slug_id; ?>" class="loginpress-radio-btn"></label>
65
+ <?php
66
+ } else { ?>
67
+ <input name="loginpress_pro_addon_nonce" type="hidden" value="<?php echo wp_create_nonce( 'install-plugin_' . $slug ); ?>">
68
+ <input name="loginpress_pro_addon_slug" type="hidden" value="<?php echo $slug; ?>">
69
+ <input id="<?php echo $slug_id; ?>" type="checkbox" class="loginpress-radio loginpress-radio-ios loginpress-active-pro-addon" value="<?php echo $slug_id; ?>">
70
+ <label for="<?php echo $slug_id; ?>" class="loginpress-radio-btn"></label>
71
+ <?php
72
+ }
73
+ }
74
+ }
75
+
76
+ /**
77
+ * The Static addons cards for pro
78
+ *
79
+ * @version 1.5.8
80
+ */
81
+ public static function pro_static_addon_cards() {
82
+ $obj_loginpress_addons = new LoginPress_Addons();
83
+ ?>
84
+ <div class="addon_cards_wraper">
85
+ <div class="loginpress-extension loginpress-free-add-ons">
86
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
87
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_logout_menu_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Logout Menu</span></h3>
88
+ </a>
89
+ <p>Login Logout Menu is a handy plugin which allows you to add login, logout, register and profile menu items in your selected menu.</p>
90
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'free', 'login-logout-menu' );
91
+ echo $obj_loginpress_addons->_ajax_responce('Login Logout Menu', 'login-logout-menu' ); ?>
92
+ </div>
93
+
94
+
95
+ <div class="loginpress-extension">
96
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
97
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_redirects_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Redirects</span></h3>
98
+ </a>
99
+ <p>Redirects users based on their roles. This is helpful, If you have an editor and want to redirect him to his editor stats page. Restrict your subscribers, guests or even customers to certain pages instead of wp-admin. This add-on has a cool UX/UI to manage all the login redirects you have created on your site.</p>
100
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-login-redirects');
101
+ echo $obj_loginpress_addons->_ajax_responce('Login Redirects', 'loginpress-login-redirects' ); ?>
102
+ </div>
103
+
104
+
105
+ <div class="loginpress-extension">
106
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
107
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/social_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Social Login</span></h3>
108
+ </a>
109
+ <p>Social login from LoginPress is an add-on which provides facility your users to log in and Register via Facebook, Google, and Twitter. This add-on will eliminate the Spam and Bot registrations. This add-on will help your users to hassle-free registrations/logins on your site.</p>
110
+ <p>
111
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-social-login');
112
+ echo $obj_loginpress_addons->_ajax_responce('Social Login', 'loginpress-social-login' ); ?>
113
+ </div>
114
+
115
+
116
+ <div class="loginpress-extension">
117
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
118
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_widget_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Widget</span></h3>
119
+ </a>
120
+ <p>This LoginPress add-on is a widget you can use into your blog sidebar. It uses an Ajax way to login via the sidebar. You may need to know HTML/CSS to give it style according to your site even we have styled it in general.</p>
121
+ <p>
122
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-login-widget');
123
+ echo $obj_loginpress_addons->_ajax_responce('Login Widget', 'loginpress-login-widget' ); ?>
124
+ </div>
125
+
126
+
127
+ <div class="loginpress-extension">
128
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
129
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/limit_login_attempts_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Limit Login Attempts</span></h3>
130
+ </a>
131
+ <p>Everybody needs a control of their Login page. This will help you to track your login attempts by each user. You can limit the login attempts for each user. Brute force attacks are the most common way to gain access to your website. This add-on acts as a sheild to these hacking attacks and gives you control to set the time between each login attempts.</p>
132
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-limit-login-attempts');
133
+ echo $obj_loginpress_addons->_ajax_responce('Limit Login Attempts', 'loginpress-limit-login-attempts' ); ?>
134
+ </div>
135
+
136
+
137
+ <div class="loginpress-extension">
138
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
139
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/auto_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Auto Login</span></h3>
140
+ </a>
141
+ <p>This LoginPress add-on lets you (Administrator) generates a unique URL for your certain users who you don't want to provide a password to login to your site. This Pro add-on gives you a list of all the users who you have given auto-generated login links. You can disable someone's access and delete certain users.</p>
142
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-auto-login');
143
+ echo $obj_loginpress_addons->_ajax_responce('Auto Login', 'loginpress-auto-login' ); ?>
144
+ </div>
145
+
146
+
147
+ <div class="loginpress-extension">
148
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
149
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/hide_rename_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Hide Login</span></h3>
150
+ </a>
151
+ <p>This LoginPress add-on lets you change the login page URL to anything you want. It will give a hard time to spammers who keep hitting to your login page. This is helpful for Brute force attacks. One caution to use this add-on is you need to remember the custom login url after you change it. We have an option to email your custom login url so you remember it.</p>
152
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'pro', 'loginpress-hide-login');
153
+ echo $obj_loginpress_addons->_ajax_responce('Limit Login Attempts', 'loginpress-hide-login' ); ?>
154
+ </div>
155
+
156
+ </div>
157
+ <?php }
158
+
159
+ /** The Static addons cards for pro
160
+ *
161
+ * @version 1.5.8
162
+ */
163
+ public static function free_static_addon_cards() {
164
+ $obj_loginpress_addon = new LoginPress_Addons();
165
+ ?>
166
+
167
+ <div class="addon_cards_wraper">
168
+ <div class="loginpress-extension loginpress-free-add-ons">
169
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
170
+
171
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_logout_menu_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Logout Menu</span></h3>
172
+ </a>
173
+
174
+ <p>Login Logout Menu is a handy plugin which allows you to add login, logout, register and profile menu items in your selected menu.</p>
175
+ <?php LoginPress_Static_Addons::loginpress_check_addon_status( 'free', 'login-logout-menu' );
176
+ echo $obj_loginpress_addon->_ajax_responce('Login Logout Menu', 'login-logout-menu' ); ?>
177
+
178
+ </div>
179
+
180
+ <div class="loginpress-extension">
181
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
182
+
183
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_redirects_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Redirects</span></h3>
184
+ </a>
185
+
186
+ <p>Redirects users based on their roles. This is helpful, If you have an editor and want to redirect him to his editor stats page. Restrict your subscribers, guests or even customers to certain pages instead of wp-admin. This add-on has a cool UX/UI to manage all the login redirects you have created on your site.</p>
187
+ <p>
188
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
189
+ </p>
190
+ </div>
191
+
192
+ <div class="loginpress-extension">
193
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
194
+
195
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/social_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Social Login</span></h3>
196
+ </a>
197
+
198
+ <p>Social login from LoginPress is an add-on which provides facility your users to log in and Register via Facebook, Google, and Twitter. This add-on will eliminate the Spam and Bot registrations. This add-on will help your users to hassle-free registrations/logins on your site.</p>
199
+ <p>
200
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
201
+ </p>
202
+ </div>
203
+
204
+ <div class="loginpress-extension">
205
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
206
+
207
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/login_widget_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Login Widget</span></h3>
208
+ </a>
209
+
210
+ <p>This LoginPress add-on is a widget you can use into your blog sidebar. It uses an Ajax way to login via the sidebar. You may need to know HTML/CSS to give it style according to your site even we have styled it in general.</p>
211
+ <p>
212
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
213
+ </p>
214
+
215
+ </div>
216
+
217
+ <div class="loginpress-extension">
218
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
219
+
220
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/limit_login_attempts_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Limit Login Attempts</span></h3>
221
+ </a>
222
+
223
+ <p>Everybody needs a control of their Login page. This will help you to track your login attempts by each user. You can limit the login attempts for each user. Brute force attacks are the most common way to gain access to your website. This add-on acts as a sheild to these hacking attacks and gives you control to set the time between each login attempts.</p>
224
+ <p>
225
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
226
+ </p>
227
+ </div>
228
+
229
+ <div class="loginpress-extension">
230
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
231
+
232
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/auto_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Auto Login</span></h3>
233
+ </a>
234
+
235
+ <p>This LoginPress add-on lets you (Administrator) generates a unique URL for your certain users who you don't want to provide a password to login to your site. This Pro add-on gives you a list of all the users who you have given auto-generated login links. You can disable someone's access and delete certain users.</p>
236
+ <p>
237
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
238
+ </p>
239
+ </div>
240
+
241
+ <div class="loginpress-extension">
242
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="loginpress_addons_links">
243
+
244
+ <h3><img src="https://wpbrigade.com/wp-content/uploads/edd/2018/01/hide_rename_login_300_x_300-150x150.png" class="loginpress_addons_thumbnails"><span>Hide Login</span></h3>
245
+ </a>
246
+
247
+ <p>This LoginPress add-on lets you change the login page URL to anything you want. It will give a hard time to spammers who keep hitting to your login page. This is helpful for Brute force attacks. One caution to use this add-on is you need to remember the custom login url after you change it. We have an option to email your custom login url so you remember it.</p>
248
+ <p>
249
+ <a target="_blank" href="https://wpbrigade.com/wordpress/plugins/loginpress-pro/?utm_source=loginpress-lite&amp;utm_medium=addons-coming-soon&amp;utm_campaign=pro-upgrade" class="button-primary">UPGRADE NOW</a>
250
+ </p>
251
+ </div>
252
+ </div>
253
+
254
+ <?php }
255
+ }
256
+ endif;
257
+
258
+ // new LoginPress_Static_Addons;
loginpress.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
  /**
3
  * Plugin Name: LoginPress - Customizing the WordPress Login
4
- * Plugin URI: https://loginpress.pro/
5
  * Description: LoginPress is the best <code>wp-login</code> Login Page Customizer plugin by <a href="https://wpbrigade.com/">WPBrigade</a> which allows you to completely change the layout of login, register and forgot password forms.
6
- * Version: 1.5.7
7
  * Author: WPBrigade
8
  * Author URI: https://WPBrigade.com/
9
  * Text Domain: loginpress
@@ -22,7 +22,7 @@ if ( ! class_exists( 'LoginPress' ) ) :
22
  /**
23
  * @var string
24
  */
25
- public $version = '1.5.7';
26
 
27
  /**
28
  * @var The single instance of the class
1
  <?php
2
  /**
3
  * Plugin Name: LoginPress - Customizing the WordPress Login
4
+ * Plugin URI: https://loginpress.pro/?utm_source=loginpress-lite&utm_medium=plugin-inside&utm_campaign=pro-upgrade&utm_content=plugin_uri
5
  * Description: LoginPress is the best <code>wp-login</code> Login Page Customizer plugin by <a href="https://wpbrigade.com/">WPBrigade</a> which allows you to completely change the layout of login, register and forgot password forms.
6
+ * Version: 1.5.8
7
  * Author: WPBrigade
8
  * Author URI: https://WPBrigade.com/
9
  * Text Domain: loginpress
22
  /**
23
  * @var string
24
  */
25
+ public $version = '1.5.8';
26
 
27
  /**
28
  * @var The single instance of the class
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tested up to: 5.8
4
  Contributors: WPBrigade, hiddenpearls, AbdulWahab610
5
  Author URI: https://wpbrigade.com/?utm_source=loginpress-lite&utm_medium=author-url-link
6
  Tags: wp-login, login, login customizer, custom login, wordpress login,
7
- Stable tag: 1.5.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -220,6 +220,10 @@ Please visit <a target="_blank" rel="friend" href="https://loginpress.pro?utm_so
220
 
221
  == Changelog ==
222
 
 
 
 
 
223
  = 1.5.7 – 2021-09-24 =
224
  * Bugfix: Login button {text & hover} color live preview in customizer.
225
  * Enhancement: Added a filter `loginpress_form_logo` to change the form logo.
@@ -621,5 +625,5 @@ Please visit <a target="_blank" rel="friend" href="https://loginpress.pro?utm_so
621
 
622
  == Upgrade Notice ==
623
 
624
- = 1.5.7 =
625
  * Important Release, upgrade immediately. Compatible with 5.8
4
  Contributors: WPBrigade, hiddenpearls, AbdulWahab610
5
  Author URI: https://wpbrigade.com/?utm_source=loginpress-lite&utm_medium=author-url-link
6
  Tags: wp-login, login, login customizer, custom login, wordpress login,
7
+ Stable tag: 1.5.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
220
 
221
  == Changelog ==
222
 
223
+ = 1.5.8 – 2021-11-01 =
224
+ * BugFix: Footer div spacing issue.
225
+ * Bugfix: Add-Ons page - List all LoginPress addons.
226
+
227
  = 1.5.7 – 2021-09-24 =
228
  * Bugfix: Login button {text & hover} color live preview in customizer.
229
  * Enhancement: Added a filter `loginpress_form_logo` to change the form logo.
625
 
626
  == Upgrade Notice ==
627
 
628
+ = 1.5.8 =
629
  * Important Release, upgrade immediately. Compatible with 5.8