protected function init() {
     $this->setTable(Pap_Db_Table_VisitorAffiliates::getInstance());
     parent::init();
 }
	/**
	 * @param $ip
	 * @return Pap_Db_VisitorAffiliate
	 */
	protected function getLatestVisitorAffiliateFromDbByIp($ip, $accountId) {
		$selectBuilder = new Gpf_SqlBuilder_SelectBuilder();
		$selectBuilder->from->add(Pap_Db_Table_VisitorAffiliates::getName());
		$selectBuilder->select->addAll(Pap_Db_Table_VisitorAffiliates::getInstance());
		$selectBuilder->where->add(Pap_Db_Table_VisitorAffiliates::IP, '=', $ip);
		$selectBuilder->where->add(Pap_Db_Table_VisitorAffiliates::ACCOUNTID, '=', $accountId);
		$selectBuilder->where->add(Pap_Db_Table_VisitorAffiliates::VALIDTO, '>=', Gpf_Common_DateUtils::now());
		$selectBuilder->orderBy->add(Pap_Db_Table_VisitorAffiliates::DATEVISIT, false);
		$selectBuilder->limit->set(0, 1);

		try {
			$visitorAffiliate = new Pap_Db_VisitorAffiliate();
			$visitorAffiliate->fillFromRecord($selectBuilder->getOneRow());
		} catch (Gpf_Exception $e) {
			return null;
		}
		 
		return $visitorAffiliate;
	}