Cardio Classes
const data_config = {
styles: {
‘thClasses’: null,
‘tdClasses’: null,
‘trClasses’: null,
‘tableClasses’: null,
‘theadClasses’: null,
‘tbodyClasses’: null,
},
type: ‘season’,
id: 6,
layout: ‘table’,
data: [‘location’,’class’,’staff’,’time’,’price’]
};
const cm_config = {
div_id: ‘timetable’,
public_key: ‘3cadf271-4974-44d8-9bdc-e56022c08eb9’,
company_url: ‘tennisevolution’
};
document.addEventListener(“DOMContentLoaded”,
(function(){const e={…data_config,…cm_config,web_url:window.location.hostname},
n=”https://app.classmanager.com/api/v2/”+cm_config.company_url+”/embed/handle”;let t=new XMLHttpRequest;t.open(“POST”,n),
t.setRequestHeader(“Accept”,”application/json”),
t.setRequestHeader(“Content-Type”,”application/json”),
t.setRequestHeader(“REFERRER”,`${e.web_url}|${cm_config.public_key}`),
t.onreadystatechange=function(){4===t.readyState&&(document.getElementById(cm_config.div_id).innerHTML=modHTML(t.responseText))},
t.send(JSON.stringify(e))}));
function modHTML(htmlString) {
let modText = htmlString.replace(“Staff”,”Coach”);
let tempText = modText;
// let regexReplaceLines = “/(?:rn|r|n)/g”;
tempText = tempText.replace(/(?:rn|r|n)/g,’ ‘);
// console.log(tempText);
//let regexGetTableData=”!<td(.*?)
!/ig”;
const iterator = tempText.match(/<td(.*?)
/ig);
const newArray = iterator.map(stripTags);
console.log(newArray);
//build a simple table
let tableString = “”;
let i=0;
let k=0;
const paygURLArray = [“https://app.classmanager.com/pay-as-you-go/tennisevolution?class=winter-filler-2024-monday-cardio-tennis-7-8pm”, “https://app.classmanager.com/pay-as-you-go/tennisevolution?class=winter-filler-2024-tuesday-cardio-tennis-7-8pm”, “https://app.classmanager.com/pay-as-you-go/tennisevolution?class=winter-filler-2024-cardio-tennis”]
while (i < newArray.length){
tableString = tableString + "
” + newArray[i+3] + “ |
Book > | ||
Where: ” + newArray[i+2] + “ |
When: ” + newArray[i+1] + “ |
With: ” + newArray[i+4] + “ |
|
Cost:” + newArray[i+5] + ” (Payment Type: Online) Location: Margate Avenue Frankston Terms & Conditions |
“;
i=i+6;
k=k+1;
}
//tableString = tableString + “
“;
return tableString;
}
function stripTags(value, index, array){
const tmpArray = value.match(/>(.*?)</);
let tmpField = tmpArray[0];
tmpField = tmpField.replace("”,””);
tmpField = tmpField.trim();
return tmpField;
}
function toggleRowVisibility(rowCount) {
let elementID = “hidden-row-” + rowCount;
let btnID = “btnToggle” + rowCount;
var hiddenRow = document.getElementById(elementID);
var btnText = document.getElementById(btnID);
if (hiddenRow.style.display === “none”) {
hiddenRow.style.display = “”;
btnText.textContent = “less…”;
} else {
hiddenRow.style.display = “none”;
btnText.textContent = “more…”;
}
}
© copyright 2024 by TennisEvolution