I did a little additional digging for you (I'm bored lol)
---------------------------------------------------------------------------------------------------------------------------------------------------
Tickets Sharing a Database This is a little tricky, please stay with me
Creating the tickets to the same shared database took a little bit to find what I was looking for.
-- In the flie "{root}\inc\posting_functions.inc.php" You will find the function
hesk_newTicket This is the script that actually creates the new ticket in the database.
-- In the file "{root}\inc\database_mysqli.inc.php" You will find the function
hesk_dbQuery This function is used by
hesk_newTicket above function to execute the query.
-- In the file "{root}\inc\database.inc.php" You will find the function
hesk_dbConnect This function is used by
hesk_dbQuery above function to execute the query.
-- In the file "{root}\hesk_settings.inc.php" You will find the database connection settings that HESK uses.
Now, here is how you can use these functions to make all 3 products post tickets to the same database. You will need to do this for each of the 3 webpages for the 3 products. Using this method you should allow each of them to still use their own separate databases for all other purposes such as storing knowledgebase articles while sharing a ticket database.
1: Add to "hesk_settings.inc.php" another block of settings to store the ticket database information. This should be the same database on all 3 (or more) products. You can simply pick one of the 3 or another HESK installation entirely to point this to.
$hesk_settings['db_host']='localhost';
$hesk_settings['ticket_db_name']='hesk';
$hesk_settings['ticket_db_user']='test';
$hesk_settings['ticket_db_pass']='test';
$hesk_settings['ticket_db_pfix']='hesk_';
2: Make a copy of
hesk_dbConnect called something like
hesk_ticketdbConnect and have it point to the ticket database info you set in step 1.
3: Make a copy of
hesk_dbQuery called something like
hesk_ticketdbQuery and point it to use the function you created in step 2.
4: Modify the function
hesk_newTicket to use the function you created in step 3.
---------------------------------------------------------------------------------------------------------------------------------------------------
New Ticket Subject Modification
In the file "{root}\inc\posting_functions.inc.php" You will find the function
hesk_newTicket that handles ticket creation.
I would simply edit this on each of the product pages to concatenate something like "(Product) Support -- " to the beginning of the ticket name.
---------------------------------------------------------------------------------------------------------------------------------------------------
Email Responses
On the shared ticket Installation of HESK, in the file "{root}\hesk_settings.inc.php" you will find
$hesk_settings['noreply_mail']. This is where the default response email is stored.
I probably wouldn't mess with the original entry here as I am not sure where else it is used, but for your purposes you could add 3 additional settings:
$hesk_settings['noreply_mail_product1']
$hesk_settings['noreply_mail_product2']
$hesk_settings['noreply_mail_product3']
On the shared ticket Installation of HESK, in the file "{root}\inc\email_functions.inc.php" you will find
hesk_mail. This is the function that seems to send all of the automated responses.
Use REGEX to check the title of the email (that from the looks of the function
hesk_getEmailSubject on line 403 should contain the ticket name) for the product name to determine where it should come from. Once you have determined which email it should come from simply point it to the appropriate setting above under the comment "// Setup "name <email>" for headers".
This seems to me that it should work but I have not tested it.