var common = function(){
	var urllink = location.toString();
	var caseType = urllink.substring(urllink.lastIndexOf('\/')+1, urllink.lastIndexOf('.'));
	var obj = Ext.urlDecode(urllink.substring(urllink.lastIndexOf('?')+1, urllink.length));
	var tf = ['EBook'];
	
	function changeToExtField(fields){
		var text = (Ext.isIE) ? fields.bvalue : getAbrite(fields, 'bvalue');
		var type = (fields.type == 'text') ? 'TextField' : 'TextArea';
		var indexField = new Ext.form[type]({
			emptyClass: '', 
			emptyText: text, 
			fieldClass: '',
			focusClass: '',
			applyTo: fields.id
		});
		indexField.getEl().removeClass('x-form-text');
		indexField.getEl().removeClass('x-form-empty-field');
	}
	
	function getTemplate(xtpl){
		var word = (Ext.getDom(xtpl)) ? Ext.getDom(xtpl).innerHTML : xtpl;
		word = word.replace(/\%7B/g, '{').replace(/\%7D/g, '}');
		return word.replace(/TPL/g, 'tpl').replace(/ > /g, ' &gt; ').replace(/ < /g, ' &lt; ');
	}
	
	return {
		indexPoint: 0, 
		startNum: 1, 
		
		init: function(){
			for(x in tf){
				if(!Ext.get(tf[x])) continue;
				var f = new Ext.form.TextField({emptyText: Ext.getDom(tf[x]).value, 
					emptyClass: '', fieldClass: '', focusClass: '', applyTo: tf[x] });
				f.getEl().removeClass('x-form-text').removeClass('x-form-empty-field');
				var btn = Ext.get(tf[x]).parent('table').child('input[type=image]', true);
				if(btn) Ext.get(tf[x]).addKeyListener({key:13}, btn.onclick);
			}
			if(Ext.get('mainPic')){
				var pics = Ext.query('input[class^=opacity]');
				if(pics.length == 0) return;
				for(var i=1;i<pics.length;i++){
					Ext.get(pics[i]).setOpacity(.3);
				}
			}
			if(Ext.get('mainNews')){
				this.createHotNews();
			}
		}, 
		
		subscribe: function(type){
			var mail = Ext.getDom('EBook').value.trim();
			if (!Ext.form.VTypes.email(mail)){
				alert('Please enter your E-Mail!!');
			}else{
				var cb = function(rspn, option){
					alert(Ext.util.JSON.decode(rspn.responseText));
					Ext.getDom('EBook').value = 'Enter your e-Mail  Account';
				}
				var cn = new Ext.data.Connection({url:'getdata.php?Type='+type}).request({
					scope: this, method: 'POST', params: {'paramID': mail}, success: cb
				});
			}
		}, 
		
		showImage: function(pic, src){
			var num = pic.className.replace('opacity', '');
			if(num == this.startNum) return;
			var pics = Ext.query('input[class^=opacity]');
			for(var i=0;i<pics.length;i++){
				var n = pics[i].className.replace('opacity', '');
				Ext.get(pics[i]).setOpacity(pics[i].className == pic.className ? 1 : .3, (n == this.startNum || n == num));
			}
			Ext.getDom('mainPic').src = src;
			Ext.get('mainPic').show(true);
			this.startNum = num;
		}, 
		
		createHotNews: function(){
			this.backupMainPage = getTemplate('mainTemp');
			var cb = function(rspn, option){
				this.newsData = Ext.util.JSON.decode(rspn.responseText);
				var tpl = new Ext.XTemplate(this.backupMainPage);
				Ext.get('mainNews').update(tpl.apply(this.newsData[0])).show(true);
				this.createRowNews();
			}
			var cn = new Ext.data.Connection({url:'getdata.php?Type=hotnews'}).request({
				scope: this, method: 'POST', params: {'paramID': caseType}, success: cb
			});
		},
		
		createRowNews: function(){
			if(this.newsData.length <= 1) return;
			this.backupSubPage = getTemplate('subTemp');
			var tpl = new Ext.XTemplate(this.backupSubPage);
			var arr = [];
			for(var i=0;i<this.newsData.length;i++){
				if(i == this.indexPoint) continue;
				arr.push(this.newsData[i]);
			}
			Ext.get('subNews').update(tpl.apply(arr)).show(true);
			Ext.getDom('overvier_prev').style.visibility = 'visible';
			Ext.getDom('overvier_next').style.visibility = 'visible';
		},
		
		moveNews: function(num){
			if(num > 0){
				var n = this.indexPoint+num >= this.newsData.length ? 0 : this.indexPoint+num;
			}else{
				var n = this.indexPoint+num < 0 ? this.newsData.length-1 : this.indexPoint+num;
			}
			var tpl = new Ext.XTemplate(this.backupSubPage);
			var html = tpl.apply(this.newsData[this.indexPoint]);
			if(num > 0){
				Ext.DomHelper.append('subNews', html);
			}else{
				Ext.get('subNews').update(html+Ext.getDom('subNews').innerHTML);
				Ext.get('subHot'+this.newsData[this.indexPoint].ID).slideIn('t');
			}
			var tpl = new Ext.XTemplate(this.backupMainPage);
			Ext.get('mainNews').update(tpl.apply(this.newsData[n])).show(true);
			if(num > 0){
				Ext.get('subHot'+this.newsData[n].ID).slideOut('t', {
					callback: function(){Ext.get('subHot'+this.newsData[n].ID).remove()}, scope: this
				});
			}else{
				Ext.get('subHot'+this.newsData[n].ID).remove();
			}
			
			this.indexPoint = n;
		}
	}
}();

Ext.onReady(common.init, common);
