setCurrentExtensionVersion('0.0.0');
// Is the extension installed?
- if ((isExtensionInstalled($ext_name)) && ($ext_mode != 'register')) {
+ if ((isExtensionInstalled($ext_name)) && ($ext_mode != 'setup')) {
// Get extension's version
setCurrentExtensionVersion(getExtensionVersion($ext_name));
} // END - if
// Include the extension file
loadCurrentExtensionInclude();
+ // Load extra mode files
+ loadCurrentExtensionModeInclude();
+
// Is this extension deprecated?
if ((isExtensionDeprecated()) && (!in_array(getExtensionMode(), array('test', 'update', 'deactivate'))) && (isExtensionActive($ext_name))) {
// Deactivate the extension
$processResult = FALSE;
initIncludePool('extension');
- // By default we have no failures
+ // By default there is no failure
enableExtensionReportingFailure();
// Does this extension exists?
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'currName=' . getCurrentExtensionName() . ' - CALLING loadExtension() ...');
- if (loadExtension(getCurrentExtensionName(), 'register', '0.0.0', isExtensionDryRun(), $previousExtension)) {
+ if (loadExtension(getCurrentExtensionName(), 'setup', '0.0.0', isExtensionDryRun(), $previousExtension)) {
// Set current extension name again
setCurrentExtensionName($ext_name);
} // END - if
// Switch back to register mode
- setExtensionMode('register');
+ setExtensionMode('setup');
// Remains true if extension registration reports no failures
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'currName=' . getCurrentExtensionName() . ',processResult=' . intval($processResult));
* Use the insert id as extension id and "cache" all data for
* this extension for early usage.
*/
- copyExtensionDataToCacheArray($currentName, SQL_INSERTID());
+ copyExtensionDataToCacheArray($currentName, SQL_INSERT_ID());
// Mark it as installed
$GLOBALS['ext_is_installed'][$currentName] = TRUE;
// Is this the sql_patches?
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'id=' . $ext_id . ',currName=' . getCurrentExtensionName() . ',loadMode=' . $load_mode);
- if ((getCurrentExtensionName() == 'sql_patches') && (($load_mode == 'register') || ($load_mode == 'remove'))) {
+ if ((getCurrentExtensionName() == 'sql_patches') && (($load_mode == 'setup') || ($load_mode == 'remove'))) {
// Then redirect to logout
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, ': LOAD!');
redirectToUrl('modules.php?module=admin&logout=1&' . $load_mode . '=sql_patches');
$data['task_id'] = NULL;
// Search for extension task's id
- $result = SQL_QUERY_ESC("SELECT `id` AS task_id FROM `{?_MYSQL_PREFIX?}_task_system` WHERE `task_type`='EXTENSION' AND `subject`='[%s:]' LIMIT 1",
+ $result = SQL_QUERY_ESC("SELECT `id` AS `task_id` FROM `{?_MYSQL_PREFIX?}_task_system` WHERE `task_type`='EXTENSION' AND `subject`='[%s:]' LIMIT 1",
array($ext_name), __FUNCTION__, __LINE__);
// Entry found?
$data['task_id'] = '0';
// Search for task id
- $result = SQL_QUERY_ESC("SELECT `id` AS task_id FROM `{?_MYSQL_PREFIX?}_task_system` WHERE `subject` LIKE '%s%%' LIMIT 1",
+ $result = SQL_QUERY_ESC("SELECT `id` AS `task_id` FROM `{?_MYSQL_PREFIX?}_task_system` WHERE `subject` LIKE '%s%%' LIMIT 1",
array($subject), __FUNCTION__, __LINE__);
// Entry found?
loadInclude($INC);
}
+// Load current extension's mode include file
+function loadCurrentExtensionModeInclude () {
+ // Generate INC name
+ $INC = sprintf("inc/extensions/%s/mode-%s.php", getCurrentExtensionName(), getExtensionMode());
+
+ // Is the include readable?
+ if (isIncludeReadable($INC)) {
+ // Load it as it is optional
+ loadInclude($INC);
+ } // END - if
+}
+
// Checks whether an extension is readable
function isExtensionIncludeReadable ($ext_name = '') {
// If empty, use current
$add = '';
// Is the extension equal or newer 0.8.9?
- if (((isInstallationPhase()) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (isExtensionInstalledAndNewer('sql_patches', '0.8.9'))) {
+ if (((isInstallationPhase()) && ((getExtensionMode() == 'setup') || (getExtensionMode() == 'update'))) || (isExtensionInstalledAndNewer('sql_patches', '0.8.9'))) {
// Then add provider
$add = " AND `account_provider`='EXTENSION'";
} // END - if
// Is the 'subject' there?
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'ifSqlTableExists(points_data)=' . ifSqlTableExists('points_data') . ',getExtensionMode()=' . getExtensionMode() . ',add=' . $add);
- if (((!ifSqlTableExists('points_data')) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (countSumTotalData($subject, 'points_data', 'id', 'subject', TRUE, $add) == 0)) {
+ if (((!ifSqlTableExists('points_data')) && ((getExtensionMode() == 'setup') || (getExtensionMode() == 'update'))) || (countSumTotalData($subject, 'points_data', 'id', 'subject', TRUE, $add) == 0)) {
// Not found so:
if ((!isInstallationPhase()) && (isset($GLOBALS['previous_extension'][getCurrentExtensionName()])) && (!ifSqlTableExists('points_data'))) {
// This may happen (but when?)
} // END - if
// With or without account_provider?
- if (((isInstallationPhase()) && ((getExtensionMode() == 'register') || (getExtensionMode() == 'update'))) || (isExtensionInstalledAndNewer('sql_patches', '0.8.9'))) {
+ if (((isInstallationPhase()) && ((getExtensionMode() == 'setup') || (getExtensionMode() == 'update'))) || (isExtensionInstalledAndNewer('sql_patches', '0.8.9'))) {
// Add account_provider
addExtensionSql(sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`, `column_name`, `locked_mode`, `payment_method`, `account_provider`) VALUES ('%s','%s','%s','%s','EXTENSION')",
$subject,