コード例 #1
0
ファイル: MainController.php プロジェクト: barricade86/raui
 public function actionAjaxDelAva()
 {
     if (Yii::app()->user->isGuest || !Yii::app()->request->isAjaxRequest) {
         throw404();
     }
     $id = Yii::app()->request->getQuery('id', 0);
     if ($id && in_array(Yii::app()->user->role, array(User::ROLE_MODERATOR, User::ROLE_ADMIN))) {
         $user = $this->loadModel($id);
     } else {
         $user = HUser::getModel();
     }
     $folder = HUser::getUploadDirectory($user, HUser::UPLOAD_AVA) . DIRECTORY_SEPARATOR;
     @unlink($folder . $user->ava);
     @unlink($folder . User::AVA_PREFIX . $user->ava);
     $user->ava = '';
     $user->update(array('ava'));
     $result['avaHtml'] = '<div class="user-ava-crop">' . CHtml::image(Yii::app()->theme->baseUrl . '/images/ava-default.jpg', $user->username, array('class' => 'message_ava')) . '</div>';
     HAjax::jsonOk(tc('Success'), $result);
 }
コード例 #2
0
ファイル: MainController.php プロジェクト: alexjkitty/estate
 public function actionUploadAva()
 {
     if (Yii::app()->user->isGuest) {
         throw404();
     }
     Yii::import("ext.EAjaxUpload.qqFileUploader");
     $user = HUser::getModel();
     $oldAva = $user->ava;
     $folder = HUser::getUploadDirectory($user, HUser::UPLOAD_AVA) . DIRECTORY_SEPARATOR;
     // folder for uploaded files
     $allowedExtensions = array("jpg", "jpeg", "gif", "png");
     //array("jpg","jpeg","gif","exe","mov" and etc...
     $sizeLimit = $this->getSizeLimit();
     // maximum file size in bytes
     $uploader = new qqFileUploader($allowedExtensions, $sizeLimit);
     $result = $uploader->handleUpload($folder);
     if ($result['success'] == true) {
         $fileSize = filesize($folder . $result['filename']);
         //GETTING FILE SIZE
         $fileNameReal = $result['filename'];
         //GETTING FILE NAME
         $fileName = time() . '_' . $user->id . '.' . pathinfo($fileNameReal, PATHINFO_EXTENSION);
         Yii::import('ext.image.Image');
         $image = new Image($folder . $fileNameReal);
         $image->save($folder . $fileName);
         // генерим тумбу
         $thumbName = User::AVA_PREFIX . $fileName;
         $image = new Image($folder . $fileNameReal);
         $image->resize(96, 96);
         $image->save($folder . $thumbName);
         $user->ava = $fileName;
         $user->update('ava');
         @unlink($folder . $fileNameReal);
         $result['avaHtml'] = '<div class="user-ava-crop">' . CHtml::image($user->getAvaSrcThumb(), $user->username, array('class' => 'message_ava')) . '</div>';
         if ($oldAva) {
             @unlink($folder . $oldAva);
             @unlink($folder . User::AVA_PREFIX . $oldAva);
         }
     }
     echo CJSON::encode($result);
     // it's array
 }
コード例 #3
0
ファイル: MainController.php プロジェクト: alexjkitty/estate
 public function actionAjaxDelAva()
 {
     if (Yii::app()->user->isGuest || !Yii::app()->request->isAjaxRequest) {
         throw404();
     }
     $user = HUser::getModel();
     $folder = HUser::getUploadDirectory($user, HUser::UPLOAD_AVA) . DIRECTORY_SEPARATOR;
     @unlink($folder . $user->ava);
     @unlink($folder . User::AVA_PREFIX . $user->ava);
     $user->ava = '';
     $user->update(array('ava'));
     $result['avaHtml'] = '<div class="user-ava-crop">' . CHtml::image(Yii::app()->baseUrl . '/images/ava-default.jpg', $user->username, array('class' => 'message_ava')) . '</div>';
     HAjax::jsonOk(tc('Success'), $result);
 }