X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions-functions.php;h=caf01774d27168f6bc077ae68acb7e40fc0b6da7;hp=b7b57b30f150d7aa943965b34dcf19bc1b5f76f9;hb=175b3f506e193d8d791ec6523db42276e296dd0b;hpb=8cab12aa2bd0bd1de03a377b37cd42faae64b0e1 diff --git a/inc/extensions-functions.php b/inc/extensions-functions.php index b7b57b30f1..caf01774d2 100644 --- a/inc/extensions-functions.php +++ b/inc/extensions-functions.php @@ -490,7 +490,7 @@ function doExtensionSqls ($ext_id, $load_mode) { //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'SQLs::count=' . countSqls()); // Are there entries? - if (isSqlsValid()) { + if (ifSqlsRegistered()) { // Run SQL commands... runFilterChain('run_sqls'); } // END - if @@ -677,7 +677,7 @@ function getExtensionVersion ($ext_name, $force = FALSE) { // Count cache hits incrementStatsEntry('cache_hits'); - } elseif ((!isCacheInstanceValid()) || (isset($GLOBALS['cache_array']['extension'])) || (!isHtmlOutputMode())) { + } elseif ((!isValidCacheInstance()) || (isset($GLOBALS['cache_array']['extension'])) || (!isHtmlOutputMode())) { // Load from database $result = sqlQueryEscaped("SELECT * FROM `{?_MYSQL_PREFIX?}_extensions` WHERE `ext_name`='%s' LIMIT 1", array($ext_name), __FUNCTION__, __LINE__); @@ -1920,7 +1920,7 @@ function addDropTableSql ($tableName) { // Adds a RENAME TABLE stament if 'from' table exist and 'to' table not function addRenameTableSql ($fromTable, $toTable) { // Make sure both are not the same - assert($fromTable != $toTable); + assert($fromTable != $toTable, 'fromTable must be different to toTable (' . $fromTable . ')'); // Is renaming required? if ((ifSqlTableExists($fromTable)) && (!ifSqlTableExists($toTable))) { @@ -2059,8 +2059,15 @@ function addSponsorMenuSql ($action, $what, $title, $active, $sort) { // Add ALTER TABLE `foo` ADD sql if not found function addExtensionAddTableColumnSql ($tableName, $columnName, $columnSql) { + // Assert on all + assert((!empty($tableName)) && (!empty($columnName)) && (!empty($columnSql)), 'tableName=' . $tableName . ',columnName=' . $columnName . ',columnSql=' . $columnSql); + assert($columnName != $columnSql . ',columnName=' . $columnName . ' must be non-equal to columnSql'); + // Is the column there? if (!ifSqlTableColumnExists('{?_MYSQL_PREFIX?}_' . $tableName, $columnName, isInstaller())) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $columnName . ',columnSql=' . $columnSql); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` ADD `' . $columnName . '` ' . $columnSql); } elseif (isDebugModeEnabled()) { @@ -2071,8 +2078,15 @@ function addExtensionAddTableColumnSql ($tableName, $columnName, $columnSql) { // Add ALTER TABLE `foo` ADD INDEX sql if not found function addExtensionAddTableIndexSql ($tableName, $indexName, $columnSql) { + // Assert on all + assert((!empty($tableName)) && (!empty($indexName)) && (!empty($columnSql)), 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + assert(($indexName != $columnSql), 'indexName=' . $indexName . ' must be unequal to columnSql'); + // Is the column there? if (!ifSqlTableIndexExist('{?_MYSQL_PREFIX?}_' . $tableName, $indexName, isInstaller())) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` ADD INDEX `' . $indexName . '` ' . $columnSql); } elseif (isDebugModeEnabled()) { @@ -2083,8 +2097,15 @@ function addExtensionAddTableIndexSql ($tableName, $indexName, $columnSql) { // Add ALTER TABLE `foo` ADD UNIQUE INDEX sql if not found function addExtensionAddTableUniqueSql ($tableName, $indexName, $columnSql) { + // Assert on all + assert((!empty($tableName)) && (!empty($indexName)) && (!empty($columnSql)), 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + assert($indexName != $columnSql, 'indexName=' . $indexName . ' must be unequal to columnSql'); + // Is the column there? if (!ifSqlTableIndexExist('{?_MYSQL_PREFIX?}_' . $tableName, $indexName, isInstaller())) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` ADD UNIQUE INDEX `' . $indexName . '` ' . $columnSql); } elseif (isDebugModeEnabled()) { @@ -2095,8 +2116,15 @@ function addExtensionAddTableUniqueSql ($tableName, $indexName, $columnSql) { // Add ALTER TABLE `foo` ADD FULLTEXT sql if not found function addExtensionAddTableFulltextSql ($tableName, $indexName, $columnSql) { + // Assert on all + assert((!empty($tableName)) && (!empty($indexName)) && (!empty($columnSql)), 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + assert($indexName != $columnSql, 'indexName=' . $indexName . ' must be unequal to columnSql'); + // Is the column there and MyISAM engine? (InnoDB doesn't support FULLTEXT) if ((getTableType() == 'MyISAM') && (!ifSqlTableIndexExist('{?_MYSQL_PREFIX?}_' . $tableName, $indexName, isInstaller()))) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',indexName=' . $indexName . ',columnSql=' . $columnSql); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` ADD FULLTEXT `' . $indexName . '` ' . $columnSql); } elseif (isDebugModeEnabled()) { @@ -2107,8 +2135,15 @@ function addExtensionAddTableFulltextSql ($tableName, $indexName, $columnSql) { // Add ALTER TABLE `foo` CHANGE sql if not found function addExtensionChangeTableColumnSql ($tableName, $fromColumnName, $toColumnName, $columnSql) { + // Assert on all + assert((!empty($tableName)) && (!empty($fromColumnName)) && (!empty($toColumnName)) && (!empty($columnSql)), 'tableName=' . $tableName . ',fromColumnName=' . $fromColumnName . ',toColumnName=' . $toColumnName . ',columnSql=' . $columnSql . ' must not be empty.'); + assert(($fromColumnName != $columnSql) && ($toColumnName != $columnSql), 'tableName=' . $tableName . ',fromColumnName=' . $fromColumnName . ',toColumnName=' . $toColumnName . ',columnSql=' . $columnSql . ' must not be equal.'); + // Is the column there? if ((ifSqlTableColumnExists('{?_MYSQL_PREFIX?}_' . $tableName, $fromColumnName)) && (($fromColumnName == $toColumnName) || (!ifSqlTableColumnExists('{?_MYSQL_PREFIX?}_' . $tableName, $toColumnName, isInstaller())))) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',fromColumnName=' . $fromColumnName . ',toColumnName=' . $toColumnName . ',columnSql=' . $columnSql); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` CHANGE `' . $fromColumnName . '` `' . $toColumnName . '` ' . $columnSql); } elseif (isDebugModeEnabled()) { @@ -2119,8 +2154,14 @@ function addExtensionChangeTableColumnSql ($tableName, $fromColumnName, $toColum // Add ALTER TABLE `foo` DROP sql if not found function addExtensionDropTableColumnSql ($tableName, $columnName) { + // Assert on all + assert((!empty($tableName)) && (!empty($columnName)), 'tableName=' . $tableName . ',columnName=' . $columnName . ' must not be empty.'); + // Is the column there? if (ifSqlTableColumnExists('{?_MYSQL_PREFIX?}_' . $tableName, $columnName, isInstaller())) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $columnName); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` DROP `' . $columnName . '`'); } elseif (isDebugModeEnabled()) { @@ -2131,8 +2172,14 @@ function addExtensionDropTableColumnSql ($tableName, $columnName) { // Add ALTER TABLE `foo` DROP INDEX sql if not found function addExtensionDropTableIndexSql ($tableName, $indexName) { + // Assert on all + assert((!empty($tableName)) && (!empty($indexName)) . ',tableName=' . $tableName . ',indexName=' . $indexName . ' must not be empty.'); + // Is the column there? if (ifSqlTableColumnExists('{?_MYSQL_PREFIX?}_' . $tableName, $indexName, isInstaller())) { + // Debug message + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',indexName=' . $indexName); + // Then add it addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_' . $tableName . '` DROP INDEX `' . $indexName . '`'); } elseif (isDebugModeEnabled()) { @@ -2164,6 +2211,10 @@ function addConfigChangeSql ($oldColumnName, $newColumnName, $columnSql) { * extension registration queue. */ function registerExtensionPointsData ($subject, $columnName, $lockedMode, $paymentMethod) { + // Assert on all + assert((!empty($subject)) && (!empty($columnName)) && (!empty($lockedMode)) && (!empty($paymentMethod)), ',subject=' . $subject . ',columnName=' . $columnName . ',lockedMode=' . $lockedMode . ',paymentMethod=' . $paymentMethod . ' must not be empty.'); + assert((in_array($lockedMode, array('LOCKED', 'UNLOCKED'))) && (in_array($paymentMethod, array('DIRECT', 'REFERRAL'))), ',subject=' . $subject . ',columnName=' . $columnName . ',lockedMode=' . $lockedMode . ',paymentMethod=' . $paymentMethod . ' must be valid.'); + // Is the suffix '_ref' not set? if (!ifSubjectHasReferralSuffix($subject)) { // Register this first