Can you provide unified diffs instead of the full modified files?
From: Tibor Gellert [mailto:tibor.gellert@stripped]
Sent: Friday, October 14, 2005 4:31 AM
Subject: Re: embed issue id into email subject
Attached the changed files of Eventum 1.6.1 to work around the following
- Email server lacking of email routing feature, ie not able to redirect
issue_nnn@domain incoming emails to a issues@domain address. This is
like MS Exhange email server.
- Certain email server/email client configuration where the reply sent
from the email client loose some email header fields. Eg MS Exchan
Server/Outlook client when Outlook is configured to use direct
'Exchange' access to email server.
These problems above actually result in broken email integration feature
of Eventum, so the only a very limited 'integration' is available where
the emails are not associated back to issues automatically in Eventum.
Aimed changes by the attached files:
- Email routing feature of Eventum is targeted by the changes.
- The effect of changes can be enabled/disabled by a new configuration
variable in config.inc.php. The false value makes these changes
transparent to the existing code/functionalities:
// Tibor: Issue ID embedded into Email subject
// instead of appended to email address 'from' field
- Instead of using email address like issue_nnn@domain, the sender email
will be always issue@domain (as configured on the Administration page
for routing interface) and the issue id will be embedded into the
subject field following the [#nnn] pattern.
To achieve static email from address see changes in
class.notification.php - few line changes
To archive to have the [#nnn] always in the subject field the file
class.mail_queue.php is modified - few line changes
To achieve incoming email association see changes to class.routing.php -
same changes made to email/note/draft routing so I guess the change
itself could be moved into a function which could be called from the 3
Please keep in mind that this is the first time I faced with PHP code so
my implementation way may not be the best. Around my changes there are
comment lines //Tibor start/stop
I saw others having difficulties with the same problem described above
so I just hope that these changes would be considered for future version
Tibor Gellert wrote:
Ed & Joao,
I have made some initial modifications to class.support.php and
class.mail_queue.php to handle embedded issue ID into the email subject.
At the mail queue time the subject gets appended with [Issue:nnn] string
if neither [#nnn] nor [Issue:nnn] presents. This is to enable notes to
be sent out with no impact to them.
At the incoming email processing time the script parses the subject and
if [Issue:nnn] string found then associates the email to that issue nnn.
Joao: Please let me know in what format you need these changes, so once
I finalize the changes I can feed them back to you. I just hope this
functionality could become part of Eventum. FYI I have upgraded my
Eventum to 1.6.1 before these changes - and the upgrade was pleasure!
Ed Sawyer wrote:
Hi Tibor -
We have the exact same issue with our installation of Eventum. For now,
we have disabled the Email integration as it relates to emailing Eventum
and getting it to track issue updates via email.
However, we had the same thought, to embed the issue ID in the subject
line, which should work fine with Exchange.
I'll be curious to find out any info that relates to this also, e.g.
which PHP programs need adjustment and such. It should be a fairly
simple task to change where the scripts look for the issue number,
If we get to this sooner than you do (or the maintainers do), I'll post
whatever methods and results we came up with.
The "In-reply-to" field does not get back in every cases so I am
evaluating the option to embed the issue id into the subject field
for all mails sent by Eventum and then parse the subject for the
issue number in the case of missing "in-reply-to" field. Can you
point me out which php scripts would be in need of change to
implement this? And if possible some ideas about what would be
easiest way (and in line with Eventum design) to achieve the above?
Looking forward for any suggestions and really appreciate the help,
End of eventum-devel-plain Digest