function advertorialUpdates()

in harness/app-assets/templates/assets/js/bootstraps/common.js [611:662]


    function advertorialUpdates() {
        var tones, tone, type, 
            parentNodeClass, bylineElems, 
            elemsToDelete, j;

        tones = {
            'tone--media': {
                'video': 'meta__misc',
                'gallery': 'meta__misc',
                'audio': 'byline--mobile'
            },
            'tone--news': 'meta',
            'tone--feature1': 'meta',
            'tone--feature2': 'meta',
            'tone--feature3': 'meta',
            'tone--podcast': 'byline--media'
        };

        if (document.body.classList.contains('is_advertising')) {
            for (tone in tones) {
                if (tones.hasOwnProperty(tone)) {
                    if (document.body.classList.contains(tone)) {
                        if (typeof tones[tone] === 'object') {
                            for (type in tones[tone]) {
                                if (tones[tone].hasOwnProperty(type)) {
                                    if (document.body.dataset.contentType && document.body.dataset.contentType === type) {
                                        parentNodeClass = tones[tone][type];
                                        break;
                                    }
                                }
                            }
                        } else {
                            parentNodeClass = tones[tone];
                            break;
                        }
                    }
                }
            }

            if (parentNodeClass) {
                bylineElems = document.getElementsByClassName('byline');
                if (bylineElems.length && !bylineElems[0].children.length) {
                    elemsToDelete = document.body.getElementsByClassName(parentNodeClass);
                    for (j = 0; j < elemsToDelete.length; j++) {
                        if (elemsToDelete[j].parentNode && !elemsToDelete[j].getElementsByClassName('sponsorship').length) {
                            elemsToDelete[j].parentNode.removeChild(elemsToDelete[j]);
                        }
                    }
                }
            }
        }
    }