#57165 add periodic autosave feature to RT-Extension-Drafts
[manu/RT-Extension-Drafts.git] / html / Helpers / SaveDraft
1 <%ARGS>
2 $UserId => undef;
3 $TicketId => undef;
4 $Content => undef;
5 $ContentType => undef;
6 </%ARGS>
7
8 <%INIT>
9 my $Ticket = LoadTicket($TicketId);
10 my $Draft = RT::Attribute->new($session{'CurrentUser'});
11 $Draft->LoadByNameAndObject(Object => $session{'CurrentUser'}->UserObj, Name => 'Draft-' . $Ticket->id);
12 my ($ok, $msg) = (0, '');
13 if ($Content) {
14     if ($Draft && $Draft->Id) {
15         ($ok, $msg) = $Draft->SetContent($Content);
16         $Draft->SetContentType($ContentType);
17     } else {
18         ($ok, $msg) = $Draft->Create(Name => 'Draft-' . $Ticket->id,
19             Object => $session{'CurrentUser'}->UserObj,
20             Content => $Content,
21             ContentType => $ContentType,
22         );
23     }
24 }
25 $m->out($msg);
26 $m->abort;
27 </%INIT>