<& /Elements/Header, Title=>"Preferences" &>
<& /Elements/Tabs &>

<& /Elements/ListActions, actions => \@results &>
<form method=post>

% unless ($RT::WebExternalAuth) {
<& /Elements/TitleBoxStart, title => 'Change password'  &>
New password: <input type=password name="NewPass1" size=16>
Confirm: <input type=password name="NewPass2" size=16>
<& /Elements/TitleBoxEnd &>
<BR>
% }
<& /Elements/TitleBoxStart, title => 'Signature'  &>
<INPUT TYPE=HIDDEN NAME="SignatureMagic" VALUE=1>
<TEXTAREA COLS=72 ROWS=4 WRAP=HARD NAME="Signature"><% $session{'CurrentUser'}->UserObj->Signature %></TEXTAREA>
<br>
<BR>
<& /Elements/TitleBoxEnd &>
<& /Elements/Submit &>
	  </form>


<%INIT>
my @results;

if ($NewPass1) {
    if ($NewPass1 ne $NewPass2) {
	push (@results, "Passwords did not match.");
    }	
    else {
	my ($val, $msg)=$session{'CurrentUser'}->UserObj->SetPassword($NewPass1);
	push (@results, "Password: ".$msg);
    }	
}
if ($Signature || $SignatureMagic) {
    $Signature =~ s/(\r\n|\r)/\n/g;
    if ($Signature ne $session{'CurrentUser'}->UserObj->Signature) {
	my ($val, $msg)=$session{'CurrentUser'}->UserObj->SetSignature($Signature);
	push (@results, "Signature: ".$msg);
    }
}
#A hack to make sure that session gets rewritten.

$session{'i'}++;
</%INIT>

<%ARGS>
$Signature => undef
$SignatureMagic => undef
$NewPass1 => undef
$NewPass2 => undef
</%ARGS>
