_setRequired($event); } /** * Makes either user or e-mail required * * @param kEvent $event * @return void * @access protected */ protected function OnPreCreate(kEvent $event) { parent::OnPreCreate($event); $this->_setRequired($event); } /** * Makes either user or e-mail required * * @param kEvent $event * @return void * @access protected */ protected function OnBeforeItemCreate(kEvent $event) { parent::OnBeforeItemCreate($event); $this->_itemChanged($event); } /** * Makes either user or e-mail required * * @param kEvent $event * @return void * @access protected */ protected function OnBeforeItemUpdate(kEvent $event) { parent::OnBeforeItemUpdate($event); $this->_itemChanged($event); } /** * Makes either user or e-mail required * * @param kEvent $event * @return void * @access protected */ protected function _itemChanged(kEvent $event) { $this->_setRequired($event); } /** * Makes either user or e-mail required * * @param kEvent $event * @return void * @access protected */ protected function _setRequired(kEvent $event) { $object = $event->getObject(); /* @var $object kDBItem */ $object->setRequired('UserId', !$object->GetDBField('SubscriberEmail')); $object->setRequired('SubscriberEmail', !$object->GetDBField('UserId')); } }