diff options
author | Jonathan Prykop <jonathan@freeside.biz> | 2016-05-23 16:55:57 -0500 |
---|---|---|
committer | Jonathan Prykop <jonathan@freeside.biz> | 2016-05-23 20:34:46 -0500 |
commit | 50fc1d226ec89bf5fb66622ee913ec9e470b8d6c (patch) | |
tree | afc9abf9fae41aba69cf4b9685ea5e384ee52a2c /httemplate/misc | |
parent | e86b3578afbb298529e773506217cfc10e0257c4 (diff) |
RT#40215: OFM - Separate permissions for edit dates and contract dates [v3 only]
Diffstat (limited to 'httemplate/misc')
-rwxr-xr-x | httemplate/misc/confirm-cust_pkg-edit_dates.html | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/httemplate/misc/confirm-cust_pkg-edit_dates.html b/httemplate/misc/confirm-cust_pkg-edit_dates.html index 8e548527a..a0f79cdf0 100755 --- a/httemplate/misc/confirm-cust_pkg-edit_dates.html +++ b/httemplate/misc/confirm-cust_pkg-edit_dates.html @@ -2,15 +2,19 @@ my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" - unless $curuser->access_right('Edit customer package dates'); + unless $curuser->access_right('Edit customer package dates') + or $curuser->access_right('Change package contract end date'); my %arg = $cgi->Vars; +my $contract_only = $curuser->access_right('Edit customer package dates') ? 0 : 1; +$contract_only = 1 if $arg{'contract_only'}; + my $pkgnum = $arg{'pkgnum'}; $pkgnum =~ /^\d+$/ or die "bad pkgnum '$pkgnum'"; my $cust_pkg = qsearchs('cust_pkg',{'pkgnum'=>$pkgnum}); my %hash = $cust_pkg->hash; -foreach (qw( start_date setup bill last_bill contract_end )) { +foreach ( $contract_only ? qw( contract_end ) : qw( start_date setup bill last_bill contract_end )) { # adjourn, expire, resume not editable this way if( $arg{$_} =~ /^\d+$/ ) { $hash{$_} = $arg{$_}; @@ -262,6 +266,9 @@ if ( @errors ) { % foreach (keys %hash) { <INPUT TYPE="hidden" NAME="<%$_%>" VALUE="<% $hash{$_} |h%>"> % } +% if ($contract_only) { +<INPUT TYPE="hidden" NAME="contract_only" VALUE="1"> +% } </FORM> <SCRIPT> function submit_ready() { |