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

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

Return to bug 28238