require($INC);
}
+// Load the extension and maybe found language and function files
+function LOAD_EXTENSION ($ext_name) {
+ global $EXT_LOADED, $_CONFIG, $CSS, $cacheMode;
+
+ // Is the extension already loaded?
+ if (isset($EXT_LOADED[$ext_name])) {
+ // Debug message
+ DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Extension %s already loaded.", $ext_name));
+ return false;
+ }
+
+ // Construct FQFN for extension file
+ $extInclude = sprintf("%sinc/extensions/ext-%s.php", PATH, $ext_name);
+
+ // Is the extension file NOT there?
+ if (!FILE_READABLE($extInclude)) {
+ // Debug message
+ DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Extension %s not found.", $ext_name));
+
+ // Abort here
+ return false;
+ } // END - if
+
+ // Construct FQFN for language file
+ $langInclude = sprintf("%sinc/language/%s_%s.php", PATH, $ext_name, GET_LANGUAGE());
+
+ // Is this include there?
+ if (FILE_READABLE($langInclude)) {
+ // Then load it
+ require($langInclude);
+ } // END - if
+
+ // Construct FQFN for functions file
+ $funcsInclude = sprintf("%sinc/libs/%s_functions.php", PATH, $ext_name);
+
+ // Is this include there?
+ if (FILE_READABLE($funcsInclude)) {
+ // Then load it
+ require($funcsInclude);
+ } // END - if
+
+ // Set extension load mode to nothing (default)
+ $EXT_LOAD_MODE = "";
+
+ // Include the extension file
+ require($extInclude);
+
+ // Mark it as loaded
+ $EXT_LOADED[$ext_name] = true;
+
+ // All fine!
+ return true;
+}
+
//
function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false) {
global $NOTES, $_CONFIG, $INC_POOL, $cacheInstance;
// By default the language prefix is the extension's name
// @TODO: Do we really need this one anymore? Can't we just take $ext_name and done?
- $EXT_LANG_PREFIX = $ext_name;
-
// By default we have no failtures
$EXT_REPORTS_FAILURE = false;
// Bacup version number
$VER_BACKUP = $EXT_VERSION;
- // Backup language as well
- $LANG_BCK = $EXT_LANG_PREFIX;
-
// Save the Parrent $EXT_ALWAYS_ACTIVE for later!
$EXT_ALWAYS_ACTIVE_PARRENT = $EXT_ALWAYS_ACTIVE;
// Restore version number
$EXT_VERSION = $VER_BACKUP;
- // Restore language back
- $EXT_LANG_PREFIX = $LANG_BCK;
-
// Restore $EXT_ALWAYS_ACTIVE with the value from parrent
$EXT_ALWAYS_ACTIVE = $EXT_ALWAYS_ACTIVE_PARRENT;
} else {
} // END - if
// Register extension
- $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_extensions (ext_name, ext_lang_file, ext_active, ext_version) VALUES ('%s','%s','%s','%s')",
- array($ext_name, $EXT_LANG_PREFIX, $EXT_ALWAYS_ACTIVE, $EXT_VERSION), __FILE__, __LINE__);
+ $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_extensions (ext_name, ext_active, ext_version) VALUES ('%s','%s','%s','%s')",
+ array($ext_name, $EXT_ALWAYS_ACTIVE, $EXT_VERSION), __FILE__, __LINE__);
// Update task management
ADMIN_SOLVE_TASK($id);
}
}
}
-//
+
+// Output verbose SQL table for extension
function EXTENSION_VERBOSE_TABLE($SQLs, $title = ADMIN_SQLS_EXECUTED_ON_REMOVAL, $dashed = "", $switch = false, $WIDTH = "480") {
global $_CONFIG;
// Return output
return $OUT;
}
+
// Get extension name from id
function GET_EXT_NAME ($id) {
$ret = "";
}
return $ret;
}
+
// Get extension id from name
function GET_EXT_ID($name) {
$ret = 0;
// Return value
return $ret;
}
+
// Activate given extension
function ACTIVATE_EXTENSION($ext_name) {
// Activate the extension
EXTENSION_RUN_SQLS(GET_EXT_ID($ext_name), "activate");
} // END - if
}
+
// Checks wether the extension is older than given
function EXT_VERSION_IS_OLDER ($ext_name, $ext_ver) {
// Get current extension version
// Now compare both and return the result
return ($currVersion < $ext_ver);
}
-
//
?>