Edit
/* js/wm-shortcodes-js.js */
$(document).ready(function () {
// check for global cascadeSite variable. If defined set a local version to it, else set to www.wm.edu
let myCascadeSite = (typeof cascadeSite !== 'undefined') ? cascadeSite : 'www.wm.edu';
/* used by sharebar */
var myPageTitle = $("#pageTitle").text();
if (myPageTitle == '') {
var myPageTitle = $("#person_name").text();
}
myPageTitle = myPageTitle.replace(/\&(?!amp)/g, "%26");
myPageTitle = myPageTitle.replace(/\"/g, "%22");
/* get the domain from url string */
var myUrl = location.href;
var myDomain = location.host;
var mySite = 'wm';
if (myDomain.match(/^mason/i)) {
mySite = 'mason';
}
else if (myDomain.match(/^law/i)) {
mySite = 'law';
}
else if (myDomain.match(/^education/i)) {
mySite = 'education';
}
else if (myDomain.match(/^vims/i) || myDomain.match(/^www\.vims/i) || myDomain.match(/^wwwtst\.vims/i)) {
mySite = 'vims';
}
/* pages where we want to avoid running this code... */
if (mySite == 'wm') {
var pattern = new RegExp('(/offices/webanddesign/web/cascade/help/buildandedit/pages/directory/)|(/offices/webanddesign/web/cascade/help/buildandedit/tools/email/)|(/offices/webanddesign/web/cascade/help/buildandedit/tools/textboxurls/)|(/offices/webanddesign/web/events/help/tools-and-techniques/)', 'i');
if (pattern.test(myUrl)) {
return false;
}
}
/* Check for psuedo tags on home page and photosets */
$(".m-title-card, figcaption, #slider_captions, #featuring, #research-gallery-caption-container, .research-gallery-caption, .wmphotoset-caption-text, .portfolio_caption, .home_caption, .overlay_caption_headline, .faculty_item, .o-homecallout__textwrapper, .sec-wrapper__item").each(function () {
var oldHtml = $(this).html();
var newHtml = oldHtml;
newHtml = newHtml.replace(/\{(\/?)em\}/g, "<$1em>");
newHtml = newHtml.replace(/\{(\/?)strong\}/g, "<$1strong>");
newHtml = newHtml.replace(/\{(\/?)sup\}/g, "<$1sup>");
newHtml = newHtml.replace(/\{br\/?\}/g, "<br/>");
/* UPDATE THE HTML */
if (newHtml !== oldHtml) {
$(this).html(newHtml);
}
});
// as we convert more formats to use velocity and the wmshortcode rewrite helpder macro we can remove some of these sections from the selector
var shortcode_selector = ".js-wm-shortcode, #sidebar, .item_listing, .wmphotoset-caption, .portfolio_caption, .extra-nav, #directory_info, .gateway p";
// until the directory page template has been updated to use the velocity shortcode macro, this has been added so shortcodes will check the user content text.
// Same for announcement pages (We might need to do this for other specialty pages, too)
if ($(".directory.m-title").length || $(".news_story .directory").length || $("#research-gallery").length) {
shortcode_selector += ", .user_content";
}
if (myDomain.match(/^law2/i)) {
shortcode_selector += ", .oneperson, .contactlist_or_biopage-container";
}
//console.log(shortcode_selector);
$(shortcode_selector).each(function () {
var oldHtml = $(this).html();
var newHtml = oldHtml;
/* LINKS */
newHtml = newHtml.replace(/\{\{\s*(https*\:\/\/[^\}\,]+)\s*\}\}/g, "<a href=\"$1\">$1</a>");
newHtml = newHtml.replace(/\{\{\s*(https*\:\/\/[^\}\,]+)\s*\,{1}\s*([^\}]*)\s*\}\}/g, "<a href=\"$1\">$2</a>");
/* EMAIL PROTECTION */
/* case: w| prepend */
newHtml = newHtml.replace(/\[\[[\s*[wW]\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$1@wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*[wW]\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$2</a>");
/* case: v| prepend */
newHtml = newHtml.replace(/\[\[\s*[vV]\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@vims.edu\">$1@vims.edu</a>");
newHtml = newHtml.replace(/\[\[\s*[vV]\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@vims.edu\">$2</a>");
/* case: m| prepend */
newHtml = newHtml.replace(/\[\[\s*[mM]\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@mason.wm.edu\">$1@mason.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*[mM]\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@mason.wm.edu\">$2</a>");
/* case: e| prepend */
newHtml = newHtml.replace(/\[\[\s*[eE]\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$1@wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*[eE]\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$2</a>");
/* case: aiddata| prepend */
newHtml = newHtml.replace(/\[\[\s*aiddata\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/ig, "<a href=\"mailto:$1@aiddata.wm.edu\">$1@aiddata.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*aiddata\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/ig, "<a href=\"mailto:$1@aiddata.wm.edu\">$2</a>");
/* case: cs| prepend */
newHtml = newHtml.replace(/\[\[\s*cs\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/ig, "<a href=\"mailto:$1@cs.wm.edu\">$1@cs.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*cs\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/ig, "<a href=\"mailto:$1@cs.wm.edu\">$2</a>");
/* case: math| prepend */
newHtml = newHtml.replace(/\[\[\s*math\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/ig, "<a href=\"mailto:$1@math.wm.edu\">$1@math.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*math\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/ig, "<a href=\"mailto:$1@math.wm.edu\">$2</a>");
/* case: physics| prepend */
newHtml = newHtml.replace(/\[\[\s*physics\|\s*([a-zA-Z0-9_\.-]+)\s*\,?\s*\]\]/ig, "<a href=\"mailto:$1@physics.wm.edu\">$1@physics.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*physics\|\s*([a-zA-Z0-9_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/ig, "<a href=\"mailto:$1@physics.wm.edu\">$2</a>");
/* case: no prepend */
if (mySite == 'mason' || myCascadeSite == "mason.wm.edu") {
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@mason.wm.edu\">$1@mason.wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@mason.wm.edu\">$2</a>");
}
else if (mySite == 'vims' || myCascadeSite == "vims.edu") {
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@vims.edu\">$1@vims.edu</a>");
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@vims.edu\">$2</a>");
}
else {
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,?\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$1@wm.edu</a>");
newHtml = newHtml.replace(/\[\[\s*([a-zA-Z0-9\_\.-]+)\s*\,{1}\s*([^\]]*)\s*\]\]/g, "<a href=\"mailto:$1@wm.edu\">$2</a>");
}
/* YOUTUBE VIDEO */
/* Basic: {{youtube:size|YouTubeVideoId}}
* Advanced: {{youtube:size:alignment|YouTubeVideoId,description}}
* Size Choices: small (240x200), medium (410x230), large (693x388), popup (402x242)
* Alignment Choices: center, left, or right. Left and right will wrap text */
// because YouTube API will not load inside Cascade...
if (myDomain.match(/^cascade/)) {
// Small (240x200)
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-sm"><div class="yt-sm"><iframe title="$2" allowfullscreen="true" frameborder="0" height="200" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="240"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-sm"><div class="yt-sm"><iframe style="cursor:pointer;" title="$2" allowfullscreen="true" frameborder="0" height="200" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="240"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-sm"><div class="yt-sm"><iframe style="cursor:pointer;" title="$2" allowfullscreen="true" frameborder="0" height="200" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="240"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-sm"><div class="yt-sm"><iframe style="cursor:pointer;" title="$2" allowfullscreen="true" frameborder="0" height="200" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="240"></iframe></div><figcaption>$2</figcaption></figure>');
// Medium (410x230)
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
// Large (693x388)
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="388" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="388" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="388" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="388" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
// Popup (402x242)
newHtml = newHtml.replace(/\{\{\s*youtube:\s*popup\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<div><iframe title="$2" allowfullscreen="true" frameborder="0" height="242" src="https://www.youtube-nocookie.com/embed/$1?rel=0&showinfo=0&autohide=1&wmode=transparent&html5=1" width="402"></iframe></div>');
}
else {
/* Small (240x200) */
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-sm"><div class="yt-sm"><div id="ytplayer_240_200_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-sm"><div class="yt-sm"><div id="ytplayer_240_200_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-sm"><div class="yt-sm"><div id="ytplayer_240_200_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*small:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-sm"><div class="yt-sm"><div id="ytplayer_240_200_$1"></div></div><figcaption>$2</figcaption></figure>');
/* Medium (410x230) */
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-med"><div class="yt-med"><div id="ytplayer_410_230_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-med"><div class="yt-med"><div id="ytplayer_410_230_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-med"><div class="yt-med"><div id="ytplayer_410_230_$1"></div></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*medium:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-med"><div class="yt-med"><div id="ytplayer_410_230_$1"></div></div><figcaption>$2</figcaption></figure>');
/* Large (693x388) */
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-lg"><div class="yt-lg"><div id="ytplayer_693_388_$1"></div></div><figcaption>$2</p></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-lg"><div class="yt-lg"><div id="ytplayer_693_388_$1"></div></div><figcaption>$2</p></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-lg"><div class="yt-lg"><div id="ytplayer_693_388_$1"></div></div><figcaption>$2</p></figure>');
newHtml = newHtml.replace(/\{\{\s*youtube:\s*large:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-lg"><div class="yt-lg"><div id="ytplayer_693_388_$1"></div></div><figcaption>$2</p></figure>');
/* Popup (402x242) */
newHtml = newHtml.replace(/\{\{\s*youtube:\s*popup.*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<div><div id="ytplayer_402_242_$1"></div></div>');
}
/* VIMEO VIDEO */
/* Basic: {{vimeo:size|VimeoVideoId}}
* Advanced: {{vimeo:size:alignment|VimeoVideoId,description}}
* Size Choices: small (240x134), medium (410x230), large (693x388), popup (402x242)
* Alignment Choices: center, left, or right. Left and right will wrap text */
/* Small (240x134) */
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*small\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left-nofloat figure-sm"><div class="yt-sm"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="240" height="134" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*small:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-center figure-sm"><div class="yt-sm"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="240" height="134" frameborder="0" allow="fullscreen" allowfullscreen ></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*small:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left figure-sm"><div class="yt-sm"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="240" height="134" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*small:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-right figure-sm"><div class="yt-sm"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="240" height="134" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
/* Medium (410x230) */
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*medium\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left-nofloat figure-med"><div class="yt-med"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="410" height="230" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*medium:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-center figure-med"><div class="yt-med"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="410" height="230" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*medium:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left figure-med"><div class="yt-med"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="410" height="230" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*medium:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-right figure-med"><div class="yt-med"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="410" height="230" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
/* Large (693x388) */
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*large\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left-nofloat figure-lg"><div class="yt-lg"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="693" height="388" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*large:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-center figure-lg"><div class="yt-lg"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="693" height="388" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*large:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left figure-lg"><div class="yt-lg"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="693" height="388" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*large:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-right figure-lg"><div class="yt-lg"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="693" height="388" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
/* Popup (402x242) */
newHtml = newHtml.replace(/\{\{\s*vimeo:\s*popup.*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig,
'<figure class="yt-left-nofloat figure-lg"><div class="yt-lg"><iframe src="https://player.vimeo.com/video/$1?title=0&byline=0&portrait=0" width="402" height="242" frameborder="0" allow="fullscreen" allowfullscreen></iframe></div><figcaption>$2</figcaption></figure>');
/* Candid Career Video */
// Small (410x230, SAME AS MEDIUM. Only defined here so it doesn't break when someone tries to use small)
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*small\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*small:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*small:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*small:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
// Medium (410x230)
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*medium\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*medium:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*medium:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*medium:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-med"><div class="yt-med"><iframe title="$2" allowfullscreen="true" frameborder="0" height="230" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="410"></iframe></div><figcaption>$2</figcaption></figure>');
// Large (693x385)
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*large\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left-nofloat figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="385" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*large:\s*center\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-center figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="385" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*large:\s*left\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-left figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="385" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
newHtml = newHtml.replace(/\{\{\s*candidcareer:\s*large:\s*right\s*\|\s*([a-zA-Z0-9_\.-]+)\s*\,?(.*)\}\}/ig, '<figure class="yt-right figure-lg"><div class="yt-lg"><iframe title="$2" allowfullscreen="true" frameborder="0" height="385" src="https://www.candidcareer.com/embed.php?vkey=$1&shared=WilliamMaryAdmin&uid=3966" width="693"></iframe></div><figcaption>$2</figcaption></figure>');
/* HTML5 Audio Embeds */
newHtml = newHtml.replace(/\{\{\s*audio\|\s*(https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)+(.aac|.mp4|.m4a|.mp1|.mp2|.mp3|.mpg|.mpeg|.oga|.ogg|.wav|.webm))\s*\}\}/ig, '<audio controls="controls" height="32" preload="none" src="$1" width="300"></audio>');
/* Sharebar Title */
newHtml = newHtml.replace(/______PAGE_TITLE______/ig, myPageTitle);
/* UPDATE THE HTML */
$(this).html(newHtml);
}); // end each container (should only be one)
});