[set page_title]Edit Template[/set] [set ui_class]Content[/set] [set help_name]page.main[/set] [set icon_name]admin/icon_pages.gif[/set] @_UI_STD_HEAD_@
[perl tables="[list-databases] __UI_META_TABLE__"] # Some inits my $imgpath = $Tag->var('UI_IMG', 1) || $Variable->{UI_IMG} || ''; my $template_dir = $Variable->{UI_TEMPLATE_DIR} || 'templates'; my $out = ''; my $ver = $Tag->version(); sub tmp_error { my $msg = errmsg(@_); my $messages = join "\n--message--\n", @messages; return < EOF } # Probably should offload this to mv_click=process_filter my @filters = grep /^ui_filter:/, keys %$CGI; foreach my $key (@filters) { my $val = delete $CGI->{$key}; $key =~ s/ui_filter://; next unless $val; next unless defined $CGI->{$key}; $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); } my $new; if($CGI->{ui_template_new}) { #Debug("found new template"); $t_desc = $CGI->{ui_template_description} || $CGI->{ui_template_new}; $t_name = $CGI->{ui_template_new}; $t_name =~ s/^\W+//; $t_name =~ s/\W+$//; $t_name = lc $t_name; $t_name =~ s/\W/_/g; $new = 1; } else { $t_name = $CGI->{ui_template}; } my $t_file = "$template_dir/$t_name"; push @messages, "template: $t_name; t_file=$t_file"; ### Add some code here to check for existing templates... my $exists = -f $t_file; if($exists and $new) { return tmp_error( "Template named '%s', already exists, please delete first.", $t_name, ); } my $ary; my $tref; TEMPLATE_READ: { if(! $new) { $ary = $Tag->read_ui_template("$template_dir/$t_name"); $tref = shift @$ary; ref($tref) =~ /HASH/ or return tmp_error( "Template read error reading '%s'.", $t_name, ); last TEMPLATE_READ; } $tref = {}; my $name_top = uc($t_name) . "_TOP"; my $name_bot = uc($t_name) . "_BOTTOM"; $tref->{ui_template} = $t_name; $tref->{ui_template_name} = $t_name; $tref->{ui_template_layout} = "$name_top, UI_CONTENT, $name_bot"; $tref->{ui_template_description} = $t_desc; $tref->{ui_definition} = $tref->{ui_short_definition} = <{ui_upload_template} and $Tag->value_extended( { name => 'ui_upload_template', test => 'isfile', } ) ) { push @messages, "template from upload:\n$tref->{ui_definition}"; $template_input = $Tag->value_extended( { name => 'ui_upload_template', file_contents => 1, }); #push @messages, "template from upload is:\n$template_input"; $template_input =~ s{(.*)()}{$2}is; $template_top = $1; $template_top =~ s/^\s+//; $template_top =~ s/\s+$//; $template_input =~ s{()\n*(.*)}{$1\n}is; $template_bot = $2; $template_bot =~ s/^\s+//; $template_bot =~ s/\s+$//; $content = $template_input; $content =~ s/^\s* @_UI_STD_FOOTER_@
$msg
$messages