Custom Login Page Customizer | LoginPress - Version 1.3.0

Version Description

2019-08-09 = * New Feature: Create Filter to remove LoginPress custom error messages. * BugFix: LoginPress is Compatible with WebARX plugin. Fixed Customizer loading issue. * BugFix: Password Reset issue when Video Background feature is enable in WordPress customizer. * BugFix: Font size of Submit button. * Enhancement: Compatible with 2FA Two Factor Authentication plugin. CSS buttons issue fixed.

Download this release

Release Info

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

Code changes from version 1.2.4 to 1.3.0

classes/class-loginpress-notifications.php CHANGED
@@ -116,7 +116,7 @@ if ( ! class_exists( 'LoginPress_Notification' ) ) :
116
  */
117
  public function loginpress_review_notice_message() {
118
 
119
- $scheme = ( parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
120
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_review_dismiss=yes';
121
  $dismiss_url = wp_nonce_url( $url, 'loginpress-review-nonce' );
122
 
@@ -148,7 +148,7 @@ if ( ! class_exists( 'LoginPress_Notification' ) ) :
148
  */
149
  public function loginpress_addon_notice_text() {
150
 
151
- $scheme = ( parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
152
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_addon_dismiss_1=yes';
153
  $dismiss_url = wp_nonce_url( $url, 'loginpress-addon-nonce' );
154
  wp_enqueue_style( 'loginpress_review_stlye', plugins_url( '../css/style-review.css', __FILE__ ), array(), LOGINPRESS_VERSION );
@@ -280,7 +280,7 @@ if ( ! class_exists( 'LoginPress_Notification' ) ) :
280
  */
281
  public function loginpress_friday_sale_notice_text() {
282
 
283
- $scheme = ( parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
284
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_friday_sale_dismiss=yes';
285
  $dismiss_url = wp_nonce_url( $url, 'loginpress-friday-sale-nonce' );
286
 
@@ -312,7 +312,7 @@ if ( ! class_exists( 'LoginPress_Notification' ) ) :
312
  */
313
  function new_loginpress_friday_sale_notice_text() {
314
 
315
- $scheme = ( parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
316
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_friday_sale_dismiss=yes';
317
  $dismiss_url = wp_nonce_url( $url, 'loginpress-friday-sale-nonce' );
318
 
@@ -336,7 +336,7 @@ if ( ! class_exists( 'LoginPress_Notification' ) ) :
336
  */
337
  function loginpress_appsumo_notice_text() {
338
 
339
- $scheme = ( parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
340
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_appsumo_dismiss=yes';
341
  $dismiss_url = wp_nonce_url( $url, 'loginpress-appsumo-nonce' );
342
 
116
  */
117
  public function loginpress_review_notice_message() {
118
 
119
+ $scheme = ( wp_parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
120
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_review_dismiss=yes';
121
  $dismiss_url = wp_nonce_url( $url, 'loginpress-review-nonce' );
122
 
148
  */
149
  public function loginpress_addon_notice_text() {
150
 
151
+ $scheme = ( wp_parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
152
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_addon_dismiss_1=yes';
153
  $dismiss_url = wp_nonce_url( $url, 'loginpress-addon-nonce' );
154
  wp_enqueue_style( 'loginpress_review_stlye', plugins_url( '../css/style-review.css', __FILE__ ), array(), LOGINPRESS_VERSION );
280
  */
281
  public function loginpress_friday_sale_notice_text() {
282
 
283
+ $scheme = ( wp_parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
284
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_friday_sale_dismiss=yes';
285
  $dismiss_url = wp_nonce_url( $url, 'loginpress-friday-sale-nonce' );
286
 
312
  */
313
  function new_loginpress_friday_sale_notice_text() {
314
 
315
+ $scheme = ( wp_parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
316
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_friday_sale_dismiss=yes';
317
  $dismiss_url = wp_nonce_url( $url, 'loginpress-friday-sale-nonce' );
318
 
336
  */
337
  function loginpress_appsumo_notice_text() {
338
 
339
+ $scheme = ( wp_parse_url( $_SERVER['REQUEST_URI'], PHP_URL_QUERY ) ) ? '&' : '?';
340
  $url = $_SERVER['REQUEST_URI'] . $scheme . 'loginpress_appsumo_dismiss=yes';
341
  $dismiss_url = wp_nonce_url( $url, 'loginpress-appsumo-nonce' );
342
 
classes/class-loginpress-settings-api.php CHANGED
@@ -141,6 +141,7 @@ if ( !class_exists( 'LoginPress_Settings_API' ) ):
141
  'min' => isset( $option['min'] ) ? $option['min'] : '',
142
  'max' => isset( $option['max'] ) ? $option['max'] : '',
143
  'step' => isset( $option['step'] ) ? $option['step'] : '',
 
144
  );
145
 
146
  add_settings_field( "{$section}[{$name}]", $label, $callback, $section, $section, $args );
@@ -186,6 +187,26 @@ if ( !class_exists( 'LoginPress_Settings_API' ) ):
186
  echo $html;
187
  }
188
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
189
  /**
190
  * Displays a url field for a settings field
191
  *
141
  'min' => isset( $option['min'] ) ? $option['min'] : '',
142
  'max' => isset( $option['max'] ) ? $option['max'] : '',
143
  'step' => isset( $option['step'] ) ? $option['step'] : '',
144
+ 'multiple' => isset( $option['multiple'] ) ? $option['multiple'] : '',
145
  );
146
 
147
  add_settings_field( "{$section}[{$name}]", $label, $callback, $section, $section, $args );
187
  echo $html;
188
  }
189
 
190
+ /**
191
+ * Displays a text field for a settings field with type email.
192
+ *
193
+ * @param array $args settings field args
194
+ * @since 1.2.5
195
+ */
196
+ function callback_email( $args ) {
197
+
198
+ $value = esc_attr( $this->get_option( $args['id'], $args['section'], $args['std'] ) );
199
+ $size = isset( $args['size'] ) && !is_null( $args['size'] ) ? $args['size'] : 'regular';
200
+ $type = isset( $args['type'] ) ? $args['type'] : 'email';
201
+ $placeholder = empty( $args['placeholder'] ) ? '' : ' placeholder="' . $args['placeholder'] . '"';
202
+ $multiple = empty( $args['multiple'] ) ? '' : 'multiple';
203
+
204
+ $html = sprintf( '<input type="%1$s" class="%2$s-text" id="%3$s[%4$s]" name="%3$s[%4$s]" value="%5$s"%6$s%7$s/>', $type, $size, $args['section'], $args['id'], $value, $placeholder, $multiple );
205
+ $html .= $this->get_field_description( $args );
206
+
207
+ echo $html;
208
+ }
209
+
210
  /**
211
  * Displays a url field for a settings field
212
  *
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.1.22
7
  * * * * * * * * * * * * * * * */
8
 
9
 
@@ -287,6 +287,9 @@ function loginpress_box_shadow( $shadow, $opacity, $default_shadow = 0, $inset =
287
  box-shadow: none;
288
  <?php endif; ?>
289
  }
 
 
 
290
  body.login #loginpress_video-background-wrapper{
291
  <?php if( $loginpress_theme_tem == 'default6' ) : ?>
292
  position: absolute;
@@ -462,7 +465,7 @@ body.login {
462
  border-color: <?php echo $loginpress_btn_hover_border; ?>;
463
  <?php endif; ?>
464
  }
465
- .wp-core-ui #login .button-primary{
466
 
467
  box-shadow: <?php echo loginpress_box_shadow( $loginpress_login_button_shadow, $loginpress_login_button_shadow_opacity ); ?>
468
  /* box-shadow: none; */
@@ -476,6 +479,7 @@ body.login {
476
  padding-bottom: <?php echo $loginpress_login_button_bottom . 'px;' ?>;
477
  <?php endif; ?>
478
  float: none;
 
479
  }
480
  #loginform {
481
 
@@ -640,7 +644,7 @@ box-shadow: <?php echo loginpress_box_shadow( $loginpress_textfield_shadow, $log
640
 
641
  .login input[type="submit"]{
642
  <?php if ( ! empty( $loginpress_login_button_text_size ) ) : ?>
643
- font-size: <?php echo $loginpress_login_button_text_size . 'px;'; ?>;
644
  <?php endif; ?>
645
  <?php if ( ! empty( $loginpress_login_button_width ) ) : ?>
646
  width: <?php echo $loginpress_login_button_width . '%;'; ?>;
@@ -1007,38 +1011,68 @@ body.login{
1007
  display: flex;
1008
  flex-direction: column;
1009
  }
 
 
 
 
 
 
1010
  </style>
1011
 
1012
  <?php // $content = ob_get_clean(); ?>
1013
  <?php if ( isset( $loginpress_display_bg_video ) && $loginpress_display_bg_video && ! empty( $loginpress_bg_video ) ) : ?>
1014
  <?php if ( ( $loginpress_theme_tem == 'default6' || $loginpress_theme_tem == 'default10' || $loginpress_theme_tem == 'default17' ) ) : ?>
1015
  <script>
1016
- document.addEventListener('DOMContentLoaded', function(){
1017
  // document.body.innerHTML="<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n"+document.body.innerHTML;
1018
  // '"<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n"'.
1019
  // document.getElementById("login").appendChild("<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n");
1020
  // (function($){
1021
  // $('<div id="loginpress_video-background-wrapper"><video autoplay loop id="loginpress_video-background" <?php echo $loginpress_video_voice; ?> plays-inline><source src="<?php //echo $loginpress_bg_video;?>"></video></div>').appendTo($('#login'));
1022
  // }(jQuery));
1023
- document.getElementById('login').innerHTML="<div id=\"loginpress_video-background-wrapper\"><video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video;?>\">\n" + "</video></div>\n"+document.getElementById('login').innerHTML;
1024
- }, false);
 
 
 
 
 
 
1025
  </script>
1026
  <?php else: ?>
1027
  <script>
1028
- <?php if ($loginpress_theme_tem == 'default17') : ?>
1029
- document.addEventListener('DOMContentLoaded', function(){
1030
- document.body.innerHTML="<div id=\"loginpress_video-background-wrapper\"><video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video;?>\">\n" + "</video></div>\n"+document.body.innerHTML;
1031
- }, false);
1032
- <?php endif; ?>
1033
- <?php if ($loginpress_theme_tem == 'default8') : ?>
1034
- document.addEventListener('DOMContentLoaded', function(){
1035
- document.body.innerHTML="<div id=\"loginpress_video-background-wrapper\"><video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video;?>\">\n" + "</video></div>\n"+document.body.innerHTML;
1036
- }, false);
1037
- <?php endif; ?>
1038
- <?php if ($loginpress_theme_tem != 'default17' && $loginpress_theme_tem != 'default8') : ?>
1039
- document.addEventListener('DOMContentLoaded', function(){
1040
- document.body.innerHTML="<video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video;?>\">\n" + "</video>\n"+document.body.innerHTML;
1041
- }, false);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1042
  <?php endif; ?>
1043
  </script>
1044
  <?php endif; ?>
3
  * Get option and check the key exists in it.
4
  *
5
  * @since 1.0.0
6
+ * @version 1.2.5
7
  * * * * * * * * * * * * * * * */
8
 
9
 
287
  box-shadow: none;
288
  <?php endif; ?>
289
  }
290
+ html[dir="rtl"] .login form .input, html[dir="rtl"] .login input[type="text"]{
291
+ margin-right: 0;
292
+ }
293
  body.login #loginpress_video-background-wrapper{
294
  <?php if( $loginpress_theme_tem == 'default6' ) : ?>
295
  position: absolute;
465
  border-color: <?php echo $loginpress_btn_hover_border; ?>;
466
  <?php endif; ?>
467
  }
468
+ .wp-core-ui #login .button-primary, .wp-core-ui #login .two-factor-email-resend .button{
469
 
470
  box-shadow: <?php echo loginpress_box_shadow( $loginpress_login_button_shadow, $loginpress_login_button_shadow_opacity ); ?>
471
  /* box-shadow: none; */
479
  padding-bottom: <?php echo $loginpress_login_button_bottom . 'px;' ?>;
480
  <?php endif; ?>
481
  float: none;
482
+ width: 100%;
483
  }
484
  #loginform {
485
 
644
 
645
  .login input[type="submit"]{
646
  <?php if ( ! empty( $loginpress_login_button_text_size ) ) : ?>
647
+ font-size: <?php echo $loginpress_login_button_text_size . 'px !important;'; ?>;
648
  <?php endif; ?>
649
  <?php if ( ! empty( $loginpress_login_button_width ) ) : ?>
650
  width: <?php echo $loginpress_login_button_width . '%;'; ?>;
1011
  display: flex;
1012
  flex-direction: column;
1013
  }
1014
+ body.login label[for="authcode"]:after{
1015
+ display: none;
1016
+ }
1017
+ body.login label[for="authcode"]+input{
1018
+ padding-left: 15px;
1019
+ }
1020
  </style>
1021
 
1022
  <?php // $content = ob_get_clean(); ?>
1023
  <?php if ( isset( $loginpress_display_bg_video ) && $loginpress_display_bg_video && ! empty( $loginpress_bg_video ) ) : ?>
1024
  <?php if ( ( $loginpress_theme_tem == 'default6' || $loginpress_theme_tem == 'default10' || $loginpress_theme_tem == 'default17' ) ) : ?>
1025
  <script>
1026
+ document.addEventListener( 'DOMContentLoaded', function(){
1027
  // document.body.innerHTML="<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n"+document.body.innerHTML;
1028
  // '"<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n"'.
1029
  // document.getElementById("login").appendChild("<video autoplay loop id=\"loginpress_video-background\" muted plays-inline>\n" + "<source src=\"<?php // echo $loginpress_bg_video;?>\">\n" + "</video>\n");
1030
  // (function($){
1031
  // $('<div id="loginpress_video-background-wrapper"><video autoplay loop id="loginpress_video-background" <?php echo $loginpress_video_voice; ?> plays-inline><source src="<?php //echo $loginpress_bg_video;?>"></video></div>').appendTo($('#login'));
1032
  // }(jQuery));
1033
+ var el = document.getElementById('login');
1034
+ var elChild = document.createElement('div');
1035
+ elChild.setAttribute( 'id', 'loginpress_video-background-wrapper' );
1036
+ elChild.innerHTML = '<video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video; ?>\">\n" + "</video>';
1037
+
1038
+ // Prepend it
1039
+ el.appendChild(elChild);
1040
+ }, false );
1041
  </script>
1042
  <?php else: ?>
1043
  <script>
1044
+ <?php if ( $loginpress_theme_tem == 'default17' ) : ?>
1045
+ document.addEventListener( 'DOMContentLoaded', function(){
1046
+ var el = document.getElementsByClassName('login')[0];
1047
+ var elChild = document.createElement('div');
1048
+ elChild.setAttribute( 'id', 'loginpress_video-background-wrapper' );
1049
+ elChild.innerHTML = '<video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video; ?>\">\n" + "</video>';
1050
+
1051
+ // Prepend it
1052
+ el.appendChild(elChild);
1053
+ }, false );
1054
+ <?php endif; ?>
1055
+ <?php if ( $loginpress_theme_tem == 'default8' ) : ?>
1056
+ document.addEventListener( 'DOMContentLoaded', function(){
1057
+ var el = document.getElementsByClassName('login')[0];
1058
+ var elChild = document.createElement('div');
1059
+ elChild.setAttribute( 'id', 'loginpress_video-background-wrapper' );
1060
+ elChild.innerHTML = '<video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video; ?>\">\n" + "</video>';
1061
+
1062
+ // Prepend it
1063
+ el.appendChild(elChild);
1064
+ }, false );
1065
+ <?php endif; ?>
1066
+ <?php if ( $loginpress_theme_tem != 'default17' && $loginpress_theme_tem != 'default8' ) : ?>
1067
+ document.addEventListener( 'DOMContentLoaded', function(){
1068
+ var el = document.getElementsByClassName('login')[0];
1069
+ var elChild = document.createElement('div');
1070
+ elChild.setAttribute( 'id', 'loginpress_video-background-wrapper' );
1071
+ elChild.innerHTML = '<video autoplay loop id=\"loginpress_video-background\" <?php echo $loginpress_video_voice; ?> plays-inline>\n" + "<source src=\"<?php echo $loginpress_bg_video; ?>\">\n" + "</video>';
1072
+
1073
+ // Prepend it
1074
+ el.appendChild(elChild);
1075
+ }, false );
1076
  <?php endif; ?>
1077
  </script>
1078
  <?php endif; ?>
css/style.css CHANGED
@@ -379,6 +379,12 @@ input[type=checkbox].loginpress-check-hidden:checked + .loginpress-checkbox:afte
379
  background: #33b3db;
380
  border-color: #fff;
381
  }
 
 
 
 
 
 
382
  input[type=checkbox].loginpress-check-hidden:checked + .loginpress-checkbox {
383
  background: #33b3db;
384
  border-color: #33b3db;
379
  background: #33b3db;
380
  border-color: #fff;
381
  }
382
+ html[dir="rtl"] input[type=checkbox].loginpress-check-hidden:checked + .loginpress-checkbox:after {
383
+ left: -14px;
384
+ }
385
+ html[dir="rtl"] .login form .input, .login input[type="text"]{
386
+ margin-right: 0;
387
+ }
388
  input[type=checkbox].loginpress-check-hidden:checked + .loginpress-checkbox {
389
  background: #33b3db;
390
  border-color: #33b3db;
css/themes/default-1.php CHANGED
@@ -86,12 +86,16 @@ function first_presets() {
86
  font: normal 15px "Roboto", sans-serif;
87
  color: #fff;
88
  width: 100%;
89
- }
90
- .wp-core-ui .button-group.button-large .button, .wp-core-ui .button.button-large{
 
91
  height: 46px;
92
  line-height: 0;
93
  background: #008ec2;
94
- }
 
 
 
95
  .login #nav {
96
  text-align: center;
97
  }
@@ -210,7 +214,15 @@ function first_presets() {
210
  .loginFooterMenu>ul>li{
211
  display: inline-block;
212
  padding: 18px;
213
- }
 
 
 
 
 
 
 
 
214
  .loginFooterMenu>ul>li:focus{
215
  outline: none;
216
  border: 0;
86
  font: normal 15px "Roboto", sans-serif;
87
  color: #fff;
88
  width: 100%;
89
+ }
90
+ .wp-core-ui.login .button-group.button-large .button,
91
+ .wp-core-ui.login .button.button-large, .wp-core-ui.login .button-primary{
92
  height: 46px;
93
  line-height: 0;
94
  background: #008ec2;
95
+ }
96
+ .wp-core-ui.login .two-factor-email-resend .button{
97
+ color: #444;
98
+ }
99
  .login #nav {
100
  text-align: center;
101
  }
214
  .loginFooterMenu>ul>li{
215
  display: inline-block;
216
  padding: 18px;
217
+ }
218
+ /* style two factor plugin */
219
+ .login .backup-methods-wrap a, #login form p:not([class]){
220
+ color: #555d66;
221
+ }
222
+ .login .backup-methods-wrap a:hover{
223
+ color: #00a0d2;
224
+ }
225
+ /*End style two factor plugin */
226
  .loginFooterMenu>ul>li:focus{
227
  outline: none;
228
  border: 0;
custom.php CHANGED
@@ -316,7 +316,7 @@ class LoginPress_Entities {
316
  // 'img' => plugins_url( 'img/bg.jpg', LOGINPRESS_ROOT_FILE ),
317
  // 'thumbnail' => plugins_url( 'img/thumbnail/default-1.png', LOGINPRESS_ROOT_FILE ),
318
  'img' => esc_url( apply_filters( 'loginpress_default_bg', plugins_url( 'img/bg.jpg', LOGINPRESS_PLUGIN_BASENAME ) ) ),
319
- 'thumbnail' => esc_url( apply_filters( 'loginpress_default_bg', plugins_url( 'img/thumbnail/default-1.png', LOGINPRESS_ROOT_FILE ) ) ),
320
  'id' => 'default1',
321
  'name' => 'Default'
322
  ) ;
@@ -1657,13 +1657,14 @@ class LoginPress_Entities {
1657
  *
1658
  * @param $error
1659
  * @since 1.0.0
 
1660
  * @return string
1661
  * * * * * * * * * * * * * * * * */
1662
  public function login_error_messages($error) {
1663
 
1664
  global $errors;
1665
 
1666
- if ( isset( $errors ) ){
1667
 
1668
  $error_codes = $errors->get_error_codes();
1669
 
316
  // 'img' => plugins_url( 'img/bg.jpg', LOGINPRESS_ROOT_FILE ),
317
  // 'thumbnail' => plugins_url( 'img/thumbnail/default-1.png', LOGINPRESS_ROOT_FILE ),
318
  'img' => esc_url( apply_filters( 'loginpress_default_bg', plugins_url( 'img/bg.jpg', LOGINPRESS_PLUGIN_BASENAME ) ) ),
319
+ 'thumbnail' => esc_url( apply_filters( 'loginpress_default_bg', plugins_url( 'img/thumbnail/default-1.png', LOGINPRESS_ROOT_FILE ) ) ),
320
  'id' => 'default1',
321
  'name' => 'Default'
322
  ) ;
1657
  *
1658
  * @param $error
1659
  * @since 1.0.0
1660
+ * @version 1.2.5
1661
  * @return string
1662
  * * * * * * * * * * * * * * * * */
1663
  public function login_error_messages($error) {
1664
 
1665
  global $errors;
1666
 
1667
+ if ( isset( $errors ) && apply_filters( 'loginpress_display_custom_errors', true ) ) {
1668
 
1669
  $error_codes = $errors->get_error_codes();
1670
 
include/compatibility.php CHANGED
@@ -69,82 +69,109 @@ if ( ! class_exists( 'LoginPress_Compatibility' ) ) :
69
  WebArx Compatibility Fix // v1.2.3
70
  *************************************/
71
 
72
- // add_filter( 'wp_redirect', array( $this, 'wp_redirect_remove_filter' ), 9 );
73
- // add_filter( 'site_url', array( $this, 'site_url_remove_filter' ) , 9 );
74
- // add_filter( 'network_site_url', array( $this, 'network_site_url_remove_filter' ), 9 );
75
- // add_action( 'plugins_loaded', array( $this, 'plugins_loaded_remove_action' ), 10 );
76
- // add_action( 'wp_loaded', array( $this, 'wp_loaded_remove_action' ), 9 );
77
- // add_action( 'init', array( $this, 'init_remove_action' ), 9 );
78
  }
79
-
80
  public function wp_redirect_remove_filter( $location ) {
81
  if ( class_exists( 'Webarx' ) ) {
 
 
 
 
 
82
  $webarx_login = get_option( 'webarx_mv_wp_login' );
83
  $user_loged_in = is_user_logged_in();
84
 
85
- if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) && $_GET['action'] != 'logout' ) {
86
- remove_filter( 'wp_redirect', array( webarx()->hide_login, 'wp_redirect' ) );
87
  }
88
-
89
- return $location;
90
  }
 
91
  }
92
 
93
  public function site_url_remove_filter( $url ) {
94
- if ( class_exists( 'Webarx' ) ) {
95
- $webarx_login = get_option( 'webarx_mv_wp_login' );
 
 
 
 
 
96
  $user_loged_in = is_user_logged_in();
97
 
98
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
99
- remove_filter('site_url', array( webarx()->hide_login, 'site_url' ) ) ;
100
  }
101
-
102
- return $url;
103
  }
 
104
  }
105
 
106
  public function network_site_url_remove_filter( $url ) {
107
- if ( class_exists( 'Webarx' ) ) {
108
- $webarx_login = get_option( 'webarx_mv_wp_login' );
 
 
 
 
 
109
  $user_loged_in = is_user_logged_in();
110
 
111
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
112
- remove_filter('network_site_url', array( webarx()->hide_login, 'network_site_url' ) ) ;
113
  }
114
-
115
- return $url;
116
  }
 
117
  }
118
 
119
  public function plugins_loaded_remove_action() {
120
  if ( class_exists( 'Webarx' ) ) {
121
- $webarx_login = get_option( 'webarx_mv_wp_login' );
 
 
 
 
 
122
  $user_loged_in = is_user_logged_in();
123
 
124
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
125
- remove_action( 'plugins_loaded', array( webarx()->hide_login, 'plugins_loaded' ), 9999 ) ;
126
  }
127
  }
128
  }
129
 
130
  public function wp_loaded_remove_action() {
131
  if ( class_exists( 'Webarx' ) ) {
132
- $webarx_login = get_option( 'webarx_mv_wp_login' );
 
 
 
 
 
133
  $user_loged_in = is_user_logged_in();
134
 
135
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
136
- remove_action( 'wp_loaded', array( webarx()->hide_login, 'wp_loaded' ) );
137
  }
138
  }
139
  }
140
 
141
  public function init_remove_action() {
142
  if ( class_exists( 'Webarx' ) ) {
143
- $webarx_login = get_option( 'webarx_mv_wp_login' );
 
 
 
 
 
144
  $user_loged_in = is_user_logged_in();
145
 
146
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
147
- remove_action( 'init', array( webarx()->hide_login, 'denyRequestsToWpLogin' ) ) ;
148
  }
149
  }
150
  }
69
  WebArx Compatibility Fix // v1.2.3
70
  *************************************/
71
 
72
+ add_filter( 'wp_redirect', array( $this, 'wp_redirect_remove_filter' ), 9 );
73
+ add_filter( 'site_url', array( $this, 'site_url_remove_filter' ) , 9 );
74
+ add_filter( 'network_site_url', array( $this, 'network_site_url_remove_filter' ), 9 );
75
+ add_action( 'plugins_loaded', array( $this, 'plugins_loaded_remove_action' ), 10 );
76
+ add_action( 'wp_loaded', array( $this, 'wp_loaded_remove_action' ), 9 );
77
+ add_action( 'init', array( $this, 'init_remove_action' ), 9 );
78
  }
79
+
80
  public function wp_redirect_remove_filter( $location ) {
81
  if ( class_exists( 'Webarx' ) ) {
82
+
83
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
84
+ return $location;
85
+ }
86
+
87
  $webarx_login = get_option( 'webarx_mv_wp_login' );
88
  $user_loged_in = is_user_logged_in();
89
 
90
+ if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
91
+ remove_filter( 'wp_redirect', array( webarx()->hide_login, 'wp_redirect' ) );
92
  }
 
 
93
  }
94
+ return $location;
95
  }
96
 
97
  public function site_url_remove_filter( $url ) {
98
+ if ( class_exists( 'Webarx' ) && current_user_can('manage_options') ) {
99
+
100
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
101
+ return $url;
102
+ }
103
+
104
+ $webarx_login = get_option( 'webarx_mv_wp_login' );
105
  $user_loged_in = is_user_logged_in();
106
 
107
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
108
+ remove_filter('site_url', array( webarx()->hide_login, 'site_url' ) ) ;
109
  }
 
 
110
  }
111
+ return $url;
112
  }
113
 
114
  public function network_site_url_remove_filter( $url ) {
115
+ if ( class_exists( 'Webarx' ) && current_user_can('manage_options') ) {
116
+
117
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
118
+ return $url;
119
+ }
120
+
121
+ $webarx_login = get_option( 'webarx_mv_wp_login' );
122
  $user_loged_in = is_user_logged_in();
123
 
124
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
125
+ remove_filter('network_site_url', array( webarx()->hide_login, 'network_site_url' ) ) ;
126
  }
 
 
127
  }
128
+ return $url;
129
  }
130
 
131
  public function plugins_loaded_remove_action() {
132
  if ( class_exists( 'Webarx' ) ) {
133
+
134
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
135
+ return;
136
+ }
137
+
138
+ $webarx_login = get_option( 'webarx_mv_wp_login' );
139
  $user_loged_in = is_user_logged_in();
140
 
141
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
142
+ remove_action( 'plugins_loaded', array( webarx()->hide_login, 'plugins_loaded' ), 9999 ) ;
143
  }
144
  }
145
  }
146
 
147
  public function wp_loaded_remove_action() {
148
  if ( class_exists( 'Webarx' ) ) {
149
+
150
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
151
+ return $url;
152
+ }
153
+
154
+ $webarx_login = get_option( 'webarx_mv_wp_login' );
155
  $user_loged_in = is_user_logged_in();
156
 
157
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
158
+ remove_action( 'wp_loaded', array( webarx()->hide_login, 'wp_loaded' ) );
159
  }
160
  }
161
  }
162
 
163
  public function init_remove_action() {
164
  if ( class_exists( 'Webarx' ) ) {
165
+
166
+ if ( ! function_exists( 'is_user_logged_in' ) ) {
167
+ return $url;
168
+ }
169
+
170
+ $webarx_login = get_option( 'webarx_mv_wp_login' );
171
  $user_loged_in = is_user_logged_in();
172
 
173
  if ( ( isset( $user_loged_in ) && true === $user_loged_in ) && ( isset( $webarx_login ) && '1' === $webarx_login ) ) {
174
+ remove_action( 'init', array( webarx()->hide_login, 'denyRequestsToWpLogin' ) ) ;
175
  }
176
  }
177
  }
include/template-loginpress.php CHANGED
@@ -308,7 +308,7 @@ if ( defined( 'RELOCATE' ) && RELOCATE ) { // Move flag is set
308
  }
309
 
310
  //Set a cookie now to see if they are supported by the browser.
311
- $secure = ( 'https' === parse_url( wp_login_url(), PHP_URL_SCHEME ) );
312
  setcookie( TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure );
313
  if ( SITECOOKIEPATH != COOKIEPATH )
314
  setcookie( TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure );
308
  }
309
 
310
  //Set a cookie now to see if they are supported by the browser.
311
+ $secure = ( 'https' === wp_parse_url( wp_login_url(), PHP_URL_SCHEME ) );
312
  setcookie( TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure );
313
  if ( SITECOOKIEPATH != COOKIEPATH )
314
  setcookie( TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure );
loginpress.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: LoginPress - Customizing the WordPress Login
4
  * Plugin URI: https://WPBrigade.com/wordpress/plugins/loginpress/
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.2.4
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.2.4';
26
 
27
  /**
28
  * @var The single instance of the class
3
  * Plugin Name: LoginPress - Customizing the WordPress Login
4
  * Plugin URI: https://WPBrigade.com/wordpress/plugins/loginpress/
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.3.0
7
  * Author: WPBrigade
8
  * Author URI: https://WPBrigade.com/
9
  * Text Domain: loginpress
22
  /**
23
  * @var string
24
  */
25
+ public $version = '1.3.0';
26
 
27
  /**
28
  * @var The single instance of the class
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tested up to: 5.2
4
  Contributors: WPBrigade, hiddenpearls, AbdulWahab610
5
  Author URI: https://wpbrigade.com
6
  Tags: wp-login, login, login customizer, custom login, wordpress login,
7
- Stable tag: 1.2.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -214,7 +214,14 @@ Please visit <a target="_blank" rel="friend" href="https://WPBrigade.com/wordpre
214
 
215
  == Changelog ==
216
 
217
- = 1.2.4 - 2019-07-23 =
 
 
 
 
 
 
 
218
  * BugFix: Compatibility issue, fatal error fixed.
219
 
220
  = 1.2.3 - 2019-07-23 =
@@ -513,5 +520,5 @@ Please visit <a target="_blank" rel="friend" href="https://WPBrigade.com/wordpre
513
 
514
  == Upgrade Notice ==
515
 
516
- = 1.2.4 =
517
  * Important Release, upgrade immediately.
4
  Contributors: WPBrigade, hiddenpearls, AbdulWahab610
5
  Author URI: https://wpbrigade.com
6
  Tags: wp-login, login, login customizer, custom login, wordpress login,
7
+ Stable tag: 1.3.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
214
 
215
  == Changelog ==
216
 
217
+ = 1.3.0 2019-08-09 =
218
+ * New Feature: Create Filter to remove LoginPress custom error messages.
219
+ * BugFix: LoginPress is Compatible with WebARX plugin. Fixed Customizer loading issue.
220
+ * BugFix: Password Reset issue when Video Background feature is enable in WordPress customizer.
221
+ * BugFix: Font size of Submit button.
222
+ * Enhancement: Compatible with <a href="https://wordpress.org/plugins/two-factor/" rel="plugin">2FA Two Factor Authentication</a> plugin. CSS buttons issue fixed.
223
+
224
+ = 1.2.4 – 2019-07-23 =
225
  * BugFix: Compatibility issue, fatal error fixed.
226
 
227
  = 1.2.3 - 2019-07-23 =
520
 
521
  == Upgrade Notice ==
522
 
523
+ = 1.3.0 =
524
  * Important Release, upgrade immediately.