/** * * @service banner_stats read * @param $data */ public function loadFullStatistics(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $select = new Gpf_SqlBuilder_SelectBuilder(); $select->from->add(Pap_Db_Table_Banners::getName()); $select->select->add("COUNT(".Pap_Db_Table_Banners::ID.")", "count"); $select->select->add(Pap_Db_Table_Banners::TYPE, 'type'); $select->groupBy->add(Pap_Db_Table_Banners::TYPE); Gpf_Plugins_Engine::extensionPoint('AffiliateNetwork.modifyWhere', new Gpf_Common_SelectBuilderCompoundRecord($select, new Gpf_Data_Record(array(), array()))); $result = $select->getAllRowsIndexedBy('type'); $bannerTypes = explode(',', $data->getParam('bannerTypes')); $bannersCount = 0; foreach ($bannerTypes as $bannerType) { $bannerTypeCount = 0; try { $bannerTypeCount = $result->getRecord($bannerType)->get('count'); } catch (Gpf_Data_RecordSetNoRowException $e) { } $data->setValue($bannerType, "$bannerTypeCount"); $bannersCount += $bannerTypeCount; } $data->setValue("bannersCount", "$bannersCount"); return $data; }
/** * @param Gpf_Rpc_Params $params * @service * @anonym * @return Gpf_Rpc_Data */ public function check(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $text = $data->getParam('teststring'); $dataOut = new Gpf_Rpc_Data(); $dataOut->setValue('status', 'OK'); $dataOut->setValue('recieved', $text); return $dataOut; }
/** * * @service * @anonym * * @param Gpf_Rpc_Params $params */ public function getLatestVersion(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $request = new Gpf_Rpc_DataRequest('Dp_Version_Info', 'getLatestVersion'); $request->setUrl(Gpf_Install_LicenseManager::MEMBERS_URL); $request->setField('id', $data->getParam('id')); try { $request->sendNow(); $versionInfo = $request->getData(); if (version_compare($versionInfo->getValue('version'), Gpf_Application::getInstance()->getVersion()) < 0) { $versionInfo->setValue('version', Gpf_Application::getInstance()->getVersion()); } return $versionInfo; } catch (Exception $e) { } return $data; }