| 164 | |
| 165 | == Customizing e-mail content for MS Outlook == |
| 166 | |
| 167 | Out-of-the-box, MS Outlook normally presents plain text e-mails with a variable-width font; the ticket properties table will most certainly look like a mess in MS Outlook. This can be fixed with some customization of the [#Customizingthee-mailcontent e-mail template]. |
| 168 | |
| 169 | Replace the following second row in the template: |
| 170 | {{{ |
| 171 | $ticket_props |
| 172 | }}} |
| 173 | |
| 174 | with this instead: |
| 175 | {{{ |
| 176 | -------------------------------------------------------------------------- |
| 177 | {% with |
| 178 | pv = [(a[0].strip(), a[1].strip()) for a in [b.split(':') for b in |
| 179 | [c.strip() for c in |
| 180 | ticket_props.replace('|', '\n').splitlines()[1:-1]] if ':' in b]]; |
| 181 | sel = ['Reporter', 'Owner', 'Type', 'Status', 'Priority', 'Milestone', |
| 182 | 'Component', 'Severity', 'Resolution', 'Keywords'] %}\ |
| 183 | ${'\n'.join('%s\t%s' % (format(p[0]+':', ' <12'), p[1]) for p in pv if p[0] in sel)} |
| 184 | {% end %}\ |
| 185 | -------------------------------------------------------------------------- |
| 186 | }}} |
| 187 | |
| 188 | The table of ticket properties is replaced with a list of a selection of the properties. A tab character separates the name and value in such a way that most people should find this more pleasing than the default table, when using MS Outlook. |
| 189 | {{{#!div style="margin: 1em 1.75em; border:1px dotted" |
| 190 | {{{#!html |
| 191 | #42: testing<br /> |
| 192 | --------------------------------------------------------------------------<br /> |
| 193 | <table cellpadding=0> |
| 194 | <tr><td>Reporter:</td><td>jonas@example.com</td></tr> |
| 195 | <tr><td>Owner:</td><td>anonymous</td></tr> |
| 196 | <tr><td>Type:</td><td>defect</td></tr> |
| 197 | <tr><td>Status:</td><td>assigned</td></tr> |
| 198 | <tr><td>Priority:</td><td>lowest</td></tr> |
| 199 | <tr><td>Milestone:</td><td>0.9</td></tr> |
| 200 | <tr><td>Component:</td><td>report system</td></tr> |
| 201 | <tr><td>Severity:</td><td>major</td></tr> |
| 202 | <tr><td>Resolution:</td><td> </td></tr> |
| 203 | <tr><td>Keywords:</td><td> </td></tr> |
| 204 | </table> |
| 205 | --------------------------------------------------------------------------<br /> |
| 206 | Changes:<br /> |
| 207 | <br /> |
| 208 | * component: changset view => search system<br /> |
| 209 | * priority: low => highest<br /> |
| 210 | * owner: jonas => anonymous<br /> |
| 211 | * cc: daniel@example.com =><br /> |
| 212 | daniel@example.com, jonas@example.com<br /> |
| 213 | * status: new => assigned<br /> |
| 214 | <br /> |
| 215 | Comment:<br /> |
| 216 | I'm interested too!<br /> |
| 217 | <br /> |
| 218 | --<br /> |
| 219 | Ticket URL: <http://example.com/trac/ticket/42><br /> |
| 220 | My Project <http://myproj.example.com/><br /> |
| 221 | }}} |
| 222 | }}} |
| 223 | |
| 224 | However, it's not as perfect as an HTML formatted e-mail would be, but presented ticket properties are at least readable... |
| 225 | |
| 226 | |