Append to console what is going on during install
This commit is contained in:
parent
7ee62a188d
commit
fe1c483b1f
@ -11,6 +11,9 @@ if (!isset($_GET['v'])) {
|
|||||||
$startingVersion = intval($_GET['v']);
|
$startingVersion = intval($_GET['v']);
|
||||||
|
|
||||||
function echoInitialVersionRows($version) {
|
function echoInitialVersionRows($version) {
|
||||||
|
if ($version < 1) {
|
||||||
|
printRow('Pre-v1.4.0');
|
||||||
|
}
|
||||||
if ($version < 140) {
|
if ($version < 140) {
|
||||||
printRow('v1.4.0');
|
printRow('v1.4.0');
|
||||||
}
|
}
|
||||||
@ -37,6 +40,7 @@ function echoInitialVersionRows($version) {
|
|||||||
function printRow($version) {
|
function printRow($version) {
|
||||||
$versionId = str_replace('.','',$version);
|
$versionId = str_replace('.','',$version);
|
||||||
$versionId = str_replace('v','',$versionId);
|
$versionId = str_replace('v','',$versionId);
|
||||||
|
$versionId = str_replace('Pre-','p',$versionId);
|
||||||
echo '<tr id="row-'.$versionId.'">';
|
echo '<tr id="row-'.$versionId.'">';
|
||||||
echo '<td>'.$version.'</td>';
|
echo '<td>'.$version.'</td>';
|
||||||
echo '<td><i id="spinner-'.$versionId.'" class="fa fa-spinner"></i> <span id="span-'.$versionId.'">Waiting...</span></td>';
|
echo '<td><i id="spinner-'.$versionId.'" class="fa fa-spinner"></i> <span id="span-'.$versionId.'">Waiting...</span></td>';
|
||||||
@ -80,12 +84,11 @@ function printRow($version) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row" id="attention-row" style="display:block">
|
<div class="row" id="attention-row" style="display:none">
|
||||||
<div class="col-sm-12">
|
<div class="col-sm-12">
|
||||||
<div class="panel panel-warning">
|
<div class="panel panel-warning">
|
||||||
<div class="panel-heading">Your Attention is Needed!</div>
|
<div class="panel-heading">Your Attention is Needed!</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body" id="attention-body">
|
||||||
<p>Panel Body</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -94,8 +97,8 @@ function printRow($version) {
|
|||||||
<div class="col-sm-12">
|
<div class="col-sm-12">
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">Console</div>
|
<div class="panel-heading">Console</div>
|
||||||
<div class="panel-body" style="min-height: 400px;max-height: 400px; overflow: auto">
|
<div class="panel-body" style="min-height: 400px;max-height: 400px; overflow: auto;">
|
||||||
<p>CONSOLE</p>
|
<p id="console-text" style="font-family: 'Courier New',monospace;"></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -105,26 +108,47 @@ function printRow($version) {
|
|||||||
</html>
|
</html>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
if ($startingVersion < 1) {
|
||||||
|
echo '<script>startVersionUpgrade(\'p140\')</script>';
|
||||||
|
//executePre140Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'p140\')</script>';
|
||||||
|
}
|
||||||
if ($startingVersion < 140) {
|
if ($startingVersion < 140) {
|
||||||
// Process 140 scripts
|
echo '<script>startVersionUpgrade(\'140\')</script>';
|
||||||
|
//executePre140Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'140\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 141) {
|
if ($startingVersion < 141) {
|
||||||
// Process 141 scripts
|
echo '<script>startVersionUpgrade(\'141\')</script>';
|
||||||
|
//execute141Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'141\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 150) {
|
if ($startingVersion < 150) {
|
||||||
// Process 150 scripts
|
echo '<script>startVersionUpgrade(\'150\')</script>';
|
||||||
|
//execute150Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'150\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 160) {
|
if ($startingVersion < 160) {
|
||||||
// Process 160 scripts
|
echo '<script>startVersionUpgrade(\'160\')</script>';
|
||||||
|
//execute160Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'160\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 161) {
|
if ($startingVersion < 161) {
|
||||||
//Process 161 scripts
|
echo '<script>startVersionUpgrade(\'161\')</script>';
|
||||||
|
//execute161Scripts();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'161\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 170) {
|
if ($startingVersion < 170) {
|
||||||
// Process 170 scripts
|
echo '<script>startVersionUpgrade(\'170\')</script>';
|
||||||
|
//execute170Scripts();
|
||||||
|
//execute170FileUpdate();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'170\')</script>';
|
||||||
}
|
}
|
||||||
if ($startingVersion < 200) {
|
if ($startingVersion < 200) {
|
||||||
// Process 200 scripts
|
echo '<script>startVersionUpgrade(\'200\')</script>';
|
||||||
|
//execute200Scripts();
|
||||||
|
//execute200FileUpdate();
|
||||||
|
echo '<script>markUpdateAsSuccess(\'200\')</script>';
|
||||||
|
//Echo completion message where the warning panel is.
|
||||||
}
|
}
|
||||||
?>
|
?>
|
@ -1,18 +1,40 @@
|
|||||||
<?php
|
<?php
|
||||||
|
require(HESK_PATH . 'hesk_settings.inc.php');
|
||||||
|
|
||||||
|
function appendToConsole($text, $prefix=NULL) {
|
||||||
|
if ($prefix == NULL) {
|
||||||
|
$whatToAppend = $text;
|
||||||
|
} else {
|
||||||
|
$whatToAppend = $prefix.': '.$text;
|
||||||
|
}
|
||||||
|
echo '<script>appendToInstallConsole(\''.$whatToAppend.'\')</script>';
|
||||||
|
}
|
||||||
|
|
||||||
|
function executeQuery($sql) {
|
||||||
|
appendToConsole($sql, 'Executing SQL');
|
||||||
|
return hesk_dbQuery($sql);
|
||||||
|
}
|
||||||
|
|
||||||
// Version 1.0.0 - <1.4.0
|
// Version 1.0.0 - <1.4.0
|
||||||
function executePre140Scripts() {
|
function executePre140Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING PRE-1.4.0 SCRIPTS');
|
||||||
|
appendToConsole('------------------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
//-- Need to do this since we are no longer restricted on IDs and we want an INT for proper INNER JOINs
|
//-- Need to do this since we are no longer restricted on IDs and we want an INT for proper INNER JOINs
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD COLUMN `status_int` INT NOT NULL DEFAULT 0 AFTER `status`");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD COLUMN `status_int` INT NOT NULL DEFAULT 0 AFTER `status`;");
|
||||||
$ticketsRS = hesk_dbQuery("SELECT `id`, `status` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets`");
|
|
||||||
|
$ticketsRS = executeQuery("SELECT `id`, `status` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets`;");
|
||||||
while ($currentResult = $ticketsRS->fetch_assoc())
|
while ($currentResult = $ticketsRS->fetch_assoc())
|
||||||
{
|
{
|
||||||
hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` SET `status_int` = ".$currentResult['status']." WHERE `id` = ".$currentResult['id']);
|
|
||||||
}
|
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` DROP COLUMN `status`");
|
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` CHANGE COLUMN `status_int` `status` INT NOT NULL");
|
|
||||||
|
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (
|
executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` SET `status_int` = ".$currentResult['status']." WHERE `id` = ".$currentResult['id']);
|
||||||
|
}
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` DROP COLUMN `status`");
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` CHANGE COLUMN `status_int` `status` INT NOT NULL");
|
||||||
|
|
||||||
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (
|
||||||
`ID` INT NOT NULL,
|
`ID` INT NOT NULL,
|
||||||
`ShortNameContentKey` TEXT NOT NULL,
|
`ShortNameContentKey` TEXT NOT NULL,
|
||||||
`TicketViewContentKey` TEXT NOT NULL,
|
`TicketViewContentKey` TEXT NOT NULL,
|
||||||
@ -26,33 +48,38 @@ function executePre140Scripts() {
|
|||||||
`IsDefaultStaffReplyStatus` BIT NOT NULL DEFAULT 0,
|
`IsDefaultStaffReplyStatus` BIT NOT NULL DEFAULT 0,
|
||||||
`LockedTicketStatus` BIT NOT NULL DEFAULT 0,
|
`LockedTicketStatus` BIT NOT NULL DEFAULT 0,
|
||||||
PRIMARY KEY (`ID`))");
|
PRIMARY KEY (`ID`))");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (0, 'open', 'open', '#FF0000', 1, 0, 0, 0, 0, 0, 0, 0);");
|
VALUES (0, 'open', 'open', '#FF0000', 1, 0, 0, 0, 0, 0, 0, 0);");
|
||||||
|
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (1, 'wait_reply', 'wait_staff_reply', '#FF9933', 0, 0, 0, 1, 0, 1, 0, 0);");
|
VALUES (1, 'wait_reply', 'wait_staff_reply', '#FF9933', 0, 0, 0, 1, 0, 1, 0, 0);");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (2, 'replied', 'wait_cust_reply', '#0000FF', 0, 0, 0, 0, 0, 0, 1, 0);");
|
VALUES (2, 'replied', 'wait_cust_reply', '#0000FF', 0, 0, 0, 0, 0, 0, 1, 0);");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (3, 'resolved', 'resolved', '#008000', 0, 1, 1, 0, 1, 0, 0, 1);");
|
VALUES (3, 'resolved', 'resolved', '#008000', 0, 1, 1, 0, 1, 0, 0, 1);");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (4, 'in_progress', 'in_progress', '#000000', 0, 0, 0, 0, 0, 0, 0, 0);");
|
VALUES (4, 'in_progress', 'in_progress', '#000000', 0, 0, 0, 0, 0, 0, 0, 0);");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."statuses` (ID, ShortNameContentKey, TicketViewContentKey, TextColor, IsNewTicketStatus, IsClosed, IsClosedByClient, IsCustomerReplyStatus,
|
||||||
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
IsStaffClosedOption, IsStaffReopenedStatus, IsDefaultStaffReplyStatus, LockedTicketStatus)
|
||||||
VALUES (5, 'on_hold', 'on_hold', '#000000', 0, 0, 0, 0, 0, 0, 0, 0);");
|
VALUES (5, 'on_hold', 'on_hold', '#000000', 0, 0, 0, 0, 0, 0, 0, 0);");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Version 1.4.0
|
// Version 1.4.0
|
||||||
function execute140Scripts() {
|
function execute140Scripts() {
|
||||||
hesk_dbConnect();
|
global $hesk_settings;
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `autorefresh` BIGINT NOT NULL DEFAULT 0 AFTER `replies`;");
|
|
||||||
|
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips` (
|
appendToConsole('STARTING 1.4.0 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
|
|
||||||
|
hesk_dbConnect();
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `autorefresh` BIGINT NOT NULL DEFAULT 0 AFTER `replies`;");
|
||||||
|
|
||||||
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips` (
|
||||||
`ID` INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
|
`ID` INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
|
||||||
`RangeStart` VARCHAR(100) NOT NULL,
|
`RangeStart` VARCHAR(100) NOT NULL,
|
||||||
`RangeEnd` VARCHAR(100) NOT NULL)");
|
`RangeEnd` VARCHAR(100) NOT NULL)");
|
||||||
@ -60,44 +87,64 @@ function execute140Scripts() {
|
|||||||
|
|
||||||
// Version 1.4.1
|
// Version 1.4.1
|
||||||
function execute141Scripts() {
|
function execute141Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING 1.4.1 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails` (ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT, Email VARCHAR(100) NOT NULL);");
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails` (ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT, Email VARCHAR(100) NOT NULL);");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD COLUMN `parent` MEDIUMINT(8) NULL AFTER `custom20`;");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD COLUMN `parent` MEDIUMINT(8) NULL AFTER `custom20`;");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Version 1.5.0
|
// Version 1.5.0
|
||||||
function execute150Scripts() {
|
function execute150Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING 1.5.0 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `active` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `active` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `can_manage_settings` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `can_manage_settings` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `default_notify_customer_email` ENUM ('0', '1') NOT NULL DEFAULT '1'");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `default_notify_customer_email` ENUM ('0', '1') NOT NULL DEFAULT '1'");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Version 1.6.0
|
// Version 1.6.0
|
||||||
function execute160Scripts() {
|
function execute160Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING 1.6.0 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `notify_note_unassigned` ENUM('0', '1') NOT NULL DEFAULT '0'");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `notify_note_unassigned` ENUM('0', '1') NOT NULL DEFAULT '0'");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `can_change_notification_settings` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` ADD COLUMN `can_change_notification_settings` ENUM('0', '1') NOT NULL DEFAULT '1'");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` ADD COLUMN `edit_date` DATETIME NULL");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` ADD COLUMN `edit_date` DATETIME NULL");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` ADD COLUMN `number_of_edits` INT NOT NULL DEFAULT 0");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` ADD COLUMN `number_of_edits` INT NOT NULL DEFAULT 0");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` ADD COLUMN `note_id` INT NULL AFTER `ticket_id`");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` ADD COLUMN `note_id` INT NULL AFTER `ticket_id`");
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` MODIFY COLUMN `ticket_id` VARCHAR(13) NULL");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` MODIFY COLUMN `ticket_id` VARCHAR(13) NULL");
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` (`Key` NVARCHAR(200) NOT NULL, `Value` NVARCHAR(200) NOT NULL)");
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` (`Key` NVARCHAR(200) NOT NULL, `Value` NVARCHAR(200) NOT NULL)");
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` (`Key`, `Value`) VALUES ('modsForHeskVersion', '1.6.0')");
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` (`Key`, `Value`) VALUES ('modsForHeskVersion', '1.6.0')");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Version 1.6.1
|
// Version 1.6.1
|
||||||
function execute161Scripts() {
|
function execute161Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING 1.6.1 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '1.6.1' WHERE `Key` = 'modsForHeskVersion'");
|
executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '1.6.1' WHERE `Key` = 'modsForHeskVersion'");
|
||||||
}
|
}
|
||||||
|
|
||||||
// BEGIN Version 1.7.0
|
// BEGIN Version 1.7.0
|
||||||
function execute170Scripts() {
|
function execute170Scripts() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
|
appendToConsole('STARTING 1.7.0 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."verified_emails` (`Email` VARCHAR(255) NOT NULL)");
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."verified_emails` (`Email` VARCHAR(255) NOT NULL)");
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."pending_verification_emails` (`Email` VARCHAR(255) NOT NULL, `ActivationKey` VARCHAR(500) NOT NULL)");
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."pending_verification_emails` (`Email` VARCHAR(255) NOT NULL, `ActivationKey` VARCHAR(500) NOT NULL)");
|
||||||
hesk_dbQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."stage_tickets` (
|
executeQuery("CREATE TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."stage_tickets` (
|
||||||
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
|
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
`trackid` varchar(13) COLLATE utf8_unicode_ci NOT NULL,
|
`trackid` varchar(13) COLLATE utf8_unicode_ci NOT NULL,
|
||||||
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
||||||
@ -148,16 +195,19 @@ function execute170Scripts() {
|
|||||||
KEY `statuses` (`status`),
|
KEY `statuses` (`status`),
|
||||||
KEY `owner` (`owner`)
|
KEY `owner` (`owner`)
|
||||||
)");
|
)");
|
||||||
hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '1.7.0' WHERE `Key` = 'modsForHeskVersion'");
|
executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '1.7.0' WHERE `Key` = 'modsForHeskVersion'");
|
||||||
}
|
}
|
||||||
|
|
||||||
function execute170FileUpdate() {
|
function execute170FileUpdate() {
|
||||||
|
|
||||||
//-- Add the new custom field property to modsForHesk_settings.inc.php
|
//-- Add the new custom field property to modsForHesk_settings.inc.php
|
||||||
$file = file_get_contents(HESK_PATH . 'modsForHesk_settings.inc.php');
|
$file = file_get_contents(HESK_PATH . 'modsForHesk_settings.inc.php');
|
||||||
|
|
||||||
//-- Only add the additional settings if they aren't already there.
|
//-- Only add the additional settings if they aren't already there.
|
||||||
if (strpos($file, 'custom_field_setting') !== true)
|
if (strpos($file, 'custom_field_setting') !== true)
|
||||||
{
|
{
|
||||||
|
appendToConsole('Updating \'modsForHesk_settings.inc.php\' for 1.7.0','INFO');
|
||||||
|
|
||||||
$file .= '
|
$file .= '
|
||||||
|
|
||||||
//-- Set this to 1 to enable custom field names as keys
|
//-- Set this to 1 to enable custom field names as keys
|
||||||
@ -173,18 +223,22 @@ function execute170FileUpdate() {
|
|||||||
|
|
||||||
// BEGIN Version 2.0.0
|
// BEGIN Version 2.0.0
|
||||||
function execute200Scripts() {
|
function execute200Scripts() {
|
||||||
hesk_dbConnect();
|
global $hesk_settings;
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` DROP COLUMN `note_id`");
|
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` DROP COLUMN `edit_date`");
|
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` DROP COLUMN `number_of_edits`");
|
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` DROP COLUMN `default_notify_customer_email`");
|
|
||||||
hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '2.0.0' WHERE `Key` = 'modsForHeskVersion'");
|
|
||||||
|
|
||||||
$keyRs = hesk_dbQuery("SHOW KEYS FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` WHERE Key_name='statuses'");
|
appendToConsole('STARTING 2.0.0 SCRIPTS');
|
||||||
|
appendToConsole('----------------------');
|
||||||
|
hesk_dbConnect();
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."attachments` DROP COLUMN `note_id`");
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` DROP COLUMN `edit_date`");
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."notes` DROP COLUMN `number_of_edits`");
|
||||||
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."users` DROP COLUMN `default_notify_customer_email`");
|
||||||
|
executeQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."settings` SET `Value` = '2.0.0' WHERE `Key` = 'modsForHeskVersion'");
|
||||||
|
|
||||||
|
$keyRs = executeQuery("SHOW KEYS FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` WHERE Key_name='statuses'");
|
||||||
if (hesk_dbNumRows($keyRs) == 0)
|
if (hesk_dbNumRows($keyRs) == 0)
|
||||||
{
|
{
|
||||||
//-- Add the key
|
//-- Add the key
|
||||||
hesk_dbQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD KEY `statuses` (`status`)");
|
executeQuery("ALTER TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` ADD KEY `statuses` (`status`)");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -195,6 +249,7 @@ function execute200FileUpdate() {
|
|||||||
//-- Only add the additional settings if they aren't already there.
|
//-- Only add the additional settings if they aren't already there.
|
||||||
if (strpos($file, 'html_emails') !== true)
|
if (strpos($file, 'html_emails') !== true)
|
||||||
{
|
{
|
||||||
|
appendToConsole('Updating \'modsForHesk_settings.inc.php\' for 2.0.0','INFO');
|
||||||
$file .= '
|
$file .= '
|
||||||
|
|
||||||
//-- Set this to 1 to enable HTML-formatted emails.
|
//-- Set this to 1 to enable HTML-formatted emails.
|
||||||
@ -210,18 +265,22 @@ function execute200FileUpdate() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function checkForIpOrEmailBans() {
|
function checkForIpOrEmailBans() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
$banRS = hesk_dbQuery("SELECT `ID` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`
|
appendToConsole('Checking for existing IP/Email bans','INFO');
|
||||||
|
$banRS = executeQuery("SELECT `ID` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`
|
||||||
UNION ALL SELECT `ID` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
UNION ALL SELECT `ID` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
||||||
|
|
||||||
return hesk_dbNumRows($banRS);
|
return hesk_dbNumRows($banRS);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getUsers() {
|
function getUsers() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
$users = array();
|
$users = array();
|
||||||
|
$usersRS = executeQuery("SELECT `id`, `name` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."users` WHERE `active` = '1' ORDER BY `name`");
|
||||||
$usersRS = hesk_dbQuery("SELECT `id`, `name` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."users` WHERE `active` = '1' ORDER BY `name`");
|
|
||||||
while ($row = hesk_dbFetchAssoc($usersRS)) {
|
while ($row = hesk_dbFetchAssoc($usersRS)) {
|
||||||
$users[$row['id']] = $row['name'];
|
$users[$row['id']] = $row['name'];
|
||||||
}
|
}
|
||||||
@ -230,29 +289,32 @@ function getUsers() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function migrateBans() {
|
function migrateBans() {
|
||||||
|
global $hesk_settings;
|
||||||
|
|
||||||
hesk_dbConnect();
|
hesk_dbConnect();
|
||||||
|
|
||||||
// Get the ID of the creator
|
// Get the ID of the creator
|
||||||
$creator = $_POST['user'];
|
$creator = $_POST['user'];
|
||||||
|
appendToConsole('Migrating IP/Email bans, created by user ID = '.$creator,'INFO');
|
||||||
|
|
||||||
// Insert the email bans
|
// Insert the email bans
|
||||||
$emailBanRS = hesk_dbQuery("SELECT `Email` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`");
|
$emailBanRS = executeQuery("SELECT `Email` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`");
|
||||||
while ($row = hesk_dbFetchAssoc($emailBanRS)) {
|
while ($row = hesk_dbFetchAssoc($emailBanRS)) {
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."banned_emails` (`email`, `banned_by`, `dt`)
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."banned_emails` (`email`, `banned_by`, `dt`)
|
||||||
VALUES ('".hesk_dbEscape($row['Email'])."', ".$creator.", NOW())");
|
VALUES ('".hesk_dbEscape($row['Email'])."', ".$creator.", NOW())");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Insert the IP bans
|
// Insert the IP bans
|
||||||
$ipBanRS = hesk_dbQuery("SELECT `RangeStart`, `RangeEnd` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
$ipBanRS = executeQuery("SELECT `RangeStart`, `RangeEnd` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
||||||
while ($row = hesk_dbFetchAssoc($ipBanRS)) {
|
while ($row = hesk_dbFetchAssoc($ipBanRS)) {
|
||||||
$ipFrom = long2ip($row['RangeStart']);
|
$ipFrom = long2ip($row['RangeStart']);
|
||||||
$ipTo = long2ip($row['RangeEnd']);
|
$ipTo = long2ip($row['RangeEnd']);
|
||||||
$ipDisplay = $ipFrom == $ipTo ? $ipFrom : $ipFrom . ' - ' . $ipTo;
|
$ipDisplay = $ipFrom == $ipTo ? $ipFrom : $ipFrom . ' - ' . $ipTo;
|
||||||
hesk_dbQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."banned_ips` (`ip_from`, `ip_to`, `ip_display`, `banned_by`, `dt`)
|
executeQuery("INSERT INTO `".hesk_dbEscape($hesk_settings['db_pfix'])."banned_ips` (`ip_from`, `ip_to`, `ip_display`, `banned_by`, `dt`)
|
||||||
VALUES (".$row['RangeStart'].", ".$row['RangeEnd'].", '".$ipDisplay."', ".$creator.", NOW())");
|
VALUES (".$row['RangeStart'].", ".$row['RangeEnd'].", '".$ipDisplay."', ".$creator.", NOW())");
|
||||||
}
|
}
|
||||||
// Migration Complete. Drop Tables.
|
// Migration Complete. Drop Tables.
|
||||||
hesk_dbQuery("DROP TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
executeQuery("DROP TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_ips`");
|
||||||
hesk_dbQuery("DROP TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`");
|
executeQuery("DROP TABLE `".hesk_dbEscape($hesk_settings['db_pfix'])."denied_emails`");
|
||||||
}
|
}
|
||||||
// END Version 2.0.0
|
// END Version 2.0.0
|
@ -128,4 +128,9 @@ function changeRowTo(prefix, version, clazz) {
|
|||||||
$('#'+prefix+'-'+version).addClass(clazz);
|
$('#'+prefix+'-'+version).addClass(clazz);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function appendToInstallConsole(text) {
|
||||||
|
var currentText = $('#console-text').text();
|
||||||
|
$('#console-text').append(text).append('<br>');
|
||||||
|
}
|
||||||
|
|
||||||
jQuery(document).ready(loadJquery);
|
jQuery(document).ready(loadJquery);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user