X-Git-Url: http://git.home-dn.net/?p=manu%2FRT-Extension-Drafts.git;a=blobdiff_plain;f=html%2FHelpers%2FSaveDraft;fp=html%2FHelpers%2FSaveDraft;h=c7e0ac58898554b7a3adc3ecf5c233a64c778ae8;hp=0000000000000000000000000000000000000000;hb=55f6e31abfc10cdf39978def5b11730ac5383a42;hpb=d4b8ed547346eb5b927662d8556d468acb9fccee diff --git a/html/Helpers/SaveDraft b/html/Helpers/SaveDraft new file mode 100644 index 0000000..c7e0ac5 --- /dev/null +++ b/html/Helpers/SaveDraft @@ -0,0 +1,27 @@ +<%ARGS> +$UserId => undef; +$TicketId => undef; +$Content => undef; +$ContentType => undef; + + +<%INIT> +my $Ticket = LoadTicket($TicketId); +my $Draft = RT::Attribute->new($session{'CurrentUser'}); +$Draft->LoadByNameAndObject(Object => $session{'CurrentUser'}->UserObj, Name => 'Draft-' . $Ticket->id); +my ($ok, $msg) = (0, ''); +if ($Content) { + if ($Draft && $Draft->Id) { + ($ok, $msg) = $Draft->SetContent($Content); + $Draft->SetContentType($ContentType); + } else { + ($ok, $msg) = $Draft->Create(Name => 'Draft-' . $Ticket->id, + Object => $session{'CurrentUser'}->UserObj, + Content => $Content, + ContentType => $ContentType, + ); + } +} +$m->out($msg); +$m->abort; +