/**
 * @author sugimoto
 */

var UA = new _Browser();

 var core = Class.create();

 core.prototype = {
 	initialize : function(path)
	{
		this.base_url = path;
		this.toolTip == '';
		this.naviopenflag = {'contents' : false, 'genre' : false, 'price' : false, 'allergen' : false}
		this.createToolTip(this);
		this.br = new _Browser();
		this.flag = false;
		this.rollOver();
		this.campaign();
	},
	campaign : function()
	{
		var camp_img = document.getElementById('camp_img');
		if (camp_img == null)return;
		var onImg = new Image();
		onImg.src = camp_img.src.split('.gif')[0] + '_on.gif';
		Event.observe(camp_img, 'mouseover', function(ev){
			var e = ev.target || ev.srcElement;
			e.src = e.src.split('.gif')[0] + '_on.gif';
		})
		Event.observe(camp_img, 'mouseout', function(ev){
			var e = ev.target || ev.srcElement;
			e.src = e.src.split('_on.gif')[0] + '.gif';
		})
	},
	search_open : function(elm)
	{
		var targetFlag = elm.id.split('_search')[0];
		var target_id = elm.id + '_list';
		if(elm.id == 'allergen_search')
		{
			var dest_h = 250;
		}
		else
		{
			var dest_h = 180;
		}
		if (!this.naviopenflag[targetFlag]) {
			this.naviopenflag[targetFlag] = true;
			var h = 0;
			var timer = setInterval(function(){
				$(target_id).style.height = h + 'px';
				h += 10;
				if (h > dest_h) {
					clearInterval(timer);
				}
			}, 1);
		}
		else
		{
			this.naviopenflag[targetFlag] = false;
			var h = parseInt($(target_id).style.height);
			var timer = setInterval(function(){
				$(target_id).style.height = h + 'px';
				h -= 10;
				if(h < 0)
				{
					clearInterval(timer);
					$(target_id).style.height = '0px';
				}
			}, 1);
		}

	},
	createToolTip : function(thisClass)
	{
		if (document.getElementById('navigation-search')) {
			var thisClass = thisClass;
//			var from = document.getElementById('notice');
//			var targetList = from.getElementsByTagName('*');
			var dNode = document.createElement('div');
			dNode.id = 'tooltip';
			dNode.innerHTML = '<p>チェックを入れた原材料を<br /><span>含まない</span>商品を表示します';
			this.toolTop = dNode;
			document.body.appendChild(dNode);
			Event.observe(document, 'mousemove', thisClass.apperToolTip);
		}
		else
		{
			return;
		}
	},
	apperToolTip : function(ev)
	{
			var targetNode = document.getElementById('tooltip');
			var mouse = {};
			if(Core.br.IE)
			 {
				 var target = ev.srcElement;
			 }
			 else
			 {
				 var target = ev.target;
			 }


			if (target.tagName.toLowerCase() == 'input' && target.className == 'allergen') {
				if (Core.br.IE) {
					var scroll = Util.getScrollPosition();
					mouse.x = ev.clientX + scroll.x - 85;
					mouse.y = ev.clientY + scroll.y +15;
				}
				else {
					mouse.x = ev.pageX - 85;
					mouse.y = ev.pageY + 15;
				}

				targetNode.style.display = 'block';
				targetNode.style.left = mouse.x + 'px';
				targetNode.style.top = mouse.y + 'px';
				Core.flag = true;
			}
			else
			{
				if (Core.flag) {
					targetNode.style.display = 'none';
					Core.flag = false;
				}
			}
	},

	rollOver: function(){
		var l1 = document.getElementById('header_menu');
		if (l1) {
			var r1 = l1.getElementsByTagName('a');
		}
		var r2 = document.getElementById('cartbtn');
		var r3 = document.getElementById('incartbtn');
		var r4 = document.getElementById('incartbtn_under');
		var b = document.getElementById('backbtn');
		var log = document.getElementById('logbtn');
		var mer = document.getElementById('merumagabtn');

		//setEvent
		if (r1) {
		for (var i = 0; i < r1.length; i++) {
			if (r1[i]) {
				Event.observe(r1[i], 'mouseover', function(ev){
					ev = ev.target || window.event.srcElement;
					ev.parentNode.style.backgroundImage = 'url(' + Base_url + 'img/tmp/top_menu_pointer_on.gif)';
				});
				Event.observe(r1[i], 'mouseout', function(ev){
					ev = ev.target || window.event.srcElement;
					ev.parentNode.style.backgroundImage = 'url(' + Base_url + 'img/tmp/top_menu_pointer.gif)';

				})
			}
		}
	}
		if (r2) {
			Event.observe(r2, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.gif', '_on.gif');
			});
			Event.observe(r2, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.gif', '.gif');
			});
		}
		if (r3) {
			Event.observe(r3, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.jpg', '_on.jpg');
			});
			Event.observe(r3, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.jpg', '.jpg');
			});
		}
		if (r4) {
			Event.observe(r4, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.jpg', '_on.jpg');
			});
			Event.observe(r4, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.jpg', '.jpg');
			});
		}
		if (b) {
			Event.observe(b, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.jpg', '_on.jpg');
			});
			Event.observe(b, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.jpg', '.jpg');
			});
		}
		if (log) {
			Event.observe(log, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.gif', '_on.gif');
			});
			Event.observe(log, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.gif', '.gif');
			});
		}
		if (mer) {
			Event.observe(mer, 'mouseover', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('.jpg', '_on.jpg');
			});
			Event.observe(mer, 'mouseout', function(ev){
				ev = ev.target || window.event.srcElement;
				ev.src = ev.src.replace('_on.jpg', '.jpg');
			});
		}
		var r4 = document.getElementById('contents');

		if (r4) {
			var list_s = r4.getElementsByTagName('img');
			for (var k = 0; k < list_s.length; k++) {
				if (list_s[k].className == 'detailbtn') {
					Event.observe(list_s[k], 'mouseover', function(ev){
						ev = ev.target || window.event.srcElement;
						ev.src = ev.src.replace('.jpg', '_on.jpg');
					});
					Event.observe(list_s[k], 'mouseout', function(ev){
						ev = ev.target || window.event.srcElement;
						ev.src = ev.src.replace('_on.jpg', '.jpg');
					});
				}
			}
		}
	}


 }
	function _Browser(){
		var res = {};
		var ua = navigator.userAgent.toLowerCase();
		res.IE = (ua.indexOf('msie', ua) != -1 && ua.indexOf('opera',ua) == -1) ? true : false;
		res.IE7 = (ua.indexOf('msie', ua) != -1 && ua.indexOf('7.0', ua) != -1 && ua.indexOf('opera') == -1) ? true : false;
		res.IE8 = (ua.indexOf('msie', ua) != -1 && ua.indexOf('8.0', ua) != -1 && ua.indexOf('opera') == -1) ? true : false;
		res.IE6 = (ua.indexOf('msie', ua) != -1 && ua.indexOf('6.0', ua) != -1 && ua.indexOf('opera') == -1) ? true : false;
		res.Firefox = (ua.indexOf('gecko', ua) != -1) ? true : false;
		res.Safari = (ua.indexOf('safari', ua) != -1 && ua.indexOf('chrome', ua) == -1) ? true : false;
		res.Opera = (ua.indexOf('opera', ua) != -1) ? true : false;
		res.GoogleChrome = (ua.indexOf('chrome', ua) != -1) ? true : false;
		return res;

	}

function setBr()
{
	if (UA.IE)
	{
		document.write('<br />');
	}
}
