Skip to content
Snippets Groups Projects
Commit fda72cf8 authored by Peter Rotich's avatar Peter Rotich
Browse files

Merge pull request #614 from greezybacon/issue/16-181-upgrade


upgrader: Fix upgrade from osTicket 1.6

Reviewed-By: default avatarPeter Rotich <peter@osticket.com>
parents 60504f42 a21adaa6
No related branches found
Tags v1.1.0
No related merge requests found
......@@ -60,7 +60,11 @@ class Company {
}
function __toString() {
return $this->getName();
try {
if ($name = $this->getForm()->getAnswer('name'))
return $name->display();
} catch (Exception $e) {}
return '';
}
/**
......
......@@ -343,6 +343,7 @@ class AttachmentFile {
.',size='.db_input($file['size'])
.',name='.db_input($file['name'])
.',`key`='.db_input($file['key'])
.',ft='.db_input($ft ?: 'T')
.',signature='.db_input($file['signature']);
if (!(db_query($sql) && ($id = db_insert_id())))
......@@ -377,15 +378,9 @@ class AttachmentFile {
return false;
}
# XXX: ft does not exists during the upgrade when attachments are
# migrated! Neither does `bk`
if ($ft) {
$sql = 'UPDATE '.FILE_TABLE.' SET bk='
.db_input($bk->getBkChar())
.', ft='.db_input($ft)
.' WHERE id='.db_input($f->getId());
db_query($sql);
}
$sql = 'UPDATE '.FILE_TABLE.' SET bk='.db_input($bk->getBkChar())
.' WHERE id='.db_input($f->getId());
db_query($sql);
return $f->getId();
}
......
</div>
</div>
<div id="footer">
<p>Copyright &copy; <?php echo date('Y'); ?> <?php echo $ost->company ?: 'osTicket.com'; ?> - All rights reserved.</p>
<p>Copyright &copy; <?php echo date('Y'); ?> <?php echo (string) $ost->company :? 'osTicket.com'; ?> - All rights reserved.</p>
<a id="poweredBy" href="http://osticket.com" target="_blank">Helpdesk software - powered by osTicket</a>
</div>
<div id="overlay"></div>
......
</div>
<div id="footer">
Copyright &copy; 2006-<?php echo date('Y'); ?>&nbsp;<?php echo $ost->company ?: 'osTicket.com'; ?>&nbsp;All Rights Reserved.
Copyright &copy; 2006-<?php echo date('Y'); ?>&nbsp;<?php echo (string) $ost->company ?: 'osTicket.com'; ?>&nbsp;All Rights Reserved.
</div>
<?php
if(is_object($thisstaff) && $thisstaff->isStaff()) { ?>
......
......@@ -108,7 +108,7 @@ class AttachmentMigrater extends MigrationTask {
}
# TODO: Add extension-based mime-type lookup
if (!($fileId = AttachmentFile::save($info, false))) {
if (!($fileId = $this->saveAttachment($info))) {
return $this->skip($info['attachId'],
sprintf('%s: Unable to migrate attachment', $info['path']));
}
......@@ -227,6 +227,47 @@ class AttachmentMigrater extends MigrationTask {
function getErrors() {
return $this->errorList;
}
// This is the AttachmentFile::save() method from osTicket 1.7.6. It's
// been ported here so that further changes to the %file table and the
// AttachmentFile::save() method do not affect upgrades from osTicket
// 1.6 to osTicket 1.8 and beyond.
function saveAttachment($file) {
if(!$file['hash'])
$file['hash']=MD5(md5_file($file['path']).time());
$file['data'] = file_get_contents($file['path']);
if(!$file['size'])
$file['size']=strlen($file['data']);
$sql='INSERT INTO '.FILE_TABLE.' SET created=NOW() '
.',type='.db_input($file['type'])
.',size='.db_input($file['size'])
.',name='.db_input($file['name'])
.',hash='.db_input($file['hash']);
if (!(db_query($sql) && ($id=db_insert_id())))
return false;
$f = new CompatAttachmentFile($id);
$bk = new AttachmentChunkedData($f);
if (!$bk->write($file['data']))
return false;
return $id;
}
}
class CompatAttachmentFile {
var $id;
function __construct($id) {
$this->id = $id;
}
function getId() {
return $this->id;
}
}
return 'AttachmentMigrater';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment