if (!preg_match('/^\\S+@\\S+$/', $email)) { alerts('error', 'Email must have format: abc@xyz.com.'); } if (stash('user')['email'] !== $email) { $users = jdb_select('.users', ['email' => $email]); if (count($users) > 0) { alerts('error', 'User with same email alredy exists.'); } } if ($new_password !== '') { if (stash('user')['hash'] !== hash('sha256', $password)) { alerts('error', 'Wrong password.'); } if (!preg_match('/.{6}/', $new_password)) { alerts('error', 'New password must containt minimum 6 characters.'); } } if (count(alerts('error')) === 0) { $update = ['login' => $login, 'email' => $email]; if ($new_password) { $update['hash'] = hash('sha256', $new_password); } if (jdb_update('.users', $update, stash('user')['_uid'])) { alerts('info', 'User updated.'); stash('user', jdb_select('.users', stash('user')['_uid'])[0]); } else { alerts('error', 'Something was wrong, user not updated.'); } } echo phtml('user'); });
$app_base_url = strlen($app_base) ? "/{$app_base}" : $app_base; config('url', $app_base_url); config('templates', 'views'); require APP_DIR . 'functions.php'; if (!session('user_uid')) { if (isset($_POST['email']) && isset($_POST['password'])) { $users = jdb_select('.users', ['email' => trim($_POST['email'])]); if (count($users)) { $user = $users[0]; if ($user['hash'] === hash('sha256', trim($_POST['password']))) { session('user_uid', $user['_uid']); redirect($_SERVER['REQUEST_URI']); } else { alerts('error', 'Wrong email or password!'); } } else { alerts('error', 'Wrong email or password!'); } } echo phtml('login', [], false); exit; } stash('user', jdb_select('.users', session('user_uid'))[0]); if (flash('info')) { alerts('info', flash('info')); } require 'routes/routes.main.php'; require 'routes/routes.users.php'; require 'routes/routes.settings.php'; require 'routes/routes.collections.php'; dispatch();
if ($name === '') { alerts('error', 'Enter collection name.'); } else { if ($collection['name'] !== $name) { $result = jdb_select('collections', ['name' => $name]); if (count($result) > 0) { alerts('error', 'Collection with same name already exists.'); } } } $slug = trim($_POST['slug']); if ($slug === '') { alerts('error', 'Enter collection slug.'); } else { if ($collection['slug'] !== $slug) { $result = jdb_select('collections', ['slug' => $slug]); if (count($result) > 0) { alerts('error', 'Collection with same slug already exists.'); } } } $collection = ['name' => $name, 'slug' => $slug, 'fields' => isset($_POST['fields']) ? $_POST['fields'] : null]; if (!$collection['fields']) { alerts('error', 'Collection must have fields.'); } else { $names = []; foreach ($collection['fields'] as $n => $field) { $field['name'] = trim($field['name']); if ($field['name'] === '') { alerts('error', 'Enter field name (' . ($n + 1) . ')'); } elseif (in_array($field['name'], $names)) {