/** * Ajax handler for accept request */ public function onSubmit() { if (($code = post('code')) != '') { $user = $this->getuser(); UserGroup::joinByCode($code, $user); } // Updated list of request and other vars $this->prepareVars(); }
/** * Read and process incomming data from listenable channels * @return void */ public function fire() { $today = Carbon::today(); $lastRun = Settings::get('reset_group_last_run'); if ($lastRun != $today->toDateTimeString()) { $day = strtolower($today->format('l')); $reset_groups_every_day = Settings::get('reset_groups_every_day'); $reset_groups_time = Settings::get('reset_groups_time'); if (in_array($day, $reset_groups_every_day)) { $reset_at = Carbon::parse($reset_groups_time); if ($reset_at->lte(Carbon::now())) { UserGroup::markInactiveGroups(); Settings::set('reset_group_last_run', $today->toDateTimeString()); } } } else { // \Log::info('Has already run'); } }
/** * Ajax handler for accept request */ public function onChangeStatus() { if (($groupId = post('groupId')) != '') { $group = UserGroup::findOrFail($groupId); if (($status = post('status')) != '') { $user = $this->getuser(); switch ($status) { case UserGroup::MEMBERSHIP_ACCEPTED: $group->acceptMembership($user); break; case UserGroup::MEMBERSHIP_REJECTED: $group->rejectMembership($user); break; case UserGroup::MEMBERSHIP_CANCELLED: $group->cancelMembership($user); break; } } } // Updated list of request and other vars $this->prepareVars(); }
/** * Create a new group */ public function onCreateGroup() { if ($user = $this->getUser()) { $group = new UserGroup(); $group->owner = $user; $group->save(); $goTo = $this->property('newGroupRedirectTo'); $goTo = trim($goTo) === '' || !isset($goTo) ? $_SERVER['PHP_SELF'] : $goTo; return Redirect::to($goTo); } }
/** * Ajax handler for adding members */ public function onAddMember() { // refresh current step $this->currentStep = self::STEP_MEMBERS; if (($groupId = post('groupId')) != '') { // Add to group $group = $this->getGroup($groupId); if (($username = post('username')) != '') { $user = User::where($this->getLoginAttr(), '=', $username)->first(); if ($user) { \Log::info(UserGroup::getActiveMembershipsCount($user)); try { $added = $group->addUser($user); if (!$added) { if ($user->getKey() == $group->owner->getKey()) { $message = Lang::get('dma.friends::lang.groups.ownerCanBeMember'); Flash::error($message); } } } catch (\Exception $e) { Flash::error($e->getMessage()); } } else { $message = Lang::get('dma.friends::lang.exceptions.userNotFound'); Flash::error($message); } } // Updated list of users and other vars $this->prepareVars($group); } }
public function testResetGroups() { UserGroup::markInactiveGroups(); $this->assertEquals(0, count(UserGroup::where('is_active', '=', true)->get())); }