";
}
return t;
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
unescape: function (html) {
html = html.replace(/\&/gi, "&").replace(/\</gi, "<").replace(/\>/gi, ">");
return html;
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
detailContent: function (html) {
var fullId = "#exhs-" + $exhs._conf._eventKey.toLowerCase() + "-detail";
var overlayId = "#exhs-" + $exhs._conf._eventKey.toLowerCase() + "-overlay";
html = "
";
if ($(fullId).length != 0) {
$(fullId).html(html);
} else {
$("body").append("
" + html + "
");
}
$('html, body').css({overflow: 'hidden'});
},
hideOverlay: function () {
var overlayId = "#exhs-" + $exhs._conf._eventKey.toLowerCase() + "-overlay";
$(overlayId).remove();
$('html, body').css({overflow: 'auto', height: 'auto'});
},
stopHideOverlay: function () {
event.stopPropagation();
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
content: function (html) {
$("#exhs-" + $exhs._conf._eventKey.toLowerCase()).html("
" + html + "
");
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
initialize: function () {
console.info("exhs :: renderFull");
var options = {};
$.each(this._eventInfo.options, function (i, option) {
options[option] = true;
if (option.indexOf("l2") == 0) {
options["l2"] = true;
}
});
this._eventInfo.options = options;
//console.info(this._eventInfo);
$("head").append("");
this.css();
$("body").append("
");
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
data: function (type, data) {
this._eventInfo[type] = data;
this.render(type);
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
img: function (eid, iid) {
return "

";
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
formatUSPhone: function (phonenumber) {
if (phonenumber == null || phonenumber.trim().length == 0) return "";
phonenumber = phonenumber.match(/\d*/g).join('')
if (phonenumber.length == 11) phonenumber = phonenumber.substring(1);
var parts = phonenumber.match(/(\d{0,3})(\d{0,3})(\d{0,4})/).slice(1);
return "(" + parts[0] + ") " + parts[1] + "-" + parts[2];
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
convertEmbedMedia: function (html) {
const youTube = /(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([^&" \n<]+)(?:[^ \n<]+)?/g;
const youTubeFull = /(https?:\/\/)?(www\.)?(youtube\.com\/watch\?v=|youtu\.be\/)([^& \n<]+)(?:[^ \n<]+)?/g;
html = this.convertEmbedMediaDo(html, youTube, youTubeFull, this.embedYouTube);
var vimeo = /(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/(?:[^\/]*)\/videos\/|album\/(?:\d+)\/video\/|video\/|)(\d+)(?:[a-zA-Z0-9_\-]+)?/i
var vimeoFull = /(https?:\/\/)?(www\.)?(vimeo\.com)\/(.*\/)?(?:.+)/g;
html = this.convertEmbedMediaDo(html, vimeo, vimeoFull, this.embedVimeo);
return html.replace(/
<\/p>/gi, "").replace(/
<\/p>/gi, "");
},
//##############################################################################
//##############################################################################
convertEmbedMediaDo: function (html, regex, fullreg, createEmbed) {
if (!html) return html;
const linkreg = /(?:)]+)>(.+?)<\/a>/g;
let resultHtml = html;
var placeholders = {};
const match = html.match(fullreg);
if (match && match.length > 0) {
const matchlinks = html.match(linkreg);
if (matchlinks && matchlinks.length > 0) {
for (var i = 0; i < matchlinks.length; i++) {
placeholders["#placeholder" + i + "#"] = matchlinks[i];
resultHtml = resultHtml.replace(matchlinks[i], "#placeholder" + i + "#");
}
}
$.each(placeholders, function (placeholder, anchor) {
let matchParts = anchor.split(regex);
if (matchParts.length > 1) {
resultHtml = resultHtml.replace(placeholder, createEmbed(matchParts[1]));
}
});
for (var i = 0; i < match.length; i++) {
let matchParts = match[i].split(regex);
resultHtml = resultHtml.replace(match[i], createEmbed(matchParts[1]));
}
if (matchlinks && matchlinks.length > 0) {
for (var i = 0; i < matchlinks.length; i++) {
resultHtml = resultHtml.replace("#placeholder" + i + "#", matchlinks[i]);
}
}
}
return resultHtml;
},
//##############################################################################
//##############################################################################
embedYouTube: function (key) {
return "";
},
//##############################################################################
//##############################################################################
embedVimeo: function (key) {
return "";
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
debug: function (json) {
t = "";
$.each(json, function (key, value) {
t += "" + key + " | " + (value + "").replace(/<\/?[^>]+(>|$)/g, "") + " |
"
});
$("#debug").html("
");
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
style: {
".exhs a": "color:inherit !important;font-size:inherit !important;",
".exhs img": "max-width:98%;margin:1px 1%;border-radius:4px;",
".exhs .fa": "font-size:120%;margin-right:7px;width:15px;text-align:center;",
".exhs, .exhs *": "font-size:12px;color:#666;",
".exhs hr": "border:none;border-bottom:1px solid #eee;margin:10px;",
".exhs .exh-category-list>div": "font-size:100%;padding:7px;border:1px solid #ddd;margin-bottom:-1px;cursor:pointer;",
".exhs .exh-category-list>div:first-child": "border-radius:4px 4px 0 0;",
".exhs .exh-category-list>div:last-child": "border-radius:0 0 4px 4px;",
".exhs .exh-category-list>div table": "width:100%;",
".exhs .exh-category-list>div table tr td": "vertical-align:middle;text-align:center;",
".exhs .exh-category-list>div table tr td:last-child": "width:20px;display:none;",
".exhs .exh-columns": "border:none;padding:0px;margin:0px;",
".exhs .exh-columns > div": "display:inline-block;vertical-align:top;",
".exhs .exh-columns.exh-columns-1": "display:none;",
".exhs .exh-columns.exh-columns-2": "display:none;",
".exhs .exh-columns.exh-columns-3": "display:none;",
".exhs .exh-columns.exh-columns-1.exh-columns-co1": "display:block;",
".exhs .exh-columns.exh-columns-2.exh-columns-co2": "display:block;",
".exhs .exh-columns.exh-columns-3.exh-columns-co3": "display:block;",
".exhs .exh-columns.exh-columns-1 > div": "width:100%;min-width:100%;",
".exhs .exh-columns.exh-columns-2 > div": "width:50%;",
".exhs .exh-columns.exh-columns-3 > div": "width:33.3%;",
".exhs .exh-category-list.exh-category-list-l2 i.fa": "margin-right:0px;font-size:160%;opacity:.4;",
".exhs .exh-category-list.exh-category-list-l2 > div": "padding:0px;margin:10px;border-radius:1px !important;background-color:rgba(200,200,200,.25);border:none;",
".exhs .exh-category-list.exh-category-list-l2 > div table tr td": "text-transform: uppercase;text-align:left;padding:5px 10px;word-break:break-word;",
".exhs .exh-category-list.exh-category-list-l2 > div table tr td:last-child": "display:table-cell;text-align:center;padding:5px 7px 5px 0px;",
".exhs .exh-category-list.exh-category-list-l2 > div > div.exh-category-exhibitors": "padding:10px;border-top:2px solid #ccc;",
".exhs .exh-category-list.exh-category-list-l2 > div > div.exh-category-exhibitors ul": "margin:0px 0px 0px 15px;padding:0px;",
".exhs .exh-category-list.exh-category-list-l2 > div > div.exh-category-exhibitors li": "padding:4px;list-style:circle;",
".exhs .exh-category-list.exh-category-list-l2 > div > div.exh-category-exhibitors a": "text-decoration:none;",
".exhs .exh-category-list.exh-category-list-l2 > div > div.exh-category-exhibitors i.fa": "font-size:100%;",
".exhs .exh-category-select": "border-radius:4px;font-size:110%;padding:7px;text-align:center; width:100%;border:1px solid #ddd;",
".exhs .exh-category": "font-size:150%;margin-top:20px;margin-bottom:5px;",
".exhs .exh-category:first-child": "margin-top:0px;",
".exhs .exh-name": "font-size: 120%;font-weight:bold;",
".exhs .exh-description": "opacity:.75;margin-left: 20px;margin:5px 0px 10px 10px;",
".exhs .exh-description,.exhs .exh-description p ": "font-size: 100%;",
".exhs .exh-description p ": "margin:12px 0;",
".exhs .exh-description * br:first-child": "display:none;",
".exhs .exh-description h1, .exhs .exh-description h2,.exhs .exh-description h3,.exhs .exh-description h4,.exhs .exh-description h5": "margin:10px 0;font-size:115%;",
".exhs .exh-special-offer": "margin:25px 0;border-top:1px solid #bbb;border-bottom:1px solid #bbb;padding:15px 20px 5px 20px;",
".exhs .exh-special-offer .exh-heading": "font-size:160%;margin-bottom:20px;",
".exhs .exh-media": "width:491px;height:240px;max-width:100%;max-height:20%;border:0px;",
".exhs .exh-contact": "margin:15px auto;width:90%;",
".exhs .exh-contact tr td": "font-size:90%;vertical-align:top;",
".exhs .exh-contact-inline .fa": "font-size:100%;margin:2px;opacity:.75;",
".exhs .exh-reviews-inline": "text-align:center;margin-top:5px;",
".exhs .exh-reviews-inline .exh-review": "margin:0 10px;opacity:.60;font-style:italic;font-size:90% !important;",
".exhs .exh-contactrow": "margin-bottom:3px;font-size:100%;",
".exhs .exh-address": "margin-top:15px;font-size:90%;padding-top:10px;",
".exhs .exh-more": "font-size:90%;margin-left:10px;",
".exhs .exh-fa": "margin-bottom:3px;font-size:120%;cursor:pointer;",
".exhs-overlay": "background:rgba(100,100,100,.5);width:100%;height:100%;z-index:999 !important;top:0;left:0;position:fixed;",
".exhs-overlay>div": "border-radius: 6px;width:600px;max-width: 98%;background-color:#fff;margin:5% auto;overflow-y: auto;max-height:90%;border:1px solid #aaa;",
".exhs-overlay .exh-content": "",
".exhs-overlay .exh-name": "font-size:170%;padding-bottom:5px;",
".exhs-overlay .exh-description": "padding-left:10px;padding-right:10px;",
".exhs-overlay .exh-images img": "width:98%",
"@media only screen and (min-width: 850px)": ".exhs .exh-columns.exh-columns-3 {display:block;} .exhs .exh-columns.exh-columns-3.exh-columns-co1 {display:none;} .exhs .exh-columns.exh-columns-3.exh-columns-co2 {display:none;}",
"@media only screen and (min-width: 550px) and (max-width: 850px)": ".exhs .exh-columns.exh-columns-2 {display:block;} .exhs .exh-columns.exh-columns-2.exh-columns-co1 {display:none;} .exhs .exh-columns.exh-columns-2.exh-columns-co3 {display:none;}",
"@media only screen and (max-width: 550px)": ".exhs .exh-columns.exh-columns-1 {display:block;} .exhs .exh-columns.exh-columns-1.exh-columns-co2 {display:none;} .exhs .exh-columns.exh-columns-1.exh-columns-co3 {display:none;}"
},
css: function () {
var css = "";
$.each(this.style, function (k, v) {
css += k + "{" + v + "} ";
});
$("").appendTo("head");
},
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------
_eventInfo: { "zip": "37902", "country": "United States", "endDate": "2025-08-17 20:00:59.0", "city": "Knoxville", "eventMapFile": false, "storeKey": "2025-08-17-knoxville-tn-pink-bride", "streetAddress1": "701 Henley Street", "endDateTz": "-04", "eventScheduleFile": false, "virtualShow": false, "url": "https://www.thepinkbride.com", "eventMapAssignmentsFile": false, "startDateTz": "-04", "options": [ "l2co1", "c1" ], "name": "2025/08/17 - Knoxville TN - Pink Bride", "producer": { "zip": "37416", "country": "United States", "city": "Chattanooga", "contactName": "Tony Brown", "companyName": "First Verse Productions, LLC", "streetAddress1": "4817 Hwy 58", "streetAddress2": "Suite 101", "url": "https://www.thepinkbride.com", "emailAddress": "info@thepinkbride.com", "phoneNumber": "14233091476", "producerLogoImage": true, "name": "The Pink Bride Wedding and Women's Expo", "id": 130740, "state": "TN" }, "id": 1693, "state": "TN", "startDate": "2025-08-17 16:00:00.0" },
_conf: { _uri:"https://www.bridescan.com", _authKey:"jmi", _eventKey:"knox" }
};
$(function (){eval("window.$exhs = exhs").init();});
window.addEventListener("message", function (event) {
//console.info(event);
if (typeof event.data === "string") {
//console.info(event.data);
var parts = event.data.split("::");
//console.info(parts);
if (parts.length == 2) {
var type = parts[0];
var data = JSON.parse(parts[1]);
$exhs.data(type, data);
}
}
});