in the unlikely error case, the order button should stay enabled
[freeside.git] / httemplate / misc / order_pkg.html
index c81f5b0..852b51c 100644 (file)
@@ -10,6 +10,8 @@ function enable_order_pkg () {
 }
 </SCRIPT>
 
+<% include('/elements/error.html') %>
+
 <FORM NAME="OrderPkgForm" ACTION="<% $p %>edit/process/quick-cust_pkg.cgi" METHOD="POST">
 
 <INPUT TYPE="hidden" NAME="custnum" VALUE="<% $cust_main->custnum %>">
@@ -18,21 +20,12 @@ function enable_order_pkg () {
 <TR>
   <TH ALIGN="right">Package</TH>
   <TD>
-    <SELECT NAME="pkgpart" onChange="enable_order_pkg()"><OPTION>Select package
-
-%foreach my $part_pkg (
-%  qsearch( 'part_pkg', { 'disabled' => '' }, '',
-%           ' AND 0 < ( SELECT COUNT(*) FROM type_pkgs '.
-%           '             WHERE typenum = '. $cust_main->agent->typenum.
-%           '             AND type_pkgs.pkgpart = part_pkg.pkgpart )'
-%         )
-%) {
-
-      <OPTION VALUE="<% $part_pkg->pkgpart %>"><% $part_pkg->pkg %> - <% $part_pkg->comment %>
-
-% } 
-
-    </SELECT>
+    <% include('/elements/select-cust-part_pkg.html',
+                 'curr_value' => $pkgpart,
+                 'cust_main'  => $cust_main,
+                 'onchange'   => 'enable_order_pkg',
+              )
+    %>
   </TD>
 </TR>
 
@@ -48,15 +41,19 @@ function enable_order_pkg () {
 </TABLE>
 
 <BR>
-<INPUT NAME="submit" TYPE="submit" VALUE="Order Package" disabled>
+<INPUT NAME="submit" TYPE="submit" VALUE="Order Package" <% $pkgpart ? '' : 'DISABLED' %>>
 
 </FORM>
+</BODY>
+</HTML>
 <%init>
 
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('Order customer package');
+
 my $conf = new FS::Conf;
 
-my($query) = $cgi->keywords;
-$query =~ /^(\d+)$/;
+$cgi->param('custnum') =~ /^(\d+)$/;
 my $custnum = $1;
 my $cust_main = qsearchs({
   'table'     => 'cust_main',
@@ -64,4 +61,6 @@ my $cust_main = qsearchs({
   'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
 });
 
+my $pkgpart = scalar($cgi->param('pkgpart'));
+
 </%init>