From 24547ccec6526fcef3cccb34bc35fb81f31236b3 Mon Sep 17 00:00:00 2001 From: Nicolas BERNSTEIN Date: Sun, 12 Feb 2012 19:50:55 +0100 Subject: A lot of changes : blogging system essentially. --- lib/account/list.php | 23 +++++++++++++++++++++++ lib/account/new.php | 10 ++++++++-- 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 lib/account/list.php (limited to 'lib/account') diff --git a/lib/account/list.php b/lib/account/list.php new file mode 100644 index 0000000..dcb6575 --- /dev/null +++ b/lib/account/list.php @@ -0,0 +1,23 @@ + array ( + "name" => "username", + "reg_date" => "date registered", + "nbNotes" => "number of notes", + ), + "way" => $ord_ways, +); +$fdefaults = array ( + "order" => "name", + "way" => "ASC", +); + +$users = array(); +$n = sql("SELECT account.id AS id, login AS name, nc.count AS nbNotes, pc.count AS nbPosts ". + "FROM account ". + "LEFT JOIN (SELECT notes.owner AS owner, COUNT(notes.id) AS count FROM notes WHERE notes.public != 0 GROUP BY notes.owner) nc ON nc.owner = account.id ". + "LEFT JOIN (SELECT blog_posts.owner AS owner, COUNT(blog_posts.id) AS count FROM blog_posts GROUP BY blog_posts.owner) pc ON pc.owner = account.id ". + "ORDER BY " . get_filter("order") . " " . get_filter("way")); +while ($nn = mysql_fetch_assoc($n)) $users[] = $nn; +require("tpl/account/list.php"); diff --git a/lib/account/new.php b/lib/account/new.php index c06083e..2366fbb 100644 --- a/lib/account/new.php +++ b/lib/account/new.php @@ -3,18 +3,23 @@ $title = "Register"; $login = ""; +$email = ""; if (isset($_POST['login']) && isset($_POST['pw1']) && isset($_POST['pw2'])) { $login = esca($_POST["login"]); + $email = esca($_POST["email"]); $pw1 = esc($_POST["pw1"]); $pw2 = esc($_POST["pw2"]); if ($login == "") { $error = "You must enter a username."; + } else if (!preg_match('#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#', $email)) { + $error = "You must enter a valid email address."; } else if ($pw1 != $pw2) { $error = "You must enter twice the same password."; } else if ($pw1 == "") { $error = "You must enter a password"; } else { - sql("INSERT INTO account(login, password) VALUES('" . escs($login) . "', PASSWORD('$pw1'))"); + sql("INSERT INTO account(login, password, email, reg_date) ". + "VALUES('" . escs($login) . "', PASSWORD('$pw1'), '" . escs($email) . "', NOW())"); $message = "Your account has been created. Please log in now."; $url = $homepage; require("tpl/account/login.php"); @@ -25,7 +30,8 @@ $form_message = "Please fill in the following form to create an account :"; $fields = array( array("label" => "Username : ", "name" => "login", "value" => $login), array("label" => "Password : ", "name" => "pw1", "type" => "password"), - array("label" => "Confirm password : ", "name" => "pw2", "type" => "password") + array("label" => "Confirm password : ", "name" => "pw2", "type" => "password"), + array("label" => "Email address : ", "name" => "email", "value" => $email) ); $validate = "Create an account"; -- cgit v1.2.3