- check agentnum ability to order packages in FS::cust_pkg, not signup server
authorivan <ivan>
Mon, 22 Apr 2002 20:47:21 +0000 (20:47 +0000)
committerivan <ivan>
Mon, 22 Apr 2002 20:47:21 +0000 (20:47 +0000)
- order by recur price in signup-alternate template

FS/FS/cust_pkg.pm
fs_signup/FS-SignupClient/cgi/signup-alternate.html
fs_signup/fs_signup_server

index 0fc2147..b7633c1 100644 (file)
@@ -139,7 +139,13 @@ sub insert {
   my $error = $self->ut_number('custnum');
   return $error if $error;
 
-  return "Unknown customer ". $self->custnum unless $self->cust_main;
+  my $cust_main = $self->cust_main;
+  return "Unknown customer ". $self->custnum unless $cust_main;
+
+  my $agent = qsearchs( 'agent', { 'agentnum' => $cust_main->agentnum } );
+  my $pkgpart_href = $agent->pkgpart_hashref;
+  return "agent ". $agent->agentnum. " can't purchase pkgpart ". $self->pkgpart
+    unless $pkgpart_href->{ $self->{pkgpart} };
 
   $self->SUPER::insert;
 
@@ -695,7 +701,7 @@ sub order {
 
 =head1 VERSION
 
-$Id: cust_pkg.pm,v 1.18 2002-04-20 02:06:38 ivan Exp $
+$Id: cust_pkg.pm,v 1.19 2002-04-22 20:47:21 ivan Exp $
 
 =head1 BUGS
 
index bb013b9..490cefa 100755 (executable)
@@ -108,7 +108,9 @@ ENDOUT
       my %pkgpart2payby = map { $_->{pkgpart} => $_->{payby}[0] } @{$packages};
       tie my %options, 'Tie::IxHash',
         '' => '(none)',
-        map { $_->{pkgpart} => $_->{pkg} } @{$packages} 
+        map { $_->{pkgpart} => $_->{pkg} }
+          sort { $a->{recur} <=> $b->{recur} }
+            @{$packages} 
       ;
 
       use HTML::Widgets::SelectLayers 0.02;
index 089cfde..b823d30 100755 (executable)
@@ -147,13 +147,6 @@ while (1) {
         or $error ||= "WARNING: unknown pkgpart ". $signup_data->{pkgpart};
     my $svcpart = $part_pkg->svcpart unless $error;
 
-    # this should wind up in FS::cust_pkg!
-    my $agent = qsearchs( 'agent', { 'agentnum' => $agentnum } );
-    #my $pkgpart_href = $agent->pkgpart_hashref;
-    $error ||= "WARNING: agent $agentnum can't purchase pkgpart ".
-               $signup_data->{pkgpart}
-      unless $pkgpart_href->{ $signup_data->{pkgpart} };
-
     my $cust_pkg = new FS::cust_pkg ( {
       #later#'custnum' => $custnum,
       'pkgpart' => $signup_data->{'pkgpart'},