summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2018-06-15 16:53:50 -0400
committerChristopher Burger <burgerc@freeside.biz>2018-06-15 16:53:50 -0400
commitca8a483f90e0c9ee4a1d2e65ddee07278ff48a9d (patch)
treefa2ce43b741bbbb29375b6655bf628bb9d450dfd /httemplate
parent618f8725c360f29941b9d1720eb01fea85403185 (diff)
parentb4883ac11a0ddabd2b78a7451fe3634f9510f5f7 (diff)
Merge branch 'master' of ssh://git.freeside.biz/home/git/freeside
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/edit/cust_main/name.html19
-rw-r--r--httemplate/edit/cust_main/stateid.html7
-rw-r--r--httemplate/elements/link-replace_element_text.html45
-rw-r--r--httemplate/search/prospect_main.html1
-rw-r--r--httemplate/view/cust_main/contacts.html30
-rw-r--r--httemplate/view/prospect_main.html17
6 files changed, 109 insertions, 10 deletions
diff --git a/httemplate/edit/cust_main/name.html b/httemplate/edit/cust_main/name.html
index 713f54cdb..c1078d46a 100644
--- a/httemplate/edit/cust_main/name.html
+++ b/httemplate/edit/cust_main/name.html
@@ -1,7 +1,17 @@
<%def .namepart>
-% my ($field, $value, $label, $extra) = @_;
+% my ($field, $value, $label, $extra, $unmask_field) = @_;
<DIV STYLE="display: inline-block" ID="<% $field %>_input">
<INPUT TYPE="text" NAME="<% $field %>" VALUE="<% $value |h %>" <%$extra%>>
+% if (
+% ref $unmask_field
+% && !$unmask_field->{unmask_ss}
+% && $FS::CurrentUser::CurrentUser->access_right( $unmask_field->{access_right} )
+% ) {
+ <& /elements/link-replace_element_text.html, {
+ target_id => $unmask_field->{target_id},
+ replace_text => $unmask_field->{replace_text},
+ } &>
+% }
<BR><FONT SIZE="-1" COLOR="#333333"><% emt($label) %></FONT>
</DIV>
</%def>
@@ -13,7 +23,12 @@
<& .namepart, 'first', $cust_main->first, 'First' &>
% if ( $conf->exists('show_ss') ) {
&nbsp;
- <& .namepart, 'ss', $ss, 'SS#', "SIZE=11" &>
+ <& .namepart, 'ss', $ss, 'SS#', "SIZE=11 ID='ss'", {
+ target_id => 'ss',
+ replace_text => $cust_main->ss,
+ access_right => 'Unmask customer SSN',
+ unmask_ss => $conf->exists('unmask_ss'),
+ } &>
% } else {
<INPUT TYPE="hidden" NAME="ss" VALUE="<% $ss %>">
% }
diff --git a/httemplate/edit/cust_main/stateid.html b/httemplate/edit/cust_main/stateid.html
index 3500d631c..cc0890fe1 100644
--- a/httemplate/edit/cust_main/stateid.html
+++ b/httemplate/edit/cust_main/stateid.html
@@ -1,7 +1,12 @@
% if ( $conf->exists('show_stateid') ) {
<TR>
<TH ALIGN="right"><% $stateid_label %></TH>
- <TD><INPUT TYPE="text" NAME="stateid" VALUE="<% $stateid %>" SIZE=12></TD>
+ <TD>
+ <INPUT TYPE="text" NAME="stateid" VALUE="<% $stateid %>" SIZE=12 ID="stateid">
+% if ( $FS::CurrentUser::CurrentUser->access_right( 'Unmask customer DL' )) {
+ <& /elements/link-replace_element_text.html, {target_id => 'stateid', replace_text => $cust_main->stateid} &>
+% }
+ </TD>
<TD><& /elements/select-state.html,
state => $cust_main->stateid_state,
country => $cust_main->country, # how does this work on new customer?
diff --git a/httemplate/elements/link-replace_element_text.html b/httemplate/elements/link-replace_element_text.html
new file mode 100644
index 000000000..8e611954c
--- /dev/null
+++ b/httemplate/elements/link-replace_element_text.html
@@ -0,0 +1,45 @@
+<%doc>
+
+Display a link with javascript to replace text within a element.
+
+Usage:
+
+<& /elements/link-replace_element_text.html, {
+ target_id => 'input_id',
+ replace_text => 'hello',
+
+ element_type => 'input', # Uses jquery val() method to replace text
+ element_type => 'div', # Uses jquery text() method to replace text
+
+ href => ...
+ style => ...
+ class => ...
+ }
+&>
+
+</%doc>
+<a href="<% $param{href} %>"
+ style="<% $param{style} %>"
+% if ($param{class}) {
+ class="<% $param{class} %>"
+% }
+ onClick="$('#<% $param{target_id} %>').<% $param{jmethod} %>('<% $param{replace_text} |h %>');">&#x25C1;</a>
+<%init>
+
+die "template call requires a parameter hashref" unless ref $_[0];
+
+# Defaults that can be overridden in param hashref
+my %param = (
+ target_id => 'SPECIFY_AN_INPUT_ELEMENT_ID',
+ replace_text => 'REPLACEMENT_TEXT_FOR_INPUT_ELEMENT',
+ element_type => 'input',
+
+ link_text => '%#x25C1;', # ◁
+ href => 'javascript:void(0)',
+ style => 'text-decoration:none;',
+ class => undef,
+
+ %{ $_[0] },
+);
+$param{jmethod} = $param{element_type} eq 'input' ? 'val' : 'text';
+</%init>
diff --git a/httemplate/search/prospect_main.html b/httemplate/search/prospect_main.html
index d65d4d19d..0eb45f338 100644
--- a/httemplate/search/prospect_main.html
+++ b/httemplate/search/prospect_main.html
@@ -17,7 +17,6 @@
}
$pm->prospect_contact
];
- ''
},
sub {
my $pr = shift->part_referral;
diff --git a/httemplate/view/cust_main/contacts.html b/httemplate/view/cust_main/contacts.html
index 1660c1c22..367659293 100644
--- a/httemplate/view/cust_main/contacts.html
+++ b/httemplate/view/cust_main/contacts.html
@@ -29,9 +29,20 @@
<TD COLSPAN=5><% $cust_main->contact |h %></TD>
% if ( $conf->exists('show_ss') ) {
<TH ALIGN="right"><% mt('SS#') |h %></TH>
- <TD><% $conf->exists('unmask_ss')
- ? $cust_main->ss
- : $cust_main->masked('ss') || '&nbsp;' %></TD>
+ <TD>
+ <span id="ss_span" style="white-space:nowrap;">
+ <% $conf->exists('unmask_ss')
+ ? $cust_main->ss
+ : $cust_main->masked('ss') || '&nbsp;' %>
+% if ( !$conf->exists('unmask_ss') && $FS::CurrentUser::CurrentUser->access_right('Unmask customer SSN')) {
+ <& /elements/link-replace_element_text.html, {
+ target_id => 'ss_span',
+ replace_text => $cust_main->ss,
+ element_type => 'span'
+ } &>
+% }
+ </span>
+ </TD>
% }
</TR>
% if ( $conf->exists('cust_main-enable_spouse') and
@@ -172,7 +183,18 @@
<TR>
<TH ALIGN="right"><% $stateid_label %></TH>
- <TD><% $cust_main->masked('stateid') || '&nbsp' %></TD>
+ <TD>
+ <span id="stateid_span" style="white-space:nowrap;">
+ <% $cust_main->masked('stateid') || '&nbsp' %>
+% if ( $FS::CurrentUser::CurrentUser->access_right('Unmask customer DL')) {
+ <& /elements/link-replace_element_text.html, {
+ target_id => 'stateid_span',
+ replace_text => $cust_main->stateid,
+ element_type => 'span'
+ } &>
+% }
+ </span>
+ </TD>
<TH ALIGN="right"><% $stateid_state_label %></TH>
<TD><% $cust_main->stateid_state || '&nbsp' %></TD>
</TR>
diff --git a/httemplate/view/prospect_main.html b/httemplate/view/prospect_main.html
index f4dd4146f..504a5a8ec 100644
--- a/httemplate/view/prospect_main.html
+++ b/httemplate/view/prospect_main.html
@@ -24,8 +24,21 @@
% foreach my $prospect_contact ( $prospect_main->prospect_contact ) {
% my $contact = $prospect_contact->contact;
<TR>
- <TH ALIGN="right"><% $prospect_contact->contact_classname %> Contact</TD>
- <TD BGCOLOR="#FFFFFF"><% $contact->line %></TD>
+ <TH ALIGN="right" VALIGN="top"><% $prospect_contact->contact_classname %> Contact</TH>
+ <TD BGCOLOR="#FFFFFF">
+ <% $contact->line %><br>
+ <table>
+% for my $row ( $contact->contact_email ) {
+ <tr><th>E-Mail:</th><td><% $row->emailaddress %></td></tr>
+% }
+% for my $row ( $contact->contact_phone ) {
+ <tr><th><% $row->phone_type->typename %>:</th><td><% $row->phonenum_pretty %></td></tr>
+% }
+% if ( $prospect_contact->comment ) {
+ <tr><th>Comment:</th><td><% $prospect_contact->comment %></td></tr>
+% }
+ </table>
+ </TD>
</TR>
%}