{"issue":{"state":"open","created_at":"2011-12-15T02:24:27Z","updated_at":"2011-12-15T02:24:27Z","user":{"gravatar_id":"008a789abb68bae0263f33cd3f61f39f","id":687594,"url":"https://api.github.com/users/dboskovic","login":"dboskovic","avatar_url":"https://secure.gravatar.com/avatar/008a789abb68bae0263f33cd3f61f39f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"comments":0,"body":"This bundle should handle all input validation. See this example.\r\n\r\n```php\r\n<?php\r\n\r\n// load up a validation object on this array.\r\n$data = e::validator($_POST);\r\n\r\n// verify that the password meets certain critera\r\n$data->password\r\n\t->minLength(10)\r\n\t->hasSymbols()\r\n\t->hasBothCases()\r\n\t->maxLength(20);\r\n\t\r\n// get the cleaned / validated values\r\n$data->clean(); // returns all clean values\r\n$data->raw(); // returns the original raw value\r\n$data->password->clean(); // returns the specific values\r\n$data->password->raw(); // returns the original raw value\r\n\r\n// if we haven't passed the above tests. Forget about life and push the messages to the message delivery bundle.\r\n$data->hasErrors($level); // returns boolean whether there are any error messages\r\n$data->pushMessages(); // pushes any messages to the output queue in the messages bundle\r\n```","assignee":{"gravatar_id":"008a789abb68bae0263f33cd3f61f39f","id":687594,"url":"https://api.github.com/users/dboskovic","login":"dboskovic","avatar_url":"https://secure.gravatar.com/avatar/008a789abb68bae0263f33cd3f61f39f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"id":2562366,"number":4,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"labels":[{"name":"Feature","color":"02e10c","url":"https://api.github.com/repos/EvolutionSDK/EvolutionSDK/labels/Feature"}],"title":"Create Validator Bundle","html_url":"https://github.com/EvolutionSDK/EvolutionSDK/issues/4","closed_at":null,"milestone":{"state":"open","created_at":"2011-12-15T01:54:29Z","due_on":"2012-01-15T08:00:00Z","closed_issues":0,"creator":{"gravatar_id":"008a789abb68bae0263f33cd3f61f39f","id":687594,"url":"https://api.github.com/users/dboskovic","login":"dboskovic","avatar_url":"https://secure.gravatar.com/avatar/008a789abb68bae0263f33cd3f61f39f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"number":1,"description":"This should be our first valid Release Candidate.","title":"Evolution 3.0.0 RC1","url":"https://api.github.com/repos/EvolutionSDK/EvolutionSDK/milestones/1","open_issues":4},"url":"https://api.github.com/repos/EvolutionSDK/EvolutionSDK/issues/4"},"action":"opened"}