var WODHOPPER_JQUERY;
var WODHOPPER_PLUGIN = function() {};
/*
* Variables
*/
// WODHOPPER_PLUGIN.prototype.BASE_DOMAIN = "https://syncapp.wodhopper.com/";
WODHOPPER_PLUGIN.BASE_DOMAIN = "https://syncapp.wodhopper.com/";
//Must strip out the final slash for the XSS to properly resolve to the host.
WODHOPPER_PLUGIN.XSS_BASE_DOMAIN = WODHOPPER_PLUGIN.BASE_DOMAIN.substring(0,WODHOPPER_PLUGIN.BASE_DOMAIN.length-1);
WODHOPPER_PLUGIN.TAB_COLOR = "";
WODHOPPER_PLUGIN.parent_url = function() {
var split_url = window.location.href.split("/");
//splitting http://xxx.com results in [0]=http: [1]='' [2]=restOfBaseUrl
return split_url[0] + "//" + split_url[2];
};
WODHOPPER_PLUGIN.getIsMobile = function() {
var isMobile = false;
//check for specific versions
if(/Android/i.test(navigator.userAgent)){
WODHOPPER_PLUGIN.isAndroid = true;
isMobile = true;
}
else if(/iPhone/i.test(navigator.userAgent) || /iPod/i.test(navigator.userAgent)){
WODHOPPER_PLUGIN.isIPhone = true;
isMobile = true;
}
else if(/iPad/i.test(navigator.userAgent)){
WODHOPPER_PLUGIN.isIPad = true;
}
else if(/Blackberry/i.test(navigator.userAgent)){
WODHOPPER_PLUGIN.isBlackBerry = true;
isMobile = true;
}
else{
//check for IEMobile Phones
if(/IEMobile|Opera Mini|Opera Mobi|Fennec/i.test(navigator.userAgent)){
isMobile = true;
}
}
return isMobile;
};
WODHOPPER_PLUGIN.getScriptParams = function(regEx) {
var scripts = document.getElementsByTagName('script');
for( var i = 0; i < scripts.length; i++ ){
if(regEx.test(scripts[i].src)){
return true;
}
}
return false;
};
WODHOPPER_PLUGIN.getScriptParam = function(regEx,param) {
var scripts = document.getElementsByTagName('script');
for( var i = 0; i < scripts.length; i++ ){
if(regEx.test(scripts[i].src)){
var split = scripts[i].src.split(""+param+"=");
if(split[1] !== "" && split[1] !== undefined){
return split[1];
} else{
return "";
}
}
}
return "";
};
WODHOPPER_PLUGIN.hexToRgb = function(hex) {
var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
return result ? {
r: parseInt(result[1], 16),
g: parseInt(result[2], 16),
b: parseInt(result[3], 16)
} : null;
};
//checks for any for of empty input, including just white space
WODHOPPER_PLUGIN.isEmptyInput = function(input) {
if(input) {
//could still be just white space
input = input.trim();
if(input) {
return false;
}
}
return true;
}
WODHOPPER_PLUGIN.getScriptGymId = function() {
//all this just gets the gymId and returns null
//if it is any form of empty input
var scriptGymId = null;
if(WODHOPPER_PLUGIN.getScriptParams(/gymId/i) == true){
scriptGymId = WODHOPPER_PLUGIN.getScriptParam(/gymId/i,"gymId");
}
if(!WODHOPPER_PLUGIN.isEmptyInput(scriptGymId)) {
return scriptGymId;
}
else {
return null;
}
};
WODHOPPER_PLUGIN.getScriptGymIdParamToAppend = function() {
var scriptGymId = WODHOPPER_PLUGIN.getScriptGymId();
if(scriptGymId) {
return "&gymId="+scriptGymId;
}
else {
return "";
}
};
WODHOPPER_PLUGIN.MOBILE_FILE = "";
WODHOPPER_PLUGIN.DESKTOP_FILE = "";
//if no scriptGymId it will append ""
WODHOPPER_PLUGIN.ROOT_PARAM = "xd="+WODHOPPER_PLUGIN.parent_url()+WODHOPPER_PLUGIN.getScriptGymIdParamToAppend();
WODHOPPER_PLUGIN.MOBILE_URL = WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.MOBILE_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM;
WODHOPPER_PLUGIN.isBlackBerry = false;
WODHOPPER_PLUGIN.isIPhone = false;
WODHOPPER_PLUGIN.isAndroid = false;
WODHOPPER_PLUGIN.isIPad = false;
WODHOPPER_PLUGIN.firstTimeSession = 0;
WODHOPPER_PLUGIN.isMobile = WODHOPPER_PLUGIN.getIsMobile();
WODHOPPER_PLUGIN.mobileTabs = (WODHOPPER_PLUGIN.getScriptParams(/mobileTabs/i) === true);
WODHOPPER_PLUGIN.firstTimeSession = 0;
WODHOPPER_PLUGIN.rootUrl = WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE +"?"+WODHOPPER_PLUGIN.ROOT_PARAM;
//Another function needed for the third party cookie workaround in safari
WODHOPPER_PLUGIN.emptyFunction = function(){
var x=0;
//this is a placeholder method that just needs to be executed
};
//Function for Safari iFrame 3rd party cookies workaround
WODHOPPER_PLUGIN.submitSessionForm = function() {
if (WODHOPPER_PLUGIN.firstTimeSession === 0) {
WODHOPPER_PLUGIN.firstTimeSession = 1;
WODHOPPER_JQUERY("#wodsessionform").submit();
setTimeout(WODHOPPER_PLUGIN.emptyFunction,2000);
}
};
WODHOPPER_PLUGIN.openMobileSite = function(tabToOpen,isRedirect,verificationLink,isOneStep,locale){
//add in a brief check for the ability to open new windows. This is for the new
//auto open scoreboard from facebook feature. The window object may not be fully loaded
//and unable to 'open' a new window. If thats the case set a minor timeout (3sec)
//and re-try
if(verificationLink != undefined && verificationLink != ""){
if(WODHOPPER_PLUGIN.TAB_COLOR != undefined && WODHOPPER_PLUGIN.TAB_COLOR != ""){
verificationLink += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
window.open(verificationLink);
}else if(isRedirect !==undefined && isRedirect === true){
var theUrl = WODHOPPER_PLUGIN.MOBILE_URL+"&mobileTab=" + tabToOpen;
if(WODHOPPER_PLUGIN.TAB_COLOR != undefined && WODHOPPER_PLUGIN.TAB_COLOR != ""){
theUrl += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
window.location = theUrl + "#ignoreCookie=true";
}
else{
if(tabToOpen.indexOf('scoreboard') != -1){
var theDate = tabToOpen.substring(tabToOpen.indexOf("=")+1);
if( theDate!= undefined && theDate.match(/^([0]?[1-9]|[1][0-2])[./-]([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0-9]{4}|[0-9]{2})$/g) != null){
if(theDate.indexOf("MM/DD/YYYY") ==-1 && theDate.indexOf("mm/dd/yyyy") ==-1){
WODHOPPER_PLUGIN.MOBILE_URL += "&scoreboard-date="+theDate;
} else{
//this is plain MM/DD/YYYY
WODHOPPER_PLUGIN.MOBILE_URL += "&scoreboard-date=today";
}
} else{
//this is plain MM/DD/YYYY
WODHOPPER_PLUGIN.MOBILE_URL += "&scoreboard-date=today";
}
} else if(tabToOpen.indexOf('signupMenuItem') != -1){
if(tabToOpen.indexOf('NoRsvp') != -1){
WODHOPPER_PLUGIN.MOBILE_URL += "&signup=SignupNoRsvp";
} else{
WODHOPPER_PLUGIN.MOBILE_URL += "&signup=Signup";
if ( isOneStep ) {
WODHOPPER_PLUGIN.MOBILE_URL += "&onestep=true";
}
}
} else if(tabToOpen.indexOf('rsvpMenuItem') != -1){
WODHOPPER_PLUGIN.MOBILE_URL += "&rsvp=true";
} else if(tabToOpen.indexOf('calculatorMenuItem') != -1){
WODHOPPER_PLUGIN.MOBILE_URL += "&calc=true";
} else{
WODHOPPER_PLUGIN.MOBILE_URL += "";
}
if(WODHOPPER_PLUGIN.TAB_COLOR != undefined && WODHOPPER_PLUGIN.TAB_COLOR != ""){
WODHOPPER_PLUGIN.MOBILE_URL += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
//window.open(WODHOPPER_PLUGIN.MOBILE_URL,'WODHOPPER Mobile');
if (locale) {
WODHOPPER_PLUGIN.MOBILE_URL += "&locale="+locale
}
window.open(WODHOPPER_PLUGIN.MOBILE_URL,'_blank');
}
};
WODHOPPER_PLUGIN.updateIFrameSize = function(){
var iFrameHeight = 670;
if((WODHOPPER_JQUERY(window).height()*0.70) >= iFrameHeight){
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").height((WODHOPPER_JQUERY(window).height()*.90));
}
else{
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").height(iFrameHeight);
}
WODHOPPER_PLUGIN.positionIframe();
};
WODHOPPER_PLUGIN.positionIframe = function(){
if(WODHOPPER_JQUERY(window).width() > 1100){
//center it
var newLeft = WODHOPPER_JQUERY(window).width() - WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe').width();
newLeft = newLeft/2;
newLeft = newLeft - (newLeft/3);
WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe,.wh-root-level-overlay').css('left',newLeft);
WODHOPPER_JQUERY('.close-image').css('left',newLeft + WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe').width() -8);
}else {
WODHOPPER_JQUERY('.close-image').css('left',WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe').position().left + WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe').width() - 5);
}
}
WODHOPPER_PLUGIN.GET_GYM_LOGO_URL = function(url){
//trim the XD out of the url
var xd = "";
var domain = "";
if(url.indexOf("xd=") != -1){
var subXd = url.substring(url.indexOf("xd=")+3);
var hashIndex = 0;
var ampIndex = 0;
if(subXd.indexOf("&") != -1){
ampIndex = subXd.indexOf("&");
}
if(subXd.indexOf("#") != -1){
hashIndex = subXd.indexOf("#");
}
if(hashIndex != 0 && ampIndex != 0 && hashIndex < ampIndex){
domain = subXd.substring(0,hashIndex);
} else if(ampIndex != 0 && hashIndex != 0 && ampIndex < hashIndex){
domain = subXd.substring(0,ampIndex);
} else if(ampIndex != 0 && hashIndex == 0){
domain = subXd.substring(0,ampIndex);
} else if(hashIndex != 0 && ampIndex == 0){
domain = subXd.substring(0,hashIndex);
} else{
return "https://syncapp.wodhopper.com/css/images/app-icon-med.png";
}
domain = domain.replace(/http:/ig,"");
domain = domain.replace(/www\./ig,"");
domain = domain.replace(/\//ig,"");
domain = domain.replace(/\.com/ig,"");
domain = domain.replace(/\.net/ig,"");
domain = domain.replace(/\.ca/ig,"");
domain = domain.replace(/\.au/ig,"");
domain = domain.replace(/\./ig,"_");
domain = domain.replace(/:/ig,"_");
return "https://s3.amazonaws.com/app.wodhopper.com/logos/"+domain+"_home_icon.png";
}
};
WODHOPPER_PLUGIN.buildWodhopperIframe = function (tabName,directedUrl,isOneStep,locale){
//reset the root URL
WODHOPPER_PLUGIN.rootUrl = WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE +"?"+WODHOPPER_PLUGIN.ROOT_PARAM;
if ( isOneStep ) {
WODHOPPER_PLUGIN.rootUrl += "&onestep=true";
}
if ( locale ) {
WODHOPPER_PLUGIN.rootUrl += "&locale=" + locale;
}
//add iframe
if(tabName.indexOf('Scoreboard') != -1){
var theDate = tabName.substring(tabName.indexOf("=")+1);
if( theDate!= undefined && theDate.match(/^([0]?[1-9]|[1][0-2])[./-]([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0-9]{4}|[0-9]{2})$/g) != null){
if(theDate.indexOf("MM/DD/YYYY") ==-1 && theDate.indexOf("mm/dd/yyyy") ==-1){
if(WODHOPPER_PLUGIN.isOnlySafari() && WODHOPPER_PLUGIN.TAB_COLOR != ""){
WODHOPPER_PLUGIN.rootUrl += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
WODHOPPER_PLUGIN.rootUrl += "#scoreboard-date="+theDate;
} else{
//this is plain MM/DD/YYYY
if(WODHOPPER_PLUGIN.isOnlySafari() && WODHOPPER_PLUGIN.TAB_COLOR != ""){
WODHOPPER_PLUGIN.rootUrl += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
WODHOPPER_PLUGIN.rootUrl += "#scoreboard-date=today";
}
} else{
//this is plain MM/DD/YYYY
if(WODHOPPER_PLUGIN.isOnlySafari() && WODHOPPER_PLUGIN.TAB_COLOR != ""){
WODHOPPER_PLUGIN.rootUrl += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
WODHOPPER_PLUGIN.rootUrl += "#scoreboard-date=today";
}
} else if(tabName.indexOf('RSVP') != -1){
if(WODHOPPER_PLUGIN.isOnlySafari() && WODHOPPER_PLUGIN.TAB_COLOR != ""){
WODHOPPER_PLUGIN.rootUrl += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
}
WODHOPPER_PLUGIN.rootUrl += "#rsvp";
}
else if(tabName.indexOf('Signup') != -1){
if(tabName.indexOf('NoRsvp') != -1){
WODHOPPER_PLUGIN.rootUrl += "&signup=SignupNoRsvp";
} else{
WODHOPPER_PLUGIN.rootUrl += "&signup=Signup";
}
}
else{
WODHOPPER_PLUGIN.rootUrl += "";
}
var iframeSource = WODHOPPER_PLUGIN.rootUrl;
if(directedUrl != undefined && directedUrl != ""){
iframeSource = directedUrl;
}
//check for passing in colors
if(WODHOPPER_PLUGIN.TAB_COLOR != ""){
//check for the Signup auto-open
if(iframeSource.indexOf("signup") != -1){
iframeSource += "&customColor="+WODHOPPER_PLUGIN.TAB_COLOR;
} else{
iframeSource += "#color="+WODHOPPER_PLUGIN.TAB_COLOR;
}
WODHOPPER_PLUGIN.LOGO_URL = WODHOPPER_PLUGIN.GET_GYM_LOGO_URL(iframeSource);
} else{
WODHOPPER_PLUGIN.TAB_COLOR = "5eadde";
WODHOPPER_PLUGIN.LOGO_URL = "https://syncapp.wodhopper.com/css/images/app-icon-med.png";
}
WODHOPPER_JQUERY('').appendTo(document.body);
WODHOPPER_JQUERY('
').appendTo(document.body);
WODHOPPER_JQUERY('.wh-root-level-overlay').html("Loading...");
WODHOPPER_JQUERY('.wh-root-level-overlay').css('-webkit-box-shadow',' inset 0px 0px 60px 20px #' + WODHOPPER_PLUGIN.TAB_COLOR);
WODHOPPER_JQUERY('.wh-root-level-overlay').css('box-shadow','inset 0px 0px 60px 20px #' + WODHOPPER_PLUGIN.TAB_COLOR);
WODHOPPER_JQUERY('.wh-root-level-overlay').css("background","#fff url('" + WODHOPPER_PLUGIN.LOGO_URL + "') no-repeat center 40%");
WODHOPPER_JQUERY('.wh-root-level-overlay').css("background-size","40%");
//add overlay
//WODHOPPER_JQUERY('').appendTo(document.body);
//add close image
WODHOPPER_JQUERY("
").appendTo(document.body);
WODHOPPER_JQUERY(".close-image").show().click(WODHOPPER_PLUGIN.closeWodhopperItems);
WODHOPPER_JQUERY(".close-image").css('position','absolute');
WODHOPPER_JQUERY(".close-image").css('top',(WODHOPPER_JQUERY(document).scrollTop() +49));
WODHOPPER_JQUERY(".close-image").css('left',120 + WODHOPPER_JQUERY(".wh-root-level-overlay").width());
WODHOPPER_JQUERY(".close-image").css('z-index','999999999999999999');
WODHOPPER_JQUERY(".close-image").css('cursor','pointer');
WODHOPPER_JQUERY(".close-image").css('display','inline-block');
WODHOPPER_PLUGIN.updateIFrameSize();
setTimeout(function(){
WODHOPPER_JQUERY('.wh-root-level-overlay').hide();
},1200);
WODHOPPER_JQUERY(WODHOPPER_JQUERY('#wodhopper_modal_dialog_iframe')[0].document).ready(function() {
setTimeout(function(){
WODHOPPER_JQUERY('.wh-root-level-overlay').hide();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").show();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").css('box-shadow','0px 0px 34px #888888');
WODHOPPER_PLUGIN.TAB_COLOR = "";
},1200);
});
};
WODHOPPER_PLUGIN.closeWodhopperItems = function(){
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe,.close-image,.wh-root-level-overlay").remove();
if(WODHOPPER_PLUGIN.getScriptParams(/tabColor/i) == true){
var color = WODHOPPER_PLUGIN.getScriptParam(/tabColor/i,"tabColor");
if(color!==""){
if(color.length > 6){
color = color.substring(0,6);
}
WODHOPPER_PLUGIN.TAB_COLOR = color;
}
}
}
WODHOPPER_PLUGIN.openModalDialog = function(tabName) {
if(WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").length === 0){
WODHOPPER_PLUGIN.buildWodhopperIframe(tabName);
} else if(WODHOPPER_PLUGIN.isIPad){
//do nothing.
}
else{
if(!WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").is(':visible')){
WODHOPPER_PLUGIN.updateIFrameSize();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").show();
} else{
//close the dialog
WODHOPPER_JQUERY('.close-image').trigger('click');
}
//WODHOPPER_JQUERY(".close-image").css('top',WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").offset().top - 6);
// WODHOPPER_JQUERY.postMessage(
// tabName,
// WODHOPPER_PLUGIN.rootUrl,
// WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").get(0).contentWindow
// );
}
return false;
};
WODHOPPER_PLUGIN.openVerificationLink = function(directedUrl){
if(WODHOPPER_PLUGIN.isMobile || WODHOPPER_PLUGIN.isIPad){
WODHOPPER_PLUGIN.openMobileSite("","",directedUrl);
}
else{
WODHOPPER_PLUGIN.buildWodhopperIframe("",directedUrl);
}
}
WODHOPPER_PLUGIN.showLeaderboardOnDate = function(dateString,isRedirect){
if(dateString === undefined || dateString === ""){
var currentDate = new Date();
var day = currentDate.getDate();
var month = currentDate.getMonth() + 1;
var year = currentDate.getFullYear();
dateString = "" + month+"/"+day+"/"+year;
}
//now make sure the future dated scoreboards arent allowed
var currentDate = new Date();
var passedInDate = new Date(dateString);
if(passedInDate > currentDate){
var day = currentDate.getDate();
var month = currentDate.getMonth() + 1;
var year = currentDate.getFullYear();
dateString = "" + month+"/"+day+"/"+year;
}
if(WODHOPPER_PLUGIN.isMobile){
WODHOPPER_PLUGIN.openMobileSite("scoreboardMenuItem&gotoDate="+dateString,isRedirect);
}
else if(WODHOPPER_PLUGIN.isIPad){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM+"#scoreboard-date="+dateString,'WODHOPPER');
}else{
if(WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").length === 0){
WODHOPPER_PLUGIN.buildWodhopperIframe("Scoreboard&gotoDate="+dateString);
}
else{
if(!WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").is(':visible')){
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").show();
}
WODHOPPER_PLUGIN.updateIFrameSize();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").css('top',WODHOPPER_JQUERY(document).scrollTop() +50);
WODHOPPER_JQUERY.postMessage(
dateString,
WODHOPPER_PLUGIN.rootUrl,
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").get(0).contentWindow
);
}
}
};
WODHOPPER_PLUGIN.showRsvp = function(){
if(WODHOPPER_PLUGIN.isMobile){
WODHOPPER_PLUGIN.openMobileSite("rsvpMenuItem");
} else if(WODHOPPER_PLUGIN.isIPad){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM,'WODHOPPER');
} else{
if(WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").length === 0){
WODHOPPER_PLUGIN.buildWodhopperIframe("RSVP");
}
else{
if(!WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").is(':visible')){
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").show();
}
WODHOPPER_PLUGIN.updateIFrameSize();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").css('top',WODHOPPER_JQUERY(document).scrollTop() +50);
WODHOPPER_JQUERY.postMessage(
'RSVP',
WODHOPPER_PLUGIN.rootUrl,
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").get(0).contentWindow
);
}
}
};
WODHOPPER_PLUGIN.isOnlySafari = function(){
if(/Safari/.test(navigator.userAgent) && !(/Chrome/.test(navigator.userAgent))){
return true;
} else{
return false;
}
};
WODHOPPER_PLUGIN.showSignup = function(skipRsvp, isOneStep, locale){
if(WODHOPPER_PLUGIN.isMobile){
if(skipRsvp===true){
WODHOPPER_PLUGIN.openMobileSite("signupMenuItemNoRsvp",null,null,true,locale);
} else{
if ( isOneStep ) {
WODHOPPER_PLUGIN.openMobileSite("signupMenuItem","","",true,locale);
} else {
WODHOPPER_PLUGIN.openMobileSite("signupMenuItem",null,null,null,locale);
}
}
} else if(WODHOPPER_PLUGIN.isIPad){
if(skipRsvp===true){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM +"&signup=SignupNoRsvp",'WODHOPPER');
} else{
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM +"&signup=Signup",'WODHOPPER');
}
} else{
if(WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").length === 0){
if(skipRsvp===true){
WODHOPPER_PLUGIN.buildWodhopperIframe("SignupNoRsvp",null,null,locale);
} else{
if ( isOneStep ) {
WODHOPPER_PLUGIN.buildWodhopperIframe("Signup", "", true,locale);
} else {
WODHOPPER_PLUGIN.buildWodhopperIframe("Signup", null, null, locale);
}
}
}
else{
if(!WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").is(':visible')){
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").show();
}
WODHOPPER_PLUGIN.updateIFrameSize();
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").css('top',WODHOPPER_JQUERY(document).scrollTop() +50);
WODHOPPER_JQUERY.postMessage(
'Signup',
WODHOPPER_PLUGIN.rootUrl,
WODHOPPER_JQUERY("#wodhopper_modal_dialog_iframe").get(0).contentWindow
);
}
}
};
WODHOPPER_PLUGIN.html_doc = document.getElementsByTagName('head').item(0);
WODHOPPER_PLUGIN.script = document.createElement("script");
WODHOPPER_PLUGIN.script2 = document.createElement("script");
WODHOPPER_PLUGIN.cssFile=document.createElement("link");
/*
* Dynamic JQuery and other JS and CSS files
*/
WODHOPPER_PLUGIN.cssFile.setAttribute("rel", "stylesheet");
WODHOPPER_PLUGIN.cssFile.setAttribute("type", "text/css");
WODHOPPER_PLUGIN.cssFile.setAttribute("href", WODHOPPER_PLUGIN.BASE_DOMAIN+"css/plugins/feedbackBadge.css");
WODHOPPER_PLUGIN.html_doc.appendChild(WODHOPPER_PLUGIN.cssFile);
WODHOPPER_PLUGIN.script.type = "text/javascript";
WODHOPPER_PLUGIN.callback_function = function() {
//10/1/11 - Adding noConflict call due to the jQuery conflicitng with MooTools. Found
//when deploying CF Barrington (Forging Elite Websites)
WODHOPPER_JQUERY = jQuery.noConflict(true);
if(!WODHOPPER_PLUGIN.isBlackBerry){
if(WODHOPPER_PLUGIN.isOnlySafari()){
//this is safari. 3rd party cookies fix.
//This is the iFrame 3rd Party cookies in Safari workaround.
//Reference http://anantgarg.com/2010/02/18/cross-domain-cookies-in-safari/
WODHOPPER_JQUERY("body").append('');
}
if(WODHOPPER_PLUGIN.getScriptParams(/hideWHTabs/i) !== true){
//append the two links for the floating Divs to the end of the HTML body
if ((document.documentMode || 100) <= 9) {
WODHOPPER_JQUERY('RSVP
').appendTo(document.body);
} else{
WODHOPPER_JQUERY('RSVP
').appendTo(document.body);
}
WODHOPPER_JQUERY('').appendTo(document.body);
WODHOPPER_JQUERY('').prependTo(document.body);
if(WODHOPPER_PLUGIN.getScriptParams(/tabColor/i) == true){
var color = WODHOPPER_PLUGIN.getScriptParam(/tabColor/i,"tabColor");
if(color!==""){
if(color.length > 6){
color = color.substring(0,6);
}
WODHOPPER_JQUERY('#wodhopper-coming-badge,#wodhopper-menu-badge').css('background-color',"#"+color); /*#wodhopper-mobile-menu-button,#wodhopper-mobile-rsvp,#wodhopper-mobile-menu*/
WODHOPPER_JQUERY('#wodhopper-coming-badge,#wodhopper-menu-badge').css('opacity',"0.6");
WODHOPPER_PLUGIN.TAB_COLOR = color;
}
}
}
//check if we need to display the new WH mobile banner
if((WODHOPPER_PLUGIN.isMobile || WODHOPPER_PLUGIN.isIPad) && !WODHOPPER_PLUGIN.mobileTabs){
WODHOPPER_JQUERY("#wodhopper-coming-badge").hide();
WODHOPPER_JQUERY("#wodhopper-menu-badge").hide();
WODHOPPER_JQUERY(document).ready(function(){
WODHOPPER_JQUERY("#wodhopper-mobile-menu").show();
});
var hostName = document.location.host.replace('www.','');
hostName = hostName.replace(/\./ig,"_");
var mobileBoxImage = "https://s3.amazonaws.com/app.wodhopper.com/logos/" + hostName + "_home_icon.png";
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").attr("src",mobileBoxImage);
var whMobileMetaTag = WODHOPPER_JQUERY('meta[name=viewport]');
if(whMobileMetaTag.attr('content') !== undefined){
//this has a mobile style sheet. present the new interface
//The current mobile styles are in the CSS already. no action needed.
}
else{
if(WODHOPPER_PLUGIN.isIPhone){
//this is a mobile phone, and not mobile style sheet...adjust it for the viewport
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('padding','40px 20px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('margin','18px 5px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp").css('margin-left','15px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('font-size','38px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('width','33%');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('height','120px');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('margin-right','20px');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('margin-top','10px');
WODHOPPER_JQUERY("#wodhopper-mobile-accordion-menu").css('font-size','32px');
WODHOPPER_JQUERY("#wodhopper-mobile-accordion-menu li").css('padding','30px');
}
}
if(/iPad/i.test(navigator.userAgent)){
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('padding','5px 5px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('margin','8px 5px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp").css('margin-left','15px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('font-size','18px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('max-width','250px');
WODHOPPER_JQUERY("#wodhopper-mobile-rsvp, #wodhopper-mobile-menu-button").css('width','150px');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('height','50px');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('margin-right','20px');
WODHOPPER_JQUERY("#wodhopper-mobile-box-icon").css('margin-top','3px');
WODHOPPER_JQUERY("#wodhopper-mobile-accordion-menu").css('font-size','18px');
WODHOPPER_JQUERY("#wodhopper-mobile-accordion-menu li").css('padding','10px');
}
}
WODHOPPER_JQUERY('#wodhopper-coming-badge,#wodhopper-mobile-rsvp').click(function(){
if(WODHOPPER_PLUGIN.isMobile){
WODHOPPER_PLUGIN.openMobileSite("rsvpMenuItem");
}
else{
if(WODHOPPER_PLUGIN.isIPad){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM,'WODHOPPER');
}else{
WODHOPPER_PLUGIN.openModalDialog("RSVP");
}
}
WODHOPPER_JQUERY('#wodhopper-mobile-accordion-menu').hide();
});
WODHOPPER_JQUERY('#wodhopper-mobile-menu-button').click(function(){
if(WODHOPPER_PLUGIN.isIPad){
WODHOPPER_JQUERY('#wodhopper-menu-badge').trigger('click');
}
else{
WODHOPPER_JQUERY('#wodhopper-mobile-accordion-menu').toggle();
}
});
WODHOPPER_JQUERY('#wodhopper-accordion-calculator').click(function(){
if(WODHOPPER_PLUGIN.isMobile){
WODHOPPER_PLUGIN.openMobileSite("calculatorMenuItem");
}
else{
if(WODHOPPER_PLUGIN.isIPad){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM,'WODHOPPER');
}
WODHOPPER_PLUGIN.openModalDialog("Strength Calculator");
}
WODHOPPER_JQUERY('#wodhopper-mobile-accordion-menu').hide();
});
WODHOPPER_JQUERY('#wodhopper-menu-badge,#wodhopper-accordion-scoreboard').click(function(){
if(WODHOPPER_PLUGIN.isMobile){
WODHOPPER_PLUGIN.openMobileSite("scoreboardMenuItem");
}
else{
if(WODHOPPER_PLUGIN.isIPad){
window.open(WODHOPPER_PLUGIN.BASE_DOMAIN+ WODHOPPER_PLUGIN.DESKTOP_FILE + "?"+WODHOPPER_PLUGIN.ROOT_PARAM+"#scoreboard-date=MM/DD/YYYY",'WODHOPPER');
}else{
WODHOPPER_PLUGIN.openModalDialog("Scoreboard");
}
}
WODHOPPER_JQUERY('#wodhopper-mobile-accordion-menu').hide();
});
}
else{
if(WODHOPPER_PLUGIN.getScriptParams(/hideWHTabs/i) !== true){
var newLink = document.createElement("a");
newLink.setAttribute("title","RSVP to class");
newLink.setAttribute("id","wodhopper-coming-badge");
newLink.setAttribute("onclick","WODHOPPER_PLUGIN.openMobileSite('rsvpMenuItem');");
var newSpan = document.createElement("span");
var spanText = document.createTextNode("Coming?");
newSpan.appendChild(spanText);
newLink.appendChild(newSpan);
document.body.appendChild(newLink);
document.getElementById("wodhopper-coming-badge").style.background = 'url("https://syncapp.wodhopper.com/css/images/coming_847.png") no-repeat';
document.getElementById("wodhopper-coming-badge").style.width = '62px';
document.getElementById("wodhopper-coming-badge").style.height = '124px';
document.getElementById("wodhopper-coming-badge").style.marginLeft = '-25px';
document.getElementById("wodhopper-coming-badge").style.cssFloat = 'left';
document.getElementById("wodhopper-coming-badge").style.left = '0px';
document.getElementById("wodhopper-coming-badge").style.position = 'fixed';
document.getElementById("wodhopper-coming-badge").style.top = '25%';
document.getElementById("wodhopper-coming-badge").style.textIndent = '-1000px';
document.getElementById("wodhopper-coming-badge").style.zIndex = '9999';
//Menu Badge
var newLink2 = document.createElement("a");
newLink2.setAttribute("title","See RSVP List");
newLink2.setAttribute("id","wodhopper-menu-badge");
newLink2.setAttribute("onclick","WODHOPPER_PLUGIN.openMobileSite('scoreboardMenuItem');");
//newLink2.setAttribute("onclick","WODHOPPER_PLUGIN.openMobileSite('rsvpMenuItem');");
var newSpan2 = document.createElement("span");
var spanText2 = document.createTextNode("WODHOPPER");
newSpan2.appendChild(spanText2);
newLink2.appendChild(newSpan2);
document.body.appendChild(newLink2);
document.getElementById("wodhopper-menu-badge").style.background = 'url("https://syncapp.wodhopper.com/css/images/menu_black.png") no-repeat';
document.getElementById("wodhopper-menu-badge").style.width = '62px';
document.getElementById("wodhopper-menu-badge").style.height = '54px';
document.getElementById("wodhopper-menu-badge").style.marginLeft = '-25px';
document.getElementById("wodhopper-menu-badge").style.marginTop = '120px';
document.getElementById("wodhopper-menu-badge").style.cssFloat = 'left';
document.getElementById("wodhopper-menu-badge").style.left = '0px';
document.getElementById("wodhopper-menu-badge").style.position = 'fixed';
document.getElementById("wodhopper-menu-badge").style.top = '25%';
document.getElementById("wodhopper-menu-badge").style.textIndent = '-1000px';
document.getElementById("wodhopper-menu-badge").style.zIndex = '9999';
}
}
/*Adding the check to call the redirect function for the standalone pages
This is necessary to avoid the race condition of the dynamic loading of the
script tags from the standalone page(s). Release 1.9.18.4 on 8/16/12 AK, CS
check the document location to contain the base domain and standalone.html
*/
if(document.location.href.indexOf("https://syncapp.wodhopper.com/") !== -1 &&
document.location.href.indexOf("standalone.html") !== -1){
//call the redirect function from the standalone.html page
standaloneWodhopperRedirect();
}
//now add the XSS JQueryplugin
WODHOPPER_PLUGIN.script2.type = "text/javascript";
WODHOPPER_PLUGIN.script2.src = WODHOPPER_PLUGIN.BASE_DOMAIN+'js/jquery-postMessage.js';
//IE:
if(window.attachEvent && document.all) {
WODHOPPER_PLUGIN.script2.onreadystatechange = function () {
if(this.readyState === "complete" || this.readyState === "loaded") {
WODHOPPER_PLUGIN.callback_function2(); //execute
}
};
}
//other browsers:
else {
WODHOPPER_PLUGIN.script2.onload = WODHOPPER_PLUGIN.callback_function2; //execute
}
WODHOPPER_PLUGIN.html_doc.appendChild(WODHOPPER_PLUGIN.script2);
};
WODHOPPER_PLUGIN.callback_function2 = function(){
//this is where we can setup the loading of XSS items. XSS is now loaded.
//This is the XSS receive function. This is called from the child
WODHOPPER_JQUERY.receiveMessage(
function(passedObject){
if(passedObject.data.indexOf('getCookie') !==-1){
var topSiteCookie = "";
var topSiteCookies = document.cookie.split(';');
var i=0;
var cookieString = "cookie=";
var cookieType = passedObject.data.substring(passedObject.data.indexOf('getCookie=')+10);
if(cookieType === "Name"){
for (i=0;i= 2){
WODHOPPER_JQUERY(hashtags).each(function(i){
if(i>0){ //skip the actual URL part
if(/wh_scoreboard/i.test(this)){
scoreboardDate = this.split("=")[1];
WODHOPPER_PLUGIN.showLeaderboardOnDate(scoreboardDate,true);
}
}
});
}
};
WODHOPPER_PLUGIN.handleUrlSignup = function(){
//check to see if there is the correct hashtag in the URL
var hashtags = window.location.href.split("#");
if(hashtags.length >= 2){
WODHOPPER_JQUERY(hashtags).each(function(i){
if(i>0){ //skip the actual URL part
if(/wh_signup_norsvp/i.test(this)){
WODHOPPER_PLUGIN.showSignup(true);
} else if(/wh_signup/i.test(this)){
WODHOPPER_PLUGIN.showSignup(false);
}
}
});
}
};