HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall_new/buyercall/buyercall/assets/components/widgets/models.js
/* jshint esversion: 6 */

var Backbone = require('backbone');

const defaultImages = require('./default_images');

/**
 * Defines the data model for the widget. The default values
 * for the fields can be found in ./default_settings.js
 */
var WidgetModel = Backbone.Model.extend({
    getImageUrl: function (guid) {
        var defaultImage = this.get('defaultImage'),
            customImage = this.get('customImage');

        if (!defaultImage && !customImage) {
            return '';
        }

        if (defaultImage && defaultImage !== 'Custom') {
            let image = defaultImages.filter((x) => x.text == defaultImage)[0];
            if (!image)
                return '';
            return image.url;
        }

        let imageUrl = WidgetModel.customImageUrl(customImage);
        if (imageUrl && guid) {
            imageUrl += `?widgetId=${guid}`;
        }
        return imageUrl;
    },

    hasCustomImage: function () {
        return this.get('defaultImage') == 'Custom' || !this.get('defaultImage');
    },
});

WidgetModel.customImageUrl = function (customImage) {
    if (!customImage)
        return null;

    return `${URL_SCHEME}://${SERVER_NAME}/outbound/image/${customImage}`;
}


module.exports = WidgetModel;