common/corpus-common-addon/app/services/bnf-resolver.js
author Chloe Laisne <chloe.laisne@gmail.com>
Mon, 18 Jul 2016 02:37:48 +0200
changeset 244 d7ab83ecf737
parent 182 1bcc373adabb
child 305 ff6cf3fc5f40
permissions -rw-r--r--
Checked/indeterminate states with /langues endpoint checkboxes

import * as constants from 'corpus-common-addon/utils/constants';

import ResolverService from 'corpus-common-addon/services/resolver-service';

export default ResolverService.extend({

    storeKeyBase: 'bnf',
    apiPath:  '/api/v1/bnf/',
    resDocRoot: 'bnfids',

    init() {
        this._super(...arguments);
        console.log("BNF", this);
    },

    processId: function(id) {
        var bnfId = id;
        if(id.startsWith(constants.BNF_BASE_URL + constants.BNF_ARK_BASE_ID)) {
            bnfId = id.slice((constants.BNF_BASE_URL + constants.BNF_ARK_BASE_ID).length);
        }
        else if (id.startsWith(constants.BNF_ARK_BASE_URL + constants.BNF_ARK_BASE_ID)) {
            bnfId = id.slice((constants.BNF_ARK_BASE_URL + constants.BNF_ARK_BASE_ID).length);
        }
        else if (id.startsWith(constants.BNF_ARK_BASE_ID)) {
            bnfId = id.slice(constants.BNF_ARK_BASE_ID.length);
        }
        return bnfId;
    },

    getReturnDictKey: function(id) { return constants.BNF_ARK_BASE_ID+id; },

    getLabel: function(id) { return this.getName(id); }

});