Fix PHPUnit for Ticket
This commit is contained in:
parent
0dfaa14d6e
commit
591b0993af
@ -20,16 +20,11 @@
|
||||
/**
|
||||
* \file htdocs/core/triggers/interface_50_modTicketsup_TicketEmail.class.php
|
||||
* \ingroup core
|
||||
* \brief Fichier
|
||||
* \remarks Son propre fichier d'actions peut etre cree par recopie de celui-ci:
|
||||
* - Le nom du fichier doit etre: interface_99_modMymodule_Mytrigger.class.php
|
||||
* ou: interface_99_all_Mytrigger.class.php
|
||||
* - Le fichier doit rester stocke dans core/triggers
|
||||
* - Le nom de la classe doit etre InterfaceMytrigger
|
||||
* - Le nom de la propriete name doit etre Mytrigger
|
||||
* \brief File of trigger for ticket module
|
||||
*/
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/triggers/dolibarrtriggers.class.php';
|
||||
|
||||
|
||||
/**
|
||||
* Class of triggers for ticketsup module
|
||||
*/
|
||||
@ -110,12 +105,12 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
public function runTrigger($action, $object, User $user, Translate $langs, Conf $conf)
|
||||
{
|
||||
$ok = 0;
|
||||
|
||||
|
||||
switch ($action) {
|
||||
case 'TICKET_ASSIGNED':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
|
||||
if ($object->fk_user_assign != $user->id) {
|
||||
|
||||
if ($object->fk_user_assign > 0 && $object->fk_user_assign != $user->id) {
|
||||
$userstat = new User($this->db);
|
||||
$res = $userstat->fetch($object->fk_user_assign);
|
||||
if ($res) {
|
||||
@ -132,11 +127,11 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
$message .= '<li>' . $langs->trans($key) . ' : ' . $value . '</li>';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$message .= '</ul>';
|
||||
$message .= '<p>' . $langs->trans('Message') . ' : <br>' . $object->message . '</p>';
|
||||
$message .= '<p><a href="' . dol_buildpath('/ticketsup/card.php', 2) . '?track_id=' . $object->track_id . '">' . $langs->trans('SeeThisTicketIntomanagementInterface') . '</a></p>';
|
||||
|
||||
|
||||
$sendto = $userstat->email;
|
||||
$from = dolGetFirstLastname($user->firstname, $user->lastname) . '<' . $user->email . '>';
|
||||
|
||||
@ -166,20 +161,20 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
|
||||
|
||||
case 'TICKET_CREATE':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
|
||||
|
||||
// Init to avoid errors
|
||||
$filepath = array();
|
||||
$filename = array();
|
||||
$mimetype = array();
|
||||
|
||||
|
||||
$langs->load('ticketsup');
|
||||
|
||||
|
||||
$object->fetch('', $object->track_id);
|
||||
|
||||
|
||||
/* Send email to admin */
|
||||
$sendto = $conf->global->TICKETS_NOTIFICATION_EMAIL_TO;
|
||||
$subject = '['.$conf->global->MAIN_INFO_SOCIETE_NOM.'] '.$langs->transnoentities('TicketNewEmailSubjectAdmin');
|
||||
@ -196,15 +191,15 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
}
|
||||
}
|
||||
$message_admin.='</ul>';
|
||||
|
||||
|
||||
if ($object->fk_soc > 0) {
|
||||
$object->fetch_thirdparty();
|
||||
$message_admin.='<p>'.$langs->trans('Company'). ' : '.$object->thirdparty->name.'</p>';
|
||||
}
|
||||
|
||||
|
||||
$message_admin.='<p>'.$langs->trans('Message').' : <br>'.$object->message.'</p>';
|
||||
$message_admin.='<p><a href="'.dol_buildpath('/ticketsup/card.php', 2).'?track_id='.$object->track_id.'">'.$langs->trans('SeeThisTicketIntomanagementInterface').'</a></p>';
|
||||
|
||||
|
||||
$from = $conf->global->MAIN_INFO_SOCIETE_NOM.'<'.$conf->global->TICKETS_NOTIFICATION_EMAIL_FROM.'>';
|
||||
$replyto = $from;
|
||||
|
||||
@ -233,7 +228,7 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
} else {
|
||||
$sendto = $user->email;
|
||||
}
|
||||
|
||||
|
||||
if ($sendto && $object->notify_tiers_at_create) {
|
||||
$subject = '['.$conf->global->MAIN_INFO_SOCIETE_NOM.'] '.$langs->transnoentities('TicketNewEmailSubjectCustomer');
|
||||
$message_customer= $langs->transnoentities('TicketNewEmailBodyCustomer', $object->track_id)."\n\n";
|
||||
@ -254,11 +249,11 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
$url_public_ticket = ($conf->global->TICKETS_URL_PUBLIC_INTERFACE?$conf->global->TICKETS_URL_PUBLIC_INTERFACE.'/':dol_buildpath('/ticketsup/public/view.php', 2)).'?track_id='.$object->track_id;
|
||||
$message_customer.='<p>' . $langs->trans('TicketNewEmailBodyInfosTrackUrlCustomer') . ' : <a href="'.$url_public_ticket.'">'.$url_public_ticket.'</a></p>';
|
||||
$message_customer.='<p>'.$langs->trans('TicketEmailPleaseDoNotReplyToThisEmail').'</p>';
|
||||
|
||||
|
||||
|
||||
|
||||
$from = $conf->global->MAIN_INFO_SOCIETE_NOM.'<'.$conf->global->TICKETS_NOTIFICATION_EMAIL_FROM.'>';
|
||||
$replyto = $from;
|
||||
|
||||
|
||||
// Init to avoid errors
|
||||
$filepath = array();
|
||||
$filename = array();
|
||||
@ -282,26 +277,26 @@ class InterfaceTicketEmail extends DolibarrTriggers
|
||||
}
|
||||
}
|
||||
$ok = 1;
|
||||
|
||||
|
||||
break;
|
||||
|
||||
|
||||
case 'TICKET_DELETE':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
break;
|
||||
|
||||
|
||||
case 'TICKET_MODIFY':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
break;
|
||||
|
||||
|
||||
case 'TICKET_MARK_READ':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
break;
|
||||
|
||||
case 'TICKET_CLOSED':
|
||||
|
||||
case 'TICKET_CLOSE':
|
||||
dol_syslog("Trigger '" . $this->name . "' for action '$action' launched by " . __FILE__ . ". id=" . $object->id);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return $ok;
|
||||
}
|
||||
|
||||
@ -892,6 +892,26 @@ class Ticketsup extends CommonObject
|
||||
if ($res < 0) $error++;
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "ticketsup_logs";
|
||||
$sql .= " WHERE rowid=" . $this->id;
|
||||
$resql = $this->db->query($sql);
|
||||
}
|
||||
if (!$error) {
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "ticketsup_mesgs";
|
||||
$sql .= " WHERE rowid=" . $this->id;
|
||||
$resql = $this->db->query($sql);
|
||||
}
|
||||
|
||||
// Removed extrafields
|
||||
if (!$error) {
|
||||
$result = $this->deleteExtraFields();
|
||||
if ($result < 0) {
|
||||
$error++;
|
||||
dol_syslog(get_class($this) . "::delete error -3 " . $this->error, LOG_ERR);
|
||||
}
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "ticketsup";
|
||||
$sql .= " WHERE rowid=" . $this->id;
|
||||
@ -904,15 +924,6 @@ class Ticketsup extends CommonObject
|
||||
}
|
||||
}
|
||||
|
||||
// Removed extrafields
|
||||
if (!$error) {
|
||||
$result = $this->deleteExtraFields();
|
||||
if ($result < 0) {
|
||||
$error++;
|
||||
dol_syslog(get_class($this) . "::delete error -3 " . $this->error, LOG_ERR);
|
||||
}
|
||||
}
|
||||
|
||||
// Commit or rollback
|
||||
if ($error) {
|
||||
foreach ($this->errors as $errmsg) {
|
||||
@ -1385,13 +1396,13 @@ class Ticketsup extends CommonObject
|
||||
* @param User $user Object user
|
||||
* @param int $id_assign_user ID of user assigned
|
||||
* @param int $notrigger Disable trigger
|
||||
* @return int <0 if KO, >0 if OK
|
||||
* @return int <0 if KO, 0=Nothing done, >0 if OK
|
||||
*/
|
||||
public function assignUser($user, $id_assign_user, $notrigger = 0)
|
||||
{
|
||||
global $conf, $langs;
|
||||
|
||||
if ($id_assign_user > 0) { // no closed
|
||||
if ($id_assign_user > 0) {
|
||||
$this->db->begin();
|
||||
|
||||
$sql = "UPDATE " . MAIN_DB_PREFIX . "ticketsup";
|
||||
@ -1401,7 +1412,10 @@ class Ticketsup extends CommonObject
|
||||
|
||||
dol_syslog(get_class($this) . "::assignUser sql=" . $sql);
|
||||
$resql = $this->db->query($sql);
|
||||
if ($resql) {
|
||||
if ($resql)
|
||||
{
|
||||
$this->fk_user_assign = $id_assign_user; // May be used by trigger
|
||||
|
||||
if (!$notrigger) {
|
||||
// Call trigger
|
||||
$result=$this->call_trigger('TICKET_ASSIGNED', $user);
|
||||
@ -1427,6 +1441,8 @@ class Ticketsup extends CommonObject
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1756,27 +1772,30 @@ class Ticketsup extends CommonObject
|
||||
|
||||
// Valid and close fichinter linked
|
||||
$this->fetchObjectLinked($this->id, $this->element, null, 'fichinter');
|
||||
foreach ($this->linkedObjectsIds['fichinter'] as $fichinter_id) {
|
||||
$fichinter = new Fichinter($this->db);
|
||||
$fichinter->fetch($fichinter_id);
|
||||
if($fichinter->statut == 0) {
|
||||
$result = $fichinter->setValid($user);
|
||||
if (!$result) {
|
||||
$this->errors[] = $fichinter->error;
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
if ($fichinter->statut < 3) {
|
||||
$result = $fichinter->setStatut(3);
|
||||
if (!$result) {
|
||||
$this->errors[] = $fichinter->error;
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
if ($this->linkedObjectsIds)
|
||||
{
|
||||
foreach ($this->linkedObjectsIds['fichinter'] as $fichinter_id) {
|
||||
$fichinter = new Fichinter($this->db);
|
||||
$fichinter->fetch($fichinter_id);
|
||||
if($fichinter->statut == 0) {
|
||||
$result = $fichinter->setValid($user);
|
||||
if (!$result) {
|
||||
$this->errors[] = $fichinter->error;
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
if ($fichinter->statut < 3) {
|
||||
$result = $fichinter->setStatut(3);
|
||||
if (!$result) {
|
||||
$this->errors[] = $fichinter->error;
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Call trigger
|
||||
$result=$this->call_trigger('TICKET_CLOSED', $user);
|
||||
$result=$this->call_trigger('TICKET_CLOSE', $user);
|
||||
if ($result < 0) {
|
||||
$error++;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user