/** * Deletes all associated Memberships * @return void */ public function DeleteAllMemberships() { if (is_null($this->intId)) { throw new QUndefinedPrimaryKeyException('Unable to call UnassociateMembership on this unsaved Person.'); } // Get the Database Object for this Class $objDatabase = Person::GetDatabase(); // Journaling if ($objDatabase->JournalingDatabase) { foreach (Membership::LoadArrayByPersonId($this->intId) as $objMembership) { $objMembership->Journal('DELETE'); } } // Perform the SQL Query $objDatabase->NonQuery(' DELETE FROM `membership` WHERE `person_id` = ' . $objDatabase->SqlVariable($this->intId) . ' '); }
protected function btnSubmitMemberExit_Click() { // First remove the person. $objMembershipArray = Membership::LoadArrayByPersonId($this->objPersonId); if ($objMembershipArray) { foreach ($objMembershipArray as $objMembership) { $objMembership->DateEnd = QDateTime::Now(false); if ($this->lstTermination->SelectedValue == -1) { $objMembership->TerminationReason = trim($this->txtTermination->Text); } else { $objMembership->TerminationReason = $this->lstTermination->SelectedValue; } $objMembership->Save(); } } // Determine if we also need to remove entire household. if ($this->chkMemberExit->SelectedValue == false) { $objPerson = Person::Load($this->objPersonId); $objHouseholdParticipation = $objPerson->GetHouseholdParticipationArray(); foreach ($objHouseholdParticipation as $objParticipant) { if ($objParticipant->PersonId != $this->objPersonId) { $objMembershipArray = Membership::LoadArrayByPersonId($objParticipant->PersonId); if ($objMembershipArray) { foreach ($objMembershipArray as $objMembership) { $objMembership->DateEnd = QDateTime::Now(); if ($this->lstTermination->SelectedValue == -1) { $objMembership->TerminationReason = trim($this->txtTermination->Text); } else { $objMembership->TerminationReason = $this->lstTermination->SelectedValue; } $objMembership->Save(); } } } } } //Send notification to administrator indicating people have been "ummembered" $this->SendNotification(); QApplication::Redirect('/unsubscribe/removedMember.php/' . QApplication::PathInfo(0)); }