Initial revision
authorivan <ivan>
Sun, 12 Jul 1998 20:29:24 +0000 (20:29 +0000)
committerivan <ivan>
Sun, 12 Jul 1998 20:29:24 +0000 (20:29 +0000)
htdocs/edit/agent.cgi [new file with mode: 0755]
htdocs/edit/agent_type.cgi [new file with mode: 0755]

diff --git a/htdocs/edit/agent.cgi b/htdocs/edit/agent.cgi
new file mode 100755 (executable)
index 0000000..5bd1165
--- /dev/null
@@ -0,0 +1,77 @@
+#!/usr/bin/perl -Tw
+#
+# agent.cgi: Add/Edit agent (output form)
+#
+# ivan@sisd.com 97-dec-12
+#
+# Changes to allow page to work at a relative position in server
+# Changed 'type' to 'atype' because Pg6.3 reserves the type word
+#      bmccane@maxbaud.net     98-apr-3
+#
+# use FS::CGI, added inline documentation ivan@sisd.com 98-jul-12
+
+use strict;
+use CGI::Base;
+use CGI::Carp qw(fatalsToBrowser);
+use FS::UID qw(cgisuidsetup);
+use FS::Record qw(qsearch qsearchs);
+use FS::agent;
+use FS::CGI qw(header menubar);
+
+my($cgi) = new CGI::Base;
+$cgi->get;
+
+&cgisuidsetup($cgi);
+
+SendHeaders(); # one guess.
+
+my($agent,$action);
+if ( $cgi->var('QUERY_STRING') =~ /^(\d+)$/ ) { #editing
+  $agent=qsearchs('agent',{'agentnum'=>$1});
+  $action='Edit';
+} else { #adding
+  $agent=create FS::agent {};
+  $action='Add';
+}
+my($hashref)=$agent->hashref;
+
+print header("$action Agent", menubar(
+  'Main Menu' => '../',
+  'View all agents' => '../browse/agent.cgi',
+)), '<FORM ACTION="process/agent.cgi" METHOD=POST>';
+
+print qq!<INPUT TYPE="hidden" NAME="agentnum" VALUE="$hashref->{agentnum}">!,
+      "Agent #", $hashref->{agentnum} ? $hashref->{agentnum} : "(NEW)";
+
+print <<END;
+<PRE>
+Agent                     <INPUT TYPE="text" NAME="agent" SIZE=32 VALUE="$hashref->{agent}">
+Agent type                <SELECT NAME="typenum" SIZE=1>
+END
+
+my($agent_type);
+foreach $agent_type (qsearch('agent_type',{})) {
+  print "<OPTION";
+  print " SELECTED"
+    if $hashref->{typenum} == $agent_type->getfield('typenum');
+  print ">", $agent_type->getfield('typenum'), ": ",
+        $agent_type->getfield('atype'),"\n";
+}
+
+print <<END;
+</SELECT>
+Frequency (unimplemented) <INPUT TYPE="text" NAME="freq" VALUE="$hashref->{freq}">
+Program (unimplemented)   <INPUT TYPE="text" NAME="prog" VALUE="$hashref->{prog}">
+</PRE>
+END
+
+print qq!<BR><INPUT TYPE="submit" VALUE="!,
+      $hashref->{agentnum} ? "Apply changes" : "Add agent",
+      qq!">!;
+
+print <<END;
+    </FORM>
+  </BODY>
+</HTML>
+END
+
diff --git a/htdocs/edit/agent_type.cgi b/htdocs/edit/agent_type.cgi
new file mode 100755 (executable)
index 0000000..b9fff45
--- /dev/null
@@ -0,0 +1,75 @@
+#!/usr/bin/perl -Tw
+#
+# agent_type.cgi: Add/Edit agent type (output form)
+#
+# ivan@sisd.com 97-dec-10
+#
+# Changes to allow page to work at a relative position in server
+# Changed 'type' to 'atype' because Pg6.3 reserves the type word
+#      bmccane@maxbaud.net     98-apr-3
+#
+# use FS::CGI, added inline documentation ivan@sisd.com 98-jul-12
+
+use strict;
+use CGI::Base;
+use CGI::Carp qw(fatalsToBrowser);
+use FS::UID qw(cgisuidsetup);
+use FS::Record qw(qsearch qsearchs);
+use FS::agent_type;
+use FS::CGI qw(header menubar);
+
+my($cgi) = new CGI::Base;
+$cgi->get;
+
+&cgisuidsetup($cgi);
+
+SendHeaders(); # one guess.
+
+my($agent_type,$action);
+if ( $cgi->var('QUERY_STRING') =~ /^(\d+)$/ ) { #editing
+  $agent_type=qsearchs('agent_type',{'typenum'=>$1});
+  $action='Edit';
+} else { #adding
+  $agent_type=create FS::agent_type {};
+  $action='Add';
+}
+my($hashref)=$agent_type->hashref;
+
+print header("$action Agent Type", menubar(
+  'Main Menu' => '../',
+  'View all agent types' => '../browse/agent_type.cgi',
+)), '<FORM ACTION="process/agent_type.cgi" METHOD=POST>';
+
+print qq!<INPUT TYPE="hidden" NAME="typenum" VALUE="$hashref->{typenum}">!,
+      "Agent Type #", $hashref->{typenum} ? $hashref->{typenum} : "(NEW)";
+
+print <<END;
+<BR>Type <INPUT TYPE="text" NAME="atype" SIZE=32 VALUE="$hashref->{atype}">
+<P>Select which packages agents of this type may sell to customers</P>
+END
+
+my($part_pkg);
+foreach $part_pkg ( qsearch('part_pkg',{}) ) {
+  print qq!<BR><INPUT TYPE="checkbox" NAME="pkgpart!,
+        $part_pkg->getfield('pkgpart'), qq!" !,
+       # ( 'CHECKED 'x scalar(
+        qsearchs('type_pkgs',{
+          'typenum' => $agent_type->getfield('typenum'),
+          'pkgpart'  => $part_pkg->getfield('pkgpart'),
+        })
+          ? 'CHECKED '
+          : '',
+        qq!"VALUE="ON"> !,$part_pkg->getfield('pkg')
+  ;
+}
+
+print qq!<BR><INPUT TYPE="submit" VALUE="!,
+      $hashref->{typenum} ? "Apply changes" : "Add agent type",
+      qq!">!;
+
+print <<END;
+    </FORM>
+  </BODY>
+</HTML>
+END
+