function inArray(needle, haystack){
	for (var i in haystack)
		if (needle == haystack[i])
			return true
	return false
}

function getUpload(src_imgs, current_url){
	/* Set background with loader-image and remove `old` content (logo or error message) */
	document.getElementById('boxlogo').className = 'boxlogo bgloader'
	var domBildText = document.getElementById('bild_text')
	domBildText.innerHTML = ''
	var domBild = document.getElementById('bild')
	domBild.style.display = 'none'
	domBild.src = src_imgs + 'null.gif'
	/* <<< */	
	
	self.logoAjax = new httpRequest()
	logoAjax.useResponse = function(){
		var logo = logoAjax.Requester.responseXML.getElementsByTagName('logo')[0]
		var logo_node_inhalt = logo.text || logo.textContent || ''
								
		var err = logoAjax.Requester.responseXML.getElementsByTagName('err')[0]
		var err_node_inhalt = err.text || err.textContent || ''
		/* If isset logo or message, show them */
		if ((err_node_inhalt.length > 0) || (logo_node_inhalt.length > 0)){
			document.getElementById('boxlogo').className = 'boxlogo'
			clearInterval(self.hA)
			if (err_node_inhalt.length > 0)
				domBildText.innerHTML = err_node_inhalt
			if (logo_node_inhalt.length > 0){
				domBild.src = logo_node_inhalt
				domBild.style.display = 'inline'
				domBild.style.visibility = 'visible'
			}
		}
		/* <<< */
	}

	var eval_str = "logoAjax.exec('GET', '" + current_url + "&give_logo=1', false)"
	clearInterval(self.hA)
	self.hA = setInterval(eval_str, 1000)
}


//function createLogo(current_url, deflogo_id, coords_url){
function createLogo(current_url, coords_url){
	self.logoAjax = new httpRequest()
	logoAjax.useResponse = function(){
		var iden = logoAjax.Requester.responseXML.getElementsByTagName('iden')[0]
		var iden_inhalt = iden.text || iden.textContent || ''
		
		var pic = logoAjax.Requester.responseXML.getElementsByTagName('pic')[0]
		var pic_inhalt = pic.text || pic.textContent || ''
				
		self.option['id'] = iden_inhalt
		self.logo_id = iden_inhalt
		self.option['image'] = pic_inhalt
	}
	
	if (!self.logo_id){
		self.logo_id = ''
	}
	
	logoAjax.exec('GET', current_url + '?new_logo=1' + '&logo_price=' + self.option['logo_price'] + '&logo_id=' + self.logo_id + coords_url, false)
}

/* 13-06-2010 Static Edition */		
function setLagsXY(evt, domE){
	var e = self.event || evt
	
	var xPos = e.pageX || e.clientX
	domE.xLag = xPos - domE.offsetLeft
	
	var yPos = e.pageY || e.clientY
	domE.yLag = yPos - domE.offsetTop
}		

function moveLogo(evt, domElem){
	if (!domElem.movable)
		return false
	
	var e = self.event || evt
			
	var xPos = e.pageX || e.clientX
	var new_x = xPos - domElem.xLag
	
	if ((new_x <= 0) && (new_x+domElem.offsetWidth>=domElem.parentW))	
		domElem.style.left = new_x + 'px'
	
	var yPos = e.pageY || e.clientY
	var new_y = yPos - domElem.yLag
	if ((new_y <= 0) && (new_y+domElem.offsetHeight>=domElem.parentH))	
		domElem.style.top = new_y + 'px'
	
	return false
}


var picSet = new Array()
// zoomTrend (>0) zoomIn, zoomTrend (<0) zoomOut
var loupeUp = function(domImg, zoomTrend){
	//clearInterval(this.hI)
	this.config = {
		"step_wide"  : 8,
		"time_delay" : 5
	}
	
	this.selfName = 'picSet[\'' + domImg.id + '\']'
		
		
	this.start_w = domImg.offsetWidth
	this.start_h = domImg.offsetHeight
	
	this.start_l = domImg.offsetLeft
	this.start_t = domImg.offsetTop
	/* NOT delete this comment
	this.realStyle = (domImg.currentStyle) ? domImg.currentStyle : document.defaultView.getComputedStyle(domImg, null)
	this.max_w = parseInt(this.realStyle.maxWidth)
	this.min_w = parseInt(this.realStyle.minWidth)
	*/
	
	this.max_w = domImg.origW
	this.min_w = domImg.minW
	
	this.parentW  = domImg.parentNode.offsetWidth
	this.parentH = domImg.parentNode.offsetHeight
		
	this.zoomIn = function(){
		if (domImg.offsetWidth == this.max_w){
			clearInterval(domImg.hI)
			return true
		}
		this.nextW = domImg.offsetWidth + this.config["step_wide"]
		
		if (this.nextW >= this.max_w){
			this.nextW = this.max_w
			clearInterval(domImg.hI)
		}
		
		domImg.style.width = this.nextW + 'px'; 
		
		var meetR = (domImg.offsetLeft + this.nextW >= this.parentW) ? true : false
		var meetL = (domImg.offsetLeft <= 0) ? true : false
		
		if (!meetL && !meetR){
			//alert(1)
			this.step_l = Math.round((this.nextW-this.start_w)/2)
			domImg.style.left =  this.start_l - this.step_l + 'px'
		}
		else if (meetL && meetR){
			//alert(2)
			/* NOT delete this comment
			domImg.style.left = Math.round((this.parentW - this.nextW)/2) + 'px'
			*/
			this.step_l = Math.round((this.nextW-this.start_w)/2)
			domImg.style.left =  this.start_l - this.step_l + 'px'
		}
		else if (!meetL && meetR){
			//alert(3)
			domImg.style.left = this.parentW - this.nextW + 'px'
		}
		else if (meetL && !meetR){
			//alert(4)
			// no change left coordinate
		}
		/* set Y Position */
		this.nextH = domImg.offsetHeight				
		var meetB = (domImg.offsetTop + this.nextH >= this.parentH) ? true : false
		var meetT = (domImg.offsetTop <= 0) ? true : false
		//alert()
		if (!meetT && !meetB){
			//alert(1 + ' * ' + this.nextH + ' * ' + this.start_h)
			this.step_t = Math.round((this.nextH-this.start_h)/2)
			domImg.style.top =  this.start_t - this.step_t + 'px'
		}
		else if (meetT && meetB){
			//alert(2)
			/* NOT delete this comment
			domImg.style.top = Math.round((this.parentH - this.nextH)/2) + 'px'
			*/
			this.step_t = Math.round((this.nextH-this.start_h)/2)
			domImg.style.top =  this.start_t - this.step_t + 'px'
		}
		else if (!meetT && meetB){
			//alert(3)
			domImg.style.top = this.parentH - this.nextH + 'px'
		}
		else if (meetT && !meetB){
			//alert(4)
			// no change Y coordinate
		}				

		return true
	}
	
	this.zoomOut = function(){
		if (domImg.offsetWidth == this.min_w){
			clearInterval(domImg.hI)
			return true
		}
	
		this.nextW = domImg.offsetWidth - this.config["step_wide"]
		
		if (this.nextW <= this.min_w){
			this.nextW = this.min_w
			clearInterval(domImg.hI)
		}				
		domImg.style.width = this.nextW + 'px'; 
		
		/* set X Position */
		var meetR = (domImg.offsetLeft + this.nextW <= this.parentW) ? true : false
		var meetL = (domImg.offsetLeft >= 0) ? true : false
		
		if (!meetR && !meetL){
			this.step_l = Math.round((this.start_w - this.nextW)/2)
			domImg.style.left = this.start_l + this.step_l + 'px'
		}
		else if (meetR && meetL){
			domImg.style.left = Math.round((this.parentW - this.nextW)/2) + 'px'
		}
		else if (meetR && !meetL){
			domImg.style.left = this.parentW - this.nextW + 'px'
		}
		else if (!meetR && meetL){
			// no change left coordinate
		}				

		/* set Y Position */
		this.nextH = domImg.offsetHeight
		var meetB = (domImg.offsetTop + this.nextH <= this.parentH) ? true : false
		var meetT = (domImg.offsetTop >= 0) ? true : false
		
		if (!meetB && !meetT){
			//alert(1)
			this.step_t = Math.round((this.start_h - this.nextH)/2)
			domImg.style.top = this.start_t + this.step_t + 'px'
		}
		else if (meetB && meetT){
			//alert(2)
			domImg.style.top = Math.round((this.parentH - this.nextH)/2) + 'px'
		}	
		else if (meetB && !meetT){
			//alert(3)
			domImg.style.top = this.parentH - this.nextH + 'px'
		}
		else if (!meetB && meetT){
			//alert(4)
			// no change Y coordinate
		}
		return true
	}			
		
	this.loopZoom = function(){
		clearInterval(domImg.hI)
		
		if (zoomTrend > 0)
			domImg.hI = setInterval(this.selfName + '.zoomIn()', this.config["time_delay"])

		if (zoomTrend < 0)
			domImg.hI = setInterval(this.selfName + '.zoomOut()', this.config["time_delay"])				
	}
	
	this.loopZoom()
}

function logoLoad(domImg){
	domImg.style.visibility = 'hidden'
	domImg.style.width = 'auto'
	domImg.origW = domImg.offsetWidth
	domImg.className = 'chocologo box_dims'
	var offset_w = domImg.minW = domImg.offsetWidth
	domImg.style.width = offset_w + 'px'
	domImg.className = 'chocologo'
	domImg.style.left = Math.round((domImg.parentNode.offsetWidth-offset_w)/2) + 'px'
	domImg.style.top = Math.round((domImg.parentNode.offsetHeight-domImg.offsetHeight)/2) + 'px'
	domImg.style.visibility = 'visible'
}

/* <<= 13-06-2010_static_edition */		
