/* -------------------------------------------------------------------------- */
/**
 *\t@fileoverview
 *       script generated styles.
 *
 *    @version rev001.2008-06-06
 *    @requires common.js
 */
/* -------------------------------------------------------------------------- */




/* -------------------- Settings for BAInsertWastingSpan w/AutoSetup -------------------- */

var BA_WASTESPANS_CLASSNAME               = 'wasting-span';
var BA_WASTESPANS_INSERTED_CLASSNAME      = 'wasting-span-inserted';
var BA_WASTESPANS_TARGET_UA               = (BA.ua.isWinIE || BA.ua.isGecko || BA.ua.isSafari || BA.ua.isOpera);
var BA_WASTESPANS_AUTOSETUP_ENABLED       = true;
var BA_WASTESPANS_AUTOSETUP_TARGET_CNAMES = ['with-icon'];

/* -------------------- Settings for BAStripeTableAutoSetUp -------------------- */

var BA_STRIPETABLE_TARGET_CNAME           = ['table-A01', 'table-A02', 'table-B01', 'table-C01'];
var BA_STRIPETABLE_AUTOSETUP_ENABLED      = true;

/* -------------------- Settings for BARoundedAngleBtnAutoSetup -------------------- */

var BA_ROUNDEDANGLEBTN_TARGET_CNAMES      = ['list-C01'];
var BA_ROUNDEDANGLEBTN_AUTOSETUP_ENABLED  = false;


/* -------------------- Settings for BAInquiryLinkAutoSetup -------------------- */
var BA_INQUIRYLINKAUTOSETUP_ENABLED = true;



/* -------------------- Function : BAInsertWastingSpan -------------------- */

function BAInsertWastingSpan(node) {
	if (!node || node.instanceOf != 'BAElement') {
		throw 'BAInsertWastingSpan: first argument must be a BAElement node.';
	} else if (BA_WASTESPANS_TARGET_UA && !node.__BAInsertWastingSpan_inserted__) {
		node.getChildNodesBA().forEach(function(_node) {
			if (_node.nodeType == 1 && _node.hasChildNodes()) {
				BAInsertWastingSpan(_node);
			} else if (_node.nodeType == 3) {
				var pNode  = BARegisterDOMMethodsTo(_node.parentNode);
				var anchor = (pNode.nodeName.toLowerCase() == 'a') ?
								pNode :
								pNode.getAncestorsByTagNameBA('a')[0];
				if (anchor) {
				var span = document.createElementBA('span');
					span.appendClassNameBA(BA_WASTESPANS_CLASSNAME);
					pNode.insertBefore(span, _node.nextSibling);
					span.appendChildBA(_node);
					anchor.appendClassNameBA(BA_WASTESPANS_INSERTED_CLASSNAME);
					span.__BAInsertWastingSpan_inserted__ = true;
				}
			}
			node.__BAInsertWastingSpan_inserted__ = true;
		});
	}
}



/* -------------------- Function : BAInsertWastingSpanAutoSetup -------------------- */

function BAInsertWastingSpanAutoSetup() {
	document.getElementsByTagNameBA('a').forEach(function(node) {
		var flag = node.className.split(' ').some(function(cName) {
			return (BA_WASTESPANS_AUTOSETUP_TARGET_CNAMES.indexOf(cName) > -1);
		});
		if (flag) {
			BAInsertWastingSpan(node);
		}
	});
}



/* -------------------- Function : BAStripeTableAutoSetUp -------------------- */

function BAStripeTableAutoSetUp() {
	document.getElementsByTagNameBA('table').forEach(function(node) {
		var flag = node.className.split(' ').some(function(cName) {
			return (BA_STRIPETABLE_TARGET_CNAME.indexOf(cName) > -1);
		});
		if (flag) {
			var tbody = node.getElementsByTagNameBA('tbody')[0];
			if (tbody) {
				var count = 0;
				tbody.getElementsByTagNameBA('tr').forEach(function(tr) {
					tr.appendClassNameBA('pseudo-' + ['even','odd'][count++ % 2]);
				});
			}
		}
	});
}



/* -------------------- Function : BARoundedAngleBtnAutoSetup -------------------- */

function BARoundedAngleBtnAutoSetup() {
	document.getElementsByTagNameBA('ul').forEach(function(node) {
		var flag = node.className.split(' ').some(function(cName) {
			return (BA_ROUNDEDANGLEBTN_TARGET_CNAMES.indexOf(cName) > -1);
		});
		if (flag) {
			node.getElementsByTagNameBA('a').forEach(function(anchor) {
				['list-C-angle-right-top', 'list-C-angle-left-bottom'].forEach(function(className){
					var span = document.createElementBA('span');
					span.appendClassNameBA(className);
					anchor.appendChildBA(span);
				});
			});
		}
	});
}


/* -------------------- Function : BAInquiryLinkAutoSetup -------------------- */
function BAInquiryLinkAutoSetup () {
	document.getElementsByTagNameBA('a').forEach(function(node) {
		if ( node.getAttributeBA('href').match(/^https:\/\/www.moriliving.com\/contact\/ComControl\?/) ) {
			var targetUrl = node.getAttributeBA('href');
			node.addEventListenerBA('click', function(){
				BAOpenWindow(targetUrl, 'newwin', 641, 500, 'toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes');
			});
			node.setAttributeBA('href','javascript:void(0)');
			node.setAttributeBA('target','');
		}
	});
}


/* -------------------- Main : register start-up -------------------- */

if (typeof BA == 'object' && BA.ua.isDOMReady) {
	if (BA_WASTESPANS_AUTOSETUP_ENABLED) {
		BAAddOnload(BAInsertWastingSpanAutoSetup);
	}

	if (BA_STRIPETABLE_AUTOSETUP_ENABLED) {
		BAAddOnload(BAStripeTableAutoSetUp);
	}

	if (BA_ROUNDEDANGLEBTN_AUTOSETUP_ENABLED) {
		BAAddOnload(BARoundedAngleBtnAutoSetup);
	}

	if ( BA_INQUIRYLINKAUTOSETUP_ENABLED ) {
		BAAddOnload(BAInquiryLinkAutoSetup);
	}

}
