Example #1
0
    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');
});
Example #2
0
$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)) {