if(db_result(db_query('SELECT 1 FROM {support_ticket} t WHERE t.nid = %d AND t.client = %d', $nid, $client->clid))){
$message['nid'] = $nid;
returnTRUE;
}
}
// Reply was to followup.
else{
// Check message id against our records.
if(db_result(db_query('SELECT 1 FROM {comments} c INNER JOIN {support_ticket_comment} t ON c.cid = t.cid WHERE c.cid = %d AND c.nid = %d AND t.client = %d', $cid, $nid, $client->clid))){
$message['nid'] = $nid;
returnTRUE;
}
}
}
// C) Check for reply to the incoming message that created the ticket.
$nid = db_result(db_query("SELECT nid FROM {support_ticket} WHERE message_id = '%s'", $message_id));
if(isset($nid)&&is_numeric($nid)){
$message['nid'] = $nid;
returnTRUE;
}
// D) Check for reply to an incoming message that created a followup.
$nid = db_result(db_query("SELECT c.nid FROM {support_ticket_comment} j INNER JOIN {comments} c ON j.cid = c.cid WHERE j.message_id = '%s'", $message_id));
$message['nid'] = db_result(db_query_range("SELECT t.nid FROM {support_ticket} t LEFT JOIN {node} n ON t.nid = n.nid LEFT JOIN {support_states} s ON t.state = s.sid WHERE t.client = %d AND n.title = '%s' AND isdefault = 1 ORDER BY nid DESC", $client->clid, $message['subject'], 0, 1));
break;
case 3:
$message['nid'] = db_result(db_query_range("SELECT t.nid FROM {support_ticket} t LEFT JOIN {node} n ON t.nid = n.nid LEFT JOIN {support_states} s ON t.state = s.sid WHERE t.client = %d AND n.title = '%s' AND isclosed = 0 ORDER BY nid DESC", $client->clid, $message['subject'], 0, 1));
break;
case 4:
$message['nid'] = db_result(db_query_range("SELECT t.nid FROM {support_ticket} t LEFT JOIN {node} n ON t.nid = n.nid WHERE t.client = %d AND n.title = '%s' ORDER BY nid DESC", $client->clid, $message['subject'], 0, 1));