Example #1
0
 /**
  * @before _session
  * @after _csrfToken
  */
 public function register()
 {
     $this->seo(array("title" => "Publisher Register", "description" => "Register"));
     $view = $this->getActionView();
     $view->set('errors', []);
     $afields = Meta::search('customField', $this->org);
     $view->set('afields', $afields ?? []);
     $token = RM::post("token", '');
     if (RM::post("action") == "register" && $this->verifyToken($token)) {
         $this->_publisherRegister($this->org, $view);
     }
 }
Example #2
0
 public static function customFields($user, $org)
 {
     $afields = \Meta::search('customField', $org);
     if (count($afields) > 0) {
         $meta = $user->meta ?? [];
         $extraFields = [];
         foreach ($afields as $value) {
             $key = $value['name'];
             $type = $value['type'];
             $message = $value['label'] . " is required!!";
             switch ($type) {
                 case 'file':
                     $v = Utils::media($key, 'upload', ['extension' => 'jpe?g|gif|bmp|png|tif|pdf']);
                     if (!$v) {
                         $message = "Please Upload a valid image or pdf file";
                     }
                     break;
                 case 'text':
                     $v = RequestMethods::post($key);
                     break;
                 case 'date':
                     $d = RequestMethods::post($key, date('Y-m-d'));
                     $v = Db::convertType($d, 'date');
                     break;
                 default:
                     $v = '';
                     break;
             }
             if (!$v && $value['required']) {
                 return ["message" => $message, "success" => false];
             }
             $extraFields[$key] = $v;
         }
         $meta['afields'] = $extraFields;
         $user->meta = $meta;
     }
     $user->save();
     return ["success" => true];
 }
Example #3
0
 /**
  * @before _session
  */
 public function resetpassword($token)
 {
     $this->seo(array("title" => "Forgot Password", "view" => $this->getLayoutView()));
     $view = $this->getActionView();
     $meta = Meta::search('resetpass', (object) ['value' => $token]);
     if (!$meta) {
         $this->redirect("/");
     }
     // @todo install reCaptcha
     if (RM::post("action") == "change") {
         $pass = RM::post("password");
         $user = User::first(array("id = ?" => $meta->propid));
         if ($pass == RM::post("npassword")) {
             $user->password = sha1($pass);
             $user->save();
             $meta->delete();
             $view->set("message", 'Password changed successfully now <a href="/login.html">Login</a>');
         } else {
             $view->set("message", 'Password Does not match');
         }
     }
 }