/** * Gets the member's member groups * @param Member $member * @return Membergroup[] Returns the member groups assigned to the user */ static function MemberMembergroups(Member $member) { if (!$member->Exists()) { return array(); } $sql = Access::SqlBuilder(); $tblMmg = MemberMembergroup::Schema()->Table(); $tblMg = Membergroup::Schema()->Table(); $join = $sql->Join($tblMmg); $joinCondition = $sql->Equals($tblMmg->Field('MemberGroup'), $tblMg->Field('ID')); $where = $sql->Equals($tblMmg->Field('Member'), $sql->Value($member->GetID())); $orderBy = $sql->OrderList($sql->OrderAsc($tblMg->Field('Name'))); return Membergroup::Schema()->Fetch(false, $where, $orderBy, null, 0, null, $join, JoinType::Inner(), $joinCondition); }
/** * Saves the user */ protected function OnSuccess() { $action = $this->member->Exists() ? Action::Update() : Action::Create(); $this->member->SetName($this->Value('Name')); $this->member->SetEMail($this->Value('EMail')); $this->SetPassword(); $this->member->Save(); $logger = new Logger(self::Guard()->GetUser()); $logger->ReportMemberAction($thos->member, $action); if ($this->groupsExist && $this->CanAssignGroup()) { $this->SaveGroups(); } Response::Redirect(BackendRouter::ModuleUrl(new MemberList())); }