% if (($link1) || ($link2)) {
% }
<% $caption %>
<& '/widgets/profile/select.mc',
value => $sort_by_val,
useTable => 0,
width => 100,
options => $sort_by->{$class},
name => $class . '_sort_by',
js => qq{onchange="location.href='} . $r->uri . "?${class}_sort_by=' + " . qq{escape(this.options[this.selectedIndex].value)"},
&>
<%args>
$class => 'story'
$caption => ''
$sort_by_val => undef
$others => {}
%args>
<%init>;
$caption ||= $pl_names->{$class};
$sort_by_val = get_pref('Default Asset Sort') unless defined $sort_by_val;
my ($link1, $link2, $lab1, $lab2, $img1, $img2);
if ($class eq 'story') {
($link1, $lab1, $img1) = ('media', $pl_names->{media}, 'media') if $others->{media};
($link2, $lab2, $img2) = ('template', $pl_names->{template}, 'templates')
if $others->{template};
} elsif ($class eq 'media') {
($link1, $lab1, $img1) = ('story', $pl_names->{story}, 'stories') if $others->{story};
($link2, $lab2, $img2) = ('template', $pl_names->{template}, 'templates')
if $others->{template};
} else {
($link1, $lab1, $img1) = ('story', $pl_names->{story}, 'stories') if $others->{story};
($link2, $lab2, $img2) = ('media', $pl_names->{media}, 'media') if $others->{media};
$sort_by_val = $sort_by_val eq 'cover_date' ? 'deploy_date'
: $sort_by_val eq 'element_type' ? 'output_channel'
: $sort_by_val;
}
my $sites = $c->get('__SITES__');
unless ($sites) {
$sites = Bric::Biz::Site->list({ active => 1 });
$c->set('__SITES__', $sites);
}
if (@$sites > 1) {
$sort_by->{$_}[5] ||= [ site_id => 'Site'] for qw(story media template);
} else {
delete $sort_by->{$_}[5] for qw(story media template);
}
%init>
<%once>;
my $sort_by = {
story => [
[ name => 'Title' ],
[ uri => 'Primary URI' ],
[ cover_date => 'Cover Date' ],
[ element_type => 'Story Type' ],
[ priority => 'Priority' ],
],
media => [
[ name => 'Title' ],
[ uri => 'Primary URI' ],
[ cover_date => 'Cover Date' ],
[ element_type => 'Media Type' ],
[ priority => 'Priority' ],
],
template => [
[ name => 'File Name' ],
[ deploy_date => 'Deployed Date' ],
[ output_channel => 'Output Channel' ],
[ priority => 'Priority' ],
]
};
my $pl_names = {
story => get_class_info('story')->get_plural_name,
media => get_class_info('media')->get_plural_name,
template => get_class_info('template')->get_plural_name
};
%once>