diff --git a/install/migrations/core.php b/install/migrations/core.php index c09834a0..7b9c5979 100644 --- a/install/migrations/core.php +++ b/install/migrations/core.php @@ -61,5 +61,18 @@ function getAllMigrations() { 42 => new \v232\UpdateVersion(), //2.4.0 43 => new \v240\CreateQuickHelpSectionsTable(), + 44 => new \v240\CreateNewStatusNameTable(), + 45 => new \v240\AddDownloadCountToAttachments(), + 46 => new \v240\AddHtmlColumnToTickets(), + 47 => new \v240\UpdateVersion(), + //2.4.1 + 48 => new \v241\UpdateVersion(), + //2.4.2 + 49 => new \v242\UpdateVersion(), + //2.5.0 + 50 => new \v250\MigrateSettingsToDatabase(), + 51 => new \v250\AddUserAgentAndScreenResToTickets(), + 52 => new \v250\AddNavbarTitleUrl(), + 53 => new \v250\UpdateVersion(), ); } \ No newline at end of file diff --git a/install/migrations/v240/AddDownloadCountToAttachments.php b/install/migrations/v240/AddDownloadCountToAttachments.php new file mode 100644 index 00000000..7db1573a --- /dev/null +++ b/install/migrations/v240/AddDownloadCountToAttachments.php @@ -0,0 +1,17 @@ +executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "kb_attachments` ADD COLUMN `download_count` INT NOT NULL DEFAULT 0"); + } + + function down($hesk_settings) { + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "attachments` DROP COLUMN `download_count`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "kb_attachments` DROP COLUMN `download_count`"); + } +} \ No newline at end of file diff --git a/install/migrations/v240/AddHtmlColumnToTickets.php b/install/migrations/v240/AddHtmlColumnToTickets.php new file mode 100644 index 00000000..926df42c --- /dev/null +++ b/install/migrations/v240/AddHtmlColumnToTickets.php @@ -0,0 +1,19 @@ +executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `html` ENUM('0','1') NOT NULL DEFAULT '0'"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `html` ENUM('0','1') NOT NULL DEFAULT '0'"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "replies` ADD COLUMN `html` ENUM('0','1') NOT NULL DEFAULT '0'"); + } + + function down($hesk_settings) { + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` DROP COLUMN `html`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` DROP COLUMN `html`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "replies` DROP COLUMN `html`"); + } +} \ No newline at end of file diff --git a/install/migrations/v240/CreateNewStatusNameTable.php b/install/migrations/v240/CreateNewStatusNameTable.php new file mode 100644 index 00000000..d6666873 --- /dev/null +++ b/install/migrations/v240/CreateNewStatusNameTable.php @@ -0,0 +1,49 @@ +executeQuery("CREATE TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "text_to_status_xref` ( + `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, + `language` VARCHAR(200) NOT NULL, + `text` VARCHAR(200) NOT NULL, + `status_id` INT NOT NULL) ENGINE = MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` ADD COLUMN `sort` INT"); + $statusesRs = $this->executeQuery("SELECT `ID` FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` ORDER BY `ID` ASC"); + $i = 10; + while ($myStatus = hesk_dbFetchAssoc($statusesRs)) { + $this->executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` SET `sort`=" . intval($i) . " + WHERE `id`='" . intval($myStatus['ID']) . "' LIMIT 1"); + $i += 10; + } + + $languages = array(); + foreach ($hesk_settings['languages'] as $key => $value) { + $languages[$key] = $hesk_settings['languages'][$key]['folder']; + } + + $statusesRs = $this->executeQuery("SELECT `ID`, `Key` FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses`"); + $oldSetting = $hesk_settings['can_sel_lang']; + $hesk_settings['can_sel_lang'] = 1; + while ($row = hesk_dbFetchAssoc($statusesRs)) { + foreach ($languages as $language => $languageCode) { + hesk_setLanguage($language); + $sql = "INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "text_to_status_xref` (`language`, `text`, `status_id`) + VALUES ('" . hesk_dbEscape($language) . "', '" . hesk_dbEscape($hesklang[$row['Key']]) . "', " . intval($row['ID']) . ")"; + $this->executeQuery($sql); + } + } + $hesk_settings['can_sel_lang'] = $oldSetting; + hesk_resetLanguage(); + } + + function down($hesk_settings) { + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` DROP COLUMN `sort`"); + $this->executeQuery("DROP TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "text_to_status_xref`"); + } +} \ No newline at end of file diff --git a/install/migrations/v240/UpdateVersion.php b/install/migrations/v240/UpdateVersion.php new file mode 100644 index 00000000..e52f1a09 --- /dev/null +++ b/install/migrations/v240/UpdateVersion.php @@ -0,0 +1,15 @@ +executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) VALUES ('navbar_title_url', '" . hesk_dbEscape($hesk_settings['hesk_url']) . "')"); + } + + function down($hesk_settings) { + $this->executeQuery("DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` WHERE `Key` = 'navbar_title_url'"); + } +} \ No newline at end of file diff --git a/install/migrations/v250/AddUserAgentAndScreenResToTickets.php b/install/migrations/v250/AddUserAgentAndScreenResToTickets.php new file mode 100644 index 00000000..c3bc9778 --- /dev/null +++ b/install/migrations/v250/AddUserAgentAndScreenResToTickets.php @@ -0,0 +1,27 @@ +executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `user_agent` TEXT"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `screen_resolution_width` INT"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `screen_resolution_height` INT"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `user_agent` TEXT"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `screen_resolution_width` INT"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `screen_resolution_height` INT"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) VALUES ('display_user_agent_information', '0')"); + } + + function down($hesk_settings) { + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` DROP COLUMN `user_agent`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` DROP COLUMN `screen_resolution_width`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` DROP COLUMN `screen_resolution_height`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` DROP COLUMN `user_agent`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` DROP COLUMN `screen_resolution_width`"); + $this->executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` DROP COLUMN `screen_resolution_height`"); + $this->executeQuery("DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` WHERE `Key` = 'display_user_agent_information'"); + } +} \ No newline at end of file diff --git a/install/migrations/v250/MigrateSettingsToDatabase.php b/install/migrations/v250/MigrateSettingsToDatabase.php new file mode 100644 index 00000000..38c0a553 --- /dev/null +++ b/install/migrations/v250/MigrateSettingsToDatabase.php @@ -0,0 +1,122 @@ +getSettingValue($modsForHesk_settings, 'rtl', 0); + $show_icons = $this->getSettingValue($modsForHesk_settings, 'show_icons', 0); + $custom_field_setting = $this->getSettingValue($modsForHesk_settings, 'custom_field_setting', 0); + $customer_email_verification_required = $this->getSettingValue($modsForHesk_settings, 'customer_email_verification_required', 0); + $html_emails = $this->getSettingValue($modsForHesk_settings, 'html_emails', 1); + $use_mailgun = $this->getSettingValue($modsForHesk_settings, 'use_mailgun', 0); + $mailgun_api_key = $this->getSettingValue($modsForHesk_settings, 'mailgun_api_key', ''); + $mailgun_domain = $this->getSettingValue($modsForHesk_settings, 'mailgun_domain', ''); + $use_bootstrap_theme = $this->getSettingValue($modsForHesk_settings, 'use_bootstrap_theme', 1); + $new_kb_article_visibility = $this->getSettingValue($modsForHesk_settings, 'new_kb_article_visibility', 0); + $attachments = $this->getSettingValue($modsForHesk_settings, 'attachments', 0); + $show_number_merged = $this->getSettingValue($modsForHesk_settings, 'show_number_merged', 1); + $request_location = $this->getSettingValue($modsForHesk_settings, 'request_location', 0); + $category_order_column = $this->getSettingValue($modsForHesk_settings, 'category_order_column', 'cat_order'); + $rich_text_for_tickets = $this->getSettingValue($modsForHesk_settings, 'rich_text_for_tickets', 0); + $statuses_order_column = $this->getSettingValue($modsForHesk_settings, 'statuses_order_column', 'sort'); + $kb_attach_dir = $this->getSettingValue($modsForHesk_settings, 'kb_attach_dir', 'attachments'); + $rich_text_for_tickets_for_customers = $this->getSettingValue($modsForHesk_settings, 'rich_text_for_tickets_for_customers', 0); + + $navbar_background_color = $this->getSettingValue($modsForHesk_settings, 'navbarBackgroundColor', '#414a5c'); + $navbar_brand_color = $this->getSettingValue($modsForHesk_settings, 'navbarBrandColor', '#d4dee7'); + $navbar_brand_hover_color = $this->getSettingValue($modsForHesk_settings, 'navbarBrandHoverColor', '#ffffff'); + $navbar_item_text_color = $this->getSettingValue($modsForHesk_settings, 'navbarItemTextColor', '#d4dee7'); + $navbar_item_text_hover_color = $this->getSettingValue($modsForHesk_settings, 'navbarItemTextHoverColor', '#ffffff'); + $navbar_item_text_selected_color = $this->getSettingValue($modsForHesk_settings, 'navbarItemTextSelectedColor', '#ffffff'); + $navbar_item_selected_background_color = $this->getSettingValue($modsForHesk_settings, 'navbarItemSelectedBackgroundColor', '#2d3646'); + $dropdown_item_text_color = $this->getSettingValue($modsForHesk_settings, 'dropdownItemTextColor', '#333333'); + $dropdown_item_text_hover_color = $this->getSettingValue($modsForHesk_settings, 'dropdownItemTextHoverColor', '#262626'); + $dropdown_item_text_hover_background_color = $this->getSettingValue($modsForHesk_settings, 'dropdownItemTextHoverBackgroundColor', '#f5f5f5'); + $question_mark_color = $this->getSettingValue($modsForHesk_settings, 'questionMarkColor', '#000000'); + + + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('rtl', " . intval($rtl) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('show_icons', " . intval($show_icons) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('custom_field_setting', " . intval($custom_field_setting) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('customer_email_verification_required', " . intval($customer_email_verification_required) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('html_emails', " . intval($html_emails) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('use_mailgun', " . intval($use_mailgun) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('mailgun_api_key', '" . hesk_dbEscape($mailgun_api_key) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('mailgun_domain', '" . hesk_dbEscape($mailgun_domain) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('use_bootstrap_theme', " . intval($use_bootstrap_theme) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('new_kb_article_visibility', " . intval($new_kb_article_visibility) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('attachments', " . intval($attachments) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('show_number_merged', " . intval($show_number_merged) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('request_location', " . intval($request_location) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('category_order_column', '" . hesk_dbEscape($category_order_column) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('rich_text_for_tickets', " . intval($rich_text_for_tickets) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('statuses_order_column', '" . hesk_dbEscape($statuses_order_column) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('kb_attach_dir', '" . hesk_dbEscape($kb_attach_dir) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('rich_text_for_tickets_for_customers', " . intval($rich_text_for_tickets_for_customers) . ")"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarBackgroundColor', '" . hesk_dbEscape($navbar_background_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarBrandColor', '" . hesk_dbEscape($navbar_brand_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarBrandHoverColor', '" . hesk_dbEscape($navbar_brand_hover_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarItemTextColor', '" . hesk_dbEscape($navbar_item_text_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarItemTextHoverColor', '" . hesk_dbEscape($navbar_item_text_hover_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarItemTextSelectedColor', '" . hesk_dbEscape($navbar_item_text_selected_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('navbarItemSelectedBackgroundColor', '" . hesk_dbEscape($navbar_item_selected_background_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('dropdownItemTextColor', '" . hesk_dbEscape($dropdown_item_text_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('dropdownItemTextHoverColor', '" . hesk_dbEscape($dropdown_item_text_hover_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('dropdownItemTextHoverBackgroundColor', '" . hesk_dbEscape($dropdown_item_text_hover_background_color) . "')"); + $this->executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) + VALUES ('questionMarkColor', '" . hesk_dbEscape($question_mark_color) . "')"); + } + + + + function getSettingValue($settings, $setting, $default) { + return isset($settings[$setting]) ? $settings[$setting] : $default; + } + + function down($hesk_settings) { + $this->executeQuery("DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` + WHERE `Key` IN ('rtl', 'show_icons', 'custom_field_setting', 'customer_email_verification_required', 'html_emails', + 'use_mailgun', 'mailgun_api_key', 'mailgun_domain', 'use_bootstrap_theme', 'new_kb_article_visibility', + 'attachments', 'show_number_merged', 'request_location', 'category_order_column', 'rich_text_for_tickets', + 'statuses_order_column', 'kb_attach_dir', 'rich_text_for_tickets_for_customers', 'navbarBackgroundColor', + 'navbarBrandColor', 'navbarBrandHoverColor', 'navbarItemTextColor', 'navbarItemTextHoverColor', + 'navbarItemTextSelectedColor', 'navbarItemSelectedBackgroundColor', 'dropdownItemTextColor', + 'dropdownItemTextHoverColor', 'dropdownItemTextHoverBackgroundColor', 'questionMarkColor')"); + } +} \ No newline at end of file diff --git a/install/migrations/v250/UpdateVersion.php b/install/migrations/v250/UpdateVersion.php new file mode 100644 index 00000000..a2c8c0d2 --- /dev/null +++ b/install/migrations/v250/UpdateVersion.php @@ -0,0 +1,15 @@ + $value) { - $languages[$key] = $hesk_settings['languages'][$key]['folder']; - } - - $statusesRs = executeQuery("SELECT `ID`, `Key` FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses`"); - $oldSetting = $hesk_settings['can_sel_lang']; - $hesk_settings['can_sel_lang'] = 1; - while ($row = hesk_dbFetchAssoc($statusesRs)) { - foreach ($languages as $language => $languageCode) { - hesk_setLanguage($language); - $sql = "INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "text_to_status_xref` (`language`, `text`, `status_id`) - VALUES ('" . hesk_dbEscape($language) . "', '" . hesk_dbEscape($hesklang[$row['Key']]) . "', " . intval($row['ID']) . ")"; - executeQuery($sql); - } - } - $hesk_settings['can_sel_lang'] = $oldSetting; - hesk_resetLanguage(); -} -// END Version 2.4.0 - -// BEGIN Version 2.4.1 -function execute241Scripts() -{ - global $hesk_settings; - - hesk_dbConnect(); - - executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` SET `Value` = '2.4.1' WHERE `Key` = 'modsForHeskVersion'"); -} -// END Version 2.4.1 - -// Version 2.4.2 -function execute242Scripts() -{ - global $hesk_settings; - - hesk_dbConnect(); - - executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` SET `Value` = '2.4.2' WHERE `Key` = 'modsForHeskVersion'"); -} - -// BEGIN Version 2.5.0 -function migrateSettings() -{ - global $hesk_settings; - - hesk_dbConnect(); - - $modsForHesk_settings = array(); - if (file_exists(HESK_PATH . 'modsForHesk_settings.inc.php')) { - require_once(HESK_PATH . 'modsForHesk_settings.inc.php'); - } - - $rtl = getSettingValue($modsForHesk_settings, 'rtl', 0); - $show_icons = getSettingValue($modsForHesk_settings, 'show_icons', 0); - $custom_field_setting = getSettingValue($modsForHesk_settings, 'custom_field_setting', 0); - $customer_email_verification_required = getSettingValue($modsForHesk_settings, 'customer_email_verification_required', 0); - $html_emails = getSettingValue($modsForHesk_settings, 'html_emails', 1); - $use_mailgun = getSettingValue($modsForHesk_settings, 'use_mailgun', 0); - $mailgun_api_key = getSettingValue($modsForHesk_settings, 'mailgun_api_key', ''); - $mailgun_domain = getSettingValue($modsForHesk_settings, 'mailgun_domain', ''); - $use_bootstrap_theme = getSettingValue($modsForHesk_settings, 'use_bootstrap_theme', 1); - $new_kb_article_visibility = getSettingValue($modsForHesk_settings, 'new_kb_article_visibility', 0); - $attachments = getSettingValue($modsForHesk_settings, 'attachments', 0); - $show_number_merged = getSettingValue($modsForHesk_settings, 'show_number_merged', 1); - $request_location = getSettingValue($modsForHesk_settings, 'request_location', 0); - $category_order_column = getSettingValue($modsForHesk_settings, 'category_order_column', 'cat_order'); - $rich_text_for_tickets = getSettingValue($modsForHesk_settings, 'rich_text_for_tickets', 0); - $statuses_order_column = getSettingValue($modsForHesk_settings, 'statuses_order_column', 'sort'); - $kb_attach_dir = getSettingValue($modsForHesk_settings, 'kb_attach_dir', 'attachments'); - $rich_text_for_tickets_for_customers = getSettingValue($modsForHesk_settings, 'rich_text_for_tickets_for_customers', 0); - - $navbar_background_color = getSettingValue($modsForHesk_settings, 'navbarBackgroundColor', '#414a5c'); - $navbar_brand_color = getSettingValue($modsForHesk_settings, 'navbarBrandColor', '#d4dee7'); - $navbar_brand_hover_color = getSettingValue($modsForHesk_settings, 'navbarBrandHoverColor', '#ffffff'); - $navbar_item_text_color = getSettingValue($modsForHesk_settings, 'navbarItemTextColor', '#d4dee7'); - $navbar_item_text_hover_color = getSettingValue($modsForHesk_settings, 'navbarItemTextHoverColor', '#ffffff'); - $navbar_item_text_selected_color = getSettingValue($modsForHesk_settings, 'navbarItemTextSelectedColor', '#ffffff'); - $navbar_item_selected_background_color = getSettingValue($modsForHesk_settings, 'navbarItemSelectedBackgroundColor', '#2d3646'); - $dropdown_item_text_color = getSettingValue($modsForHesk_settings, 'dropdownItemTextColor', '#333333'); - $dropdown_item_text_hover_color = getSettingValue($modsForHesk_settings, 'dropdownItemTextHoverColor', '#262626'); - $dropdown_item_text_hover_background_color = getSettingValue($modsForHesk_settings, 'dropdownItemTextHoverBackgroundColor', '#f5f5f5'); - $question_mark_color = getSettingValue($modsForHesk_settings, 'questionMarkColor', '#000000'); - - - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('rtl', " . intval($rtl) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('show_icons', " . intval($show_icons) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('custom_field_setting', " . intval($custom_field_setting) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('customer_email_verification_required', " . intval($customer_email_verification_required) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('html_emails', " . intval($html_emails) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('use_mailgun', " . intval($use_mailgun) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('mailgun_api_key', '" . hesk_dbEscape($mailgun_api_key) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('mailgun_domain', '" . hesk_dbEscape($mailgun_domain) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('use_bootstrap_theme', " . intval($use_bootstrap_theme) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('new_kb_article_visibility', " . intval($new_kb_article_visibility) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('attachments', " . intval($attachments) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('show_number_merged', " . intval($show_number_merged) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('request_location', " . intval($request_location) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('category_order_column', '" . hesk_dbEscape($category_order_column) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('rich_text_for_tickets', " . intval($rich_text_for_tickets) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('statuses_order_column', '" . hesk_dbEscape($statuses_order_column) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('kb_attach_dir', '" . hesk_dbEscape($kb_attach_dir) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('rich_text_for_tickets_for_customers', " . intval($rich_text_for_tickets_for_customers) . ")"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarBackgroundColor', '" . hesk_dbEscape($navbar_background_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarBrandColor', '" . hesk_dbEscape($navbar_brand_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarBrandHoverColor', '" . hesk_dbEscape($navbar_brand_hover_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarItemTextColor', '" . hesk_dbEscape($navbar_item_text_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarItemTextHoverColor', '" . hesk_dbEscape($navbar_item_text_hover_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarItemTextSelectedColor', '" . hesk_dbEscape($navbar_item_text_selected_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('navbarItemSelectedBackgroundColor', '" . hesk_dbEscape($navbar_item_selected_background_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('dropdownItemTextColor', '" . hesk_dbEscape($dropdown_item_text_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('dropdownItemTextHoverColor', '" . hesk_dbEscape($dropdown_item_text_hover_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('dropdownItemTextHoverBackgroundColor', '" . hesk_dbEscape($dropdown_item_text_hover_background_color) . "')"); - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) - VALUES ('questionMarkColor', '" . hesk_dbEscape($question_mark_color) . "')"); -} - -function getSettingValue($settings, $setting, $default) -{ - return isset($settings[$setting]) ? $settings[$setting] : $default; -} - -function execute250Scripts() -{ - global $hesk_settings; - - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `user_agent` TEXT"); - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `screen_resolution_width` INT"); - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `screen_resolution_height` INT"); - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `user_agent` TEXT"); - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `screen_resolution_width` INT"); - executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "stage_tickets` ADD COLUMN `screen_resolution_height` INT"); - - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) VALUES ('display_user_agent_information', '0')"); - - executeQuery("INSERT INTO `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` (`Key`, `Value`) VALUES ('navbar_title_url', '" . hesk_dbEscape($hesk_settings['hesk_url']) . "')"); - - executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` SET `Value` = '2.5.0' WHERE `Key` = 'modsForHeskVersion'"); -} -// END Version 2.5.0 - // Version 2.5.1 function execute251Scripts() {