-%
-%my ($vfieldpart, $part_virtual_field);
-%
-%if ( $cgi->param('error') ) {
-% $part_virtual_field = new FS::part_virtual_field ( {
-% map { $_, scalar($cgi->param($_)) } fields('part_virtual_field')});
-% $vfieldpart = $part_virtual_field->vfieldpart;
-%} else {
-% my($query) = $cgi->keywords;
-% if ( $query =~ /^(\d+)$/ ) { #editing
-% $vfieldpart=$1;
-% $part_virtual_field=qsearchs('part_virtual_field',
-% {'vfieldpart' => $vfieldpart})
-% or die "Unknown vfieldpart!";
-%
-% } else { #adding
-% $part_virtual_field = new FS::part_virtual_field({});
-% }
-%}
-%my $action = $part_virtual_field->vfieldpart ? 'Edit' : 'Add';
-%
-%my $p1 = popurl(1);
-%
-%
<% include('/elements/header.html', "$action Virtual Field Definition") %>
-% if ( $cgi->param('error') ) {
-
- <FONT SIZE="+1" COLOR="#ff0000">Error: <% $cgi->param('error') %></FONT>
- <BR><BR>
-% }
+<% include('/elements/error.html') %>
<FORM ACTION="<%$p1%>process/generic.cgi" METHOD="POST">
<%ntable("#cccccc",2)%>
<TR>
<TD ALIGN="right">Name</TD>
- <TD><INPUT TYPE="text" NAME="name" MAXLENGTH=15 VALUE="<%
+ <TD><INPUT TYPE="text" NAME="name" MAXLENGTH=32 VALUE="<%
$part_virtual_field->name%>"></TD>
</TR>
<TR>
%
% my $dbdef = dbdef; # ick
% #foreach my $dbtable (sort { $a cmp $b } $dbdef->tables) {
-% foreach my $dbtable (qw( svc_broadband )) {
+% foreach my $dbtable (qw( svc_broadband router )) {
% if ($dbtable !~ /^h_/
% and $dbdef->table($dbtable)->primary_key) {
</TD>
<TR>
<TD ALIGN="right">Label</TD>
- <TD><INPUT TYPE="text" NAME="label" MAXLENGTH="20" VALUE="<%
+ <TD><INPUT TYPE="text" NAME="label" MAXLENGTH="80" VALUE="<%
$part_virtual_field->label%>"></TD>
</TR>
<TR>
<I>list_source</I> mean, <B>LEAVE THEM BLANK</B>. We mean it.</FONT>
<% include('/elements/footer.html') %>
+
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+
+my ($vfieldpart, $part_virtual_field);
+
+if ( $cgi->param('error') ) {
+ $part_virtual_field = new FS::part_virtual_field ( {
+ map { $_, scalar($cgi->param($_)) } fields('part_virtual_field')});
+ $vfieldpart = $part_virtual_field->vfieldpart;
+} else {
+ my($query) = $cgi->keywords;
+ if ( $query =~ /^(\d+)$/ ) { #editing
+ $vfieldpart=$1;
+ $part_virtual_field=qsearchs('part_virtual_field',
+ {'vfieldpart' => $vfieldpart})
+ or die "Unknown vfieldpart!";
+
+ } else { #adding
+ $part_virtual_field = new FS::part_virtual_field({});
+ }
+}
+my $action = $part_virtual_field->vfieldpart ? 'Edit' : 'Add';
+
+my $p1 = popurl(1);
+
+</%init>