X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Felements%2Fcontact.html;h=7b6c853d4ca618fd632dd23b762d0315e3acba1b;hp=3fbcc05187f268b9dd8a1c09adb8d4068227d4b9;hb=833cfe5c9938d33c3e6b97ed610c25a7afa6eb04;hpb=571291dda91dd92db80660aa3d67333b0c88fc34
diff --git a/httemplate/elements/contact.html b/httemplate/elements/contact.html
index 3fbcc0518..7b6c853d4 100644
--- a/httemplate/elements/contact.html
+++ b/httemplate/elements/contact.html
@@ -40,9 +40,12 @@
% }
% } elsif ( $field eq 'emailaddress' ) {
% $value = join(', ', map $_->emailaddress, $contact->contact_email);
+% } elsif ( $field eq 'password' ) {
+% $value = $contact->get('_password') ? '********' : '';
% } elsif ( $field eq 'selfservice_access'
% or $field eq 'comment'
-% or $field eq 'invoice_dest' ) {
+% or $field eq 'invoice_dest'
+% or $field eq 'message_dest' ) {
% $value = $X_contact->get($field);
% } else {
% $value = $contact->get($field);
@@ -50,18 +53,49 @@
% if ( $field eq 'selfservice_access' ) {
+
-% } elsif ( $field eq 'invoice_dest' ) {
+% #password form
+% } elsif ( $field eq 'password') {
+
+% my $contactnum = $curr_value ? $curr_value : '0';
+ <& '/elements/validate_password.html',
+ 'fieldid' => "changepw".$id."_password",
+ 'svcnum' => '',
+ 'contactnum' => $contactnum,
+ 'submitid' => "submit",
+ &>
+
+
+% } elsif ( $field eq 'invoice_dest' || $field eq 'message_dest' ) {
% my $curr_value = $cgi->param($name . '_' . $field);
% $curr_value = $value if !defined($curr_value);
<& select.html,
@@ -83,6 +117,9 @@
% }
<% $label{$field} %>
+% if ( $field eq 'password' ) {
+
+% }
|
% }
@@ -94,6 +131,7 @@
my( %opt ) = @_;
my $conf = new FS::Conf;
+
my $self_base_url = $conf->config('selfservice_server-base_url');
my $name = $opt{'element_name'} || $opt{'field'} || 'contactnum';
@@ -126,12 +164,17 @@ if ( $curr_value ) {
'contactnum' => $curr_value,
'prospectnum' => $opt{'prospectnum'},
});
+ $opt{'for_prospect'} = 1;
} else {
die 'neither custnum nor prospectnum specified';
}
} else {
$contact = new FS::contact {};
- $X_contact = new FS::cust_contact; #arbitrary, it could be prospect_contact
+ if ($opt{'for_prospect'}) {
+ $X_contact = new FS::prospect_contact;
+ } else {
+ $X_contact = new FS::cust_contact;
+ }
}
my %size = ( 'title' => 12 );
@@ -140,11 +183,16 @@ tie my %label, 'Tie::IxHash',
'first' => 'First name',
'last' => 'Last name',
'title' => 'Title/Position',
- 'emailaddress' => 'Email',
- 'invoice_dest' => 'Send invoices',
- 'selfservice_access' => 'Self-service'
+ 'emailaddress' => 'Email'
;
+unless ($opt{'for_prospect'}) {
+ $label{'invoice_dest'} = 'Send invoices';
+ $label{'message_dest'} = 'Send messages';
+ $label{'selfservice_access'} = 'Self-service';
+ $label{'password'} = 'Password';
+}
+
my $first = 0;
foreach my $phone_type ( qsearch({table=>'phone_type', order_by=>'weight'}) ) {
next if $phone_type->typename =~ /^(Home|Fax)$/;