app_defaults.php 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. /*
  3. FusionPBX
  4. Version: MPL 1.1
  5. The contents of this file are subject to the Mozilla Public License Version
  6. 1.1 (the "License"); you may not use this file except in compliance with
  7. the License. You may obtain a copy of the License at
  8. http://www.mozilla.org/MPL/
  9. Software distributed under the License is distributed on an "AS IS" basis,
  10. WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  11. for the specific language governing rights and limitations under the
  12. License.
  13. The Original Code is FusionPBX
  14. The Initial Developer of the Original Code is
  15. Mark J Crane <[email protected]>
  16. Portions created by the Initial Developer are Copyright (C) 2008-2019
  17. the Initial Developer. All Rights Reserved.
  18. Contributor(s):
  19. Mark J Crane <[email protected]>
  20. */
  21. //process this only one time
  22. if ($domains_processed == 1) {
  23. //get the background images
  24. $relative_path = PROJECT_PATH.'/themes/default/images/backgrounds';
  25. $backgrounds = opendir($_SERVER["DOCUMENT_ROOT"].'/'.$relative_path);
  26. unset($array);
  27. $x = 0;
  28. while (false !== ($file = readdir($backgrounds))) {
  29. if ($file != "." AND $file != "..") {
  30. $ext = pathinfo($file, PATHINFO_EXTENSION);
  31. if ($ext == "png" || $ext == "jpg" || $ext == "jpeg" || $ext == "gif") {
  32. $array[$x]['default_setting_category'] = 'theme';
  33. $array[$x]['default_setting_subcategory'] = 'background_image';
  34. $array[$x]['default_setting_name'] = 'array';
  35. $array[$x]['default_setting_value'] = $relative_path.'/'.$file;
  36. $array[$x]['default_setting_enabled'] = 'false';
  37. $array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
  38. $x++;
  39. $array[$x]['default_setting_category'] = 'theme';
  40. $array[$x]['default_setting_subcategory'] = 'login_background_image';
  41. $array[$x]['default_setting_name'] = 'array';
  42. $array[$x]['default_setting_value'] = $relative_path.'/'.$file;
  43. $array[$x]['default_setting_enabled'] = 'false';
  44. $array[$x]['default_setting_description'] = 'Set a relative path or URL within a selected compatible template.';
  45. $x++;
  46. }
  47. if ($x > 300) { break; };
  48. }
  49. }
  50. //migrate old default_settings
  51. $sql = "update v_default_settings ";
  52. $sql .= "set default_setting_value = '#fafafa' ";
  53. $sql .= "where default_setting_subcategory = 'message_default_color' ";
  54. $sql .= "and default_setting_value = '#ccffcc' ";
  55. $database->execute($sql);
  56. unset($sql);
  57. $sql = "update v_default_settings ";
  58. $sql .= "set default_setting_value = '#666' ";
  59. $sql .= "where default_setting_subcategory = 'message_default_background_color' ";
  60. $sql .= "and default_setting_value = '#004200' ";
  61. $database->execute($sql);
  62. unset($sql);
  63. $sql = "update v_default_settings ";
  64. $sql .= "set default_setting_value = 'true', default_setting_enabled = 'true' ";
  65. $sql .= "where default_setting_subcategory = 'menu_main_icons' ";
  66. $sql .= "and default_setting_value = 'false' ";
  67. $sql .= "and default_setting_enabled = 'false' ";
  68. $database->execute($sql);
  69. unset($sql);
  70. //replace glyphicon icon with v6 font awesome icons for default main menu items
  71. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-house' where menu_item_icon = 'glyphicon-home' ";
  72. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-user' where menu_item_icon = 'glyphicon-user' ";
  73. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-left' where menu_item_icon = 'glyphicon-transfer' ";
  74. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-paper-plane' where menu_item_icon = 'glyphicon-send' ";
  75. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-chart-column' where menu_item_icon = 'glyphicon-equalizer' ";
  76. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-gear' where menu_item_icon = 'glyphicon-cog' ";
  77. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-from-bracket' where menu_item_icon = 'glyphicon-log-out' ";
  78. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-to-bracket' where menu_item_icon = 'glyphicon-log-in' ";
  79. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-up-right-from-square' where menu_item_icon = 'glyphicon-new-window' ";
  80. //replace v5.x font awesome icons with v6.x icons for default main menu items
  81. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-house' where menu_item_icon = 'fa-home' ";
  82. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-user' where menu_item_icon = 'fa-user' ";
  83. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-left' where menu_item_icon = 'fa-exchange-alt' ";
  84. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-paper-plane' where menu_item_icon = 'fa-paper-plane' ";
  85. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-chart-column' where menu_item_icon = 'fa-chart-bar' ";
  86. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-gear' where menu_item_icon = 'fa-cog' ";
  87. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-from-bracket' where menu_item_icon = 'fa-sign-out-alt' ";
  88. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-right-to-bracket' where menu_item_icon = 'fa-sign-in-alt' ";
  89. $queries[] = "update v_menu_items set menu_item_icon = 'fa-solid fa-up-right-from-square' where menu_item_icon = 'fa-external-link-alt' ";
  90. //convert button and other icons in default/domain/user settings to use v6.x font awesome style class prefixes (e.g. 'fa-solid ' instead of 'fas ')
  91. foreach (['default','domain','user'] as $type) {
  92. $queries[] = "update v_".$type."_settings set ".$type."_setting_value = replace(".$type."_setting_value, 'fas ', 'fa-solid ') where ".$type."_setting_category = 'theme' and ".$type."_setting_subcategory like 'button_icon_%' ";
  93. $queries[] = "update v_".$type."_settings set ".$type."_setting_value = concat('fa-solid fa-', ".$type."_setting_value) where ".$type."_setting_category = 'theme' and ".$type."_setting_subcategory like 'body_header_icon_%' and ".$type."_setting_value not like 'fa-solid fa-%' and ".$type."_setting_value not like 'fa-regular fa-%' and ".$type."_setting_value not like 'fa-brands fa-%' ";
  94. $queries[] = "update v_".$type."_settings set ".$type."_setting_value = concat('fa-solid fa-', ".$type."_setting_value) where ".$type."_setting_category = 'theme' and ".$type."_setting_subcategory like 'menu_side_item_main_sub_icon_%' and ".$type."_setting_name = 'text' and ".$type."_setting_value not like 'fa-solid fa-%' and ".$type."_setting_value not like 'fa-regular fa-%' and ".$type."_setting_value not like 'fa-brands fa-%' ";
  95. }
  96. unset($type);
  97. //execute array of queries
  98. foreach ($queries as $sql) {
  99. $database->execute($sql);
  100. }
  101. unset($queries, $sql);
  102. }
  103. ?>