Upgrade - CLI (Manual & Menu): Mitigate PHP 8.x warnings, minor adjustments.

This commit is contained in:
fusionate 2024-05-13 14:19:34 -06:00
parent b369fad190
commit 2d3dca985d
No known key found for this signature in database
10 changed files with 110 additions and 20 deletions

View File

@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
Portions created by the Initial Developer are Copyright (C) 2008-2024
the Initial Developer. All Rights Reserved.
Contributor(s):
@ -799,7 +799,7 @@ if (!class_exists('modules')) {
$xml .= " </modules>\n";
$xml .= "</configuration>";
if (is_writable($_SESSION['switch']['conf']['dir'].'/autoload_configs/modules.conf.xml')) {
if (!empty($_SESSION['switch']['conf']['dir']) && is_writable($_SESSION['switch']['conf']['dir'].'/autoload_configs/modules.conf.xml')) {
$fout = fopen($_SESSION['switch']['conf']['dir']."/autoload_configs/modules.conf.xml","w");
fwrite($fout, $xml);
unset($xml);

View File

@ -136,7 +136,7 @@
$apps[$x]['default_settings'][$y]['default_setting_category'] = "recordings";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "recording_password";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
$apps[$x]['default_settings'][$y]['default_setting_value'] = generate_password((is_numeric($_SESSION['voicemail']['password_length']['numeric']) ? $_SESSION['voicemail']['password_length']['numeric'] : 8), 1);
$apps[$x]['default_settings'][$y]['default_setting_value'] = generate_password(!empty($_SESSION['voicemail']['password_length']['numeric']) && is_numeric($_SESSION['voicemail']['password_length']['numeric']) ? $_SESSION['voicemail']['password_length']['numeric'] : 8, 1);
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the password required to create a recording (overrides recordings dialplan).";

View File

@ -61,7 +61,7 @@
//get the menu array and save it to the session
$menu = new menu;
$menu->menu_uuid = $_SESSION['domain']['menu']['uuid'];
$menu->menu_uuid = $_SESSION['domain']['menu']['uuid'] ?? null;
$_SESSION['menu']['array'] = $menu->menu_array();
unset($menu);

View File

@ -225,6 +225,31 @@ $text['message-optional_apps_upgrade_source']['zh-cn'] = "更新了可选的应
$text['message-optional_apps_upgrade_source']['ja-jp'] = "オプションのアプリケーション ソース ファイルが更新されました";
$text['message-optional_apps_upgrade_source']['ko-kr'] = "선택적 애플리케이션 소스 파일이 업데이트되었습니다.";
$text['message-optional_apps_upgrade_source_cli']['en-us'] = "Updated";
$text['message-optional_apps_upgrade_source_cli']['en-gb'] = "Updated";
$text['message-optional_apps_upgrade_source_cli']['ar-eg'] = "محدث";
$text['message-optional_apps_upgrade_source_cli']['de-at'] = "Aktualisiert";
$text['message-optional_apps_upgrade_source_cli']['de-ch'] = "Aktualisiert";
$text['message-optional_apps_upgrade_source_cli']['de-de'] = "Aktualisiert";
$text['message-optional_apps_upgrade_source_cli']['el-gr'] = "ΕΠΙΚΑΙΡΟΠΟΙΗΜΕΝΟ";
$text['message-optional_apps_upgrade_source_cli']['es-cl'] = "Actualizado";
$text['message-optional_apps_upgrade_source_cli']['es-mx'] = "Actualizado";
$text['message-optional_apps_upgrade_source_cli']['fr-ca'] = "Mis à jour";
$text['message-optional_apps_upgrade_source_cli']['fr-fr'] = "Mis à jour";
$text['message-optional_apps_upgrade_source_cli']['he-il'] = "מְעוּדכָּן";
$text['message-optional_apps_upgrade_source_cli']['it-it'] = "Aggiornato";
$text['message-optional_apps_upgrade_source_cli']['nl-nl'] = "Bijgewerkt";
$text['message-optional_apps_upgrade_source_cli']['pl-pl'] = "Zaktualizowano";
$text['message-optional_apps_upgrade_source_cli']['pt-br'] = "Atualizado";
$text['message-optional_apps_upgrade_source_cli']['pt-pt'] = "Atualizado";
$text['message-optional_apps_upgrade_source_cli']['ro-ro'] = "Actualizat";
$text['message-optional_apps_upgrade_source_cli']['ru-ru'] = "Обновлено";
$text['message-optional_apps_upgrade_source_cli']['sv-se'] = "Uppdaterad";
$text['message-optional_apps_upgrade_source_cli']['uk-ua'] = "Оновлено";
$text['message-optional_apps_upgrade_source_cli']['zh-cn'] = "更新";
$text['message-optional_apps_upgrade_source_cli']['ja-jp'] = "更新しました";
$text['message-optional_apps_upgrade_source_cli']['ko-kr'] = "업데이트됨";
$text['message-upgrade_manually']['en-us'] = "Upgrade Manually";
$text['message-upgrade_manually']['en-gb'] = "Upgrade Manually";
$text['message-upgrade_manually']['ar-eg'] = "الترقية يدويًا";
@ -350,6 +375,56 @@ $text['message-upgrade']['zh-cn'] = "升级完成";
$text['message-upgrade']['ja-jp'] = "アップグレードが完了しました";
$text['message-upgrade']['ko-kr'] = "업그레이드가 완료되었습니다";
$text['message-optional_apps_upgrade_source_failed']['en-us'] = "Optional Apps Source Files Update Failed";
$text['message-optional_apps_upgrade_source_failed']['en-gb'] = "Optional Apps Source Files Update Failed";
$text['message-optional_apps_upgrade_source_failed']['ar-eg'] = "فشل تحديث الملفات المصدرية للتطبيقات الاختيارية";
$text['message-optional_apps_upgrade_source_failed']['de-at'] = "Das Update der optionalen Apps-Quelldateien ist fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed']['de-ch'] = "Das Update der optionalen Apps-Quelldateien ist fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed']['de-de'] = "Das Update der optionalen Apps-Quelldateien ist fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed']['el-gr'] = "Η ενημέρωση αρχείων προέλευσης προαιρετικών εφαρμογών απέτυχε";
$text['message-optional_apps_upgrade_source_failed']['es-cl'] = "Error en la actualización de archivos fuente de aplicaciones opcionales";
$text['message-optional_apps_upgrade_source_failed']['es-mx'] = "Error en la actualización de archivos fuente de aplicaciones opcionales";
$text['message-optional_apps_upgrade_source_failed']['fr-ca'] = "Échec de la mise à jour des fichiers sources des applications facultatives";
$text['message-optional_apps_upgrade_source_failed']['fr-fr'] = "Échec de la mise à jour des fichiers sources des applications facultatives";
$text['message-optional_apps_upgrade_source_failed']['he-il'] = "עדכון קובצי המקור של אפליקציות נכשל";
$text['message-optional_apps_upgrade_source_failed']['it-it'] = "Aggiornamento dei file di origine delle app opzionali non riuscito";
$text['message-optional_apps_upgrade_source_failed']['nl-nl'] = "Update van optionele apps-bronbestanden mislukt";
$text['message-optional_apps_upgrade_source_failed']['pl-pl'] = "Opcjonalna aktualizacja plików źródłowych aplikacji nie powiodła się";
$text['message-optional_apps_upgrade_source_failed']['pt-br'] = "Falha na atualização dos arquivos de origem dos aplicativos opcionais";
$text['message-optional_apps_upgrade_source_failed']['pt-pt'] = "Falha na atualização dos arquivos de origem dos aplicativos opcionais";
$text['message-optional_apps_upgrade_source_failed']['ro-ro'] = "Actualizarea fișierelor sursă a aplicațiilor opționale a eșuat";
$text['message-optional_apps_upgrade_source_failed']['ru-ru'] = "Не удалось обновить исходные файлы дополнительных приложений.";
$text['message-optional_apps_upgrade_source_failed']['sv-se'] = "Uppdatering av valfria appkällfiler misslyckades";
$text['message-optional_apps_upgrade_source_failed']['uk-ua'] = "Помилка оновлення вихідних файлів додаткових програм";
$text['message-optional_apps_upgrade_source_failed']['zh-cn'] = "可选应用程序源文件更新失败";
$text['message-optional_apps_upgrade_source_failed']['ja-jp'] = "オプションのアプリのソース ファイルの更新に失敗しました";
$text['message-optional_apps_upgrade_source_failed']['ko-kr'] = "선택적 앱 소스 파일 업데이트 실패";
$text['message-optional_apps_upgrade_source_failed_cli']['en-us'] = "Failed";
$text['message-optional_apps_upgrade_source_failed_cli']['en-gb'] = "Failed";
$text['message-optional_apps_upgrade_source_failed_cli']['ar-eg'] = "فشل التحديث";
$text['message-optional_apps_upgrade_source_failed_cli']['de-at'] = "Update fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed_cli']['de-ch'] = "Update fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed_cli']['de-de'] = "Update fehlgeschlagen";
$text['message-optional_apps_upgrade_source_failed_cli']['el-gr'] = "Ενημέρωση απέτυχε";
$text['message-optional_apps_upgrade_source_failed_cli']['es-cl'] = "Actualización fallida";
$text['message-optional_apps_upgrade_source_failed_cli']['es-mx'] = "Actualización fallida";
$text['message-optional_apps_upgrade_source_failed_cli']['fr-ca'] = "Mise à jour a échoué";
$text['message-optional_apps_upgrade_source_failed_cli']['fr-fr'] = "Mise à jour a échoué";
$text['message-optional_apps_upgrade_source_failed_cli']['he-il'] = "עדכון נכשל";
$text['message-optional_apps_upgrade_source_failed_cli']['it-it'] = "Aggiornamento non riuscito";
$text['message-optional_apps_upgrade_source_failed_cli']['nl-nl'] = "Update mislukt";
$text['message-optional_apps_upgrade_source_failed_cli']['pl-pl'] = "Atualização falhou";
$text['message-optional_apps_upgrade_source_failed_cli']['pt-br'] = "Atualização falhou";
$text['message-optional_apps_upgrade_source_failed_cli']['pt-pt'] = "Atualização falhou";
$text['message-optional_apps_upgrade_source_failed_cli']['ro-ro'] = "Actualizare esuata";
$text['message-optional_apps_upgrade_source_failed_cli']['ru-ru'] = "Не удалось обновить";
$text['message-optional_apps_upgrade_source_failed_cli']['sv-se'] = "Uppdateringen misslyckades";
$text['message-optional_apps_upgrade_source_failed_cli']['uk-ua'] = "Не вдалося оновити";
$text['message-optional_apps_upgrade_source_failed_cli']['zh-cn'] = "更新失败";
$text['message-optional_apps_upgrade_source_failed_cli']['ja-jp'] = "アップデートに失敗しました";
$text['message-optional_apps_upgrade_source_failed_cli']['ko-kr'] = "업데이트가 실패";
$text['login-message_text']['en-us'] = "Keep up with the FusionPBX project by configuring your preferences in the newly added <a href=''/core/notifications/notification_edit.php''>Notifications</a> section, under the System menu!";
$text['login-message_text']['en-gb'] = "Keep up with the FusionPBX project by configuring your preferences in the newly added <a href=''/core/notifications/notification_edit.php''>Notifications</a> section, under the System menu!";
$text['login-message_text']['ar-eg'] = "حافظ على مشروع (فيوس بي إكس) من خلال تشكيل أفضلياتك في القسم المضاف حديثاً";
@ -1075,8 +1150,8 @@ $text['description-upgrade_permissions']['zh-cn'] = "还原默认组权限。";
$text['description-upgrade_permissions']['ja-jp'] = "デフォルトのグループ許可を復元します。";
$text['description-upgrade_permissions']['ko-kr'] = "기본 그룹 권한을 복원합니다.";
$text['description-upgrade_menu']['en-us'] = "Restores the default items in the selected menu.";
$text['description-upgrade_menu']['en-gb'] = "Restores the default items in the selected menu.";
$text['description-upgrade_menu']['en-us'] = "Restores the default items in the menu.";
$text['description-upgrade_menu']['en-gb'] = "Restores the default items in the menu.";
$text['description-upgrade_menu']['ar-eg'] = "يُعيد بيع المواد الافتراضية في القائمة المختارة";
$text['description-upgrade_menu']['de-at'] = "Setzt die Menüpunkte im ausgewählten Menü auf den Standard zurück.";
$text['description-upgrade_menu']['de-ch'] = "Setzt die Menüpunkte im ausgewählten Menü auf den Standard zurück.";

View File

@ -74,7 +74,7 @@
if (!empty($_POST) && @sizeof($_POST) > 0) {
//get the action options: source, schema, app_defaults, menu_defaults, permisisons
$action = $_POST['action'];
$action = $_POST['action'] ?? null;
//run source update
if (!empty($action["upgrade_source"]) && permission_exists("upgrade_source") && !is_dir("/usr/share/examples/fusionpbx")) {

View File

@ -17,7 +17,7 @@
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2023
Portions created by the Initial Developer are Copyright (C) 2008-2024
the Initial Developer. All Rights Reserved.
Contributor(s):
@ -28,7 +28,7 @@
require dirname(__DIR__, 2) . "/resources/require.php";
//if the config file doesn't exist and the config.php does exist use it to write a new config file
if (!$config_exists && file_exists("/etc/fusionpbx/config.php")) {
if (isset($config_exists) && !$config_exists && file_exists("/etc/fusionpbx/config.php")) {
//include the config.php
include("/etc/fusionpbx/config.php");

View File

@ -111,8 +111,8 @@ function show_upgrade_menu() {
do_upgrade_code();
do_upgrade_schema();
do_upgrade_domains();
do_upgrade_permissions();
do_upgrade_menu();
do_upgrade_permissions();
break;
case 8:
break;
@ -132,9 +132,13 @@ function do_upgrade_code() {
$result = ['result' => false, 'message' => 'Failed'];
//global $conf;
if (defined('PROJECT_ROOT')) {
return git_pull(PROJECT_ROOT);
$result = git_pull(PROJECT_ROOT);
if (!empty($result['message']) && is_array($result['message'])) {
echo implode("\n", $result['message']);
echo "\n";
}
}
return $result;
return;
}
function do_upgrade_code_submodules() {
@ -145,19 +149,19 @@ function do_upgrade_code_submodules() {
foreach ($updateable_repos as $repo => $apps) {
$git_result = git_pull($repo);
if ($git_result['result']) {
$messages[$repo] = $text['message-optional_apps_upgrade_source'] . " " . $git_result['message'];
$messages[$repo] = $text['message-optional_apps_upgrade_source_cli'] . (!empty($git_result['message']) && is_array($git_result['message']) ? ' - '.implode("\n", $git_result['message']) : '');
}
else {
if (is_array($git_result['message'])) {
$message = "ERROR:\n" . implode(' ', $git_result['message']);
if (!empty($git_result['message']) && is_array($git_result['message'])) {
$message = "ERROR:\n" . implode("\n", $git_result['message']);
} else {
$message = $git_result['message'];
}
$messages[$repo] = $text['message-optional_apps_upgrade_source_failed'] . " " . $message;
$messages[$repo] = $text['message-optional_apps_upgrade_source_failed_cli'] . " - " . $message;
}
}
foreach ($messages as $repo => $message) {
echo "$repo: $message\n";
echo $repo.": ".$message."\n";
}
}
@ -200,7 +204,7 @@ function do_upgrade_menu() {
}
//set the menu back to default
if (isset($argv[2]) && (is_null($argv[2]) || $argv[2] == 'default')) {
if (!isset($argv[2]) || $argv[2] == 'default') {
//restore the menu
$included = true;
require_once dirname(__DIR__, 2) . "/core/menu/menu_restore_default.php";

View File

@ -599,6 +599,10 @@ if (!class_exists('domains')) {
*/
public function upgrade() {
//add multi-lingual support
$language = new text;
$text = $language->get(null, 'core/upgrade');
//includes files
require dirname(__DIR__, 2) . "/resources/require.php";
@ -652,6 +656,13 @@ if (!class_exists('domains')) {
$domains_processed++;
}
//output result
if (defined('STDIN')) {
if ($domains_processed > 1) {
echo $text['message-upgrade_apps']."\n";
}
}
} //end upgrade method
/**

View File

@ -756,7 +756,7 @@ if (!class_exists('menu')) {
$sql .= "and menu_item_uuid is not null ";
$sql .= ") ";
$sql .= "order by i.menu_item_order asc ";
$parameters['menu_language'] = $_SESSION['domain']['language']['code'];
$parameters['menu_language'] = $_SESSION['domain']['language']['code'] ?? null;
$parameters['menu_uuid'] = $this->menu_uuid;
$database = new database;
$result = $database->select($sql, $parameters, 'all');

View File

@ -255,7 +255,7 @@ function save_gateway_xml() {
}
function save_var_xml() {
if (is_array($_SESSION['switch']['conf'])) {
if (!empty($_SESSION['switch']['conf']) && is_array($_SESSION['switch']['conf'])) {
global $config, $domain_uuid;
//skip this function if the conf directory is empty