public function testDelete() { $subscriber = new Subscriber(); $subscriber->sid = 'sd8uo329psd'; $this->assertEquals(true, $subscriber->save()); $subscriber = Subscriber::model()->findByPk($subscriber->id); $this->assertInstanceOf('YiiNodeSocket\\Models\\Subscriber', $subscriber); $this->assertEquals(true, $subscriber->delete()); $this->assertNull(Subscriber::model()->findByPk($subscriber->id), 'Subscriber need to be null because it has been deleted'); }
/** * @return Subscriber|null */ public function getSubscriber() { if ($this->_subscriber) { return $this->_subscriber; } if ($this->getOwner()->getIsNewRecord()) { return null; } return $this->_subscriber = Subscriber::model()->findByAttributes(array('user_id' => $this->_getUserId())); }
/** * @param Channel $channel * @param bool $refresh * * @return AModel[] */ public function getSubscribers(Channel $channel, $refresh = false) { if ($channel->getIsNewRecord()) { return array(); } if (array_key_exists($channel->id, self::$_channelSubscribers) && !$refresh) { return self::$_channelSubscribers[$channel->id]; } $links = SubscriberChannel::model()->findAllByAttributes(array('channel_id' => $channel->id)); $subscriberId = array(); foreach ($links as $link) { $subscriberId[] = $link->subscriber_id; } $subscribers = Subscriber::model()->findAllByPk($subscriberId); foreach ($subscribers as $subscriber) { self::_addToCache($channel, $subscriber); } return $subscribers; }