Example #1
0
 public function userRegister($request)
 {
     // Register new user from request
     if (empty($request['username'])) {
         return array("message" => array("type" => "error", "code" => "MandatoryInputMissing"), "missing_fields" => "username");
     }
     $sql = new SqlManager();
     $sql->setQuery("SELECT * FROM user WHERE username = '******'");
     $sql->bindParam("{{username}}", $request['username']);
     $check = $sql->result();
     if (isset($check['id'])) {
         return array("message" => array("type" => "error", "code" => "UsernameUsed"));
     }
     $newuser = new User();
     $id = $newuser->create(array("username" => $request['username']));
     if (!$id) {
         return array("message" => array("type" => "error", "code" => "UnknownError"));
     }
     $newuser->load($id);
     $groups = array();
     if (isset($request['usergroups'])) {
         $groups = split(",", $request['usergroups']);
     }
     foreach ($groups as $group) {
         Meta::save("user", $newuser->getID(), "usergroup", $group);
     }
     $newuser->createAuthCode();
     return array("redirect" => array("url" => "/bestaetige-account", "post" => array("username" => $request['username'])));
 }