mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2025-12-30 00:53:50 +00:00
Enhance-Multiple messages display (#2702)
Store messages by mood so they can be grouped up change default mood to positive and add a default colour to catch messages with a wrong mood migrate settings so upgrading vs new is consistent
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
Mark J Crane <markjcrane@fusionpbx.com>
|
||||
*/
|
||||
|
||||
//proccess this only one time
|
||||
//process this only one time
|
||||
if ($domains_processed == 1) {
|
||||
//set domains with enabled status of empty or null to true
|
||||
$sql = "update v_domains set domain_enabled = 'true' where domain_enabled = '' or domain_enabled is null";
|
||||
@@ -39,6 +39,23 @@
|
||||
$db->exec(check_sql($sql));
|
||||
unset($sql);
|
||||
}
|
||||
//migrate old domain_settings
|
||||
$sql = "update v_domain_settings ";
|
||||
$sql .= "set domain_setting_value = '#fafafa' ";
|
||||
$sql .= "where domain_setting_subcategory = 'message_default_color' ";
|
||||
$sql .= "and domain_setting_value = '#ccffcc' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
$sql = "update v_domain_settings ";
|
||||
$sql .= "set domain_setting_value = '#666' ";
|
||||
$sql .= "where domain_setting_subcategory = 'message_default_background_color' ";
|
||||
$sql .= "and domain_setting_value = '#004200' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
unset($prep_statement, $sql);
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -24,7 +24,7 @@
|
||||
Mark J Crane <markjcrane@fusionpbx.com>
|
||||
*/
|
||||
|
||||
//proccess this only one time
|
||||
//process this only one time
|
||||
if ($domains_processed == 1) {
|
||||
//update any users set to legacy languages
|
||||
$language = new text;
|
||||
@@ -35,6 +35,23 @@
|
||||
$db->exec(check_sql($sql));
|
||||
unset($sql);
|
||||
}
|
||||
//migrate old user_settings
|
||||
$sql = "update v_user_settings ";
|
||||
$sql .= "set user_setting_value = '#fafafa' ";
|
||||
$sql .= "where user_setting_subcategory = 'message_default_color' ";
|
||||
$sql .= "and user_setting_value = '#ccffcc' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
$sql = "update v_user_settings ";
|
||||
$sql .= "set user_setting_value = '#666' ";
|
||||
$sql .= "where user_setting_subcategory = 'message_default_background_color' ";
|
||||
$sql .= "and user_setting_value = '#004200' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
unset($prep_statement, $sql);
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -29,7 +29,10 @@ if (!class_exists('messages')) {
|
||||
class messages {
|
||||
|
||||
static function add($message, $mood = NULL, $delay = NULL) {
|
||||
$_SESSION["messages"][] = array(message => $message, mood => $mood, delay => $delay);
|
||||
$mood = $mood ?: 'positive';
|
||||
$delay = $delay ?: (1000 * (float) $_SESSION['theme']['message_delay']['text']);
|
||||
$_SESSION["messages"][$mood]['message'][] = $message;
|
||||
$_SESSION["messages"][$mood]['delay'][] = $delay;
|
||||
}
|
||||
|
||||
static function html($clear_messages = true, $spacer = "") {
|
||||
@@ -39,26 +42,18 @@ if (!class_exists('messages')) {
|
||||
self::add($_SESSION['message'], $_SESSION['message_mood'], $_SESSION['message_delay']);
|
||||
unset($_SESSION['message'], $_SESSION['message_mood'], $_SESSION['message_delay']);
|
||||
}
|
||||
if(count($_SESSION['messages']) > 0 ){
|
||||
foreach ($_SESSION['messages'] as $message) {
|
||||
$message_text = addslashes($message['message']);
|
||||
$message_mood = $message['mood'] ?: 'default';
|
||||
$message_delay = $message['delay'];
|
||||
|
||||
$html .= "${spacer}display_message('".str_replace(array("\r\n", "\n", "\r"),'\\n', $message_text)."', '".$message_mood."'";
|
||||
if ($message_delay != '') {
|
||||
$html .= ", '".$message_delay."'";
|
||||
}
|
||||
$html .= ");\n";
|
||||
if(count($_SESSION['messages']) > 0 ) {
|
||||
foreach ($_SESSION['messages'] as $message_mood => $message) {
|
||||
$message_text = str_replace(array("\r\n", "\n", "\r"),'\\n',addslashes(join('<br/>', $message['message'])));
|
||||
$message_delay = array_sum($message['delay'])/count($message['delay']);
|
||||
$html .= "${spacer}display_message('$message_text', '$message_mood', '$message_delay');\n";
|
||||
}
|
||||
}
|
||||
if($clear_messages) {
|
||||
unset($_SESSION['message'], $_SESSION['message_mood'], $_SESSION['message_delay']);
|
||||
unset($_SESSION['messages']);
|
||||
}
|
||||
return $html;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "message_default_background_color";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#ccffcc";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#fafafa";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the background color for the positive (default) message bar.";
|
||||
$y++;
|
||||
@@ -146,10 +146,26 @@
|
||||
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "message_default_color";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#004200";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#666";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the text color for the positive (default) message bar text.";
|
||||
$y++;
|
||||
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "6f399020-565d-11e7-907b-a6006ad3dba0";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "message_positive_background_color";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#ccffcc";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the background color for the positive (positive) message bar.";
|
||||
$y++;
|
||||
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "6f399372-565d-11e7-907b-a6006ad3dba0";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "message_positive_color";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_value'] = "#004200";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the text color for the positive (positive) message bar text.";
|
||||
$y++;
|
||||
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "635387b9-e094-411a-a39c-3055b5cc9347";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
|
||||
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "message_negative_background_color";
|
||||
|
||||
@@ -24,36 +24,54 @@
|
||||
Mark J Crane <markjcrane@fusionpbx.com>
|
||||
*/
|
||||
|
||||
if ($domains_processed == 1) {
|
||||
|
||||
//get the background images
|
||||
$relative_path = PROJECT_PATH.'/themes/default/images/backgrounds';
|
||||
$backgrounds = opendir($_SERVER["DOCUMENT_ROOT"].'/'.$relative_path);
|
||||
unset($array);
|
||||
$x = 0;
|
||||
while (false !== ($file = readdir($backgrounds))) {
|
||||
if ($file != "." AND $file != "..") {
|
||||
$ext = pathinfo($file, PATHINFO_EXTENSION);
|
||||
if ($ext == "png" || $ext == "jpg" || $ext == "jpeg" || $ext == "gif") {
|
||||
$array[$x]['default_setting_category'] = 'theme';
|
||||
$array[$x]['default_setting_subcategory'] = 'background_image';
|
||||
$array[$x]['default_setting_name'] = 'array';
|
||||
$array[$x]['default_setting_value'] = $relative_path.'/'.$file;
|
||||
$array[$x]['default_setting_enabled'] = 'false';
|
||||
$array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
|
||||
$x++;
|
||||
$array[$x]['default_setting_category'] = 'theme';
|
||||
$array[$x]['default_setting_subcategory'] = 'login_background_image';
|
||||
$array[$x]['default_setting_name'] = 'array';
|
||||
$array[$x]['default_setting_value'] = $relative_path.'/'.$file;
|
||||
$array[$x]['default_setting_enabled'] = 'false';
|
||||
$array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
|
||||
$x++;
|
||||
//process this only one time
|
||||
if ($domains_processed == 1) {
|
||||
|
||||
//get the background images
|
||||
$relative_path = PROJECT_PATH.'/themes/default/images/backgrounds';
|
||||
$backgrounds = opendir($_SERVER["DOCUMENT_ROOT"].'/'.$relative_path);
|
||||
unset($array);
|
||||
$x = 0;
|
||||
while (false !== ($file = readdir($backgrounds))) {
|
||||
if ($file != "." AND $file != "..") {
|
||||
$ext = pathinfo($file, PATHINFO_EXTENSION);
|
||||
if ($ext == "png" || $ext == "jpg" || $ext == "jpeg" || $ext == "gif") {
|
||||
$array[$x]['default_setting_category'] = 'theme';
|
||||
$array[$x]['default_setting_subcategory'] = 'background_image';
|
||||
$array[$x]['default_setting_name'] = 'array';
|
||||
$array[$x]['default_setting_value'] = $relative_path.'/'.$file;
|
||||
$array[$x]['default_setting_enabled'] = 'false';
|
||||
$array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
|
||||
$x++;
|
||||
$array[$x]['default_setting_category'] = 'theme';
|
||||
$array[$x]['default_setting_subcategory'] = 'login_background_image';
|
||||
$array[$x]['default_setting_name'] = 'array';
|
||||
$array[$x]['default_setting_value'] = $relative_path.'/'.$file;
|
||||
$array[$x]['default_setting_enabled'] = 'false';
|
||||
$array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
|
||||
$x++;
|
||||
}
|
||||
if ($x > 300) { break; };
|
||||
}
|
||||
if ($x > 300) { break; };
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//migrate old default_settings
|
||||
$sql = "update v_default_settings ";
|
||||
$sql .= "set default_setting_value = '#fafafa' ";
|
||||
$sql .= "where default_setting_subcategory = 'message_default_color' ";
|
||||
$sql .= "and default_setting_value = '#ccffcc' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
$sql = "update v_default_settings ";
|
||||
$sql .= "set default_setting_value = '#666' ";
|
||||
$sql .= "where default_setting_subcategory = 'message_default_background_color' ";
|
||||
$sql .= "and default_setting_value = '#004200' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
if ($prep_statement) {
|
||||
$prep_statement->execute();
|
||||
}
|
||||
unset($prep_statement, $sql);
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@@ -1412,14 +1412,17 @@ $default_login = ($_REQUEST['login'] == 'default') ? true : false;
|
||||
font-size: 10pt;
|
||||
display: block;
|
||||
border-bottom: solid 1px;
|
||||
}
|
||||
|
||||
.message_mood_default {
|
||||
color: <?php echo $_SESSION['theme']['message_default_color']['text']; ?>;
|
||||
background: <?php echo $_SESSION['theme']['message_default_background_color']['text']; ?>;
|
||||
border-bottom-color: <?php echo $_SESSION['theme']['message_default_color']['text']; ?>;
|
||||
}
|
||||
|
||||
.message_mood_positive {
|
||||
color: <?php echo $_SESSION['theme']['message_positive_color']['text']; ?>;
|
||||
background: <?php echo $_SESSION['theme']['message_positive_background_color']['text']; ?>;
|
||||
border-bottom-color: <?php echo $_SESSION['theme']['message_positive_color']['text']; ?>;
|
||||
}
|
||||
|
||||
.message_mood_negative {
|
||||
color: <?php echo $_SESSION['theme']['message_negative_color']['text']; ?>;
|
||||
background: <?php echo $_SESSION['theme']['message_negative_background_color']['text']; ?>;
|
||||
|
||||
@@ -75,11 +75,10 @@
|
||||
message_text.click(function() {
|
||||
var object = $(this);
|
||||
object.clearQueue().finish();
|
||||
object.css({height: '3em'});
|
||||
object.animate({height: '0', 'font-size': '0', 'border-bottom-width': '0'}, 1000).animate({opacity: 0});
|
||||
} );
|
||||
$("#messages_container").append(message_text);
|
||||
message_text.animate({height: '3em'}, 500).animate({opacity: 1}, 'fast').delay(delay).animate({height: '0', 'font-size': '0', 'border-bottom-width': '0'}, 1000).animate({opacity: 0});
|
||||
message_text.animate({opacity: 1}, 'fast').delay(delay).animate({height: '0', 'font-size': '0', 'border-bottom-width': '0'}, 1000).animate({opacity: 0});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user