function parseCapiContentData()

in public/lib/capi-content-service.js [91:119]


    function parseCapiContentData(response) {
        const content = _.get(response, 'data.response.content');
        const packages = _.get(response, 'data.response.packages');
        if (content) {
            const fields = _.get(content, 'fields', {});
            const elements = _.get(content, 'elements');
            const tags = _.get(content, 'tags');
            const body = _.get(content, 'blocks.body');
            const atomUsages = body ? getContentAtomElements(body) : [];
            const mainMedia = elements ? getMainMedia(elements): null;
            return Promise.resolve({
                headline: fields.headline ? fields.headline : "",
                standfirst: fields.standfirst ? fields.standfirst : "",
                mainMediaType: mainMedia ? mainMedia.type : "",
                mainMediaUrl: mainMedia ? mainMedia.url : "",
                mainMediaCaption: mainMedia ? mainMedia.caption : "",
                mainMediaAltText: mainMedia ? mainMedia.altText : "",
                trailImageUrl: fields.thumbnail ? fields.thumbnail : "",
                trailText : fields.trailText ? fields.trailText : "",
                commentsTitle: fields.commentable ? (fields.commentable === "true" ? "on" : "off") : "off",
                wordCount: fields.wordcount ? fields.wordcount : "",
                commissioningDesks: tags ? getTagTitles(tags) : "",
                firstPublishedDate: fields.firstPublicationDate ? fields.firstPublicationDate : "",
                atomUsages: atomUsages,
                packages: packages.map((p) => { return {id: p.packageId, name: p.packageName} })
            });
        }
        return emptyCapiContentObject();
    }