<?php

/**
 * @copyright 2024 Double Bastion LLC <www.doublebastion.com>
 *
 * @author Double Bastion LLC
 *
 * @license GNU AGPL version 3 or any later version
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
 * License as published by the Free Software Foundation; either
 * version 3 of the License, or any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
 *
 * You should have received a copy of the GNU Affero General Public
 * License along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 */

define('RESTRICTED', TRUE);

// Extract the sign up parameter from 'install-signup-check.php' to activate or deactivate the 'Sign Up' tab
if (is_file(dirname(__FILE__) . '/install-signup-check.php')) {

    $setupfile = file(dirname(__FILE__) . '/install-signup-check.php');

    $signup_check = 'false';
    foreach ($setupfile as $keyfile => $valuefile) {
         if ((strpos($valuefile, "\$signupcheck") !== false) && (strpos($valuefile, "//") === false)) {
              $signup_init = explode("=", $valuefile);
              $firsttwo_init = str_replace(" ","", $signup_init[0]);
              $signup_sec = explode(";", $signup_init[1]);
              $signup_check = str_replace(" ","", $signup_sec[0]);
              break;
         }
    }

    if ($signup_check == 'true') {

       // Generate a random string to prevent direct access to 'register-user.php'
       function random_str($length, $keyspace = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') {
           $pieces = [];
           $max = mb_strlen($keyspace, '8bit') - 1;

           for ($i = 0; $i < $length; ++$i) {
               $pieces []= $keyspace[random_int(0, $max)];
           }
           return implode('', $pieces);
       }

       $token = random_str(40);

       session_start();

       $_SESSION['validate_access'] = $token;

       ?>
       <script type="text/javascript">
         var signupCheck = "<?php print_r($signup_check); ?>";
         var validateToken = "<?php print_r($_SESSION['validate_access']); ?>";
       </script>

	<!doctype html>
	<head>
	   <meta charset="utf-8">
	   <title>RED SCARF Suite Panel</title>
	   <link rel="stylesheet" href="assets/css/login-style.css"/>
	   <script type="text/javascript" src="assets/js/jquery-3.3.1.min.js"></script>
	   <script type="text/javascript" src="assets/js/panel-signup.js"></script>
	   <link rel="shortcut icon" type="image/png" href="images/favicon.png" />
	</head>
	<body>

	  <div class="wrapper">
	  <div id="formContent">
	    <!-- Tabs Titles -->
	    <a href="panel-login.php"><h2 id="signintab" class="underlineHover">Log In</h2></a>
	    <a id="signupsec" href="panel-signup.php"><h2 id="signuptab" class="active underlineHover">Sign Up</h2></a>

	    <!-- Icon -->
	    <div id="logosection">
	      <img src="images/red-scarf-suite-panel_logo_login.svg" id="panel-logo" alt="RED SCARF Suite Panel logo" />
	    </div>

	    <div id="submitmessage"></div>

	    <!-- Signup fields -->
	      <input type="text" id="emailaddress" name="emailaddress" placeholder="email address" />
	      <input type="text" id="login" name="login" placeholder="username" />
	      <input type="password" id="password" name="password" placeholder="password (Eg.: d?t5&c!9b~2yq4)" title="At least 10 characters, including at least one letter, one
		     digit and one special character" />
	      <select id="selectrole" name="selectrole"><option class="selectoption" value="" disabled="disabled" selected="selected">select your role</option><option class="selectoption" value="admin">Admin</option><option class="selectoption" value="superadmin">Superadmin</option></select>
	      <input type="submit" id="signupbutton" name="signupbutton" value="Sign Up" />

	      <!-- Remind Passowrd -->
	      <div id="formFooter">
		<a id="forgotpass" class="underlineHover" href="forgot-password.php">Forgot Password?</a>
	      </div>
	  </div>
	</div>

	</body>
	</html>

    <?php

    } else { header("Location: panel-login.php"); }

} else { header("Location: panel-login.php"); }

?>