Esempio n. 1
0
/**
 * Добавляет нового пользователя в базу или редактирует профиль существующего пользователя.
 *
 * @param array $data данные.
 * @param array $errors ошибки, возникшие в ходе выполнения операции.
 * @return array|bool возвращает пользователя или false в случаи критической ошибки.
 */
function userSave(array $data, array &$errors = null)
{
    $id = isset($data['id']) ? (int) $data['id'] : null;
    $user = sanitize($data, userSanitizeRules(), $errors);
    if ($errors) {
        return $user;
    }
    if (!$id) {
        $storedUser = storageGetItemBy(ENTITY_USER, 'username', $user['username']);
        if ($storedUser) {
            $errors['exists'] = 'Пользователь с таким именем уже существует!';
            return $user;
        }
        $user['created'] = mktime();
    }
    if ($user['password'] != $data['password_repeat']) {
        $errors['password'] = '******';
        return $user;
    }
    $user['password'] = password_hash($user['password'], PASSWORD_DEFAULT);
    $status = storageSaveItem(ENTITY_USER, $user);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $user;
}
function saveUser($data, &$errors = null)
{
    $id = isset($data['id']) ? $data['id'] : null;
    $user = $data;
    //азультат после очистки и валидации
    if ($errors) {
        return $user;
    }
    // $user['update'] = mktime();
    if (!$id) {
        $storedUser = storageGetItemBy(ENTTY_USER, 'login', $user['login']);
        if ($storedUser) {
            $errors['exists'] = 'Пользователь с таким именем уже существует!';
            return $user;
        }
        $user['created'] = mktime();
    }
    if ($user['password'] != $data['wpassword']) {
        $errors['password'] = '******';
        echo 'Введенные пароли не совпадают';
        return $user;
    }
    // $user['password'] = password_hash($user['password'], PASSWORD_DEFAULT);
    $status = storageSaveItem(ENTTY_USER, $user);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $user;
}
function savePost(array $data, array &$errors = null)
{
    $id = isset($data['id']) ? $data['id'] : null;
    //    $post = getPostById($id) ?: [];
    //
    //    if ($id && !$post) {
    //        return false;
    //    }
    //
    //
    //    $post = array_merge($post, $data);
    $post = $data;
    // результат после очистки и валидации
    if ($errors) {
        return $post;
    }
    $post['updated'] = mktime();
    if (!$id) {
        $post['created'] = mktime();
    }
    $status = storageSaveItem(ENTITY_POST, $post);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $post;
    //    // @fixme: нужно возвращать другое значение
    //    $post = storageSaveItem(ENTITY_POST, $post);
    //
    //    if (!$post) {
    //        $errors['db'] = 'Не удалось записать данные в базу';
    //    }
}
function saveUser($data, &$errors = null)
{
    $id = isset($data['id']) ? $data['id'] : null;
    $user = $data;
    // результат после очистки и валидации
    if ($errors) {
        return $user;
    }
    $status = storageSaveItem(ENTITY_USER, $user);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $user;
}
function savePost(array $data, array &$errors = null)
{
    $id = isset($data['id']) ? $data['id'] : null;
    $post = $data;
    // => результат после очистки и валидации
    if ($errors) {
        return $post;
    }
    $post['updated'] = mktime();
    if (!$id) {
        $post['created'] = mktime();
    }
    $status = storageSaveItem(ENTITY_POST, $post);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $post;
}
/**
 * Добавляет или обновляет информацию о записи в блоге.
 *
 * @param array $data данные.
 * @param array $errors ошибки, возникшие в ходе выполнения операции.
 * @return array|bool возвращает обновленную запись блога или false в случаи критической ошибки.
 */
function savePost(array $data, array &$errors = null)
{
    $id = isset($data['id']) ? (int) $data['id'] : null;
    $post = sanitize($data, postSanitizeRules(), $errors);
    // тут будет присвоен результат валидации и очистки
    if ($errors) {
        return $post;
    }
    $post['updated'] = mktime();
    if (!$id) {
        $post['created'] = mktime();
    }
    $status = storageSaveItem(ENTITY_POST, $post);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    return $post;
}
function saveUser($data, &$errors = null)
{
    $id = isset($data['id']) ? $data['id'] : null;
    $user = $data;
    if ($errors) {
        var_dump($user . ' error');
        return $user;
    }
    $user['updated'] = mktime();
    if (!$id) {
        $user['created'] = mktime();
    }
    $status = storageSaveItem(ENTITY_USER, $user);
    if (!$status) {
        $errors['db'] = 'Не удалось записать данные в базу';
    }
    var_dump($user . ' its okay');
    return $user;
}