(function() {
    let widgetID = 30577;

    if (!widgetID) {
        console.error('Invalid widget ID given.');
        return false;
    }

    const preview = document.getElementById("idxwidgetsrc-30577").getAttribute('data-preview')

    let s1 = document.getElementsByTagName('script')[0];

    let vuesrc = '//d1qfrurkpai25r.cloudfront.net/graphical/frontend/vueWidgets/vue-2.6.js?auid=ZbAKZcF3ZJGSmvAKJuLq5QAAABM';

    let vuejs = document.createElement('script');
    vuejs.setAttribute('type','text/javascript');
    vuejs.setAttribute('src', vuesrc);
    vuejs.async = false;

    let muliFont = document.createElement('link');
    muliFont.setAttribute('href', 'https://fonts.googleapis.com/css?family=Muli:400,700,800&display=swap');
    muliFont.setAttribute('rel', 'stylesheet');

    s1.parentNode.insertBefore(vuejs, s1);
    s1.parentNode.insertBefore(muliFont, s1);

        // Market Report Widget specific JS here.

    let mrjs = '//d1qfrurkpai25r.cloudfront.net/graphical/widgets/MarketReport/1/idx-market-report.js?auid=ZbAKZcF3ZJGSmvAKJuLq5QAAABM';
    let widgetScript = document.createElement('script');
    widgetScript.setAttribute('type','text/javascript');
    widgetScript.setAttribute('src', mrjs);
    widgetScript.async = false;
    s1.parentNode.insertBefore(widgetScript, s1);

    let widgetElement = document.createElement('idx-market-report');
    widgetElement.setAttribute('id', 'idx-market-report-30577')
    widgetElement.setAttribute('error', null)

    const widgetStyle = {
        '--idx-primary-color': "#234482",
        '--idx-secondary-color': "#FF1414",
        '--idx-tertiary-color': "#A6A6A6",
        '--idx-quaternary-color': "#234482",
        '--idx-buttonText-color': "#FFFFFF",
        '--idx-statisticsText-color': "#FFFFFF"
    }

    const widgetAttributes = [
        [ 'layout', "square" ],
        [ 'location', "Cabarrus County" ],
        [ 'reportLink', "http:\/\/wsicnews.idxbroker.com\/idx\/market-reports\/c021\/county\/cabarrus-north-carolina" ],
        [ 'openHouses', JSON.stringify( {"interval":"week","value":12,"url":"http:\/\/wsicnews.idxbroker.com\/idx\/results\/listings?idxID=c021&pt%5B0%5D=1&pt%5B1%5D=6&pt%5B2%5D=7&county%5B%5D=2624&ccz=county&a_statusCategory=active&ohRange=1w"} ) ],
        [ 'newListings', JSON.stringify( {"interval":"day","value":4,"url":"http:\/\/wsicnews.idxbroker.com\/idx\/results\/listings?idxID=c021&pt%5B0%5D=1&pt%5B1%5D=6&pt%5B2%5D=7&county%5B%5D=2624&ccz=county&a_statusCategory=active&amin_dateAdded=2024-01-23"} ) ],
        [ 'soldListings',JSON.stringify( {"interval":"week","value":30,"url":"http:\/\/wsicnews.idxbroker.com\/idx\/results\/listings?idxID=c021&pt%5B0%5D=1&pt%5B1%5D=6&pt%5B2%5D=7&county%5B%5D=2624&ccz=county&a_statusCategory=sold&amin_soldDate=2024-01-16"} ) ],
        [ 'widgetStyle', JSON.stringify( widgetStyle ) ]
    ]

    for (let x = 0; x < widgetAttributes.length; x++) {
        widgetElement.setAttribute(widgetAttributes[x][0], widgetAttributes[x][1])
    }

    if (preview === true) {
        widgetElement.setAttribute('fixed', true)
    }

    document.getElementById('idxwidgetsrc-30577').before(widgetElement);
    widgetElement.innerHTML = "";

})();

