function query($sql) { $ret = OA_Dal_Delivery_query($sql, 'rawDatabase'); if (!$ret) { OA_bucketPrintError('rawDatabase'); } return $ret; }
/** * This function logs the variable data passed in to a tracker impression * * @param array $aVariables An array of the variable IDs and values to be logged. * @param int $trackerId The tracker ID. * @param int $serverConvId The associated conversion ID for these values. * @param string $serverRawIp The associated server identifier for these values. * @return bool True on success, false on failuer. */ function Plugin_deliveryLog_oxLogConversion_logConversionVariable_Delivery_logConversionVariable($aVariables, $trackerId, $serverConvId, $serverRawIp, $okToLog = true) { if (!$okToLog) { return false; } // Initiate the connection to the database (before using mysql_real_escape_string) OA_Dal_Delivery_connect('rawDatabase'); $table = $GLOBALS['_MAX']['CONF']['table']['prefix'] . 'data_bkt_a_var'; if (empty($GLOBALS['_MAX']['NOW'])) { $GLOBALS['_MAX']['NOW'] = time(); } $time = $GLOBALS['_MAX']['NOW']; $aRows = array(); foreach ($aVariables as $aVariable) { $aRows[] = "(\n '" . OX_escapeString($serverConvId) . "',\n '" . OX_escapeString($serverRawIp) . "',\n '{$aVariable['variable_id']}',\n '" . OX_escapeString($aVariable['value']) . "',\n '" . gmdate('Y-m-d H:i:s', $time) . "'\n )"; } if (empty($aRows)) { return; } $query = "\n INSERT INTO\n {$table}\n (\n server_conv_id,\n server_ip,\n tracker_variable_id,\n value,\n date_time\n )\n VALUES " . implode(',', $aRows); return OA_Dal_Delivery_query($query, 'rawDatabase'); }
/** * A function to log conversions. * * @param integer $trackerId The ID of the tracker for which the conversion is to be logged. * @param array $serverRawIp The "raw IP address" value to use for the conversion. * @param array $aConversion An array of the conversion details, as returned from the * MAX_trackerCheckForValidAction() function. * @return array An array... */ function Plugin_deliveryLog_oxLogConversion_logConversion_Delivery_logConversion($trackerId, $serverRawIp, $aConversion, $okToLog = true) { if (!$okToLog) { return false; } // Initiate the connection to the database (before using mysql_real_escape_string) OA_Dal_Delivery_connect('rawDatabase'); $table = $GLOBALS['_MAX']['CONF']['table']['prefix'] . 'data_bkt_a'; if (empty($GLOBALS['_MAX']['NOW'])) { $GLOBALS['_MAX']['NOW'] = time(); } $time = $GLOBALS['_MAX']['NOW']; $aValues = array('server_ip' => $serverRawIp, 'tracker_id' => (int) $trackerId, 'date_time' => gmdate('Y-m-d H:i:s', $time), 'action_date_time' => gmdate('Y-m-d H:i:s', $aConversion['dt']), 'creative_id' => (int) $aConversion['cid'], 'zone_id' => (int) $aConversion['zid'], 'ip_address' => $_SERVER['REMOTE_ADDR'], 'action' => $aConversion['action_type'], 'window' => $aConversion['window'], 'status' => $aConversion['status']); // Need to also escape identifier as "window" is reserved since PgSQL 8.4 $aFields = array_map('OX_escapeIdentifier', array_keys($aValues)); $aValues = array_map('OX_escapeString', $aValues); $query = "\n INSERT INTO\n {$table}\n (" . implode(', ', $aFields) . ")\n VALUES\n ('" . implode("', '", $aValues) . "')\n "; $result = OA_Dal_Delivery_query($query, 'rawDatabase'); if (!$result) { return false; } $aResult = array('server_conv_id' => OA_Dal_Delivery_insertId('rawDatabase', $table, 'server_conv_id'), 'server_raw_ip' => $serverRawIp); return $aResult; }
/** * This function retrieves the last run timestamp from auto maintenance * * @return string The timestamp for the last time auto maintenance ran */ function OA_Dal_Delivery_getMaintenanceInfo() { $conf = $GLOBALS['_MAX']['CONF']; $result = OA_Dal_Delivery_query("\n SELECT\n value AS maintenance_timestamp\n FROM\n " . OX_escapeIdentifier($conf['table']['prefix'] . $conf['table']['application_variable']) . "\n WHERE name = 'maintenance_timestamp'\n "); if (!is_resource($result)) { return defined('OA_DELIVERY_CACHE_FUNCTION_ERROR') ? OA_DELIVERY_CACHE_FUNCTION_ERROR : null; } else { $result = OA_Dal_Delivery_fetchAssoc($result); return $result['maintenance_timestamp']; } }
function OX_bucket_updateTable($tableName, $aQuery, $increment = true, $counter = 'count') { $prefix = $GLOBALS['_MAX']['CONF']['table']['prefix']; $query = OX_bucket_prepareUpdateQuery($prefix . $tableName, $aQuery, $increment, $counter); $result = OA_Dal_Delivery_query($query, 'rawDatabase'); return $result; }
function OA_bucketPrepareDb() { if ($GLOBALS['_MAX']['CONF']['database']['type'] == 'pgsql') { OA_Dal_Delivery_query('SET SESSION synchronous_commit TO OFF', 'rawDatabase'); } }
function OX_bucket_updateTable($tableName, $aQuery, $increment = true, $counter = 'count') { $prefix = $GLOBALS['_MAX']['CONF']['table']['prefix']; $query = OX_bucket_prepareUpdateQuery($prefix . $tableName, $aQuery, $increment, $counter); if (!empty($GLOBALS['_MAX']['CONF']['deliveryLog']['enabled'])) { require_once MAX_PATH . '/lib/OA.php'; OA::debug('updating bucket ' . $query); } $result = OA_Dal_Delivery_query($query, 'rawDatabase'); return $result; }