2015-02-01 22:17:51 -05:00
< ? php
2015-02-03 00:21:06 -05:00
require ( HESK_PATH . 'hesk_settings.inc.php' );
2015-09-12 00:46:46 -04:00
function executeQuery ( $sql )
{
2015-03-14 01:28:14 -04:00
global $hesk_last_query ;
global $hesk_db_link ;
2015-09-12 00:46:46 -04:00
if ( function_exists ( 'mysqli_connect' )) {
2015-02-04 23:51:12 -05:00
2015-09-12 00:46:46 -04:00
if ( ! $hesk_db_link && ! hesk_dbConnect ()) {
2015-02-04 23:51:12 -05:00
return false ;
}
$hesk_last_query = $sql ;
2015-09-12 00:46:46 -04:00
if ( $res = @ mysqli_query ( $hesk_db_link , $sql )) {
2015-02-04 23:51:12 -05:00
return $res ;
2015-09-12 00:46:46 -04:00
} else {
2015-02-04 23:51:12 -05:00
http_response_code ( 500 );
2016-11-25 15:59:43 -05:00
print " Could not execute query: $sql . MySQL said: " . mysqli_error ( $hesk_db_link );
2015-02-04 23:51:12 -05:00
die ();
}
} else {
2015-09-12 00:46:46 -04:00
if ( ! $hesk_db_link && ! hesk_dbConnect ()) {
2015-02-04 23:51:12 -05:00
return false ;
}
$hesk_last_query = $sql ;
2015-09-12 00:46:46 -04:00
if ( $res = @ mysql_query ( $sql , $hesk_db_link )) {
2015-02-04 23:51:12 -05:00
return $res ;
2015-09-12 00:46:46 -04:00
} else {
2015-02-04 23:51:12 -05:00
http_response_code ( 500 );
2016-11-25 15:59:43 -05:00
print " Could not execute query: $sql . MySQL said: " . mysql_error ();
2015-02-04 23:51:12 -05:00
die ();
}
}
2015-02-03 00:21:06 -05:00
}
2015-10-23 00:19:12 -04:00
// Version 2.5.1
function execute251Scripts ()
{
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` SET `Value` = '2.5.1' WHERE `Key` = 'modsForHeskVersion' " );
2015-10-29 21:49:13 -04:00
}
// Version 2.5.2
function execute252Scripts ()
{
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` SET `Value` = '2.5.2' WHERE `Key` = 'modsForHeskVersion' " );
2015-11-29 20:12:12 -05:00
}
2016-01-09 21:38:25 -05:00
// Version 2.5.3
2016-05-04 23:42:53 -04:00
function execute253Scripts ()
2016-01-09 21:38:25 -05:00
{
2016-05-04 23:42:53 -04:00
global $hesk_settings ;
hesk_dbConnect ();
2016-01-09 21:38:25 -05:00
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` SET `Value` = '2.5.3' WHERE `Key` = 'modsForHeskVersion' " );
2016-02-02 13:22:08 -05:00
}
// Version 2.5.4
function execute254Scripts ()
{
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` SET `Value` = '2.5.4' WHERE `Key` = 'modsForHeskVersion' " );
2016-04-18 19:35:14 -04:00
}
// Version 2.5.5
function execute255Scripts ()
{
2016-04-18 19:37:53 -04:00
updateVersion ( '2.5.5' );
2016-04-18 19:35:14 -04:00
}
function updateVersion ( $version ) {
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` SET `Value` = ' { $version } ' WHERE `Key` = 'modsForHeskVersion' " );
2016-05-04 23:42:53 -04:00
}
2015-11-17 21:27:57 -05:00
// Version 2.6.0
2015-11-29 20:12:12 -05:00
function execute260Scripts ()
{
global $hesk_settings ;
hesk_dbConnect ();
2016-05-04 23:42:53 -04:00
2016-05-05 12:07:35 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('public_api', '0') " );
2015-11-29 21:23:17 -05:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " logging` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR ( 200 ),
`message` MEDIUMTEXT NOT NULL ,
`severity` INT NOT NULL ,
`location` MEDIUMTEXT ,
`timestamp` TIMESTAMP NOT NULL ) ENGINE = MyISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci " );
2015-11-17 22:14:34 -05:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " user_api_tokens` (
2015-11-29 20:12:12 -05:00
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
2015-11-17 22:14:34 -05:00
`user_id` INT NOT NULL ,
`token` VARCHAR ( 500 ) NOT NULL ) ENGINE = MyISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci " );
2015-12-21 13:11:12 -05:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " temp_attachment` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`file_name` VARCHAR ( 255 ) NOT NULL ,
2015-12-22 22:20:30 -05:00
`saved_name` VARCHAR ( 255 ) NOT NULL ,
2015-12-21 13:11:12 -05:00
`size` INT ( 10 ) UNSIGNED NOT NULL ,
`type` ENUM ( '0' , '1' ) NOT NULL ,
`date_uploaded` TIMESTAMP NOT NULL ) ENGINE = MyISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci " );
2016-01-12 21:31:59 -05:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " calendar_event` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
2016-01-16 20:04:12 -05:00
`start` DATETIME ,
`end` DATETIME ,
2016-01-12 21:31:59 -05:00
`all_day` ENUM ( '0' , '1' ) NOT NULL ,
`name` VARCHAR ( 255 ) NOT NULL ,
`location` VARCHAR ( 255 ),
2016-02-13 22:11:20 -05:00
`comments` MEDIUMTEXT ,
2016-02-18 13:28:00 -05:00
`category` INT NOT NULL ) ENGINE = MyISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci " );
2016-02-20 22:22:27 -05:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " calendar_event_reminder` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`user_id` INT NOT NULL ,
`event_id` INT NOT NULL ,
`amount` INT NOT NULL ,
2016-03-28 21:55:09 -04:00
`unit` INT NOT NULL ,
`email_sent` ENUM ( '0' , '1' ) NOT NULL DEFAULT '0' ) ENGINE = MyISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci " );
2016-01-26 13:28:07 -05:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " tickets` ADD COLUMN `due_date` DATETIME " );
2016-04-20 18:38:52 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " tickets` ADD COLUMN `overdue_email_sent` ENUM('0','1') " );
2016-02-14 22:25:55 -05:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories` ADD COLUMN `color` VARCHAR(7) " );
2016-03-03 22:11:40 -05:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories` ADD COLUMN `usage` INT NOT NULL DEFAULT 0 " );
2016-04-21 22:05:45 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " users` ADD COLUMN `notify_overdue_unassigned` ENUM('0', '1') NOT NULL DEFAULT '0' AFTER `notify_note_unassigned` " );
2016-04-25 21:56:52 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " users` ADD COLUMN `default_calendar_view` INT NOT NULL DEFAULT '0' AFTER `notify_note_unassigned` " );
2016-04-24 22:15:07 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('enable_calendar', '1') " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('first_day_of_week', '0') " );
2016-04-25 14:00:52 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('default_calendar_view', 'month') " );
2016-06-07 12:11:25 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` ADD PRIMARY KEY ( `Key` ) " );
2016-06-07 12:19:56 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " statuses` CHANGE `IsNewTicketStatus` `IsNewTicketStatus` INT( 1 ) NOT NULL DEFAULT '0',
CHANGE `IsClosed` `IsClosed` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `IsClosedByClient` `IsClosedByClient` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `IsCustomerReplyStatus` `IsCustomerReplyStatus` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `IsStaffClosedOption` `IsStaffClosedOption` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `IsStaffReopenedStatus` `IsStaffReopenedStatus` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `IsDefaultStaffReplyStatus` `IsDefaultStaffReplyStatus` INT ( 1 ) NOT NULL DEFAULT '0' ,
CHANGE `LockedTicketStatus` `LockedTicketStatus` INT ( 1 ) NOT NULL DEFAULT '0' " );
2016-05-05 12:13:33 -04:00
updateVersion ( '2.6.0' );
2016-06-13 12:18:07 -04:00
}
2016-06-19 22:04:49 -04:00
// Version 2.6.1
function execute261Scripts () {
updateVersion ( '2.6.1' );
}
2016-07-17 16:02:34 -04:00
// Version 2.6.2
function execute262Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " stage_tickets` ADD COLUMN `due_date` DATETIME " );
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " stage_tickets` ADD COLUMN `overdue_email_sent` ENUM('0','1') " );
updateVersion ( '2.6.2' );
}
2016-07-24 22:00:47 -04:00
// Version 2.6.3
function execute263Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '2.6.3' );
}
2016-08-11 00:03:06 -04:00
// Version 2.6.4
function execute264Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '2.6.4' );
2016-11-16 22:06:36 -05:00
}
2016-11-17 21:12:41 -05:00
// Verison 3.0.0 Beta 1
function execute300Beta1Scripts () {
2016-11-16 22:06:36 -05:00
global $hesk_settings ;
hesk_dbConnect ();
$hesk_statuses = executeQuery ( " SELECT * FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " custom_statuses` ORDER BY `order` " );
$next_status_id_rs = executeQuery ( " SELECT MAX(`ID`) AS `last_id` FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " statuses` " );
$next_status_id_row = hesk_dbFetchAssoc ( $next_status_id_rs );
$next_status_id = intval ( $next_status_id_row [ 'last_id' ]) + 1 ;
$next_sort_rs = executeQuery ( " SELECT MAX(`sort`) AS `last_sort` FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " statuses` " );
$next_sort_row = hesk_dbFetchAssoc ( $next_sort_rs );
$next_sort = intval ( $next_sort_row [ 'last_sort' ]) + 10 ;
while ( $row = hesk_dbFetchAssoc ( $hesk_statuses )) {
$closable = $row [ 'can_customers_change' ] == '1' ? 'yes' : 'sonly' ;
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " statuses` (`ID`,
`TextColor` ,
`IsNewTicketStatus` ,
`IsClosed` ,
`IsClosedByClient` ,
`IsCustomerReplyStatus` ,
`IsStaffClosedOption` ,
`IsStaffReopenedStatus` ,
`IsDefaultStaffReplyStatus` ,
`LockedTicketStatus` ,
`IsAutocloseOption` ,
`Closable` ,
`Key` ,
`sort` )
VALUES ( " . $next_status_id . " ,
'#" . $row[' color '] . "' ,
0 ,
0 ,
0 ,
0 ,
0 ,
0 ,
0 ,
0 ,
0 ,
'" . $closable . "' ,
'STORED IN XREF TABLE' ,
" . $next_sort . " ) " );
$languages = json_decode ( $row [ 'name' ]);
foreach ( $languages as $language => $text ) {
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " text_to_status_xref` (`language`, `text`, `status_id`)
VALUES ( '" . $language . "' , '" . $text . "' , " . $next_status_id . " ) " );
}
// Increment the next ID and sort
$next_status_id ++ ;
$next_sort += 10 ;
}
// Migrate user's autorefresh columns to the new autoreload column
// Mods for HESK is in millis; HESK is in seconds.
executeQuery ( " UPDATE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " users` SET `autoreload` = `autorefresh` / 10 " );
// Add the admin_color_scheme setting
2016-11-17 20:20:30 -05:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('admin_color_scheme', 'skin-blue') " );
2016-11-16 22:06:36 -05:00
2016-11-17 21:12:41 -05:00
updateVersion ( '3.0.0 beta 1' );
2016-11-17 20:20:30 -05:00
}
2016-11-18 22:00:39 -05:00
2016-11-30 21:58:24 -05:00
function execute300RC1Scripts () {
2016-11-18 22:00:39 -05:00
global $hesk_settings ;
hesk_dbConnect ();
2016-11-30 21:58:24 -05:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " users` DROP COLUMN `autorefresh` " );
updateVersion ( '3.0.0 RC 1' );
2016-12-31 22:00:43 -05:00
}
function execute300Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.0' );
2017-01-03 22:02:23 -05:00
}
function execute301Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.1' );
2017-01-06 20:59:43 -05:00
}
function execute302Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " stage_tickets`
ADD COLUMN `custom21` MEDIUMTEXT ,
ADD COLUMN `custom22` MEDIUMTEXT ,
ADD COLUMN `custom23` MEDIUMTEXT ,
ADD COLUMN `custom24` MEDIUMTEXT ,
ADD COLUMN `custom25` MEDIUMTEXT ,
ADD COLUMN `custom26` MEDIUMTEXT ,
ADD COLUMN `custom27` MEDIUMTEXT ,
ADD COLUMN `custom28` MEDIUMTEXT ,
ADD COLUMN `custom29` MEDIUMTEXT ,
ADD COLUMN `custom30` MEDIUMTEXT ,
ADD COLUMN `custom31` MEDIUMTEXT ,
ADD COLUMN `custom32` MEDIUMTEXT ,
ADD COLUMN `custom33` MEDIUMTEXT ,
ADD COLUMN `custom34` MEDIUMTEXT ,
ADD COLUMN `custom35` MEDIUMTEXT ,
ADD COLUMN `custom36` MEDIUMTEXT ,
ADD COLUMN `custom37` MEDIUMTEXT ,
ADD COLUMN `custom38` MEDIUMTEXT ,
ADD COLUMN `custom39` MEDIUMTEXT ,
ADD COLUMN `custom40` MEDIUMTEXT ,
ADD COLUMN `custom41` MEDIUMTEXT ,
ADD COLUMN `custom42` MEDIUMTEXT ,
ADD COLUMN `custom43` MEDIUMTEXT ,
ADD COLUMN `custom44` MEDIUMTEXT ,
ADD COLUMN `custom45` MEDIUMTEXT ,
ADD COLUMN `custom46` MEDIUMTEXT ,
ADD COLUMN `custom47` MEDIUMTEXT ,
ADD COLUMN `custom48` MEDIUMTEXT ,
ADD COLUMN `custom49` MEDIUMTEXT ,
ADD COLUMN `custom50` MEDIUMTEXT " );
updateVersion ( '3.0.2' );
2017-01-07 20:49:44 -05:00
}
function execute303Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.3' );
2017-03-12 20:50:54 -04:00
}
2017-03-29 22:11:01 -04:00
function execute304Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.4' );
2017-04-04 12:26:30 -04:00
}
function execute305Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.5' );
2017-04-04 22:31:11 -04:00
}
2017-04-11 12:13:59 -04:00
function execute306Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.6' );
}
2017-04-12 19:36:23 -04:00
function execute307Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.0.7' );
2017-04-12 19:58:30 -04:00
}
2017-03-12 20:50:54 -04:00
function execute310Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " logging` ADD COLUMN `stack_trace` TEXT " );
2017-05-06 22:17:22 -04:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " custom_nav_element`
( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
image_url TEXT ,
font_icon VARCHAR ( 200 ),
2017-05-19 12:52:47 -04:00
place INT NOT NULL ,
2017-05-19 22:08:50 -04:00
url VARCHAR ( 500 ) NOT NULL ,
2017-05-19 12:52:47 -04:00
sort INT NOT NULL ) " );
2017-05-06 22:17:22 -04:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " custom_nav_element_to_text`
( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
nav_element_id INT NOT NULL ,
language VARCHAR ( 200 ) NOT NULL ,
text VARCHAR ( 200 ) NOT NULL ,
subtext VARCHAR ( 200 )) " );
2017-05-30 13:02:39 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories` ADD COLUMN `foreground_color` VARCHAR(7) NOT NULL DEFAULT 'AUTO' " );
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories` ADD COLUMN `display_border_outline` ENUM('0','1') NOT NULL DEFAULT '0' " );
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories` CHANGE `color` `background_color` VARCHAR(7) NOT NULL DEFAULT '#FFFFFF' " );
2017-06-06 13:02:53 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('login_background_type', 'color') " );
2017-06-01 12:56:36 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('login_background', '#d2d6de') " );
2017-06-09 22:39:00 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('login_box_header', 'helpdesk-title') " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('login_box_header_image', '') " );
2017-06-24 16:04:19 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`) VALUES ('api_url_rewrite', '0') " );
2017-05-06 22:17:22 -04:00
2017-06-10 22:29:29 -04:00
// Copy over color presets to the custom values
$theme_preset_rs = executeQuery ( " SELECT `Value` FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` WHERE `Key` = 'admin_color_scheme' " );
if ( hesk_dbNumRows ( $theme_preset_rs ) === 0 ) {
$theme = 'skin-blue' ;
} else {
$theme_preset_row = hesk_dbFetchAssoc ( $theme_preset_rs );
$theme = $theme_preset_row [ 'Value' ];
}
2017-06-11 22:04:19 -04:00
$light_theme = preg_match ( '/.*-light/g' , $theme );
2017-06-10 22:29:29 -04:00
$navbar = array (
'background' => '' ,
2017-06-11 22:04:19 -04:00
'text' => '#fff' ,
'text_hover' => '#fff' ,
2017-06-10 22:29:29 -04:00
'background_hover' => ''
);
$navbar_brand = array (
'background' => '' ,
2017-06-11 22:04:19 -04:00
'text' => '#fff' ,
'text_hover' => '#fff' ,
2017-06-10 22:29:29 -04:00
'background_hover' => ''
);
$sidebar = array (
2017-06-11 22:04:19 -04:00
'background' => $light_theme ? '#f9fafc' : '#222d32' ,
'text' => $light_theme ? '#444' : '#b8c7ce' ,
2017-06-18 21:21:26 -04:00
'text_hover' => $light_theme ? '#444' : '#fff' ,
2017-06-11 22:04:19 -04:00
'background_hover' => $light_theme ? '#f4f4f5' : '#1e282c' ,
2017-06-12 21:51:11 -04:00
'font_weight' => $light_theme ? 'bold' : 'normal'
2017-06-10 22:29:29 -04:00
);
$sidebar_header = array (
2017-06-11 22:04:19 -04:00
'background' => $light_theme ? '#f9fafc' : '#1a2226' ,
'text' => $light_theme ? '#848484' : '#4b646f' ,
2017-06-10 22:29:29 -04:00
);
2017-06-19 22:13:34 -04:00
if ( preg_match ( '/skin-blue.*/' , $theme )) {
2017-06-11 22:04:19 -04:00
$navbar [ 'background' ] = '#3c8dbc' ;
$navbar [ 'background_hover' ] = '#367fa9' ;
$navbar_brand [ 'background' ] = $light_theme ? '#3c8dbc' : '#367fa9' ;
2017-06-12 08:21:28 -04:00
$navbar_brand [ 'background_hover' ] = $light_theme ? '#3b8ab8' : '#357ca5' ;
2017-06-19 22:13:34 -04:00
} elseif ( preg_match ( '/skin-yellow.*/' , $theme )) {
2017-06-11 22:04:19 -04:00
$navbar [ 'background' ] = '#f39c12' ;
$navbar [ 'background_hover' ] = '#da8c10' ;
$navbar_brand [ 'background' ] = $light_theme ? '#f39c12' : '#e08e0b' ;
$navbar_brand [ 'background_hover' ] = $light_theme ? '#f39a0d' : '#db8b0b' ;
2017-06-19 22:13:34 -04:00
} elseif ( preg_match ( '/skin-green.*/' , $theme )) {
2017-06-11 22:04:19 -04:00
$navbar [ 'background' ] = '#00a65a' ;
$navbar [ 'background_hover' ] = '#009551' ;
$navbar_brand [ 'background' ] = $light_theme ? '#00a65a' : '#008d4c' ;
$navbar_brand [ 'background_hover' ] = $light_theme ? '#00a157' : '#008749' ;
2017-06-19 22:13:34 -04:00
} elseif ( preg_match ( '/skin-purple.*/' , $theme )) {
2017-06-11 22:04:19 -04:00
$navbar [ 'background' ] = '#605ca8' ;
$navbar [ 'background_hover' ] = '#565397' ;
$navbar_brand [ 'background' ] = $light_theme ? '#605ca8' : '#555299' ;
$navbar_brand [ 'background_hover' ] = $light_theme ? '#5d59a6' : '#545096' ;
2017-06-19 22:13:34 -04:00
} elseif ( preg_match ( '/skin-red.*/' , $theme )) {
2017-06-11 22:04:19 -04:00
$navbar [ 'background' ] = '#dd4b39' ;
$navbar [ 'background_hover' ] = '#c64333' ;
$navbar_brand [ 'background' ] = $light_theme ? '#dd4b39' : '#d73925' ;
$navbar_brand [ 'background_hover' ] = $light_theme ? '#dc4735' : '#d33724' ;
} else {
$navbar [ 'background' ] = '#fff' ;
$navbar [ 'background_hover' ] = '#eee' ;
2017-06-19 22:13:34 -04:00
$navbar [ 'text_color' ] = '#333' ;
$navbar [ 'text_hover' ] = '#333' ;
2017-06-10 22:29:29 -04:00
2017-06-11 22:04:19 -04:00
$navbar_brand [ 'background' ] = '#fff' ;
$navbar_brand [ 'background_hover' ] = '#fcfcfc' ;
2017-06-19 22:13:34 -04:00
$navbar_brand [ 'text' ] = '#333' ;
$navbar_brand [ 'text_hover' ] = '#333' ;
2017-06-10 22:29:29 -04:00
}
2017-06-11 22:04:19 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
2017-06-12 08:21:28 -04:00
VALUES ( 'admin_navbar_background' , '{$navbar[' background ']}' ) " );
2017-06-11 22:04:19 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
2017-06-12 08:21:28 -04:00
VALUES ( 'admin_navbar_background_hover' , '{$navbar[' background_hover ']}' ) " );
2017-06-11 22:04:19 -04:00
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_text' , '{$navbar[' text ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_text_hover' , '{$navbar[' text_hover ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_brand_background' , '{$navbar_brand[' background ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_brand_background_hover' , '{$navbar_brand[' background_hover ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_brand_text' , '{$navbar_brand[' text ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_navbar_brand_text_hover' , '{$navbar_brand[' text_hover ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_background' , '{$sidebar[' background ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_background_hover' , '{$sidebar[' background_hover ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_text' , '{$sidebar[' text ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_text_hover' , '{$sidebar[' text_hover ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_font_weight' , '{$sidebar[' font_weight ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
VALUES ( 'admin_sidebar_header_background' , '{$sidebar_header[' background ']}' ) " );
executeQuery ( " INSERT INTO ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` (`Key`, `Value`)
2017-06-12 08:21:28 -04:00
VALUES ( 'admin_sidebar_header_text' , '{$sidebar_header[' text ']}' ) " );
2017-06-19 22:13:34 -04:00
executeQuery ( " DELETE FROM ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " settings` WHERE `Key` IN ('rtl', 'admin_color_scheme') " );
2017-06-11 22:04:19 -04:00
2017-05-06 22:17:22 -04:00
updateVersion ( '3.1.0' );
2017-08-12 21:57:41 -04:00
}
function execute311Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
updateVersion ( '3.1.1' );
2017-09-05 22:20:57 -04:00
}
function execute320Scripts () {
global $hesk_settings ;
hesk_dbConnect ();
2017-09-19 08:04:23 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " categories`
2017-09-19 12:49:00 -04:00
ADD COLUMN `mfh_description` TEXT " );
2017-09-18 22:04:50 -04:00
executeQuery ( " ALTER TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " custom_fields`
2017-09-19 12:49:00 -04:00
ADD COLUMN `mfh_description` TEXT " );
2017-09-18 22:04:50 -04:00
// Purge the custom field caches as we're adding a new field
foreach ( $hesk_settings [ 'languages' ] as $key => $value ) {
$language_hash = sha1 ( $key );
hesk_unlink ( HESK_PATH . " cache/cf_ { $language_hash } .cache.php " );
}
2017-09-05 22:20:57 -04:00
2017-09-19 12:49:00 -04:00
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " audit_trail` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
2017-09-19 17:21:07 -04:00
`entity_id` INT NOT NULL ,
`entity_type` VARCHAR ( 50 ) NOT NULL ,
2017-09-19 12:49:00 -04:00
`language_key` VARCHAR ( 100 ) NOT NULL ,
`date` TIMESTAMP NOT NULL ) " );
executeQuery ( " CREATE TABLE ` " . hesk_dbEscape ( $hesk_settings [ 'db_pfix' ]) . " audit_trail_to_replacement_values` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`audit_trail_id` INT NOT NULL ,
`replacement_index` INT NOT NULL ,
`replacement_value` TEXT NOT NULL ) " );
2017-09-05 22:20:57 -04:00
updateVersion ( '3.2.0' );
2016-11-18 22:00:39 -05:00
}