diff options
author | jeff <jeff> | 2007-12-04 18:19:08 +0000 |
---|---|---|
committer | jeff <jeff> | 2007-12-04 18:19:08 +0000 |
commit | 2c6b7c910668dc09dff9ec34b169a240850f16c0 (patch) | |
tree | b0b9097ddab86f3ee59d95ec6d267b4514693d92 /httemplate/elements | |
parent | b15c501be0d1d1331758916ec3bb1b4aab3b78ef (diff) |
change credit reasons from freetext to new reason/reason type system (#2777)
Diffstat (limited to 'httemplate/elements')
-rw-r--r-- | httemplate/elements/menu.html | 2 | ||||
-rwxr-xr-x | httemplate/elements/tr-select-reason.html | 28 |
2 files changed, 28 insertions, 2 deletions
diff --git a/httemplate/elements/menu.html b/httemplate/elements/menu.html index 3c352ae09..5c0314ced 100644 --- a/httemplate/elements/menu.html +++ b/httemplate/elements/menu.html @@ -248,6 +248,8 @@ tie my %config_billing, 'Tie::IxHash', 'View/Edit prepaid cards' => [ $fsurl.'search/prepay_credit.html', 'View outstanding cards, generate new cards' ], 'View/Edit call rates and regions' => [ $fsurl.'browse/rate.cgi', 'Manage rate plans, regions and prefixes for VoIP and call billing' ], 'View/Edit locales and tax rates' => [ $fsurl.'browse/cust_main_county.cgi', 'Change tax rates, or break down a country into states, or a state into counties and assign different tax rates to each' ], + 'View/Edit credit reason types' => [ $fsurl.'browse/reason_type.html?class=R', 'Credit reason types define groups of reasons, for reporting and convenience purposes.' ], + 'View/Edit credit reasons' => [ $fsurl.'browse/reason.html?class=R', 'Credit reasons explain why a credit was issued.' ], ; tie my %config_dialup, 'Tie::IxHash', diff --git a/httemplate/elements/tr-select-reason.html b/httemplate/elements/tr-select-reason.html index 2f8f3a109..371f384be 100755 --- a/httemplate/elements/tr-select-reason.html +++ b/httemplate/elements/tr-select-reason.html @@ -54,18 +54,39 @@ </TD> </TR> +% my @types = qsearch( 'reason_type', { 'class' => $class } ); +% if (scalar(@types) < 1) { # we should never reach this +<TR> + <TD ALIGN="right"> + <P>No reason types. Go add some. </P> + </TD> +</TR> +% }elsif (scalar(@types) == 1) { +<TR> + <TD ALIGN="right"> + <P id="new<% $name %>TLabel" style="display:<% $display %>">Reason Type</P> + </TD> + <TD> + <P id="new<% $name %>T" disabled="<% $disabled %>" style="display:<% $display %>"><% $types[0]->type %> + <INPUT type="hidden" name="new<% $name %>T" value="<% $types[0]->typenum %>"> + </TD> +</TR> + +% }else{ + <TR> <TD ALIGN="right"> <P id="new<% $name %>TLabel" style="display:<% $display %>">Reason Type</P> </TD> <TD> <SELECT id="new<% $name %>T" name="new<% $name %>T" disabled="<% $disabled %>" style="display:<% $display %>"> -% for my $type (qsearch( 'reason_type', { 'class' => $class } )){ +% for my $type (@types){ <OPTION VALUE="<% $type->typenum %>" <% ($init_type == $type->typenum) ? 'SELECTED' : '' %>><% $type->type %></OPTION> % } </SELECT> </TD> </TR> +% } <TR> <TD ALIGN="right"> @@ -82,6 +103,8 @@ if ($class eq 'C') { $access_right='Add on-the-fly cancel reason'; }elsif ($class eq 'S') { $access_right='Add on-the-fly suspend reason'; +}elsif ($class eq 'R') { + $access_right='Add on-the-fly credit reason'; }else{ print "illegal class: $class"; } @@ -94,7 +117,8 @@ if ($init_reason == -1){ $disabled = 'true'; } -$extra_sql = "WHERE class = '$class' ORDER BY reason_type"; +$extra_sql = "WHERE class = '$class' and (disabled = '' OR disabled is NULL) ". + "ORDER BY reason_type"; $curuser = $FS::CurrentUser::CurrentUser; </%init> |