Lines 105-124
for my $attrcode (grep { /^patron_attr_filter_/ } $input->multi_param) {
Link Here
|
105 |
my $have_pattr_filter_data = keys(%cgi_attrcode_to_attrvalues) > 0; |
105 |
my $have_pattr_filter_data = keys(%cgi_attrcode_to_attrvalues) > 0; |
106 |
|
106 |
|
107 |
my @patron_attr_filter_loop; # array of [ domid cgivalue ismany isclone ordinal code description repeatable authorised_value_category ] |
107 |
my @patron_attr_filter_loop; # array of [ domid cgivalue ismany isclone ordinal code description repeatable authorised_value_category ] |
108 |
my @patron_attr_order_loop; # array of { label => $patron_attr_label, value => $patron_attr_order } |
|
|
109 |
|
110 |
my @sort_roots = qw(borrower title barcode date_due); |
111 |
push @sort_roots, map {$_ . " desc"} @sort_roots; |
112 |
my @order_loop = ({selected => $order ? 0 : 1}); # initial blank row |
113 |
foreach (@sort_roots) { |
114 |
my $tmpl_name = $_; |
115 |
$tmpl_name =~ s/\s/_/g; |
116 |
push @order_loop, { |
117 |
selected => $order eq $_ ? 1 : 0, |
118 |
ordervalue => $_, |
119 |
'order_' . $tmpl_name => 1, |
120 |
}; |
121 |
} |
122 |
|
108 |
|
123 |
my $sth = $dbh->prepare('SELECT code,description,repeatable,authorised_value_category |
109 |
my $sth = $dbh->prepare('SELECT code,description,repeatable,authorised_value_category |
124 |
FROM borrower_attribute_types |
110 |
FROM borrower_attribute_types |
Lines 139-157
while (my $row = $sth->fetchrow_hashref) {
Link Here
|
139 |
$row->{isclone} = $isclone; |
125 |
$row->{isclone} = $isclone; |
140 |
push @patron_attr_filter_loop, { %$row }; # careful: must store a *deep copy* of the modified row |
126 |
push @patron_attr_filter_loop, { %$row }; # careful: must store a *deep copy* of the modified row |
141 |
} continue { $isclone = 1, ++$serial } |
127 |
} continue { $isclone = 1, ++$serial } |
142 |
foreach my $sortorder ('asc', 'desc') { |
|
|
143 |
my $ordervalue = "patron_attr_${sortorder}_${code}"; |
144 |
push @order_loop, { |
145 |
selected => $order eq $ordervalue ? 1 : 0, |
146 |
ordervalue => $ordervalue, |
147 |
label => $row->{description}, |
148 |
$sortorder => 1, |
149 |
}; |
150 |
} |
151 |
} continue { ++$ordinal } |
128 |
} continue { ++$ordinal } |
152 |
for (@patron_attr_order_loop) { $_->{selected} = 1 if $order eq $_->{value} } |
|
|
153 |
|
154 |
$template->param(ORDER_LOOP => \@order_loop); |
155 |
|
129 |
|
156 |
my %borrowernumber_to_attributes; # hash of { borrowernumber => { attrcode => [ [val,display], [val,display], ... ] } } |
130 |
my %borrowernumber_to_attributes; # hash of { borrowernumber => { attrcode => [ [val,display], [val,display], ... ] } } |
157 |
# i.e. val differs from display when attr is an authorised value |
131 |
# i.e. val differs from display when attr is an authorised value |