templates!!!
[freeside.git] / httemplate / edit / agent.cgi
1 <%
2 #
3 # $Id: agent.cgi,v 1.1 2001-07-30 07:36:04 ivan Exp $
4 #
5 # ivan@sisd.com 97-dec-12
6 #
7 # Changes to allow page to work at a relative position in server
8 # Changed 'type' to 'atype' because Pg6.3 reserves the type word
9 #       bmccane@maxbaud.net     98-apr-3
10 #
11 # use FS::CGI, added inline documentation ivan@sisd.com 98-jul-12
12 #
13 # $Log: agent.cgi,v $
14 # Revision 1.1  2001-07-30 07:36:04  ivan
15 # templates!!!
16 #
17 # Revision 1.7  1999/04/07 11:27:50  ivan
18 # avoid perl's silly arguement not numeric error
19 #
20 # Revision 1.6  1999/01/25 12:09:50  ivan
21 # yet more mod_perl stuff
22 #
23 # Revision 1.5  1999/01/19 05:13:31  ivan
24 # for mod_perl: no more top-level my() variables; use vars instead
25 # also the last s/create/new/;
26 #
27 # Revision 1.4  1999/01/18 09:41:21  ivan
28 # all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl
29 # (good idea anyway)
30 #
31 # Revision 1.3  1998/12/17 06:16:57  ivan
32 # fix double // in relative URLs, s/CGI::Base/CGI/;
33 #
34 # Revision 1.2  1998/11/23 07:52:08  ivan
35 # *** empty log message ***
36 #
37
38 use strict;
39 use vars qw ( $cgi $agent $action $hashref $p $agent_type );
40 use CGI;
41 use CGI::Carp qw(fatalsToBrowser);
42 use FS::UID qw(cgisuidsetup);
43 use FS::CGI qw(header menubar popurl);
44 use FS::Record qw(qsearch qsearchs fields);
45 use FS::agent;
46 use FS::agent_type;
47
48 $cgi = new CGI;
49
50 &cgisuidsetup($cgi);
51
52 if ( $cgi->param('error') ) {
53   $agent = new FS::agent ( {
54     map { $_, scalar($cgi->param($_)) } fields('agent')
55   } );
56 } elsif ( $cgi->keywords ) {
57   my($query) = $cgi->keywords;
58   $query =~ /^(\d+)$/;
59   $agent = qsearchs( 'agent', { 'agentnum' => $1 } );
60 } else { #adding
61   $agent = new FS::agent {};
62 }
63 $action = $agent->agentnum ? 'Edit' : 'Add';
64 $hashref = $agent->hashref;
65
66 $p = popurl(2);
67
68 print $cgi->header( '-expires' => 'now' ), header("$action Agent", menubar(
69   'Main Menu' => $p,
70   'View all agents' => $p. 'browse/agent.cgi',
71 ));
72
73 print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: !, $cgi->param('error'),
74       "</FONT>"
75   if $cgi->param('error');
76
77 print '<FORM ACTION="', popurl(1), 'process/agent.cgi" METHOD=POST>',
78       qq!<INPUT TYPE="hidden" NAME="agentnum" VALUE="$hashref->{agentnum}">!,
79       "Agent #", $hashref->{agentnum} ? $hashref->{agentnum} : "(NEW)";
80
81 print <<END;
82 <PRE>
83 Agent                     <INPUT TYPE="text" NAME="agent" SIZE=32 VALUE="$hashref->{agent}">
84 Agent type                <SELECT NAME="typenum" SIZE=1>
85 END
86
87 foreach $agent_type (qsearch('agent_type',{})) {
88   print "<OPTION VALUE=". $agent_type->typenum;
89   print " SELECTED"
90     if $hashref->{typenum} && ( $hashref->{typenum} == $agent_type->typenum );
91   print ">", $agent_type->getfield('typenum'), ": ",
92         $agent_type->getfield('atype'),"\n";
93 }
94
95 print <<END;
96 </SELECT>
97 Frequency (unimplemented) <INPUT TYPE="text" NAME="freq" VALUE="$hashref->{freq}">
98 Program (unimplemented)   <INPUT TYPE="text" NAME="prog" VALUE="$hashref->{prog}">
99 </PRE>
100 END
101
102 print qq!<BR><INPUT TYPE="submit" VALUE="!,
103       $hashref->{agentnum} ? "Apply changes" : "Add agent",
104       qq!">!;
105
106 print <<END;
107     </FORM>
108   </BODY>
109 </HTML>
110 END
111
112 %>