Ejemplo n.º 1
0
 public function addNewComment()
 {
     $response['signed'] = false;
     $response['valid'] = false;
     $response['succeeded'] = false;
     $response['comment'] = array();
     $postdata = file_get_contents("php://input");
     $request = json_decode($postdata);
     $comment = ['post_id' => $comment_id = $request->post_id, 'caption' => $caption = $request->caption];
     $v = new Validator();
     $v->required('post_id')->digits();
     $v->required('caption')->lengthBetween(1, 1000);
     $result = $v->validate($comment);
     $response['valid'] = $result->isValid();
     if (isset($_SESSION["user_id"]) && strlen(trim($_SESSION["user_id"])) > 0) {
         $response['signed'] = true;
         if ($response['valid']) {
             $response['comment'] = addComment($_SESSION['user_id'], $comment);
             $response['succeeded'] = true;
         } else {
             print_r($result->getFailures());
         }
     }
     echo json_encode($response);
 }
Ejemplo n.º 2
0
 public function filterAndValidate(array $data) : array
 {
     $data = $this->filter->filter($data);
     $validationResult = $this->validator->validate($data);
     if ($validationResult->isNotValid()) {
         throw new ValidationFailedException($validationResult, $this->httpRequest);
     }
     return $validationResult->getValues();
 }
Ejemplo n.º 3
0
 public function validate(PageBlock $block, RequestInterface $request)
 {
     $validator = new Validator();
     $validator->required('feedUrl')->url(['http', 'https']);
     $result = $validator->validate($block->getParameters());
     if (!$result->isValid()) {
         throw new ValidationFailedException($result, $request);
     }
 }
Ejemplo n.º 4
0
 public function validate(PageBlock $block, RequestInterface $request)
 {
     $validator = new Validator();
     $validator->required('youtubeUrl')->regex('#^https:\\/\\/(www\\.youtube\\.com\\/watch\\?v=|youtu\\.be\\/)[a-z0-9_]+#uiD');
     $result = $validator->validate($block->getParameters());
     if (!$result->isValid()) {
         throw new ValidationFailedException($result, $request);
     }
 }
Ejemplo n.º 5
0
 public function validate(PageBlock $block, RequestInterface $request)
 {
     $validator = new Validator();
     $validator->required('vimeoUrl')->regex('#^https://vimeo\\.com/[a-z0-9_]+$#uiD');
     $result = $validator->validate($block->getParameters());
     if (!$result->isValid()) {
         throw new ValidationFailedException($result, $request);
     }
 }
Ejemplo n.º 6
0
 public function validate(PageBlock $block, RequestInterface $request)
 {
     $validator = new Validator();
     $validator->required('content');
     $validator->optional('wysiwyg')->bool();
     $result = $validator->validate($block->getParameters());
     if (!$result->isValid()) {
         throw new ValidationFailedException($result, $request);
     }
 }
Ejemplo n.º 7
0
     if ($task) {
         $res = ['status' => ['code' => 200, 'error' => false, 'message' => 'ok'], 'results' => $task->as_array()];
         return $this->view->render($response, $res, 200);
     } else {
         $res = ['status' => ['code' => 403, 'error' => true, 'message' => 'forbidden access']];
         return $this->view->render($response, $res, 403);
     }
 });
 //update task
 $this->put('/tasks/{id:[0-9]+}', function ($request, $response, $args) {
     $auth = $request->getAttribute('user');
     $params = $request->getParsedBody();
     if (!$params) {
         $params = [];
     }
     $v = new Validator();
     $v->required('name');
     $result = $v->validate($params);
     if (!$result->isValid()) {
         $error = $result->getMessages();
         $message = [];
         foreach ($error as $key => $msg) {
             foreach ($msg as $value) {
                 $message[$key] = $value;
             }
         }
         $res = ['status' => ['code' => 400, 'error' => true, 'message' => $message]];
         return $this->view->render($response, $res, 400);
     }
     $task = Model::factory('Task')->where('user_id', $auth->user_id)->find_one($args['id']);
     if ($task) {
Ejemplo n.º 8
0
<?php

use Particle\Validator\Validator;
require_once '../vendor/autoload.php';
$file = "../storage/database.db";
if (is_writable('../storage/database.local.db')) {
    $file = '../storage/database.local.db';
}
$database = new medoo(['database_type' => 'sqlite', 'database_file' => $file]);
$comment = new SitePoint\Comment($database);
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $v = new Validator();
    $v->required('name')->lengthBetween(1, 100)->alnum(true);
    $v->required('email')->email()->lengthbetween(5, 255);
    $v->required('comment')->lengthBetween(10, null);
    $result = $v->validate($_POST);
    if ($result->isValid()) {
        try {
            $comment->setName($_POST['name'])->setEmail($_POST['email'])->setComment($_POST['comment'])->save();
            header('Location: /');
            return;
        } catch (\Exception $e) {
            die($e->getMessage());
        }
    } else {
        dump($result->getMessages());
    }
}
//   dump($database);
?>
<!doctype html>
Ejemplo n.º 9
0
 public function register()
 {
     $response['succeeded'] = false;
     $response['registered'] = false;
     $postdata = file_get_contents("php://input");
     $request = json_decode($postdata);
     $user = ['first_name' => strtolower(trim($request->first_name)), 'last_name' => strtolower(trim($request->last_name)), 'username' => strtolower(trim($request->username)), 'email' => strtolower(trim($request->email)), 'password' => $request->password, 'gender' => strtolower(trim($request->gender)), 'birthdate' => trim($request->birthdate), 'phone_number' => trim($request->phone_number), 'profile_picture' => trim($request->profile_picture_path), 'hometown' => strtolower(trim($request->hometown)), 'maritalStatus' => strtolower(trim($request->maritalStatus)), 'about' => trim($request->about)];
     $response['user'] = $user;
     $v = new Validator();
     $min = 3;
     $max = 50;
     $max_about = 200;
     $username_regex = '/^[\\w.-]*$/';
     $genders = array("male", "female");
     $marital_status = array("single", "engaged", "married");
     $v->required('first_name')->lengthBetween($min, $max)->alpha();
     $v->required('last_name')->lengthBetween($min, $max)->alpha();
     $v->required('username')->lengthBetween($min, $max)->regex($username_regex);
     $v->required('email')->email();
     $v->required('password');
     $v->required('gender')->inArray($genders);
     // $v->required('birthdate')->datetime('Y-m-d');
     $v->optional('phone_number')->lengthBetween(9, 20)->digits();
     $v->optional('profile_picture');
     $v->optional('hometown')->lengthBetween($min, $max);
     $v->optional('maritalStatus')->inArray($marital_status);
     $v->optional('about')->lengthBetween($min, $max_about);
     $result = $v->validate($user);
     $response['succeeded'] = $result->isValid();
     if ($result->isValid()) {
         $_SESSION['user_id'] = tryCreateUser($user);
         if ($_SESSION['user_id']) {
             $response['registered'] = true;
             setcookie("user_id", $_SESSION['user_id'], time() + 86400 * 30, '/');
         }
     } else {
         print_r($result->getFailures());
         $response['errors'] = $result->getFailures();
     }
     echo json_encode($response);
 }
Ejemplo n.º 10
0
 private function parseOperationBlur(Validator $validator, Filter $filter, array $data)
 {
     if (isset($data['operations']['blur'])) {
         $filter->value('operations.blur.amount')->float();
         $validator->required('operations.blur.amount')->numeric();
     }
 }
Ejemplo n.º 11
0
 public function addFullPathValidator(Validator $validator, string $name, $length = self::FULL_PATH_LENGTH)
 {
     $validator->required($name)->lengthBetween(2, $length)->regex('#^[a-z0-9_/\\.-]+$#uiD');
 }