');
}
jslocal_SetActiveMenuItem('ul.menu');
if($('div.logobar img.logo-left').length){
$('div.logobar img.logo-left').css('cursor', 'pointer');
$('div.logobar img.logo-left').click(function(e){
e.preventDefault();
window.location = '/';
return;
});
}
if($('section#bannerAbout div.btn.btn-white.phonebtn-home').length){
$('section#bannerAbout div.btn.btn-white.phonebtn-home').click(function(e){
e.preventDefault();
window.location = '/purchase';
return;
});
}
if($('section#bannerAbout div.btn.btn-white.phonebtn-nyiad').length){
$('section#bannerAbout div.btn.btn-white.phonebtn-nyiad').click(function(e){
e.preventDefault();
window.location = '/nyiad-students';
return;
});
}
if($('section#banner div.btn.btn-white.phonebtn-home').length){
$('section#banner div.btn.btn-white.phonebtn-home').click(function(e){
e.preventDefault();
window.location = '/purchase';
return;
});
}
if($('section#banner div.btn.btn-white.phonebtn-nyiad').length){
$('section#banner div.btn.btn-white.phonebtn-nyiad').click(function(e){
e.preventDefault();
window.location = '/nyiad-students';
return;
});
}
if($('section#testimonials div.btn.btn-md-blue').length){
$('section#testimonials div.btn.btn-md-blue').click(function(e){
e.preventDefault();
window.location = '/testimonials';
return;
});
}
if($('section#colorBox div.btn.btn-lt-blue.get-started-').length){
$('section#colorBox div.btn.btn-lt-blue.get-started-').click(function(e){
e.preventDefault();
window.location = '/purchase';
return;
});
}
if($('section#colorBox div.btn.btn-lt-blue.benefits-').length){
$('section#colorBox div.btn.btn-lt-blue.benefits-').click(function(e){
e.preventDefault();
window.location = '/benefits';
return;
});
}
if($('#studentloginform .login-action').length){
$('#studentloginform .login-action').click(function(e){
e.preventDefault();
$('.required-field-alert').removeClass('required-field-alert');
if (!$('#studentloginform input[name="citycode"]').length)
$('#studentloginform').append('');
jslocal_AjaxPost('studentloginform', '/php/student-login.do.php');
return;
});
}
if($('#purchaseform .purchase-form-submit-action').length){
$('#purchaseform .purchase-form-submit-action').click(function(e){
e.preventDefault();
$('.required-field-alert').removeClass('required-field-alert');
if (!$('#purchaseform input[name="citycode"]').length)
$('#purchaseform').append('');
jslocal_AjaxPost('purchaseform', '/php/purchase.do.php');
return;
});
}
}); // Ready
$(window).load(function(){
var parentNode = document.body;
jslocal_LinkEmails(parentNode);
jslocal_LinkUrls(parentNode);
});
// Extend jQuery to obtain url parameters
/*
Usage:
=====
// Get object of URL parameters
var allVars = $.getUrlVars();
// Getting URL var by its nam
var byName = $.getUrlVar('sn');
*/
$.extend({
getUrlVars: function(){
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
},
getUrlVar: function(name){
//return $.getUrlVars()[name];
var jVrVl = $.getUrlVars()[name];
if (typeof(jVrVl) === 'undefined')
return '';
return decodeURIComponent(jVrVl);
}
});
// -- Special functions --
function jslocal_SetActiveMenuItem(jLmntSlctor){ // jLmntSlctor = element selector
if($(jLmntSlctor).length){
if (pid != 'home'){ // Not the home page
jWndwLctn = window.location.pathname; // Page path without the host - first character is: /
jWndwLctn = jslocal_GetToken(jWndwLctn, 2, '/', ''); // Obtain "first" token on the path
jWndwLctn = '/' + jWndwLctn; // Add a leading: /
$(jLmntSlctor + ' li a').each(function(i,v){ // Each top menu
jHrf = $(this).attr('href');
if (jHrf == jWndwLctn)
$(this).addClass('active'); // Set top menu to active
}); // Each
}
else
$(jLmntSlctor + ' li a:first').addClass('active');
} // If
return;
}
function jlocal_Contact_After(jSccss, jRqrdFldsLmntsLst){
jslocal_ResetSubmitButton('contactform');
if (!jSccss){
jslocal_SetFormFieldsHighlight(jRqrdFldsLmntsLst);
jslocal_ShowModalWindow('myModal', 'Required Fields', 'Please review required fields.');
return;
}
$('#contactform input[type="text"], #contactform input[type="email"], #contactform textarea').val('');
jslocal_ShowModalWindow('myModal', 'Thank You', 'Your message has been submitted. We will get back to you soon.');
return;
}
function jlocal_Purchase_After(jSccss, jRqrdFldsLmntsLst){
if (!jSccss){
jslocal_SetFormFieldsHighlight(jRqrdFldsLmntsLst);
jslocal_Scroll2Element('#siteforms', 0);
jslocal_ShowModalWindow('myModal', 'Required Fields', 'Please review required fields. Also, make sure the password and confirm-password match');
return;
}
$('#purchaseform input[type="text"], #purchaseform input[type="email"], #purchaseform textarea').val('');
jslocal_Scroll2Element('#wrapper', 0);
jslocal_ShowModalWindow('myModal', 'Thank You', 'Your information has been submitted. We will get back to you soon.');
return;
}
function jlocal_StudentLogin_After(jSccss, jRrrDscr, jRqrdFldsLmntsLst){
if (!jSccss){
jslocal_SetFormFieldsHighlight(jRqrdFldsLmntsLst);
if(jRrrDscr != 'invalid')
jslocal_ShowModalWindow('myModal', 'Required Fields', 'Please review required fields.');
else
jslocal_ShowModalWindow('myModal', 'Invalid Information', 'Please try again.');
return;
}
window.location = '/mychsp';
return;
}
function jslocal_SetFormFieldsHighlight(jSlctrs){ // jSlctrs = selectors
if (jslocal_Trim(jSlctrs) != '')
$(jSlctrs).addClass('required-field-alert');
return;
}
function jslocal_ResetSubmitButton(jFrmSlctr){
$(('#' + jFrmSlctr + ' .-spin')).addClass('hide');
$(('#' + jFrmSlctr + ' input[type="submit"]')).show();
return;
}
function jslocal_ShowModalWindow(jMdlWndwD, jTtl, jBdy){ // jMdlWndwD = modal window id | jTtl = title | jBdy = body
$('#' + jMdlWndwD + ' #myModalLabel').html(jTtl);
$('#' + jMdlWndwD + ' .modal-body').html(jBdy);
$('#' + jMdlWndwD).modal({show:true});
return;
}
// -- Standard functions --
var re = /[\w\.\-]+\@([\w\-]+\.)+[\w]{2,4}(?![^<]*>)/ig;
function jslocal_LinkEmails(parentNode){
var nodes = parentNode.childNodes;
for (var i=0; i < nodes.length; i++){
if (nodes[i].nodeType == 1 && nodes[i].tagName != "A") {
jslocal_LinkEmails(nodes[i]);
} else if (nodes[i].nodeType == 3 && re.test(nodes[i].nodeValue)){
parentNode.innerHTML = parentNode.innerHTML.replace(re,"$&");
}
}
}
var rl = /https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w\_\.]*(\?\S+)?)?)?/ig;
function jslocal_LinkUrls(parentNode){
var nodes = parentNode.childNodes;
for (var i=0; i < nodes.length; i++){
if (nodes[i].nodeType == 1 && nodes[i].tagName != "A") {
jslocal_LinkUrls(nodes[i]);
} else if (nodes[i].nodeType == 3 && rl.test(nodes[i].nodeValue)){
parentNode.innerHTML = parentNode.innerHTML.replace(rl,"$&");
}
}
}
function jslocal_Trim(jVl){ // jVl = value to 'trim'
return jVl.replace(/(?:(?:^|\n)\s+|\s+(?:$|\n))/g, "");
}
function jslocal_Set(jLmntID, jVl){ // jLmntID = element id | jVl = value
// Set the 'innerHTML' of an element
if (document.all)
document.all[jLmntID].innerHTML = jVl;
else
document.getElementById(jLmntID).innerHTML = jVl;
}
function jslocal_SetValue(jLmntID, jVl){ // jLmntID = element id | jVl = value
// Set the 'value' of an element
if (document.all)
document.all[jLmntID].value = jVl;
else
document.getElementById(jLmntID).value = jVl;
}
function jslocal_SetSelectOption(jFrmFldBjct, jVl){ // jFrmFldBjct = form field object | jVl = value to set with
// Set the 'selected' option of a select input list
for (i=0; i < jFrmFldBjct.options.length; i++){
if (jFrmFldBjct.options[i].value == jVl)
jFrmFldBjct.options[i].selected = true;
}
}
function jslocal_GetElement(jLmntID){ // jLmntID = element id
if (document.all)
return document.all[jLmntID];
else
return document.getElementById(jLmntID);
}
function jslocal_GetElementValue(jLmntID){ // jLmntID = element id
if (document.all)
return document.all[jLmntID].value;
else
return document.getElementById(jLmntID).value;
}
function jslocal_SetValue(jLmntID, jVl){ // jLmntID = element id | jVl = value
// Set the 'value' of an element
if (document.all)
document.all[jLmntID].value = jVl;
else
document.getElementById(jLmntID).value = jVl;
}
function jslocal_IsEmpty(jStrng){ // jStrng = string to check if empty
var jStrng2 = jslocal_Trim(jStrng);
return ((jStrng2 == null) || (jStrng2.length == 0));
}
function jslocal_IsEmptyRadio(jFrmFldNm, jFrmNmbr){ // jFrmFldNm = radio form field name | jFrmNmbr = form number
for (i=document.forms[jFrmNmbr][jFrmFldNm].length-1; i > -1; i--)
if(document.forms[jFrmNmbr][jFrmFldNm][i].checked)
return false;
return true;
}
var reEmail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/i;
function jslocal_IsEmail(jMls){ // jMls = email to validate (empty is Ok)
return reEmail.test(jMls);
}
var reFloat = /^-?((\d+(\.\d*)?)|((\d*\.)?\d+))$/;
function jslocal_IsNumber(jNmbr) { // jNmbr = number to check
return reFloat.test(jNmbr);
}
function jslocal_IsInteger(jNmbr, jSgndNtgr) { // jNmbr = number to check | jSgndNtgr = allow signed integer (true/false)
if (jSgndNtgr)
return (jNmbr.toString().search(/^-?[0-9]+$/) == 0); // allows negative sign
else
return (jNmbr.toString().search(/^[0-9]+$/) == 0); // does not allow negative sign
}
uc = Date.parse(new Date()) + '_' + Math.round(100*Math.random()) + '_';
var ucIncrement = 0; // a value to be incremented
function jslocal_UC(){ // return the unique value
++ucIncrement;
return (uc + (ucIncrement+''));
}
function jslocal_AjaxPost(jFrmD, jRl) { // jNmbr = form id | jRl = url
var jFormData = $('#' + jFrmD).serialize();
var jAjaxUrl = jRl;
$.ajax({type:'POST',
url:(jAjaxUrl + '?uc=' + jslocal_UC()),
data:jFormData, async:true, dataType:'script'
});
return;
}
function jslocal_AjaxPost2(jFrmDt, jRl) { // jFrmDt = form data | jRl = url
var jFormData = jFrmDt;
var jAjaxUrl = jRl;
$.ajax({type:'POST',
url:(jAjaxUrl + '?uc=' + jslocal_UC()),
data:jFormData, async:true, dataType:'script'
});
return;
}
function jslocal_Scroll2Element(jLmnt, jFfst){ // jLmnt = element || jFfst = offset
$('html, body').animate({
scrollTop: $(jLmnt).offset().top - jFfst
}, 900, 'swing');
return;
}
function jslocal_GetQueryString(){
return jslocal_Trim(window.location.search.replace('?', '')); // Removes ?, if found
}
function jslocal_GetToken(jVl, jTknPs, jDlmtr, jDfltVl){ // jVl = string value to extract from | jTknPs = token position to extract, optional {last} | jDlmtr = delimiter | jDfltVl = default value when token not found
var jTknsRry = jVl.split(jDlmtr); // make an array
if (jTknPs == 'last'){ // last token
if (jTknsRry.length > 0)
return jTknsRry[(jTknsRry.length-1)];
else
return jDfltVl;
}
if (jTknPs < 1) // token is not numeric
return jDfltVl;
if (jTknsRry.length < jTknPs)
return jDfltVl;
return jTknsRry[(jTknPs-1)];
}