[Rt-devel] Custom Ticket Creation Form
Jeff Albert
jralbert at uvic.ca
Fri Oct 6 15:47:58 EDT 2006
Hi Andrew,
Rather than trying to modify RT itself, we just built an external web
form that collected the data and crunched it all into custom headers
attached to an e-mail message sent to RT; we then used an onCreate scrip
in RT to handle the incoming messages, parse out the useful information,
and modify the ticket as it was being created. We used custom fields to
store the data, but you wouldn't have to. By using the external form, we
avoided having to deal with merging custom code in RT with new releases
any time we wanted to upgrade. Hope that's helpful.
Cheers,
Jeff Albert
Andrew Dougherty wrote:
> Hello,
>
> After many attempts at trial and error and after a moderate
> amount of web research, including downloading and searching all of the
> mailinglists, I feel compelled to ask this question of the
> mailinglist.
>
> I am trying to create a custom ticket creation form, by
> forking Create.html. I do not want Custom Fields, just to add the
> extra INPUTs to the Content input that becomes the first comment.
>
> As I don't know the "sequence diagrams" for RT, I have been
> unable to find a way to make this change (theoretically impossible)
> within the Create.html file, nor find where the Ticket is being
> created (and the form processed), and thus make the change there.
>
> I am not sure that this is even the correct mechanism for
> making a custom form of this type. I did read through the "RT
> Essentials" but did not really see a way to do this.
>
> All I really need is someone to acknowledge which bearing the
> solution lies on. For instance, can I simply create a Scrip that
> takes care of the post processing and test on the existence of the
> extra INPUTs?
>
> Any assistance would be very appreciated.
>
> Sincerely,
> Andrew Dougherty
>
> Here are the extra INPUTs
>
> <!-- BEGIN NONSENSE -->
>
> % foreach my $field ("Username","Unit","Phone Number") {
> <TR>
> <TD class=label>
> <&|/l&><%$field%></&>:
> </TD>
> <TD class=value COLSPAN=5>
> <INPUT Name="<%$field%>" SIZE=15 MAXSIZE=100 value="<%$ARGS{$field}
> || ''%>"><BR>
> </TD>
> </TR>
> % }
>
> <TR>
> <TD class=label>
> <&|/l&>Issue Type</&>:
> </TD>
> <TD class=value>
> <SELECT NAME="Issue Type">
> % foreach my $problem ("Speed Problems","VOIP
> Problems","Connectivity","Service Outage","Other") {
> <OPTION "<%$problem%>"><%$problem%>
> % }
> </SELECT>
> </TD>
> </TR>
>
> <TR>
> <TD class=label>
> <&|/l&>Severity</&>:
> </TD>
> <TD class=value>
> <SELECT NAME="Severity">
> % foreach my $severity (1..5) {
> <OPTION "<%$severity%>"><%$severity%>
> % }
> </SELECT>
> </TD>
> </TR>
>
> <TR>
> <TD class=label>
> <&|/l&>Building</&>:
> </TD>
> <TD class=value>
> <SELECT NAME="Building">
> % foreach my $building ("blah","blah","blah") {
> <OPTION "<%$building%>"><%$building%>
> % }
> </SELECT>
> </TD>
> </TR>
>
> <!-- END NONSENSE -->
>
> I then wish to have all the values for the INPUTs added into the value
> for the Content.
>
> i.e. theoretically:
>
> $ARGS{Content} = join("\n",map "$_: $ARGS{$_}",
> ("Username","Unit","Phone Number","Issue Type",
> "Severity","Building","Content"))."\n\n\n";
>
>
> Andrew Dougherty
> Network Operations and Security Engineer
> onShore Networks, LLC
> (312)850-5200 ext. 146
>
> _______________________________________________
> List info: http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel
More information about the Rt-devel
mailing list