1 <% include('/elements/header.html', "$action $svc", '') %>
3 <% include('/elements/error.html') %>
5 <FORM ACTION="<% $p %>edit/process/svc_cert.cgi" METHOD=POST>
6 <INPUT TYPE="hidden" NAME="svcnum" VALUE="<% $svcnum %>">
7 <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">
8 <INPUT TYPE="hidden" NAME="svcpart" VALUE="<% $svcpart %>">
10 <% ntable("#cccccc",2) %>
13 <TD ALIGN="right">Private key</TD>
14 <TD BGCOLOR="#ffffff">
15 % if ( $svc_cert->privatekey && $svc_cert->check_privatekey ) {
16 <FONT COLOR="#33ff33">Verification OK</FONT>
17 % # remove key & cert link? just unprovision?
21 % my $cust_main = $svc_cert->cust_svc->cust_pkg->cust_main;
24 <TD ALIGN="right">Organization</TD>
25 <TD><INPUT TYPE="text" NAME="organization" SIZE=40 MAXLENGTH=80 VALUE="<% $svc_cert->organization || $cust_main->company |h %>"></TD>
29 <TD ALIGN="right">Organization Unit</TD>
30 <TD><INPUT TYPE="text" NAME="organization_unit" SIZE=40 MAXLENGTH=80 VALUE="<% $svc_cert->organization_unit |h %>"></TD>
34 <TD ALIGN="right">City</TD>
35 <TD><% include('/elements/city.html',
36 'city' => $svc_cert->city || $cust_main->city,
37 'state' => $svc_cert->state || $cust_main->state,
38 'country' => $svc_cert->country || $cust_main->country,
45 <TD ALIGN="right">State</TD>
46 <TD><% include('/elements/select-state.html',
47 'city' => $svc_cert->city || $cust_main->city,
48 'state' => $svc_cert->state || $cust_main->state,
49 'country' => $svc_cert->country || $cust_main->country,
56 <TD ALIGN="right">City</TD>
57 <TD><% include('/elements/select-country.html',
58 'city' => $svc_cert->city || $cust_main->city,
59 'state' => $svc_cert->state || $cust_main->state,
60 'country' => $svc_cert->country || $cust_main->country,
68 % if ( $svc_cert->privatekey ) {
69 <FONT COLOR="#ff0000">Verification error</FONT>
70 % $re = 'Clear and Re-';
72 <% include('/elements/popup_link.html', {
73 'action' => "svc_cert/generate_privatekey.html$link_query",
74 'label' => $re.'Generate',
75 'actionlabel' => 'Generate private key',
79 #'color' => '#ff0000',
80 #'closetext' => 'Go Away', # the value '' removes the link
85 <% include('/elements/popup_link.html', {
86 'action' => "svc_cert/import_privatekey.html$link_query",
87 'label' => $re.'Import',
88 'actionlabel' => 'Import private key',
92 #'color' => '#ff0000',
93 #'closetext' => 'Go Away', # the value '' removes the link
95 % if ( $svc_cert->privatekey ) {
96 <PRE><% $svc_cert->privatekey |h %></PRE>
105 <INPUT TYPE="submit" VALUE="Submit">
109 <% include('/elements/footer.html') %>
114 unless $FS::CurrentUser::CurrentUser->access_right('Provision customer service'); #something else more specific?
116 my $conf = new FS::Conf;
118 my($svcnum, $pkgnum, $svcpart, $part_svc, $svc_cert );
119 if ( $cgi->param('error') ) {
121 $svc_cert = new FS::svc_cert ( {
122 map { $_, scalar($cgi->param($_)) } fields('svc_cert')
124 $svcnum = $svc_cert->svcnum;
125 $pkgnum = $cgi->param('pkgnum');
126 $svcpart = $cgi->param('svcpart');
127 $part_svc = qsearchs('part_svc', { 'svcpart' => $svcpart } );
128 die "No part_svc entry!" unless $part_svc;
130 } elsif ( $cgi->param('pkgnum') && $cgi->param('svcpart') ) { #adding
132 $cgi->param('pkgnum') =~ /^(\d+)$/ or die 'unparsable pkgnum';
134 $cgi->param('svcpart') =~ /^(\d+)$/ or die 'unparsable svcpart';
137 $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
138 die "No part_svc entry!" unless $part_svc;
140 $svc_cert = new FS::svc_cert({});
144 $svc_cert->set_default_and_fixed;
148 my($query) = $cgi->keywords;
149 $query =~ /^(\d+)$/ or die "unparsable svcnum";
151 $svc_cert=qsearchs('svc_cert',{'svcnum'=>$svcnum})
152 or die "Unknown (svc_cert) svcnum!";
154 my($cust_svc)=qsearchs('cust_svc',{'svcnum'=>$svcnum})
155 or die "Unknown (cust_svc) svcnum!";
157 $pkgnum=$cust_svc->pkgnum;
158 $svcpart=$cust_svc->svcpart;
160 $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
161 die "No part_svc entry!" unless $part_svc;
164 my $action = $svcnum ? 'Edit' : 'Add';
166 my $svc = $part_svc->getfield('svc');
168 #my $otaker = getotaker;
172 my $link_query = "?svcnum=$svcnum;pkgnum=$pkgnum;svcpart=$svcpart";