Пример #1
0
 public function create($args)
 {
     extract(extractable(array('email', 'name', 'password'), $args));
     if ($email && $password) {
         $email = strtolower(trim($email));
         if (validateEmail($email)) {
             $ut = DBTable::get('users');
             if (!($rows = $ut->loadRowsWhere(array('email' => $email)))) {
                 $new = $ut->loadNewRow();
                 $new->name = $name;
                 $new->email = $email;
                 $new->password = sha1($password);
                 $new->created = time();
                 $new->save();
                 if ($new->users_id) {
                     return data::success($new->export());
                 }
                 return data::error("Unknown error saving user. Please try again.");
             }
             return data::error("email is already registered");
         }
         return data::error("invalid email");
     }
     return data::error("email and password required");
 }
Пример #2
0
 public function create($args)
 {
     //load data into the currnt scope - $data is always extracted into the current scope so no need to worry about undefined
     extract(extractable(array('data'), $args));
     //for a single value you would probably realistically use
     //$data = get($args,'data');
     if ($data) {
         file_put_contents(self::$example_file, $data);
         return data::success(array('file' => self::$example_file, 'data' => $data));
     }
     return data::error("data required");
 }
Пример #3
0
 public function logout($args)
 {
     extract(extractable(array('users_id', 'key'), $args));
     $users_id = intval($users_id);
     if ($users_id) {
         if ($session = DBTable::get('session')->loadRowsWhere(array('key' => $key))) {
             $session = $session[0];
             $session->logged_in = 0;
             $session->save();
             return data::success($session->export());
         }
         return data::error('unable to locate session');
     }
     return data::error('user_id required');
 }