[set page_title]Layout Editor[/set] [set ui_class]Design[/set] [set page_banner]Layout Editor: Organize your site into categories[/set] [set page_perm]layout=e[/set] [set help_name]layout.edit[/set] [set icon_name]icon_pages.gif[/set] [set ui_body_extra][/set] @_UI_STD_HEAD_@
![]() |
||||
[if cgi area] [then] |
Contains: [perl tables=cat] my $db = $Db{cat} || return; my $settor = $db->field_settor('sort'); foreach ( @{ $Scratch->{cat_sort} } ) { $settor->( @$_ ); } delete $Scratch->{start_sort}; return; [/perl] [button text="Category properties" hspace=2 vspace=5 hidetext=1 src="icon_pages.gif"][/button] [button text="Sort category higher" hidetext=1 src="up.gif"] [flag type=write table=cat] [perl tables=cat] my $db = $Db{cat} || return; my $arr = delete $Scratch->{cat_sort}; my $sort; foreach (reverse @$arr) { # Swap sort with previous one if ($sort) { $db->set_field($CGI->{cat}, 'sort', $_->[1]); $db->set_field($_->[0], 'sort', $sort); last; } # Current: swap with next if ( $CGI->{cat} eq $_->[0] ) { $sort = $_->[1]; } } return; [/perl] [/button] [button text="Sort category lower" hidetext=1 src="down.gif"] [flag type=write table=cat] [perl tables=cat] my $db = $Db{cat} || return; my $arr = delete $Scratch->{cat_sort}; my $sort; foreach (@$arr) { # Swap sort with previous one if ($sort) { $db->set_field($CGI->{cat}, 'sort', $_->[1]); $db->set_field($_->[0], 'sort', $sort); last; } # Current: swap with next if ( $CGI->{cat} eq $_->[0] ) { $sort = $_->[1]; } } return; [/perl] [/button] [button text="Create category" hidetext=1 src="plus.gif"] mv_todo=back newcat=NEW [/button] [button text="Delete category" hidetext=1 src="delete.gif" confirm="Are you sure you want to delete this category?" ] [tag flag write]cat[/tag] mv_nextpage=@@MV_PAGE@@ [if-mm advanced sitedesign=d] [perl tables="cat"] my ($item) = $CGI->{cat}; my $out; unless ($Db{cat}) { Log("no site design table 'cat'"); return undef; } my $name = $Db{cat}->field($item, 'name'); if ($Db{cat}->delete_record($item)) { $out .= "Deleted $name from cat table "; } else { $out .= "Item $item not in $_ table (or delete failed) "; } $Scratch->{ui_message} = $out; return; [/perl] [else] [set ui_message]Not authorized to delete items.[/set] [/else] [/if-mm] [/button] |
|
[value name=mv_data_table set="area" hide=1] [perl tables="[value mv_data_table]"] my $table = $Values->{mv_data_table}; $Values->{ui_data_key_name} = $Db{$table}->config('KEY'); if ($table ne $Values->{mv_data_table}) { $Values->{mv_data_table} = $table; } $Values->{ui_data_fields} = $CGI->{ui_data_fields} || $CGI->{mv_data_fields} || $Values->{"$table:ui_data_fields"} || '' ; $Values->{ui_data_fields} =~ s/\0+/ /g; return; [/perl] [set process_ui_area] setarea=[cgi selector] [perl] my @filters = grep /^ui_filter:/, keys %$CGI; return unless @filters; 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); } return; [/perl] [/set] [loop list="[value area]" prefix=table] [/loop] | [value name=mv_data_table set="cat" hide=1] [perl tables="[value mv_data_table]"] my $table = $Values->{mv_data_table}; $Values->{ui_data_key_name} = $Db{$table}->config('KEY'); if ($table ne $Values->{mv_data_table}) { $Values->{mv_data_table} = $table; } $Values->{ui_data_fields} = $CGI->{ui_data_fields} || $CGI->{mv_data_fields} || $Values->{"$table:ui_data_fields"} || '' ; $Values->{ui_data_fields} =~ s/\0+/ /g; return; [/perl] [set process_ui_cat] setcat=[cgi selector] [perl] my @filters = grep /^ui_filter:/, keys %$CGI; return unless @filters; 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); } return; [/perl] [/set] [loop list="[either][value cat][or]NEW[/either]" prefix=table] [/loop] |