$search = substr($search, 0, -4);
} // END - if
+ // Is ext-sql_patches installed?
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'isExtensionInstalledAndNewer()=' . intval(isExtensionInstalledAndNewer('sql_patches', '0.2.3')) . ',youre_here=' . getConfig('youre_here') . ',isAdmin()=' . intval(isAdmin()) . ',modCheck=' . $modCheck);
if (((isExtensionInstalledAndNewer('sql_patches', '0.2.3')) && (getConfig('youre_here') == 'Y')) || ((isAdmin()) && ($modCheck == 'admin'))) {
// Output HTML code
$OUT = $prefix . '<strong><a class="you_are_here" href="{%url=modules.php?module=' . $modCheck . '&' . $type . '=' . $search . $LINK_ADD . '%}">' . getTitleFromMenu($accessLevel, $search, $type, $ADD) . '</a></strong>';
// Can we close the you-are-here navigation?
- //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'type=' . $type . 'getWhat()=' . getWhat());
- if (($type == 'what') || (($type == 'action') && ((!isWhatSet()) || (getWhat() == 'welcome')))) {
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'type=' . $type . ',getWhat()=' . getWhat() . ',isWhatSet()=' . intval(isWhatSet()));
+ if (($type == 'what') || (($type == 'action') && (!isWhatSet()))) {
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'type=' . $type);
// Add closing div and br-tag
$GLOBALS['nav_depth'] = '0';
// Secure userid
$value = bigintval($value);
- // Set it here
- setCurrentUserId($value);
-
// Don't look for invalid userids...
if (!isValidUserId($value)) {
// Invalid, so abort here
$data['cat'] = '{--_CATEGORY_NONE--}';
} elseif ($cid > 0) {
// Lookup the category in database
- $result = SQL_QUERY_ESC("SELECT `cat` FROM `{?_MYSQL_PREFIX?}_cats` WHERE `id`=%s LIMIT 1",
+ $result = SQL_QUERY_ESC('SELECT `cat` FROM `{?_MYSQL_PREFIX?}_cats` WHERE `id`=%s LIMIT 1',
array(bigintval($cid)), __FUNCTION__, __LINE__);
if (SQL_NUMROWS($result) == 1) {
// Category found... :-)
}
// Get a string of "mail title" and price back
-function getPaymentTitlePrice ($pid, $full = false) {
- // Default is not found
- $ret = '{--_PAYMENT_404--}';
-
- // Load payment data
- $result = SQL_QUERY_ESC("SELECT `mail_title`,`price` FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=%s LIMIT 1",
- array(
- bigintval($pid)
- ), __FUNCTION__, __LINE__);
-
- // Do we have an entry?
- if (SQL_NUMROWS($result) == 1) {
- // Payment type found... :-)
- $data = SQL_FETCHARRAY($result);
-
- // Only title or also including price?
- if ($full === false) {
- $ret = $data['mail_title'];
- } else {
- $ret = $data['mail_title'] . ' / {%pipe,translateComma=' . $data['price'] . '%} {?POINTS?}';
- }
- } // END - if
-
- // Free result
- SQL_FREERESULT($result);
+function getPaymentTitlePrice ($paymentsId, $full = false) {
+ // Only title or also including price?
+ if ($full === false) {
+ $ret = getPaymentData($paymentsId, 'main_title');
+ } else {
+ $ret = getPaymentData($paymentsId, 'main_title') . ' / {%pipe,getPaymentData,translateComma=' . $paymentsId . '%} {?POINTS?}';
+ }
// Return result
return $ret;
}
-// Get (basicly) the price of given payment id
-function getPaymentPoints ($pid, $lookFor = 'price') {
+// "Getter" for payment data (cached)
+function getPaymentData ($paymentsId, $lookFor = 'price') {
// Default value...
- $data[$lookFor] = -1;
+ $data[$lookFor] = NULL;
- // Search for it in database
- $result = SQL_QUERY_ESC("SELECT `%s` FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=%s LIMIT 1",
- array(
- $lookFor,
- bigintval($pid)
- ), __FUNCTION__, __LINE__);
+ // Do we have cache?
+ if (isset($GLOBALS['cache_array']['payments'][$paymentsId]['id'])) {
+ // Use it if found to save SQL queries
+ $data[$lookFor] = $GLOBALS['cache_array']['payments'][$lookFor][$paymentsId];
- // Is the entry there?
- if (SQL_NUMROWS($result) == 1) {
- // Payment type found... :-)
- $data = SQL_FETCHARRAY($result);
- } // END - if
+ // Update cache hits
+ incrementStatsEntry('cache_hits');
+ } elseif (!isExtensionActive('cache')) {
+ // Search for it in database
+ $result = SQL_QUERY_ESC('SELECT `%s` FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=%s LIMIT 1',
+ array(
+ $lookFor,
+ bigintval($paymentsId)
+ ), __FUNCTION__, __LINE__);
- // Free result
- SQL_FREERESULT($result);
+ // Is the entry there?
+ if (SQL_NUMROWS($result) == 1) {
+ // Payment type found... :-)
+ $data = SQL_FETCHARRAY($result);
+ } // END - if
+
+ // Free result
+ SQL_FREERESULT($result);
+ }
// Return value
return $data[$lookFor];
// Update 'mails_sent' if sql_patches is updated
if (isExtensionInstalledAndNewer('sql_patches', '0.7.4')) {
// Update the pool
- SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_pool` SET `mails_sent`=`mails_sent`+1 WHERE `id`=%s LIMIT 1",
+ SQL_QUERY_ESC('UPDATE `{?_MYSQL_PREFIX?}_pool` SET `mails_sent`=`mails_sent`+1 WHERE `id`=%s LIMIT 1',
array(bigintval($poolId)), __FUNCTION__, __LINE__);
} // END - if
$ret = 'done';
// Count or sum whole table?
if ($countRows === true) {
// Count whole table
- $result = SQL_QUERY_ESC("SELECT COUNT(`%s`) AS `res` FROM `{?_MYSQL_PREFIX?}_%s`" . $add . ' LIMIT 1',
+ $result = SQL_QUERY_ESC('SELECT COUNT(`%s`) AS `res` FROM `{?_MYSQL_PREFIX?}_%s`' . $add . ' LIMIT 1',
array(
$lookFor,
$tableName
), __FUNCTION__, __LINE__);
} else {
// Sum whole table
- $result = SQL_QUERY_ESC("SELECT SUM(`%s`) AS `res` FROM `{?_MYSQL_PREFIX?}_%s`" . $add . ' LIMIT 1',
+ $result = SQL_QUERY_ESC('SELECT SUM(`%s`) AS `res` FROM `{?_MYSQL_PREFIX?}_%s`' . $add . ' LIMIT 1',
array(
$lookFor,
$tableName
$add = '';
// Is the extension equal or newer 0.8.9?
- if (isExtensionInstalledAndNewer('sql_patches', '0.8.9')) {
+ if (((isInstallationPhase()) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (isExtensionInstalledAndNewer('sql_patches', '0.8.9'))) {
// Then add provider
$add = " AND `account_provider`='EXTENSION'";
} // END - if
// Is the 'subject' there?
- if (countSumTotalData($subject, 'points_data', 'id', 'subject', true, $add) == 0) {
- // Not found so add an SQL query
+ if (((!ifSqlTableExists('points_data')) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (countSumTotalData($subject, 'points_data', 'id', 'subject', true, $add) == 0)) {
+ // Not found so:
+ if (isset($GLOBALS['previous_extension'][getCurrentExtensionName()])) {
+ $dummy = $GLOBALS['previous_extension'][getCurrentExtensionName()];
+ reportBug(__FUNCTION__, __LINE__, 'previous_extension[' . gettype($dummy) . ']=' . $dummy . ',getCurrentExtensionName()=' . getCurrentExtensionName() . ' - Under development, please report this!');
+ } // END - if
+
+ // ... add an SQL query
addExtensionSql(sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`,`column_name`,`locked_mode`,`payment_method`) VALUES ('%s','%s','%s','%s')",
$subject,
$columnName,