// LEGAL NOTICE
// LEGAL NOTICE
// PATENT NOTE: Patent Number 7,904,335 plus 2 patents pending 12/099,782 and 13/115,959
// Contact Steve Crim stcrim@screencrafters.com 251-990-9498
// for real production comment out the debug_box and all the alert box
//ad network domains are seperated by spaces
var ads_domains = new String(" casalemedia.com zope.net winacarofyourchoice.com ");
var cleanslash = false;
var client_ip = null;
var cookie_persistence_secs = 64800;
var popNotOpenedYet = true;
var link = "";
var absolute_link = "";
var target = "";
var jQueryScriptOutputted = false;
var siteencore_on_link_only = true;
var counter = 0;
var delete_cookie = false;
var debug_box_on = false;
var blockurls = new Array();
blockurls[0] = "http://disney.com";
blockurls[1] = "http://www.mazdaofdanvers.com/Schedule-Mazda-Service-Massachusetts.aspx";
blockurls[2] = "http://iraaudi.com/Schedule-Audi-Service-Massachusetts.aspx";
blockurls[3] = "http://www.fairhopeopen.com/siteencore_w_blocker/destination_page_without_a_new_window.html";
blockurls[4] = "http://www.fairhopeopen.com/siteencore_w_blocker/index.html#";
blockurls[5] = "http://www.fairhopeopen.com/siteencore_w_blocker/url_list.js";
blockurls[6] = "http://candsleads.com/1stc/BMWofAnnapolis/url_list.js";
blockurls[7] = "http://candsleads.com/1stc/BMWofAnnapolis/disney.htm#";
blockurls[8] = "http://bmwofannapolis.com/#";
blockurls[9] = "http://bmwofannapolis.com/Car-Loan-Pre-Approval.aspx";
blockurls[10] = "http://www.fairhopeopen.com/siteencore_w_blocker/#";
blockurls[11] = "http://realestate.nj.com/for-rent/";
blockurls[12] = "http://www.fairhopeopen.com/siteencore_w_blocker/index.html";
blockurls[13] = "#";
blockurls[14] = "javascript:void(0)";
addSiteEncoreScript('http://ns1.screencrafters.net/siteencore_w_blocker/json.php?question=ip&callback=getIP','head');
function siteencore_window() {
if (!mobiledetection(navigator.userAgent||navigator.vendor||window.opera)) {
if (document.cookie.indexOf("popopened3=") != -1) { popNotOpenedYet = false; }
if(popNotOpenedYet) {
if (/Chrome[\/\s](\d+\.\d+)/.test(navigator.userAgent) || /Firefox/.test(navigator.userAgent)) {
popwinOBJz = window.open('http://www.siteencore.com/cnhi/tribstar/rotate_popup.cgi', 'nameMe11', 'toolbar=1,menubar=1,scrollbars=1,status=0,location=1,resizable=1');
var URL = window.location;
if (window.detwin) {
window.detwin.close();
window.detwin = null;
}
window.detwin = window.open(URL, 'mainwindow');
window.detwin.focus();
window.detwin.close();
}
else if (/iPad/.test(navigator.userAgent) || /Safari/.test(navigator.userAgent)) {
popwinOBJz = window.open('http://www.siteencore.com/cnhi/tribstar/rotate_popup.cgi', 'nameMe11', 'toolbar=1,menubar=1,scrollbars=1,status=0,location=1,resizable=1');
window.focus();
}
else {
popwinOBJz = window.open('http://www.siteencore.com/cnhi/tribstar/rotate_popup.cgi', 'nameMe11', 'toolbar=1,menubar=1,scrollbars=1,status=0,location=1,resizable=1');
popwinOBJz.blur();
}
popNotOpenedYet = false;
var today = new Date();
today.setTime(today.getTime());
var expiry_date = new Date(today.getTime() + (cookie_persistence_secs * 1000));
document.cookie = "popopened3=1;expires=" + expiry_date.toGMTString();
}
}
else {
//alert("do nothing for mobile");
}
}
// initialized by callback at loading time
function getIP(json){
client_ip = json.Body.msg;
if (document.cookie.indexOf("popopened3=") != -1) {
var debug_msg = "Cookie was found. New window should not be opened";
}
else {
var debug_msg = "Cookie was not found. New window should be opened";
}
// for real production comment out the debug_box
if (client_ip == '98.90.75.179' || debug_box_on) {
debug_box('T', debug_msg);
}
document.onclick = function()
{
//for ie only
if (window.event) {
if (typeof window.event.srcElement.parentElement.href == 'undefined') {
if (typeof window.event.srcElement.href == 'undefined') {
//client clicked on non link
link = '';
target = '';
//alert("not blocked because client clicked on a non link area so a new windows was opened. Note there is no destination page to go to.");
}
else {
//client clicked on a link
link = window.event.srcElement.href;
target = window.event.srcElement.target;
}
}
else {
//client clicked on an image with link
link = window.event.srcElement.parentElement.href;
target = window.event.srcElement.parentElement.target;
}
if (link) {
newwindow = false;
if (target) {
target = new String(target).toLowerCase();
if (target == '_blank' || target == '_new') {
newwindow = true;
}
}
//domain = new String(link).toLowerCase().getDomain();
//if (ads_domains.indexOf(' ' + domain + ' ') == -1 && !newwindow) {
//alert("clicked url: " + link);
if (blockurls.hasURL(link) > -1) {
//alert(link + "\n is in the blocked list so no new windows was opened");
}
else {
//if (!delete_cookie)
siteencore_window();
//alert(link + "\n is not in the blocked list so a new windows was opened");
}
}
else {
if (!siteencore_on_link_only) {
//if (!delete_cookie)
siteencore_window();
}
}
}
} // end document onclick
if (!/MSIE (\d+\.\d+);/.test(navigator.userAgent)) {
//alert("not ie");
initJQuery();
}
}
function initJQuery() {
counter++;
//alert("for not ie only " + counter);
//if the jQuery object isn't available
if (typeof(jQuery) == 'undefined') {
if (! jQueryScriptOutputted) {
//only output the script once..
jQueryScriptOutputted = true;
// http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
addSiteEncoreScript('http://code.jquery.com/jquery-latest.pack.js','head');
}
setTimeout("initJQuery()", 50);
} else {
//alert("for not ie only " + counter);
$(function() {
//do anything that needs to be done on document.ready
$("a").each(function(index, element){
if ($(element).attr("id") == '') {
//alert("index " + index);
$(element).attr("id", 'encoreid_' + index);
}
//alert('current id:' + $(element).attr("id") + " target=" + $(element).attr("target"));
});
//alert("inside non ie function " + counter);
jQuery('a').click(function() {
//alert(this.id);
var $this = $(this);
var href = $this.attr('href');
//alert(this.id + ' testing now 1 clicked url: ' + href);
link = href;
target = $this.attr('target');
var current_dir = getDirPath(window.location.href);
link_ob = new String(link);
if (/http/i.test(link_ob.substr(0,4))) {}
else if (link == '#') {
if (window.location.href.substr(window.location.href.length-1,1) == '#') {
absolute_link = window.location.href;
}
else {
absolute_link = window.location.href + "#";
}
}
else {
absolute_link = current_dir + link;
}
//alert("the link clicked was " + link);
newwindow = false;
if (target) {
target = new String(target).toLowerCase();
if (target == '_blank' || target == '_new') {
newwindow = true;
}
}
//domain = new String(link).toLowerCase().getDomain();
//if (ads_domains.indexOf(' ' + domain + ' ') == -1 && !newwindow) {
//alert("clicked url: " + link);
if (blockurls.hasURL(link) > -1 || blockurls.hasURL(absolute_link) > -1) {
//alert(link + "\n is in the blocked list so no new windows was opened");
}
else {
//if (!delete_cookie)
//alert(link + "\n is not in the blocked list so a new windows should be opened");
siteencore_window();
//alert(link + "\n is not in the blocked list so a new windows was opened");
}
});
});
}
}
function getDirPath(URL) {
var result = unescape(URL.substring(0,(URL.lastIndexOf("/")) + 1))
return result
}
function rtrim_slash(str) {
return str.replace(/\/+$/, '');
}
function addSiteEncoreScript(script_name, head_or_body) {
var script_position = document.getElementsByTagName(head_or_body)[0];
var js = document.createElement('script');
js.setAttribute('type','text/javascript');
js.setAttribute('src',script_name);
script_position.appendChild(js);
}
function debug_box(id, msg) {
var newdiv = document.createElement('div');
newdiv.setAttribute('id', "debug_div" + id);
newdiv.style.width = 700;
newdiv.style.height = 20;
newdiv.style.position = "absolute";
newdiv.style.right = 5;
newdiv.style.bottom = 5;
newdiv.style.background = "#cccccc";
newdiv.style.border = "1px solid #000";
newdiv.innerHTML = "Debug: cookie expires in " + cookie_persistence_secs + " secs. delete cookies ip. " + msg;
document.body.appendChild(newdiv);
}
function mobiledetection(a) {
if (/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))
{
return true;
}
else {
return false;
}
}
function deleteAllCookies() {
//delete_cookie = true;
var cookies = document.cookie.split(";");
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
var eqPos = cookie.indexOf("=");
var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
alert("cookie: " + cookie + " was deleted");
}
}
String.prototype.getHostname = function() {
var re = new RegExp('^(?:f|ht)tp(?:s)?\://([^/]+)', 'im');
return this.match(re)[1].toString();
}
String.prototype.getDomain = function(){
var hostname = this.getHostname();
return (m = hostname.match(new RegExp("([a-z,A-Z,0-9,\-]+\.[a-z,A-Z]{2,6})$") )) ? m[1] : false;
}
Array.prototype.hasURL = function(v) {
v = rtrim_slash(v);
if (!cleanslash) {
cleanslash = true;
for (i=0; i