Adding a new item should pre-select the library you are logged in at, where possible.
Use GetBranchesLoop. This solves indy branches filtering, and sort order problems.
Set default off of ->{selected}, to establish pre-selected branch.
Fix flags check in onlymine sub, so superlibrarian + other flags still gets everything.
Removed defined(@array) check, since perl -wc warns it is deprecated.
Note new FIXME for botched date processing.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
return
C4::Context->preference('IndependantBranches') &&
C4::Context->userenv &&
return
C4::Context->preference('IndependantBranches') &&
C4::Context->userenv &&
- C4::Context->userenv->{flags}!=1 &&
+ C4::Context->userenv->{flags} %2 != 1 &&
C4::Context->userenv->{branch} ;
}
C4::Context->userenv->{branch} ;
}
foreach my $field (@fields) {
next if ($field->tag()<10);
foreach my $field (@fields) {
next if ($field->tag()<10);
- my @subf = $field->subfields;
- (defined @subf) or @subf = ();
+ my @subf = $field->subfields || ();
my %this_row;
# loop through each subfield
for my $i (0..$#subf) {
my %this_row;
# loop through each subfield
for my $i (0..$#subf) {
unless ($value) {
$value = $tagslib->{$tag}->{$subfield}->{defaultvalue};
# get today date & replace YYYY, MM, DD if provided in the default value
unless ($value) {
$value = $tagslib->{$tag}->{$subfield}->{defaultvalue};
# get today date & replace YYYY, MM, DD if provided in the default value
- my ( $year, $month, $day ) = split ',', $today_iso;
+ my ( $year, $month, $day ) = split ',', $today_iso; # FIXME: iso dates don't have commas!
$value =~ s/YYYY/$year/g;
$value =~ s/MM/$month/g;
$value =~ s/DD/$day/g;
$value =~ s/YYYY/$year/g;
$value =~ s/MM/$month/g;
$value =~ s/DD/$day/g;
# builds list, depending on authorised value...
if ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "branches" ) {
# builds list, depending on authorised value...
if ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "branches" ) {
- foreach my $thisbranch ( sort keys %$branches ) {
- push @authorised_values, $thisbranch;
- $authorised_lib{$thisbranch} = $branches->{$thisbranch}->{'branchname'};
+ foreach my $thisbranch (@$branches) {
+ push @authorised_values, $thisbranch->{value};
+ $authorised_lib{$thisbranch->{value}} = $thisbranch->{branchname};
+ $value = $thisbranch->{value} if $thisbranch->{selected};
}
}
elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "itemtypes" ) {
push @authorised_values, "" unless ( $tagslib->{$tag}->{$subfield}->{mandatory} );
my $sth = $dbh->prepare("select itemtype,description from itemtypes order by description");
$sth->execute;
}
}
elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "itemtypes" ) {
push @authorised_values, "" unless ( $tagslib->{$tag}->{$subfield}->{mandatory} );
my $sth = $dbh->prepare("select itemtype,description from itemtypes order by description");
$sth->execute;
- my $itemtype; # FIXME: double declaration of $itemtype
while ( my ( $itemtype, $description ) = $sth->fetchrow_array ) {
push @authorised_values, $itemtype;
$authorised_lib{$itemtype} = $description;
}
unless ( $value ) {
while ( my ( $itemtype, $description ) = $sth->fetchrow_array ) {
push @authorised_values, $itemtype;
$authorised_lib{$itemtype} = $description;
}
unless ( $value ) {
my $itype_sth = $dbh->prepare("SELECT itemtype FROM biblioitems WHERE biblionumber = ?");
$itype_sth->execute( $biblionumber );
my $itype_sth = $dbh->prepare("SELECT itemtype FROM biblioitems WHERE biblionumber = ?");
$itype_sth->execute( $biblionumber );
- ( $default_itemtype ) = $itype_sth->fetchrow_array;
- $value = $default_itemtype;
+ ( $value ) = $itype_sth->fetchrow_array;
$authorised_lib{$value} = $lib;
}
}
$authorised_lib{$value} = $lib;
}
}
- $subfield_data{marc_value} =CGI::scrolling_list( # FIXME: factor out scrolling_list
+ $subfield_data{marc_value} =CGI::scrolling_list( # FIXME: factor out scrolling_list
-name => "field_value",
-values => \@authorised_values,
-default => $value,
-name => "field_value",
-values => \@authorised_values,
-default => $value,
<!-- /TMPL_IF -->
</div></li>
<!-- /TMPL_IF -->
</div></li>
</ol>
</fieldset>
<input type="hidden" name="indicator" value=" " />
</ol>
</fieldset>
<input type="hidden" name="indicator" value=" " />