+++ /dev/null
-<?php\r
-/*\r
-UserCake Version: 2.0.2\r
-http://usercake.com\r
-*/\r
-\r
-require_once("models/config.php");\r
-if (!securePage($_SERVER['PHP_SELF'])){die();}\r
-\r
-//Prevent the user visiting the logged in page if he/she is already logged in\r
-if(isUserLoggedIn()) { header("Location: account.php"); die(); }\r
-\r
-//Forms posted\r
-if(!empty($_POST))\r
-{\r
- $errors = array();\r
- $email = trim($_POST["email"]);\r
- $username = trim($_POST["username"]);\r
- $displayname = trim($_POST["displayname"]);\r
- $password = trim($_POST["password"]);\r
- $confirm_pass = trim($_POST["passwordc"]);\r
- $captcha = md5($_POST["captcha"]);\r
- \r
- \r
- if ($captcha != $_SESSION['captcha'])\r
- {\r
- $errors[] = lang("CAPTCHA_FAIL");\r
- }\r
- if(minMaxRange(5,25,$username))\r
- {\r
- $errors[] = lang("ACCOUNT_USER_CHAR_LIMIT",array(5,25));\r
- }\r
- if(!ctype_alnum($username)){\r
- $errors[] = lang("ACCOUNT_USER_INVALID_CHARACTERS");\r
- }\r
- if(minMaxRange(5,25,$displayname))\r
- {\r
- $errors[] = lang("ACCOUNT_DISPLAY_CHAR_LIMIT",array(5,25));\r
- }\r
- if(!ctype_alnum($displayname)){\r
- $errors[] = lang("ACCOUNT_DISPLAY_INVALID_CHARACTERS");\r
- }\r
- if(minMaxRange(8,50,$password) && minMaxRange(8,50,$confirm_pass))\r
- {\r
- $errors[] = lang("ACCOUNT_PASS_CHAR_LIMIT",array(8,50));\r
- }\r
- else if($password != $confirm_pass)\r
- {\r
- $errors[] = lang("ACCOUNT_PASS_MISMATCH");\r
- }\r
- if(!isValidEmail($email))\r
- {\r
- $errors[] = lang("ACCOUNT_INVALID_EMAIL");\r
- }\r
- //End data validation\r
- if(count($errors) == 0)\r
- { \r
- //Construct a user object\r
- $user = new User($username,$displayname,$password,$email);\r
- \r
- //Checking this flag tells us whether there were any errors such as possible data duplication occured\r
- if(!$user->status)\r
- {\r
- if($user->username_taken) $errors[] = lang("ACCOUNT_USERNAME_IN_USE",array($username));\r
- if($user->displayname_taken) $errors[] = lang("ACCOUNT_DISPLAYNAME_IN_USE",array($displayname));\r
- if($user->email_taken) $errors[] = lang("ACCOUNT_EMAIL_IN_USE",array($email)); \r
- }\r
- else\r
- {\r
- //Attempt to add the user to the database, carry out finishing tasks like emailing the user (if required)\r
- if(!$user->userCakeAddUser())\r
- {\r
- if($user->mail_failure) $errors[] = lang("MAIL_ERROR");\r
- if($user->sql_failure) $errors[] = lang("SQL_ERROR");\r
- }\r
- }\r
- }\r
- if(count($errors) == 0) {\r
- $successes[] = $user->success;\r
- }\r
-}\r
-\r
-require_once("models/header.php");\r
-echo "\r
-<body>\r
-<div id='wrapper'>\r
-<div id='top'><div id='logo'></div></div>\r
-<div id='content'>\r
-<h1>UserCake</h1>\r
-<h2>Register</h2>\r
-\r
-<div id='left-nav'>";\r
-include("left-nav.php");\r
-echo "\r
-</div>\r
-\r
-<div id='main'>";\r
-\r
-echo resultBlock($errors,$successes);\r
-\r
-echo "\r
-<div id='regbox'>\r
-<form name='newUser' action='".$_SERVER['PHP_SELF']."' method='post'>\r
-\r
-<p>\r
-<label>User Name:</label>\r
-<input type='text' name='username' />\r
-</p>\r
-<p>\r
-<label>Display Name:</label>\r
-<input type='text' name='displayname' />\r
-</p>\r
-<p>\r
-<label>Password:</label>\r
-<input type='password' name='password' />\r
-</p>\r
-<p>\r
-<label>Confirm:</label>\r
-<input type='password' name='passwordc' />\r
-</p>\r
-<p>\r
-<label>Email:</label>\r
-<input type='text' name='email' />\r
-</p>\r
-<p>\r
-<label>Security Code:</label>\r
-<img src='models/captcha.php'>\r
-</p>\r
-<label>Enter Security Code:</label>\r
-<input name='captcha' type='text'>\r
-</p>\r
-<label> <br>\r
-<input type='submit' value='Register'/>\r
-</p>\r
-\r
-</form>\r
-</div>\r
-\r
-</div>\r
-<div id='bottom'></div>\r
-</div>\r
-</body>\r
-</html>";\r
-?>\r