[Rt-commit] r9846 - in rt/branches/3.7-RTIR-RELENG/html: Ticket

ruz at bestpractical.com ruz at bestpractical.com
Fri Dec 7 15:53:32 EST 2007


Author: ruz
Date: Fri Dec  7 15:53:32 2007
New Revision: 9846

Added:
   rt/branches/3.7-RTIR-RELENG/html/Elements/GnuPG/
   rt/branches/3.7-RTIR-RELENG/html/Elements/GnuPG/SignEncryptWidget
Modified:
   rt/branches/3.7-RTIR-RELENG/html/Ticket/Create.html
   rt/branches/3.7-RTIR-RELENG/html/Ticket/Update.html

Log:
* add SignEncryptWidget

Added: rt/branches/3.7-RTIR-RELENG/html/Elements/GnuPG/SignEncryptWidget
==============================================================================
--- (empty file)
+++ rt/branches/3.7-RTIR-RELENG/html/Elements/GnuPG/SignEncryptWidget	Fri Dec  7 15:53:32 2007
@@ -0,0 +1,20 @@
+<table>
+<td><% loc('Sign')%></td>
+<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Sign', CurrentValue => $ARGS{'Sign'} &>
+using <& /Elements/SelectKeyForSigning, Addresses => \@signers &>
+</td>
+<td><% loc('Encrypt')%></td>
+<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Encrypt', CurrentValue => $ARGS{'Encrypt'} &></td>
+</table>
+<%ARGS>
+$QueueObj
+</%ARGS>
+<%INIT>
+return unless RT->Config->Get('GnuPG')->{'Enable'};
+
+my @signers;
+push @signers, ($ARGS{'UpdateType'}||'') eq "private"
+    ? ( $QueueObj->CommentAddress || RT->Config->Get('CommentAddress') )
+    : ( $QueueObj->CorrespondAddress || RT->Config->Get('CorrespondAddress') );
+push @signers, $session{'CurrentUser'}->EmailAddress;
+</%INIT>

Modified: rt/branches/3.7-RTIR-RELENG/html/Ticket/Create.html
==============================================================================
--- rt/branches/3.7-RTIR-RELENG/html/Ticket/Create.html	(original)
+++ rt/branches/3.7-RTIR-RELENG/html/Ticket/Create.html	Fri Dec  7 15:53:32 2007
@@ -151,21 +151,9 @@
 </tr>
 
 % if ( RT->Config->Get('GnuPG')->{'Enable'} ) {
-<tr>
-<td><% loc('Sign')%></td>
-<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Sign', CurrentValue => $ARGS{'Sign'} &>
-<%PERL>
-    my @signers = ( 
-        ($QueueObj->CorrespondAddress || RT->Config->Get('CorrespondAddress')),
-        $session{'CurrentUser'}->EmailAddress,
-    );
-</%PERL>
-using <& /Elements/SelectKeyForSigning, Addresses => \@signers &>
-</td>
-<td><% loc('Encrypt')%></td>
-<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Encrypt', CurrentValue => $ARGS{'Encrypt'} &></td>
-<td colspan="2">&nbsp;</td>
-</tr>
+<tr><td>&nbsp;</td><td colspan="5">
+<& /Elements/GnuPG/SignEncryptWidget, %ARGS, QueueObj => $QueueObj &>
+</td></tr>
 % }
 
 <tr>

Modified: rt/branches/3.7-RTIR-RELENG/html/Ticket/Update.html
==============================================================================
--- rt/branches/3.7-RTIR-RELENG/html/Ticket/Update.html	(original)
+++ rt/branches/3.7-RTIR-RELENG/html/Ticket/Update.html	Fri Dec  7 15:53:32 2007
@@ -123,12 +123,9 @@
 </td></tr>
 
 % if ( RT->Config->Get('GnuPG')->{'Enable'} ) {
-<tr><td>&nbsp;</td><td><table>
-<td><% loc('Sign')%></td>
-<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Sign', CurrentValue => $ARGS{'Sign'} &></td>
-<td><% loc('Encrypt')%></td>
-<td><& /Widgets/Form/Boolean:InputOnly, Name => 'Encrypt', CurrentValue => $ARGS{'Encrypt'} &></td>
-</table></td></tr>
+<tr><td>&nbsp;</td><td>
+<& /Elements/GnuPG/SignEncryptWidget, %ARGS, QueueObj => $TicketObj->QueueObj &>
+</td></tr>
 % }
 
 <tr><td align="right" valign="top"><&|/l&>Message</&>:</td><td>
@@ -256,7 +253,8 @@
 
     # check to see if we have a good passphrase
     if ( $ARGS{'Sign'} ) {
-        my $address = $ARGS{'UpdateType'} eq "private"
+        my $address = $ARGS{'SignUsing'};
+        $address ||= $ARGS{'UpdateType'} eq "private"
             ? ( $TicketObj->QueueObj->CommentAddress
                 || RT->Config->Get('CommentAddress') )
             : ( $TicketObj->QueueObj->CorrespondAddress
@@ -264,6 +262,9 @@
         unless ( RT::Crypt::GnuPG::DrySign( $address ) ) {
             push @cannot_sign_as, $address;
             $checks_failure = 1;
+        } else {
+            RT::Crypt::GnuPG::UseKeyForSigning( $ARGS{'SignUsing'} )
+                if $ARGS{'SignUsing'}
         }
     }
 


More information about the Rt-commit mailing list