当前位置: 首页>>代码示例>>PHP>>正文


PHP OA类代码示例

本文整理汇总了PHP中OA的典型用法代码示例。如果您正苦于以下问题:PHP OA类的具体用法?PHP OA怎么用?PHP OA使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了OA类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getAvailableSSLExtensions

 /**
  * A method to detect the available SSL enabling extensions
  *
  * @return mixed An array of the available extensions, or false if none is present
  */
 public static function getAvailableSSLExtensions($forceReload = false)
 {
     if ($forceReload || !isset(self::$sslExtensions)) {
         self::$sslExtensions = OA::getAvailableSSLExtensions();
     }
     return self::$sslExtensions;
 }
开发者ID:Jaree,项目名称:revive-adserver,代码行数:12,代码来源:ConnectionUtils.php

示例2: getPlacementFirstStatsDate

 /**
  * A method to determine the day/hour that a placement first became active,
  * based on the first record of its children ads delivering.
  *
  * @param integer $placementId The placement ID.
  * @return mixed PEAR:Error on database error, null on no result, or a
  *               PEAR::Date object representing the time the placement started
  *               delivery, or, if not yet active, the current date/time.
  */
 function getPlacementFirstStatsDate($placementId)
 {
     // Test the input values
     if (!is_numeric($placementId)) {
         return null;
     }
     // Get the required data
     $conf = $GLOBALS['_MAX']['CONF'];
     $adTable = $this->oDbh->quoteIdentifier($conf['table']['prefix'] . $conf['table']['banners'], true);
     $dsahTable = $this->oDbh->quoteIdentifier($conf['table']['prefix'] . $conf['table']['data_summary_ad_hourly'], true);
     $query = "\n            SELECT\n                DATE_FORMAT(dsah.date_time, '%Y-%m-%d') AS day,\n                HOUR(dsah.date_time) AS hour\n            FROM\n                {$adTable} AS a,\n                {$dsahTable} AS dsah\n            WHERE\n                a.campaignid = " . $this->oDbh->quote($placementId, 'integer') . "\n                AND\n                a.bannerid = dsah.ad_id\n            ORDER BY\n                day ASC, hour ASC\n            LIMIT 1";
     $message = "Finding start date of placement ID {$placementId} based on delivery statistics.";
     OA::debug($message, PEAR_LOG_DEBUG);
     $rc = $this->oDbh->query($query);
     if (PEAR::isError($rc)) {
         return $rc;
     }
     // Was a result found?
     if ($rc->numRows() == 0) {
         // Return the current time
         $oDate = new Date();
     } else {
         // Store the results
         $aRow = $rc->fetchRow();
         $oDate = new Date($aRow['day'] . ' ' . $aRow['hour'] . ':00:00');
     }
     return $oDate;
 }
开发者ID:ballistiq,项目名称:revive-adserver,代码行数:37,代码来源:Statistics.php

示例3: run

 function run()
 {
     // Make sure that the output is sent to the browser before
     // loading libraries and connecting to the db
     flush();
     $aConf = $GLOBALS['_MAX']['CONF'];
     // Set longer time out, and ignore user abort
     if (!ini_get('safe_mode')) {
         @set_time_limit($aConf['maintenance']['timeLimitScripts']);
         @ignore_user_abort(true);
     }
     if (!defined('OA_VERSION')) {
         // If the code is executed inside delivery, the constants
         // need to be initialized
         require_once MAX_PATH . '/constants.php';
         setupConstants();
     }
     $oLock =& OA_DB_AdvisoryLock::factory();
     if ($oLock->get(OA_DB_ADVISORYLOCK_MAINTENANCE)) {
         OA::debug('Running Automatic Maintenance Task', PEAR_LOG_INFO);
         OA_Preferences::loadAdminAccountPreferences();
         require_once LIB_PATH . '/Maintenance.php';
         $oMaint = new OX_Maintenance();
         $oMaint->run();
         $oLock->release();
         OA::debug('Automatic Maintenance Task Completed', PEAR_LOG_INFO);
     } else {
         OA::debug('Automatic Maintenance Task not run: could not acquire lock', PEAR_LOG_INFO);
     }
 }
开发者ID:Jaree,项目名称:revive-adserver,代码行数:30,代码来源:Auto.php

示例4: defaultData

 function defaultData()
 {
     $oManager = new OX_Plugin_ComponentGroupManager();
     if (!array_key_exists('testPlugin', $GLOBALS['_MAX']['CONF']['pluginGroupComponents'])) {
         $oManager->disableComponentGroup('testPlugin');
     }
     $this->oManager->enableComponentGroup('testPlugin');
     $oTestPluginTable = OA_Dal::factoryDO('testplugin_table');
     if (!$oTestPluginTable) {
         OA::debug('Failed to instantiate DataObject for testplugin_table');
         return false;
     }
     $oTestPluginTable->myplugin_desc = 'Hello World';
     $aSettings[0]['data'] = $oTestPluginTable->insert();
     $aSettings[0]['section'] = 'myPlugin';
     $aSettings[0]['key'] = 'english';
     $oTestPluginTable->myplugin_desc = 'Hola Mundo';
     $aSettings[1]['data'] = $oTestPluginTable->insert();
     $aSettings[1]['section'] = 'myPlugin';
     $aSettings[1]['key'] = 'spanish';
     $oTestPluginTable->myplugin_desc = 'Look Simon, you\'re just making it up now';
     $aSettings[2]['data'] = $oTestPluginTable->insert();
     $aSettings[2]['section'] = 'myPlugin';
     $aSettings[2]['key'] = 'russian';
     $oManager->_registerSettings($aSettings);
     $oManager->disableComponentGroup('testPlugin');
     return true;
 }
开发者ID:ballistiq,项目名称:revive-adserver,代码行数:28,代码来源:postscript_install_testUpgrade.php

示例5: display

 /**
  * A method to launch and display the widget
  *
  * @param array $aParams The parameters array, usually $_REQUEST
  */
 function display()
 {
     if (!$this->oTpl->is_cached()) {
         OA::disableErrorHandling();
         $oRss = new XML_RSS($this->url);
         $result = $oRss->parse();
         OA::enableErrorHandling();
         // ignore bad character error which could appear if rss is using invalid characters
         if (PEAR::isError($result)) {
             if (!strstr($result->getMessage(), 'Invalid character')) {
                 PEAR::raiseError($result);
                 // rethrow
                 $this->oTpl->caching = false;
             }
         }
         $aPost = array_slice($oRss->getItems(), 0, $this->posts);
         foreach ($aPost as $key => $aValue) {
             $aPost[$key]['origTitle'] = $aValue['title'];
             if (strlen($aValue['title']) > 38) {
                 $aPost[$key]['title'] = substr($aValue['title'], 0, 38) . '...';
             }
         }
         $this->oTpl->assign('title', $this->title);
         $this->oTpl->assign('feed', $aPost);
         $this->oTpl->assign('siteTitle', $this->siteTitle);
         $this->oTpl->assign('siteUrl', $this->siteUrl);
     }
     $this->oTpl->display();
 }
开发者ID:Jaree,项目名称:revive-adserver,代码行数:34,代码来源:Feed.php

示例6: execute

 function execute($aParams)
 {
     $this->oUpgrade =& $aParams[0];
     $this->oDbh =& OA_DB::singleton();
     $prefix = $GLOBALS['_MAX']['CONF']['table']['prefix'];
     if ($this->oDbh->dbsyntax == 'pgsql') {
         $oTable =& $this->oUpgrade->oDBUpgrader->oTable;
         foreach ($oTable->aDefinition['tables'] as $tableName => $aTable) {
             foreach ($aTable['fields'] as $fieldName => $aField) {
                 if (!empty($aField['autoincrement'])) {
                     // Check actual sequence name
                     $oldSequenceName = $this->getLinkedSequence($prefix . $tableName, $fieldName);
                     if ($oldSequenceName) {
                         $newSequenceName = OA_DB::getSequenceName($this->oDbh, $tableName, $fieldName);
                         if ($oldSequenceName != $newSequenceName) {
                             $this->logOnly("Non standard sequence name found: " . $oldSequenceName);
                             $qTable = $this->oDbh->quoteIdentifier($prefix . $tableName, true);
                             $qField = $this->oDbh->quoteIdentifier($fieldName, true);
                             $qOldSequence = $this->oDbh->quoteIdentifier($oldSequenceName, true);
                             $qNewSequence = $this->oDbh->quoteIdentifier($newSequenceName, true);
                             OA::disableErrorHandling();
                             $result = $this->oDbh->exec("ALTER TABLE {$qOldSequence} RENAME TO {$qNewSequence}");
                             if (PEAR::isError($result)) {
                                 if ($result->getCode() == MDB2_ERROR_ALREADY_EXISTS) {
                                     $result = $this->oDbh->exec("DROP SEQUENCE {$qNewSequence}");
                                     if (PEAR::isError($result)) {
                                         $this->logError("Could not drop existing sequence {$newSequenceName}: " . $result->getUserInfo());
                                         return false;
                                     }
                                     $result = $this->oDbh->exec("ALTER TABLE {$qOldSequence} RENAME TO {$qNewSequence}");
                                 }
                             }
                             if (PEAR::isError($result)) {
                                 $this->logError("Could not rename {$oldSequenceName} to {$newSequenceName}: " . $result->getUserInfo());
                                 return false;
                             }
                             $result = $this->oDbh->exec("ALTER TABLE {$qTable} ALTER {$qField} SET DEFAULT nextval(" . $this->oDbh->quote($qNewSequence) . ")");
                             if (PEAR::isError($result)) {
                                 $this->logError("Could not set column default to sequence {$newSequenceName}: " . $result->getUserInfo());
                                 return false;
                             }
                             OA::enableErrorHandling();
                             $result = $oTable->resetSequenceByData($tableName, $fieldName);
                             if (PEAR::isError($result)) {
                                 $this->logError("Could not reset sequence value for {$newSequenceName}: " . $result->getUserInfo());
                                 return false;
                             }
                             $this->logOnly("Successfully renamed {$oldSequenceName} to {$newSequenceName}");
                         }
                     } else {
                         $this->logOnly("No sequence found for {$tableName}.{$fieldName}");
                     }
                 }
             }
         }
     }
     return true;
 }
开发者ID:villos,项目名称:tree_admin,代码行数:58,代码来源:postscript_openads_upgrade_2.5.67-beta-rc8.php

示例7: __construct

 function __construct($path, $server, $port = 0, $proxy = '', $proxy_port = 0, $proxy_user = '', $proxy_pass = '')
 {
     if ($aExtensions = OA::getAvailableSSLExtensions()) {
         $this->hasCurl = in_array('curl', $aExtensions);
         $this->hasOpenssl = in_array('openssl', $aExtensions);
     }
     $this->verifyPeer = false;
     $this->caFile = MAX_PATH . '/etc/curl-ca-bundle.crt';
     parent::__construct($path, $server, $port);
 }
开发者ID:Spark-Eleven,项目名称:revive-adserver,代码行数:10,代码来源:XmlRpcClient.php

示例8: _saveSummary

 /**
  * A private method for summarising data into the final tables when
  * at least one hour is complete.
  *
  * @access private
  * @param PEAR::Date $oStartDate The start date of the complete hour(s).
  * @param PEAR::Date $oEndDate The end date of the complete hour(s).
  */
 function _saveSummary($oStartDate, $oEndDate)
 {
     $message = '- Updating the data_summary_ad_hourly table for data after ' . $oStartDate->format('%Y-%m-%d %H:%M:%S') . ' ' . $oStartDate->tz->getShortName();
     $this->oController->report .= $message . ".\n";
     OA::debug($message, PEAR_LOG_DEBUG);
     $oServiceLocator =& OA_ServiceLocator::instance();
     $oDal =& $oServiceLocator->get('OX_Dal_Maintenance_Statistics');
     $aTypes = array('types' => array(0 => 'request', 1 => 'impression', 2 => 'click'), 'connections' => array(1 => MAX_CONNECTION_AD_IMPRESSION, 2 => MAX_CONNECTION_AD_CLICK));
     $oDal->saveSummary($oStartDate, $oEndDate, $aTypes, 'data_intermediate_ad', 'data_summary_ad_hourly');
 }
开发者ID:akirsch,项目名称:revive-adserver,代码行数:18,代码来源:SummariseFinal.php

示例9: runTasks

 /**
  * A method to run the run() method of each task in the collection,
  * in the registered order.
  *
  * @todo We should really make OA_Task::run return a boolean we can check.
  */
 function runTasks()
 {
     // Remove tasks from the queue and unset them when done to prevent
     // useless memory consumption
     while ($oTask = array_shift($this->aTasks)) {
         OA::debug('Task begin: ' . get_class($oTask), PEAR_LOG_INFO);
         $oTask->run();
         OA::debug('Task complete: ' . get_class($oTask), PEAR_LOG_INFO);
         unset($oTask);
     }
 }
开发者ID:ballistiq,项目名称:revive-adserver,代码行数:17,代码来源:Runner.php

示例10: run

 /**
  * The implementation of the OA_Task::run() method that performs
  * the required task of activating/deactivating campaigns.
  */
 function run()
 {
     if ($this->oController->updateIntermediate) {
         $oServiceLocator =& OA_ServiceLocator::instance();
         $oDate =& $oServiceLocator->get('now');
         $oDal =& $oServiceLocator->get('OX_Dal_Maintenance_Statistics');
         $message = '- Managing (activating/deactivating) campaigns';
         $this->oController->report .= "{$message}.\n";
         OA::debug($message);
         $this->report .= $oDal->manageCampaigns($oDate);
     }
 }
开发者ID:ballistiq,项目名称:revive-adserver,代码行数:16,代码来源:ManageCampaigns.php

示例11: OA_XML_RPC_Client

 function OA_XML_RPC_Client($path, $server, $port = 0, $proxy = '', $proxy_port = 0, $proxy_user = '', $proxy_pass = '')
 {
     if ($aExtensions = OA::getAvailableSSLExtensions()) {
         $this->hasCurl = in_array('curl', $aExtensions);
         $this->hasOpenssl = in_array('openssl', $aExtensions);
     }
     $this->verifyPeer = false;
     // This CA file is reused in openXMarket plugin
     // to setup curl in Zend_Http_Client_Adapter_Curl in same way as here
     $this->caFile = MAX_PATH . '/etc/curl-ca-bundle.crt';
     parent::XML_RPC_Client($path, $server, $port);
 }
开发者ID:villos,项目名称:tree_admin,代码行数:12,代码来源:XmlRpcClient.php

示例12: deriveClassName

 /**
  * A method to derive the class name to instantiate.
  *
  * @return string The name of the class object to create.
  */
 function deriveClassName()
 {
     $aConf = $GLOBALS['_MAX']['CONF'];
     $filename = ucfirst(strtolower($aConf['database']['type']));
     $classname = 'OX_Dal_Maintenance_Statistics_' . $filename;
     $includeFile = LIB_PATH . "/Dal/Maintenance/Statistics/{$filename}.php";
     require_once $includeFile;
     if (!class_exists($classname)) {
         // Unable to include the specified class file - raise error and halt
         OA::debug('Unable to find the "' . $classname . '" class in the "' . $includeFile . '" file.', PEAR_LOG_ERR);
         OA::debug('Aborting script execution', PEAR_LOG_ERR);
         exit;
     }
     return $classname;
 }
开发者ID:akirsch,项目名称:revive-adserver,代码行数:20,代码来源:Factory.php

示例13: pruneBucket

 /**
  * A method to prune a bucket of all records up to and
  * including the timestamp given.
  *
  * @param Date $oEnd   Prune until this interval_start (inclusive).
  * @param Date $oStart Only prune before this interval_start date (inclusive)
  *                     as well. Optional.
  * @return mixed Either the number of rows pruned, or an MDB2_Error objet.
  */
 public function pruneBucket($oBucket, $oEnd, $oStart = null)
 {
     $sTableName = $oBucket->getBucketTableName();
     if (!is_null($oStart)) {
         OA::debug('  - Pruning the ' . $sTableName . ' table for data with operation interval start between ' . $oStart->format('%Y-%m-%d %H:%M:%S') . ' ' . $oStart->tz->getShortName() . ' and ' . $oEnd->format('%Y-%m-%d %H:%M:%S') . ' ' . $oEnd->tz->getShortName(), PEAR_LOG_DEBUG);
     } else {
         OA::debug('  - Pruning the ' . $sTableName . ' table for all data with operation interval start equal to or before ' . $oEnd->format('%Y-%m-%d %H:%M:%S') . ' ' . $oEnd->tz->getShortName(), PEAR_LOG_DEBUG);
     }
     $query = "\n            DELETE FROM\n                {$sTableName}\n            WHERE\n                interval_start <= " . DBC::makeLiteral($oEnd->format('%Y-%m-%d %H:%M:%S'));
     if (!is_null($oStart)) {
         $query .= "\n                AND\n                interval_start >= " . DBC::makeLiteral($oStart->format('%Y-%m-%d %H:%M:%S'));
     }
     $oDbh = OA_DB::singleton();
     return $oDbh->exec($query);
 }
开发者ID:Spark-Eleven,项目名称:revive-adserver,代码行数:24,代码来源:AggregateBucketProcessingStrategyPgsql.php

示例14: raiseError

 /**
  * A method to invoke errors.
  *
  * @static
  * @param mixed $message A string error message, or a {@link PEAR_Error} object.
  * @param integer $type A custom message code - see the {@link setupConstants()} function.
  * @param integer $behaviour Optional behaviour (i.e. PEAR_ERROR_DIE to halt on this error).
  * @return PEAR_Error $error A (@link PEAR_Error} object.
  */
 function raiseError($message, $type = null, $behaviour = null)
 {
     // If fatal
     if ($behaviour == PEAR_ERROR_DIE) {
         // Log fatal message here as execution will stop
         $errorType = MAX::errorConstantToString($type);
         if (!is_string($message)) {
             $message = print_r($message, true);
         }
         OA::debug($type . ' :: ' . $message, PEAR_LOG_EMERG);
         exit;
     }
     $error = PEAR::raiseError($message, $type, $behaviour);
     return $error;
 }
开发者ID:Jaree,项目名称:revive-adserver,代码行数:24,代码来源:Max.php

示例15: testCheckOperationIntervalValue

 /**
  * A method to test the checkOperationIntervalValue() method.
  *
  */
 function testCheckOperationIntervalValue()
 {
     OA::disableErrorHandling();
     for ($i = -1; $i <= 61; $i++) {
         $result = OX_OperationInterval::checkOperationIntervalValue($i);
         if ($i == 1 || $i == 2 || $i == 3 || $i == 4 || $i == 5 || $i == 6 || $i == 10 || $i == 12 || $i == 15 || $i == 20 || $i == 30 || $i == 60) {
             $this->assertTrue($result);
         } else {
             $this->assertTrue(PEAR::isError($result));
         }
         $result = OX_OperationInterval::checkOperationIntervalValue(120);
         $this->assertTrue(PEAR::isError($result));
     }
     OA::enableErrorHandling();
 }
开发者ID:Jaree,项目名称:revive-adserver,代码行数:19,代码来源:OperationInterval.mtc.test.php


注:本文中的OA类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。