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

(-)a/installer/data/mysql/updatedatabase.pl (+15 lines)
Lines 6971-6976 if(CheckVersion($DBversion)) { Link Here
6971
    SetVersion ($DBversion);
6971
    SetVersion ($DBversion);
6972
}
6972
}
6973
6973
6974
$DBversion = "3.13.00.XXX";
6975
if(CheckVersion($DBversion)) {
6976
    $dbh->do(
6977
"INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES('OverDriveClientKey','','Client key for OverDrive integration','30','Free')"
6978
    );
6979
    $dbh->do(
6980
"INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES('OverDriveClientSecret','','Client key for OverDrive integration','30','YesNo')"
6981
    );
6982
    $dbh->do(
6983
"INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacDriveLibraryID','','Library ID for OverDrive integration','','Integer')"
6984
    );
6985
    print "Upgrade to $DBversion done (Bug 10320 - Show results from library's OverDrive collection in OPAC search)\n";
6986
    SetVersion($DBversion);
6987
}
6988
6974
=head1 FUNCTIONS
6989
=head1 FUNCTIONS
6975
6990
6976
=head2 TableExists($table)
6991
=head2 TableExists($table)
(-)a/koha-tmpl/opac-tmpl/ccsr/en/js/overdrive.js (-1 / +61 lines)
Line 0 Link Here
0
- 
1
if ( typeof KOHA == "undefined" || !KOHA ) {
2
    var KOHA = {};
3
}
4
5
KOHA.OverDrive = ( function() {
6
    var proxy_base_url = '/cgi-bin/koha/svc/overdrive_proxy';
7
    var library_base_url = 'http://api.overdrive.com/v1/libraries/';
8
    return {
9
        Get: function( url, params, callback ) {
10
            $.ajax( {
11
                type: 'GET',
12
                url: url.replace( /https?:\/\/api.overdrive.com\/v1/, proxy_base_url ),
13
                dataType: 'json',
14
                data: params,
15
                error: function( xhr, error ) { 
16
                    try {
17
                        callback( JSON.parse( xhr.responseText ));
18
                    } catch ( e ) {
19
                        callback( {error: xhr.responseText || true} );
20
                    }
21
                },
22
                success: callback
23
            } );
24
        },
25
        GetCollectionURL: function( library_id, callback ) {
26
            if ( KOHA.OverDrive.collection_url ) {
27
                callback( KOHA.OverDrive.collection_url );
28
                return;
29
            }
30
31
            KOHA.OverDrive.Get(
32
                library_base_url + library_id,
33
                {},
34
                function ( data ) {
35
                    if ( data.error ) {
36
                        callback( data );
37
                        return;
38
                    }
39
40
                    KOHA.OverDrive.collection_url = data.links.products.href;
41
42
                    callback( data.links.products.href );
43
                }
44
            );
45
        },
46
        Search: function( library_id, q, limit, offset, callback ) {
47
            KOHA.OverDrive.GetCollectionURL( library_id, function( data ) {
48
                if ( data.error ) {
49
                    callback( data );
50
                    return;
51
                }
52
53
                KOHA.OverDrive.Get(
54
                    data,
55
                    {q: q, limit: limit, offset: offset},
56
                    callback
57
                );
58
            } );
59
        }
60
    };
61
} )();

Return to bug 10320