示例#1
0
    /**
     * 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) . '
			');
    }
示例#2
0
文件: success.php 项目: alcf/chms
 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));
 }