So, issue was in both some note taking and a modification made in the admin/includes/init_includes/init.user_tracking.php file.
a sort function was removed that is needed.
Code:
if (sizeof($installers) > 0) {
$newest_version = $installers[0];
$newest_version = substr($newest_version, 0, -1 * $file_extension_len);
if (version_compare($newest_version, $current_version) > 0) {
foreach ($installers as $installer) {
if (substr($installer, strrpos($installer, '.')) == $file_extension && (preg_match('~^[^\._].*\.php$~i', $installer) > 0 || $installer != 'empty.txt')) {
if (version_compare($newest_version, substr($installer, 0, -1 * $file_extension_len)) >= 0 && version_compare($current_version, substr($installer, 0, -1 * $file_extension_len)) < 0) {
include($module_installer_directory . '/' . $installer);
$current_version = str_replace("_", ".", substr($installer, 0, -1 * $file_extension_len));
$db->Execute("UPDATE " . TABLE_CONFIGURATION . " SET configuration_value = '" . $current_version . "', set_function = 'zen_cfg_select_option(array(\'" . $current_version . "\'),' WHERE configuration_key = 'CONFIG_" . $module_constant . "_VERSION' LIMIT 1;");
$messageStack->add("Installed " . $module_name . " v" . $current_version, 'success');
}
}
}
}
}
modified to:
Code:
if (sizeof($installers) > 0) {
$newest_version = $installers[0];
$newest_version = substr($newest_version, 0, -1 * $file_extension_len);
sort($installers);
if (version_compare($newest_version, $current_version) > 0) {
foreach ($installers as $installer) {
if (substr($installer, strrpos($installer, '.')) == $file_extension && (preg_match('~^[^\._].*\.php$~i', $installer) > 0 || $installer != 'empty.txt')) {
if (version_compare($newest_version, substr($installer, 0, -1 * $file_extension_len)) >= 0 && version_compare($current_version, substr($installer, 0, -1 * $file_extension_len)) < 0) {
include($module_installer_directory . '/' . $installer);
$current_version = str_replace("_", ".", substr($installer, 0, -1 * $file_extension_len));
$db->Execute("UPDATE " . TABLE_CONFIGURATION . " SET configuration_value = '" . $current_version . "', set_function = 'zen_cfg_select_option(array(\'" . $current_version . "\'),' WHERE configuration_key = 'CONFIG_" . $module_constant . "_VERSION' LIMIT 1;");
$messageStack->add("Installed " . $module_name . " v" . $current_version, 'success');
}
}
}
}
}
The scandir function is intended to return the list in descending order. This allows quickly identifying if there is a new version associated. The note next to that action is incorrect identifying that the order is instead ascending. The second sort (missing in the download) is to organize the list to apply the updates in sequence and to prevent running recognized undesirable files. It was a sort of last minute "fix" thinking that by removing it the file was being returned back to more of its original state.