Add ability to create multiple dashboards (#7483)

* Add ability to create multiple dashboards

* Create dashboard_widget_list.php

* Create dashboard_widget_edit.php

* Update dashboard_edit.php

* Update dashboard_config_json.php

* Update dashboard.php

* Update app_languages.php

* Update app_defaults.php

* Update app_config.php

* Update dashboard.php

* Create config.php

* Update content.php

* Update icon.php

* Update parent.php

* Update template.php

* Update config.php

* Update config.php

* Update domains.php

* Update config.php

* Update active_calls.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update call_forward.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update domain_limits.php

* Update caller_id.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update registrations.php

* Update ring_group_forward.php

* Update config.php

* Update config.php

* Update switch_status.php

* Update config.php

* Update system_counts.php

* Update system_cpu_status.php

* Update system_disk_usage.php

* Update system_services.php

* Update system_status.php

* Update config.php

* Update config.php

* Update voicemails.php

* Update config.php

* Update missed_calls.php

* Update recent_calls.php

* Update dashboard_widget_edit.php

* Update app_languages.php

* Update dashboard_widget_edit.php

* Update index.php

* Update parent.php
This commit is contained in:
Alex
2025-09-08 16:33:29 -07:00
committed by GitHub
parent a7f4712ceb
commit e8681737dc
54 changed files with 6181 additions and 4812 deletions

View File

@@ -1,93 +1,101 @@
<?php
//new messages
$array['dashboard'][$x]['dashboard_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard'][$x]['dashboard_name'] = 'New Messages';
$array['dashboard'][$x]['dashboard_path'] = 'voicemails/voicemails';
$array['dashboard'][$x]['dashboard_icon'] = 'fa-solid fa-envelope';
$array['dashboard'][$x]['dashboard_icon_color'] = '#bfbfbf';
$array['dashboard'][$x]['dashboard_url'] = '';
$array['dashboard'][$x]['dashboard_target'] = '';
$array['dashboard'][$x]['dashboard_width'] = '';
$array['dashboard'][$x]['dashboard_height'] = '';
$array['dashboard'][$x]['dashboard_content'] = '';
$array['dashboard'][$x]['dashboard_content_text_align'] = '';
$array['dashboard'][$x]['dashboard_content_details'] = '';
$array['dashboard'][$x]['dashboard_chart_type'] = 'icon';
$array['dashboard'][$x]['dashboard_chart_type_options'] = ['number', 'doughnut', 'icon'];
$array['dashboard'][$x]['dashboard_label_enabled'] = 'true';
$array['dashboard'][$x]['dashboard_label_text_color'] = '#444444';
$array['dashboard'][$x]['dashboard_label_text_color_hover'] = '';
$array['dashboard'][$x]['dashboard_label_background_color'] = '';
$array['dashboard'][$x]['dashboard_label_background_color_hover'] = '';
$array['dashboard'][$x]['dashboard_number_text_color'] = '#ffffff';
$array['dashboard'][$x]['dashboard_number_text_color_hover'] = '';
$array['dashboard'][$x]['dashboard_number_background_color'] = '#03c04a';
$array['dashboard'][$x]['dashboard_background_color'] = '#ffffff';
$array['dashboard'][$x]['dashboard_background_color_hover'] = '';
$array['dashboard'][$x]['dashboard_detail_background_color'] = '#ffffff';
$array['dashboard'][$x]['dashboard_column_span'] = '1';
$array['dashboard'][$x]['dashboard_row_span'] = '1';
$array['dashboard'][$x]['dashboard_details_state'] = 'hidden';
$array['dashboard'][$x]['dashboard_order'] = '70';
$array['dashboard'][$x]['dashboard_enabled'] = 'true';
$array['dashboard'][$x]['dashboard_description'] = 'Count the new voicemail messages and list of assigned voicemail boxes.';
$array['dashboard_widgets'][$x]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard_widgets'][$x]['widget_name'] = 'New Messages';
$array['dashboard_widgets'][$x]['widget_path'] = 'voicemails/voicemails';
$array['dashboard_widgets'][$x]['widget_icon'] = 'fa-solid fa-envelope';
$array['dashboard_widgets'][$x]['widget_icon_color'] = '#bfbfbf';
$array['dashboard_widgets'][$x]['widget_url'] = '';
$array['dashboard_widgets'][$x]['widget_target'] = '';
$array['dashboard_widgets'][$x]['widget_width'] = '';
$array['dashboard_widgets'][$x]['widget_height'] = '';
$array['dashboard_widgets'][$x]['widget_content'] = '';
$array['dashboard_widgets'][$x]['widget_content_text_align'] = '';
$array['dashboard_widgets'][$x]['widget_content_details'] = '';
$array['dashboard_widgets'][$x]['widget_chart_type'] = 'icon';
$array['dashboard_widgets'][$x]['widget_chart_type_options'] = ['number', 'doughnut', 'icon'];
$array['dashboard_widgets'][$x]['widget_label_enabled'] = 'true';
$array['dashboard_widgets'][$x]['widget_label_text_color'] = '#444444';
$array['dashboard_widgets'][$x]['widget_label_text_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_label_background_color'] = '';
$array['dashboard_widgets'][$x]['widget_label_background_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_number_text_color'] = '#ffffff';
$array['dashboard_widgets'][$x]['widget_number_text_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_number_background_color'] = '#03c04a';
$array['dashboard_widgets'][$x]['widget_background_color'] = '#ffffff';
$array['dashboard_widgets'][$x]['widget_background_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_detail_background_color'] = '#ffffff';
$array['dashboard_widgets'][$x]['widget_column_span'] = '1';
$array['dashboard_widgets'][$x]['widget_row_span'] = '1';
$array['dashboard_widgets'][$x]['widget_details_state'] = 'hidden';
$array['dashboard_widgets'][$x]['widget_order'] = '70';
$array['dashboard_widgets'][$x]['widget_enabled'] = 'true';
$array['dashboard_widgets'][$x]['widget_description'] = 'Count the new voicemail messages and list of assigned voicemail boxes.';
$y = 0;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '05466c38-88cd-456c-98cd-4cbf323af04f';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'superadmin';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '05466c38-88cd-456c-98cd-4cbf323af04f';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'superadmin';
$y++;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '5320e3a7-255e-49b0-9ff5-172f590dcdf1';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'admin';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '5320e3a7-255e-49b0-9ff5-172f590dcdf1';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'admin';
$y++;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '9052c80b-802f-4111-baa4-202a41ec7ffc';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'user';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '9052c80b-802f-4111-baa4-202a41ec7ffc';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = 'be2aaa22-d8f1-4d9b-b5f9-14a26da329cb';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'user';
$x++;
//voicemails icon
$array['dashboard'][$x]['dashboard_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard'][$x]['dashboard_name'] = 'Voicemails';
$array['dashboard'][$x]['dashboard_path'] = 'dashboard/icon';
$array['dashboard'][$x]['dashboard_icon'] = 'fa-envelope';
$array['dashboard'][$x]['dashboard_url'] = '/app/voicemails/voicemails.php';
$array['dashboard'][$x]['dashboard_target'] = 'self';
$array['dashboard'][$x]['dashboard_width'] = '';
$array['dashboard'][$x]['dashboard_height'] = '';
$array['dashboard'][$x]['dashboard_content'] = '';
$array['dashboard'][$x]['dashboard_content_text_align'] = '';
$array['dashboard'][$x]['dashboard_content_details'] = '';
$array['dashboard'][$x]['dashboard_chart_type'] = '';
$array['dashboard'][$x]['dashboard_label_enabled'] = 'true';
$array['dashboard'][$x]['dashboard_label_text_color'] = '#444444';
$array['dashboard'][$x]['dashboard_label_text_color_hover'] = '';
$array['dashboard'][$x]['dashboard_label_background_color'] = '';
$array['dashboard'][$x]['dashboard_label_background_color_hover'] = '';
$array['dashboard'][$x]['dashboard_number_background_color'] = '';
$array['dashboard'][$x]['dashboard_number_text_color'] = '#5d5ce3';
$array['dashboard'][$x]['dashboard_number_text_color_hover'] = '';
$array['dashboard'][$x]['dashboard_background_color'] = '#ffffff';
$array['dashboard'][$x]['dashboard_background_color_hover'] = '';
$array['dashboard'][$x]['dashboard_detail_background_color'] = '';
$array['dashboard'][$x]['dashboard_column_span'] = '1';
$array['dashboard'][$x]['dashboard_row_span'] = '1';
$array['dashboard'][$x]['dashboard_details_state'] = 'disabled';
$array['dashboard'][$x]['dashboard_order'] = '50';
$array['dashboard'][$x]['dashboard_enabled'] = 'true';
$array['dashboard'][$x]['dashboard_description'] = '';
$array['dashboard_widgets'][$x]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard_widgets'][$x]['widget_name'] = 'Voicemails';
$array['dashboard_widgets'][$x]['widget_path'] = 'dashboard/icon';
$array['dashboard_widgets'][$x]['widget_icon'] = 'fa-envelope';
$array['dashboard_widgets'][$x]['widget_url'] = '/app/voicemails/voicemails.php';
$array['dashboard_widgets'][$x]['widget_target'] = 'self';
$array['dashboard_widgets'][$x]['widget_width'] = '';
$array['dashboard_widgets'][$x]['widget_height'] = '';
$array['dashboard_widgets'][$x]['widget_content'] = '';
$array['dashboard_widgets'][$x]['widget_content_text_align'] = '';
$array['dashboard_widgets'][$x]['widget_content_details'] = '';
$array['dashboard_widgets'][$x]['widget_chart_type'] = '';
$array['dashboard_widgets'][$x]['widget_label_enabled'] = 'true';
$array['dashboard_widgets'][$x]['widget_label_text_color'] = '#444444';
$array['dashboard_widgets'][$x]['widget_label_text_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_label_background_color'] = '';
$array['dashboard_widgets'][$x]['widget_label_background_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_number_background_color'] = '';
$array['dashboard_widgets'][$x]['widget_number_text_color'] = '#5d5ce3';
$array['dashboard_widgets'][$x]['widget_number_text_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_background_color'] = '#ffffff';
$array['dashboard_widgets'][$x]['widget_background_color_hover'] = '';
$array['dashboard_widgets'][$x]['widget_detail_background_color'] = '';
$array['dashboard_widgets'][$x]['widget_column_span'] = '1';
$array['dashboard_widgets'][$x]['widget_row_span'] = '1';
$array['dashboard_widgets'][$x]['widget_details_state'] = 'disabled';
$array['dashboard_widgets'][$x]['widget_order'] = '50';
$array['dashboard_widgets'][$x]['widget_enabled'] = 'true';
$array['dashboard_widgets'][$x]['widget_description'] = '';
$y = 0;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '5cbfb1a3-87fb-4e9a-bc78-fb9a91690b04';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'superadmin';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '5cbfb1a3-87fb-4e9a-bc78-fb9a91690b04';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'superadmin';
$y++;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '53235026-b515-441e-95a4-1ca0d57d2e65';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'admin';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '53235026-b515-441e-95a4-1ca0d57d2e65';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'admin';
$y++;
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_group_uuid'] = '34912b18-603c-4cff-8542-4ef3bc708fc5';
$array['dashboard'][$x]['dashboard_groups'][$y]['dashboard_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard'][$x]['dashboard_groups'][$y]['group_name'] = 'user';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_uuid'] = '3e2cbaa4-2bec-41b2-a626-999a59b8b19c';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_group_uuid'] = '34912b18-603c-4cff-8542-4ef3bc708fc5';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['dashboard_widget_uuid'] = '230f2857-f14a-44cd-9c33-577f26a5ce45';
$array['dashboard_widgets'][$x]['dashboard_widget_groups'][$y]['group_name'] = 'user';
$y++;
?>

View File

@@ -49,10 +49,10 @@
}
}
echo "<div class='hud_content' ".($dashboard_details_state == "disabled" ?: "onclick=\"$('#hud_voicemail_details').slideToggle('fast');\"").">\n";
echo "<div class='hud_content' ".($widget_details_state == "disabled" ?: "onclick=\"$('#hud_voicemail_details').slideToggle('fast');\"").">\n";
echo " <span class='hud_title'><a onclick=\"document.location.href='".PROJECT_PATH."/app/voicemails/voicemail_messages.php'\">".$text['label-new_messages']."</a></span>";
if (isset($dashboard_chart_type) && $dashboard_chart_type == "doughnut") {
if (isset($widget_chart_type) && $widget_chart_type == "doughnut") {
//add doughnut chart
?>
<div class='hud_chart'><canvas id='new_messages_chart'></canvas></div>
@@ -87,7 +87,7 @@
ctx.font = chart_text_size + ' ' + chart_text_font;
ctx.textBaseline = 'middle';
ctx.textAlign = 'center';
ctx.fillStyle = '<?php echo $dashboard_number_text_color; ?>';
ctx.fillStyle = '<?php echo $widget_number_text_color; ?>';
ctx.fillText(options.text, width / 2, top + (height / 2));
ctx.save();
}
@@ -99,21 +99,21 @@
}
//dashboard number
if (!isset($dashboard_chart_type) || $dashboard_chart_type == "number") {
if (!isset($widget_chart_type) || $widget_chart_type == "number") {
echo " <span class='hud_stat'>".$messages['new']."</span>";
}
//dashboard icon
if (!isset($dashboard_chart_type) || $dashboard_chart_type == "icon") {
if (!isset($widget_chart_type) || $widget_chart_type == "icon") {
echo " <div style='position: relative; display: inline-block;'>\n";
echo " <span class='hud_stat'><i class=\"fas ".$dashboard_icon." \"></i></span>\n";
echo " <span style=\"background-color: ".(!empty($dashboard_number_background_color) ? $dashboard_number_background_color : '#03c04a')."; color: ".(!empty($dashboard_number_text_color) ? $dashboard_number_text_color : '#ffffff')."; font-size: 12px; font-weight: bold; text-align: center; position: absolute; top: 23px; left: 24.5px; padding: 2px 7px 1px 7px; border-radius: 10px; white-space: nowrap;\">".$messages['new']."</span>\n";
echo " <span class='hud_stat'><i class=\"fas ".$widget_icon." \"></i></span>\n";
echo " <span style=\"background-color: ".(!empty($widget_number_background_color) ? $widget_number_background_color : '#03c04a')."; color: ".(!empty($widget_number_text_color) ? $widget_number_text_color : '#ffffff')."; font-size: 12px; font-weight: bold; text-align: center; position: absolute; top: 23px; left: 24.5px; padding: 2px 7px 1px 7px; border-radius: 10px; white-space: nowrap;\">".$messages['new']."</span>\n";
echo " </div>\n";
}
echo "</div>\n";
if ($dashboard_details_state != 'disabled') {
if ($widget_details_state != 'disabled') {
echo "<div class='hud_details hud_box' id='hud_voicemail_details'>";
if (!empty($voicemails) && sizeof($voicemails) > 0) {
echo "<table class='tr_hover' cellpadding='2' cellspacing='0' border='0' width='100%'>";