Exemplo n.º 1
0
 public function avatarAction()
 {
     $profilMapper = new UserMapper();
     $avatarAllowedFiletypes = $this->getConfig()->get('avatar_filetypes');
     $avatarHeight = $this->getConfig()->get('avatar_height');
     $avatarWidth = $this->getConfig()->get('avatar_width');
     $avatarSize = $this->getConfig()->get('avatar_size');
     $this->getLayout()->getHmenu()->add($this->getTranslator()->trans('menuPanel'), array('controller' => 'panel', 'action' => 'index'))->add($this->getTranslator()->trans('menuSettings'), array('controller' => 'panel', 'action' => 'settings'))->add($this->getTranslator()->trans('menuAvatar'), array('controller' => 'panel', 'action' => 'avatar'));
     if ($this->getRequest()->isPost() && !empty($_FILES['avatar']['name'])) {
         $path = $this->getConfig()->get('avatar_uploadpath');
         $file = $_FILES['avatar']['name'];
         $file_tmpe = $_FILES['avatar']['tmp_name'];
         $endung = strtolower(pathinfo($file, PATHINFO_EXTENSION));
         $file_size = $_FILES['avatar']['size'];
         if (in_array($endung, explode(' ', $avatarAllowedFiletypes))) {
             $size = getimagesize($file_tmpe);
             $width = $size[0];
             $height = $size[1];
             if ($file_size <= $avatarSize and $width == $avatarWidth and $height == $avatarHeight) {
                 $avatar = $path . $this->getUser()->getId() . '.' . $endung;
                 if ($profil->getAvatar() != '') {
                     $settingMapper = new SettingMapper();
                     $settingMapper->delAvatarById($this->getUser()->getId());
                 }
                 $model = new UserModel();
                 $model->setId($this->getUser()->getId());
                 $model->setAvatar($avatar);
                 $profilMapper->save($model);
                 if (move_uploaded_file($file_tmpe, $avatar)) {
                     $this->addMessage('successAvatar');
                 }
             } else {
                 $this->addMessage('failedFilesize', 'warning');
             }
         } else {
             $this->addMessage('failedFiletypes', 'warning');
         }
         $this->redirect(array('action' => 'avatar'));
     } elseif ($this->getRequest()->isPost() && $this->getRequest()->getPost('avatar_delete') != '') {
         $settingMapper = new SettingMapper();
         $settingMapper->delAvatarById($this->getUser()->getId());
         $this->addMessage('avatarSuccessDelete');
         $this->redirect(array('action' => 'avatar'));
     }
     $this->getView()->set('avatar_height', $avatarHeight);
     $this->getView()->set('avatar_width', $avatarWidth);
     $this->getView()->set('avatar_size', $avatarSize);
     $this->getView()->set('avatar_filetypes', $avatarAllowedFiletypes);
 }
Exemplo n.º 2
0
 /**
  * Returns a user created using an array with user data.
  *
  * @param  mixed[] $userRow
  * @return UserModel
  */
 public function loadFromArray($userRow = array())
 {
     $user = new UserModel();
     if (isset($userRow['id'])) {
         $user->setId($userRow['id']);
     }
     if (isset($userRow['name'])) {
         $user->setName($userRow['name']);
     }
     if (isset($userRow['email'])) {
         $user->setEmail($userRow['email']);
     }
     if (isset($userRow['first_name'])) {
         $user->setFirstName($userRow['first_name']);
     }
     if (isset($userRow['last_name'])) {
         $user->setLastName($userRow['last_name']);
     }
     if (isset($userRow['homepage'])) {
         $user->setHomepage($userRow['homepage']);
     }
     if (isset($userRow['city'])) {
         $user->setCity($userRow['city']);
     }
     if (isset($userRow['birthday'])) {
         $user->setBirthday($userRow['birthday']);
     }
     if (isset($userRow['avatar'])) {
         if (file_exists($userRow['avatar'])) {
             $user->setAvatar($userRow['avatar']);
         } else {
             $user->setAvatar('static/img/noavatar.jpg');
         }
     }
     if (isset($userRow['signature'])) {
         $user->setSignature($userRow['signature']);
     }
     if (isset($userRow['password'])) {
         $user->setPassword($userRow['password']);
     }
     if (isset($userRow['opt_mail'])) {
         $user->setOptMail($userRow['opt_mail']);
     }
     if (isset($userRow['date_created'])) {
         $dateCreated = new IlchDate($userRow['date_created']);
         $user->setDateCreated($dateCreated);
     }
     if (isset($userRow['date_confirmed'])) {
         $dateConfirmed = new IlchDate($userRow['date_confirmed']);
         $user->setDateConfirmed($dateConfirmed);
     }
     if (isset($userRow['date_last_activity'])) {
         $dateLastActivity = new IlchDate($userRow['date_last_activity']);
         $user->setDateLastActivity($dateLastActivity);
     }
     if (isset($userRow['confirmed'])) {
         $user->setConfirmed($userRow['confirmed']);
     }
     if (isset($userRow['confirmed_code'])) {
         $user->setConfirmedCode($userRow['confirmed_code']);
     }
     return $user;
 }