public function forgotAction()
 {
     if ($this->validateSession()) {
         $this->dispatcher->forward(array("controller" => "dashboard", "action" => "index"));
     } else {
         $this->view->now_w_format = date('d/m/y h:ia');
         $this->view->year = date('Y');
         $this->view->js_files = array('assets/common/js/ie_check.js', 'assets/business/js/pages/login.js');
         $this->view->remembered_email = DiHandler::getCookies()->has('remember_me') ? DiHandler::getCookies()->get('remember_me') : '';
     }
 }
예제 #2
0
 public static function send($params)
 {
     $output = array('success' => false, 'status' => '', 'id' => '', 'error_message' => '');
     $config = DiHandler::getConfig();
     if ($config->application->mailer->default == 'mandrill') {
         $mandrill_config = $config->application->mailer->mandrill;
         $send_params = array('from' => $params['from'], 'to' => $params['to'], 'subject' => $params['subject'], 'message' => $params['message']);
         if (isset($params['from_name'])) {
             $send_params['fromname'] = $params['from_name'];
         }
         if (isset($params['to_name'])) {
             $send_params['toname'] = $params['to_name'];
         }
         if (isset($params['important'])) {
             $send_params['important'] = $params['important'];
         }
         if (isset($params['wildcards']) && is_array($params['wildcards'])) {
             foreach ($params['wildcards'] as $wildcard => $value) {
                 $send_params['subject'] = str_ireplace('%' . $wildcard . '%', $value, $send_params['subject']);
                 $send_params['message'] = str_ireplace('%' . $wildcard . '%', $value, $send_params['message']);
             }
         }
         $mandrill_obj = new MandrillWrapper($mandrill_config);
         $response = $mandrill_obj->send($send_params);
         $response_arr = json_decode($response, true);
         if (is_array($response_arr) && isset($response_arr[0])) {
             $response_arr = $response_arr[0];
             if (is_null($response_arr['reject_reason'])) {
                 $output['success'] = true;
                 $output['id'] = $response_arr['_id'];
             } else {
                 $output['error_message'] = $response_arr['reject_reason'];
             }
             $output['status'] = $response_arr['status'];
         }
         return $output;
     } else {
         if ($config->application->mailer->default == 'sendgrid') {
         }
     }
     return $output;
 }
예제 #3
0
 public static function upload($bucket, $source, $target, $options = array())
 {
     $config = DiHandler::getConfig();
     $config_s3_buckets = $config->application->aws->services->s3->buckets;
     $bucket_info = null;
     if (property_exists($config_s3_buckets, $bucket)) {
         $bucket_info = $config_s3_buckets->{$bucket};
     } else {
         $bucket_info = $config_s3_buckets->tmp;
     }
     $s3 = DiHandler::getAwsS3();
     $uploader = UploadBuilder::newInstance()->setClient($s3)->setSource($source)->setBucket($bucket_info->name)->setKey($target)->setOption('ACL', 'public-read')->build();
     try {
         $result = $uploader->upload();
         if (isset($result['Location'])) {
             return str_replace('%2F', '/', $result['Location']);
         } else {
             return false;
         }
     } catch (MultipartUploadException $e) {
         $uploader->abort();
         return false;
     }
 }
예제 #4
0
 public static function delete($key)
 {
     $cache = DiHandler::getModelCache();
     $cache->delete($key);
 }
 public function __construct()
 {
     $this->dbconn = DiHandler::getDb();
     $this->dbmmgr = DiHandler::getModelManager();
     $this->config = DiHandler::getConfig();
 }
예제 #6
0
 public function recordLoginAction($pzt_member_id)
 {
     $session = DiHandler::getSession();
     //TODO: review how this method will work, should it record login source, do we need logout dt?
     $member_login_obj = new EntityMemberLogin();
     $member_login_obj->pzt_member_id = $pzt_member_id;
     $member_login_obj->session_id = $session->getid();
     $member_login_obj->ip = IpHandler::clientIp();
     $member_login_obj->login_dt = date('Y-m-d H:i:s');
     $member_login_obj->expires_dt = date('Y-m-d H:i:s', strtotime('+2 hours', time()));
     $member_login_obj->logout_dt = null;
     if ($member_login_obj->save()) {
         return true;
     } else {
         $this->showDbMessages($member_login_obj);
         return false;
     }
 }
예제 #7
0
 public function uploadAvatar($pzt_member_id, $avatar, $lang)
 {
     $config = DiHandler::getConfig();
     $member_obj = Repositories::getRepository('RPztMember')->findMemberById($pzt_member_id);
     if (is_object($member_obj) && property_exists($member_obj, 'pzt_member_id')) {
         if (isset($avatar) && strlen($avatar)) {
             /*
             $filename = $attachment->filename;
             // write the file to the directory you want to save it in
             if ($fp = fopen($attachment_path.$filename, 'w'))
             {
                 while($bytes = $attachment->read())
                 {
                     fwrite($fp, $bytes);
                 }
                 fclose($fp);
             
                 echo "\n\n".$attachment_path.$filename."\n";
             }
             */
             $avatar = str_replace('data:image/jpeg;base64,', '', $avatar);
             $avatar = str_replace(' ', '+', $avatar);
             $avatar_decode = base64_decode($avatar);
             $avatar_image = file_put_contents('/tmp/avatar.jpeg', $avatar_decode);
             //$avatar_image = file_get_contents('/tmp/image.jpeg');
             $avatar_data = @getimagesize('/tmp/avatar.jpeg');
             $tes_member = array();
             $tes_member['BIT'] = $avatar_image;
             //$tes_member['IMG'] = $avatar_data;
             $tes_member['member'] = $pzt_member_id;
             //uploading to S3
             //jamet
             /*
                             if(is_array($params['avatar']) && count($params['avatar']))
                             {
                                 //uploading to S3
                                 $source = $params['avatar']['file_obj']->getTempName();
                                 $target = $pzt_member_id.'/avatar/'.$params['avatar']['file_obj']->getName();
             
                                 $options = array('acl' => 'public-read');
                                 $public_endpoint = AwsS3Handler::upload('member', $source, $target, $options);
             
                                 if($public_endpoint)
                                 {
                                     unlink($source);
             
                                     $member_obj->avatar = $public_endpoint;
                                     $member_obj->save();
                                 }
                             }
             */
             $source = "/tmp/avatar.jpeg";
             $target = $pzt_member_id . '/avatar/avatar.jpeg';
             $options = array('acl' => 'public-read');
             $public_endpoint = AwsS3Handler::upload('pztrepo', $source, $target, $options);
             if ($public_endpoint) {
                 unlink($source);
                 $member_obj->avatar_path = $public_endpoint;
                 $member_obj->save();
                 $tes_member["upload"] = "success";
             } else {
                 $tes_member["upload"] = "error - " . $public_endpoint;
             }
             //return $member_obj;
             return $tes_member;
         } else {
             return false;
         }
     } else {
         return false;
     }
 }