diff --git a/include/class.thread.php b/include/class.thread.php index e1840c78728250c7eef98fdf7bfaf07710599ccf..eca16c58e595f57d597c4535658e36fb13e8e163 100644 --- a/include/class.thread.php +++ b/include/class.thread.php @@ -426,7 +426,14 @@ Class ThreadEntry { if(!($fileId=is_numeric($file)?$file:AttachmentFile::save($file))) return 0; - $sql ='INSERT INTO '.TICKET_ATTACHMENT_TABLE.' SET created=NOW() ' + // TODO: Add a unique index to TICKET_ATTACHMENT_TABLE (file_id, + // ticket_id), and remove this block + if ($id = db_result(db_query('SELECT attach_id FROM '.TICKET_ATTACHMENT_TABLE + .' WHERE file_id='.db_input($fileId).' AND ticket_id=' + .db_input($this->getTicketId())))) + return $id; + + $sql ='INSERT IGNORE INTO '.TICKET_ATTACHMENT_TABLE.' SET created=NOW() ' .' ,file_id='.db_input($fileId) .' ,ticket_id='.db_input($this->getTicketId()) .' ,ref_id='.db_input($this->getId())