public function delete($commercialGroup) { if (is_string($commercialGroup)) { $commercialGroup = new CommercialGroupModel(array('id' => $commercialGroup)); } if (!$commercialGroup instanceof CommercialGroupModel) { throw new AppEx\InvalidArgumentException('No supplied commericial group Id or model'); } if (is_null($commercialGroup->getSubscriberCount())) { $commercialGroup = $this->load($commercialGroup->getId()); } if ($commercialGroup->getSubscriberCount() !== 0) { throw new AppEx\InvalidArgumentException('Supplied commericial group has subscriptions'); } return parent::delete($commercialGroup); }