public function saveConfig($name, $value) { if ($name === 'pc_address') { $this->savePreConfig($name, $value); $memberConfig = Doctrine::getTable('MemberConfig')->retrieveByNameAndMemberId('pc_address_token', $this->member->getId(), true); $token = $memberConfig->getValue(); $this->sendConfirmMail($token, $value, array('id' => $this->member->getId(), 'type' => $name)); return true; } parent::saveConfig($name, $value); }
public function saveConfig($name, $value) { if ('access_block' !== $name) { return parent::saveConfig($name, $value); } $value = $this->setBlockedIds; $key = 0; foreach ($value as $memberId) { $defaultId = 0; if ($key + 1 <= count($this->blockedId)) { $defaultId = $this->blockedId[$key]; } switch ($memberId) { case '': // delete if (!$defaultId) { break; } $relationship = Doctrine::getTable('MemberRelationship')->retrieveByFromAndTo($this->member->getId(), $defaultId); if (!$relationship) { break; } $relationship->setIsAccessBlock(false); $relationship->save(); break; case $defaultId: // equal break; default: $relationship = Doctrine::getTable('MemberRelationship')->retrieveByFromAndTo($this->member->getId(), $memberId); // update if ($defaultId) { if (!$relationship) { $relationship = Doctrine::getTable('MemberRelationship')->retrieveByFromAndTo($this->member->getId(), $defaultId); } } else { if (!$relationship) { $relationship = new MemberRelationship(); $relationship->setMemberIdFrom($this->member->getId()); } } $relationship->setMemberIdTo($memberId); $relationship->setIsAccessBlock(true); $relationship->save(); } if ($key >= count($this->blockedId)) { break; } $key++; } }