View | Details | Raw Unified | Return to bug 28238
Collapse All | Expand All

(-)a/C4/ILSDI/Services.pm (-4 / +6 lines)
Lines 120-126 sub GetAvailability { Link Here
120
120
121
    foreach my $id ( split( / /, $cgi->param('id') ) ) {
121
    foreach my $id ( split( / /, $cgi->param('id') ) ) {
122
        if ( $cgi->param('id_type') eq "item" ) {
122
        if ( $cgi->param('id_type') eq "item" ) {
123
            my ( $biblionumber, $status, $msg, $location ) = _availability($id);
123
            my ( $biblionumber, $status, $msg, $location, $itemcallnumber ) = _availability($id);
124
124
125
            $out .= "  <dlf:record>\n";
125
            $out .= "  <dlf:record>\n";
126
            $out .= "    <dlf:bibliographic id=\"" . ( $biblionumber || $id ) . "\" />\n";
126
            $out .= "    <dlf:bibliographic id=\"" . ( $biblionumber || $id ) . "\" />\n";
Lines 131-136 sub GetAvailability { Link Here
131
            $out .= "          <dlf:availabilitystatus>" . $status . "</dlf:availabilitystatus>\n";
131
            $out .= "          <dlf:availabilitystatus>" . $status . "</dlf:availabilitystatus>\n";
132
            if ($msg)      { $out .= "          <dlf:availabilitymsg>" . $msg . "</dlf:availabilitymsg>\n"; }
132
            if ($msg)      { $out .= "          <dlf:availabilitymsg>" . $msg . "</dlf:availabilitymsg>\n"; }
133
            if ($location) { $out .= "          <dlf:location>" . $location . "</dlf:location>\n"; }
133
            if ($location) { $out .= "          <dlf:location>" . $location . "</dlf:location>\n"; }
134
            if ($itemcallnumber) { $out .= "          <dlf:itemcallnumber>" . $itemcallnumber. "</dlf:itemcallnumber>\n"; }
134
            $out .= "        </dlf:simpleavailability>\n";
135
            $out .= "        </dlf:simpleavailability>\n";
135
            $out .= "      </dlf:item>\n";
136
            $out .= "      </dlf:item>\n";
136
            $out .= "    </dlf:items>\n";
137
            $out .= "    </dlf:items>\n";
Lines 147-159 sub GetAvailability { Link Here
147
                # We loop over the items to clean them
148
                # We loop over the items to clean them
148
                while ( my $item = $items->next ) {
149
                while ( my $item = $items->next ) {
149
                    my $itemnumber = $item->itemnumber;
150
                    my $itemnumber = $item->itemnumber;
150
                    my ( $biblionumber, $status, $msg, $location ) = _availability($itemnumber);
151
                    my ( $biblionumber, $status, $msg, $location, $itemcallnumber ) = _availability($itemnumber);
151
                    $out .= "      <dlf:item id=\"" . $itemnumber . "\">\n";
152
                    $out .= "      <dlf:item id=\"" . $itemnumber . "\">\n";
152
                    $out .= "        <dlf:simpleavailability>\n";
153
                    $out .= "        <dlf:simpleavailability>\n";
153
                    $out .= "          <dlf:identifier>" . $itemnumber . "</dlf:identifier>\n";
154
                    $out .= "          <dlf:identifier>" . $itemnumber . "</dlf:identifier>\n";
154
                    $out .= "          <dlf:availabilitystatus>" . $status . "</dlf:availabilitystatus>\n";
155
                    $out .= "          <dlf:availabilitystatus>" . $status . "</dlf:availabilitystatus>\n";
155
                    if ($msg)      { $out .= "          <dlf:availabilitymsg>" . $msg . "</dlf:availabilitymsg>\n"; }
156
                    if ($msg)      { $out .= "          <dlf:availabilitymsg>" . $msg . "</dlf:availabilitymsg>\n"; }
156
                    if ($location) { $out .= "          <dlf:location>" . $location . "</dlf:location>\n"; }
157
                    if ($location) { $out .= "          <dlf:location>" . $location . "</dlf:location>\n"; }
158
                    if ($itemcallnumber) { $out .= "          <dlf:itemcallnumber>" . $itemcallnumber. "</dlf:itemcallnumber>\n"; }
157
                    $out .= "        </dlf:simpleavailability>\n";
159
                    $out .= "        </dlf:simpleavailability>\n";
158
                    $out .= "      </dlf:item>\n";
160
                    $out .= "      </dlf:item>\n";
159
                }
161
                }
Lines 960-965 sub _availability { Link Here
960
    my $biblionumber = $item->biblioitemnumber;
962
    my $biblionumber = $item->biblioitemnumber;
961
    my $library = Koha::Libraries->find( $item->holdingbranch );
963
    my $library = Koha::Libraries->find( $item->holdingbranch );
962
    my $location = $library ? $library->branchname : '';
964
    my $location = $library ? $library->branchname : '';
965
    my $itemcallnumber = $item->itemcallnumber;
963
966
964
    if ( $item->notforloan ) {
967
    if ( $item->notforloan ) {
965
        return ( $biblionumber, 'not available', 'Not for loan', $location );
968
        return ( $biblionumber, 'not available', 'Not for loan', $location );
Lines 972-978 sub _availability { Link Here
972
    } elsif ( $item->damaged ) {
975
    } elsif ( $item->damaged ) {
973
        return ( $biblionumber, 'not available', 'Item damaged', $location );
976
        return ( $biblionumber, 'not available', 'Item damaged', $location );
974
    } else {
977
    } else {
975
        return ( $biblionumber, 'available', undef, $location );
978
        return ( $biblionumber, 'available', undef, $location, $itemcallnumber );
976
    }
979
    }
977
}
980
}
978
981
979
- 

Return to bug 28238