add(array("name" => "name", "filter" => true, "validators" => array( "required" => array( "validate" => true, "message" => "Name field is required" ), "length" => array( "validate" => array(4, 15), "message" => "Length of name is incorrect" ), "type" => array( "validate" => "name", "message" => "Name is incorrect" ) ) )); $post->add(array("name" => "password", "filter" => true, "validators" => array( "required" => array( "validate" => true, "message" => "Password field is required" ), ) )); $post->add(array("name" => "repassword", "filter" => true, "validators" => array( "required" => array( "validate" => true, "message" => "Repassword field is required" ), "identical" => array( "validate" => "password", "message" => "Passwords must be identical." ) ) )); $post->add(array("name" => "email", "filter" => true, "validators" => array( "required" => array( "validate" => true, "message" => "Email field is required" ), "type" => array( "validate" => "email", "message" => "Email is incorrect" ), "callback" => array( "validate" => array($user_object, "can_use_email"), "message" => "Email is already exists." ) ) )); if( $post->isValid() ) { $user_object->add_user($post->getValues()); echo json_encode(array("status" => "success")); } else { echo json_encode(array("status" => "error", "errors" => $post->getMessages())); } }); app::get("/register/form", function () { $tpl = new Template; $tpl->display("register"); }); app::run();