Example #1
0
 public function trigger()
 {
     $user = UserInfo::getByID($this->requestedUID);
     $pk = PermissionKey::getByID($this->pkID);
     $pk->setPermissionObject($user);
     return parent::triggerRequest($pk);
 }
 /**
  * After canceling delete request, do nothing
  */
 public function cancel(Progress $wp)
 {
     $ui = UserInfo::getByID($this->getRequestedUserID());
     $wpr = parent::cancel($wp);
     $wpr->message = t("User deletion request has been cancelled.");
     return $wpr;
 }
Example #3
0
 /**
  * @param mixed
  */
 public function setUser($user)
 {
     if ($user instanceof \Concrete\Core\User\User) {
         $this->user = UserInfo::getByID($user->getUserID());
     } else {
         $this->user = $user;
     }
     $this->name = $this->user->getUserName();
     $this->email = $this->user->getUserEmail();
 }
Example #4
0
 public function testActiveUsers()
 {
     $ui = UserInfo::getByID(2);
     $ui->deactivate();
     $this->assertEquals(2, $this->list->getTotalResults());
     $this->list->includeInactiveUsers();
     $this->assertEquals(3, $this->list->getTotalResults());
     $this->list->filterByIsActive(0);
     $this->assertEquals(1, $this->list->getTotalResults());
 }
 public function get($itemsToGet = 0, $offset = 0)
 {
     $_users = DatabaseItemList::get($itemsToGet, $offset);
     $users = array();
     foreach ($_users as $row) {
         $u = UserInfo::getByID($row['uID']);
         $wp = UserWorkflowProgress::getByID($row['wpID']);
         $users[] = new ProgressUser($u, $wp);
     }
     return $users;
 }
Example #6
0
 public static function add($filename, $prefix, $data = array(), $fsl = false, $folder = false)
 {
     $db = Loader::db();
     $dh = Loader::helper('date');
     $date = $dh->getOverridableNow();
     if (!is_object($fsl)) {
         $fsl = StorageLocation::getDefault();
     }
     $uID = 0;
     $u = new User();
     if (isset($data['uID'])) {
         $uID = $data['uID'];
     } else {
         if ($u->isRegistered()) {
             $uID = $u->getUserID();
         }
     }
     if (!$folder instanceof FileFolder) {
         $filesystem = new Filesystem();
         $folder = $filesystem->getRootFolder();
     }
     $f = new \Concrete\Core\Entity\File\File();
     $f->storageLocation = $fsl;
     $f->fDateAdded = new Carbon($date);
     $f->folderTreeNodeID = $folder->getTreeNodeID();
     $em = \ORM::entityManager();
     $em->persist($f);
     $em->flush();
     if ($uID > 0) {
         $ui = UserInfo::getByID($uID);
         if (is_object($ui)) {
             $ue = $ui->getEntityObject();
             if (is_object($ue)) {
                 $f->setUser($ue);
             }
         }
     }
     $node = \Concrete\Core\Tree\Node\Type\File::add($f, $folder);
     $fv = Version::add($f, $filename, $prefix, $data);
     $f->versions->add($fv);
     $fve = new \Concrete\Core\File\Event\FileVersion($fv);
     Events::dispatch('on_file_add', $fve);
     $entities = $u->getUserAccessEntityObjects();
     $hasUploader = false;
     foreach ($entities as $obj) {
         if ($obj instanceof FileUploaderPermissionAccessEntity) {
             $hasUploader = true;
         }
     }
     if (!$hasUploader) {
         $u->refreshUserGroups();
     }
     return $fv;
 }
 public function sendActivationEmail(UserInfo $ui)
 {
     $mh = Loader::helper('mail');
     $mh->to($ui->getUserEmail());
     if (Config::get('concrete.user.registration.notification_email')) {
         $mh->from(Config::get('concrete.user.registration.notification_email'), t('Website Registration Notification'));
     } else {
         $adminUser = UserInfo::getByID(USER_SUPER_ID);
         $mh->from($adminUser->getUserEmail(), t('Website Registration Notification'));
     }
     $mh->addParameter('uID', $ui->getUserID());
     $mh->addParameter('user', $ui);
     $mh->addParameter('uName', $ui->getUserName());
     $mh->addParameter('uEmail', $ui->getUserEmail());
     $mh->addParameter('siteName', \Core::make('site')->getSite()->getSiteName());
     $mh->load('user_registered_approval_complete');
     $mh->sendMail();
 }
Example #8
0
 public function getUserPointEntryUserObject()
 {
     $ui = UserInfo::getByID($this->upuID);
     return $ui;
 }
Example #9
0
 public function enterGroup($g)
 {
     // takes a group object, and, if the user is not already in the group, it puts them into it
     $dt = Loader::helper('date');
     if (is_object($g)) {
         if (!$this->inGroup($g)) {
             $gID = $g->getGroupID();
             $db = Loader::db();
             $db->Replace('UserGroups', array('uID' => $this->getUserID(), 'gID' => $g->getGroupID(), 'ugEntered' => $dt->getOverridableNow()), array('uID', 'gID'), true);
             if ($g->isGroupBadge()) {
                 $action = UserPointAction::getByHandle('won_badge');
                 if (is_object($action)) {
                     $action->addDetailedEntry($this, $g);
                 }
                 $mh = Loader::helper('mail');
                 $ui = CoreUserInfo::getByID($this->getUserID());
                 $mh->addParameter('badgeName', $g->getGroupName());
                 $mh->addParameter('uDisplayName', $ui->getUserDisplayName());
                 $mh->addParameter('uProfileURL', BASE_URL . View::url('/members/profile', 'view', $this->getUserID()));
                 $mh->to($ui->getUserEmail());
                 $mh->load('won_badge');
                 $mh->sendMail();
             }
             $ue = new \Concrete\Core\User\Event\UserGroup($this);
             $ue->setGroupObject($g);
             Events::dispatch('on_user_enter_group', $ue);
         }
     }
 }
Example #10
0
 public static function getLastLoggedInUser()
 {
     $db = Loader::db();
     $uID = $db->GetOne("select uID from Users order by uLastLogin desc");
     return ConcreteUserInfo::getByID($uID);
 }
Example #11
0
 public function enterGroup($g)
 {
     $app = Application::getFacadeApplication();
     // takes a group object, and, if the user is not already in the group, it puts them into it
     $dt = $app->make('helper/date');
     if (is_object($g)) {
         if (!$this->inGroup($g)) {
             $gID = $g->getGroupID();
             $db = $app['database']->connection();
             $db->Replace('UserGroups', array('uID' => $this->getUserID(), 'gID' => $g->getGroupID(), 'ugEntered' => $dt->getOverridableNow()), array('uID', 'gID'), true);
             if ($g->isGroupBadge()) {
                 $action = UserPointAction::getByHandle('won_badge');
                 if (is_object($action)) {
                     $action->addDetailedEntry($this, $g);
                 }
                 $mh = $app->make('mail');
                 $ui = UserInfo::getByID($this->getUserID());
                 $mh->addParameter('badgeName', $g->getGroupDisplayName(false));
                 $mh->addParameter('uDisplayName', $ui->getUserDisplayName());
                 $mh->addParameter('uProfileURL', (string) $ui->getUserPublicProfileURL());
                 $mh->addParameter('siteName', $app['config']->get('concrete.site'));
                 $mh->to($ui->getUserEmail());
                 $mh->load('won_badge');
                 $mh->sendMail();
             }
             $ue = new \Concrete\Core\User\Event\UserGroup($this);
             $ue->setGroupObject($g);
             $app['director']->dispatch('on_user_enter_group', $ue);
         }
     }
 }
Example #12
0
 public function update($data)
 {
     $db = Loader::db();
     if ($this->uID) {
         $ux = $this->getUserObject();
         $uName = $this->getUserName();
         $uEmail = $this->getUserEmail();
         $uHasAvatar = $this->hasAvatar();
         $uTimezone = $this->getUserTimezone();
         $uDefaultLanguage = $ux->getUserDefaultLanguage();
         if (isset($data['uName'])) {
             $uName = $data['uName'];
         }
         if (isset($data['uEmail'])) {
             $uEmail = $data['uEmail'];
         }
         if (isset($data['uHasAvatar'])) {
             $uHasAvatar = $data['uHasAvatar'];
         }
         if (isset($data['uTimezone'])) {
             $uTimezone = $data['uTimezone'];
         }
         if (isset($data['uDefaultLanguage']) && $data['uDefaultLanguage'] != '') {
             $uDefaultLanguage = $data['uDefaultLanguage'];
         }
         $testChange = false;
         if ($data['uPassword'] != null) {
             if ($data['uPassword'] == $data['uPasswordConfirm']) {
                 $dh = Loader::helper('date');
                 $dateTime = $dh->getOverridableNow();
                 $v = array($uName, $uEmail, $this->getUserObject()->getUserPasswordHasher()->HashPassword($data['uPassword']), $uHasAvatar, $uTimezone, $uDefaultLanguage, $dateTime, $this->uID);
                 $r = $db->prepare("update Users set uName = ?, uEmail = ?, uPassword = ?, uHasAvatar = ?, uTimezone = ?, uDefaultLanguage = ?, uLastPasswordChange = ? where uID = ?");
                 $res = $db->execute($r, $v);
                 $testChange = true;
                 $currentUser = new User();
                 $session = Core::make('session');
                 if ($currentUser->isLoggedIn() && $currentUser->getUserID() == $session->get('uID')) {
                     $session->set('uLastPasswordChange', $dateTime);
                 }
             } else {
                 $updateGroups = false;
             }
         } else {
             $v = array($uName, $uEmail, $uHasAvatar, $uTimezone, $uDefaultLanguage, $this->uID);
             $r = $db->prepare("update Users set uName = ?, uEmail = ?, uHasAvatar = ?, uTimezone = ?, uDefaultLanguage = ? where uID = ?");
             $res = $db->execute($r, $v);
         }
         // now we check to see if the user is updated his or her own logged in record
         $session = Core::make('session');
         if ($session->has('uID') && $session->get('uID') == $this->uID) {
             $session->set('uName', $uName);
             $session->set('uTimezone', $uTimezone);
             $session->set('uDefaultLanguage', $uDefaultLanguage);
         }
         // run any internal event we have for user update
         $ui = UserInfo::getByID($this->uID);
         $ue = new \Concrete\Core\User\Event\UserInfo($ui);
         Events::dispatch('on_user_update', $ue);
         if ($testChange) {
             $ue = new \Concrete\Core\User\Event\UserInfoWithPassword($ui);
             Events::dispatch('on_user_change_password', $ue);
         }
         return $res;
     }
 }
Example #13
0
 public function getConversationMessageUserObject()
 {
     return UserInfo::getByID($this->uID);
 }
Example #14
0
 /**
  * @param $queryRow
  *
  * @return \Concrete\Core\User\UserInfo
  */
 public function getResult($queryRow)
 {
     $ui = CoreUserInfo::getByID($queryRow['uID']);
     return $ui;
 }
Example #15
0
 public function getRequesterUserObject()
 {
     return UserInfo::getByID($this->uID);
 }