/**
 * @author jfdesgagne
 */
var ImagesGallery = new Class({
	Implements: Options,
	options:{
		'sensibility':false,
		'menu':false
	},
	menu:["fenetre", "revetement", "porte"],
	swiff:null,
	fValidator:null,

	
    initialize:function(){
		this.initGallery();
		this.initEvents();
		if($('sendImageForm')) this.initSendImage();
    },
	
	initSendImage:function() {
		this.fValidator = new fValidator("sendImageForm", {
			"onValidClass": this,
			"language": lang,
			"onValidFunction": "submitForm"
		});
		$('field_file1').addEvent('change', this.selectImageHandler.bindWithEvent(this));		
	},
	
	submitForm:function() {
		$('sendImageForm').submit();		
	},
	
	selectImageHandler:function(event) {
		event.target.removeEvents('change');
		var nbImage = event.target.getParent().getParent().getChildren().length;
		if (nbImage <= 5) {
			var idImage = 'field_file' + nbImage;
			var newImage = event.target.getParent().clone(true, false);
			newImage.inject(event.target.getParent(), "after");
			newImage.getFirst().set('for', idImage);
			newImage.getElement('input').set('id', idImage);
			newImage.getElement('input').set('name', idImage);
			newImage.getElement('input').addEvent('change', this.selectImageHandler.bindWithEvent(this));
		}	
	},
	
	initEvents:function() {
		for(var i=0; i<this.menu.length; i++) {
			ii=1;
			//if($(this.menu[i]+1)) $(this.menu[i]+1).store('isAll', true);
			
			while($(this.menu[i]+ii)) {
				$(this.menu[i]+ii).addEvent('click', this.menuClickHandler.bindWithEvent(this));
				//$(this.menu[i]+ii).store('i', i);
				ii++;
			}
		}	
	},
	
	getSelectedMenu:function() {
		var selectedItem={};
		for(var i=0; i<this.menu.length; i++) {
			var ii=1;
			while($(this.menu[i]+ii)) {
				if ($(this.menu[i] + ii).get('checked')) {
					if(!selectedItem[this.menu[i]]) selectedItem[this.menu[i]] = [];
					selectedItem[this.menu[i]].push($(this.menu[i] + ii).get('value'));				
				}
				ii++;
			}
		}
		return selectedItem;
	},
	
	menuClickHandler:function(event) {
		/*
		var ii=2;
			
		if(event.target.retrieve('isAll')) {
			while($(this.menu[event.target.retrieve('i')]+ii)) {
				$(this.menu[event.target.retrieve('i')]+ii).set('checked', event.target.get('checked'))
				ii++;
			}
		} else {
			var isChecked = true;
			while($(this.menu[event.target.retrieve('i')]+ii)) {
				if(!$(this.menu[event.target.retrieve('i')]+ii).get('checked')) {
					isChecked = false;
					break;
				}
				ii++;
			}
			if(isChecked) $(this.menu[event.target.retrieve('i')]+1).set('checked', 'checked'); else $(this.menu[event.target.retrieve('i')]+1).set('checked', '');
		}
		*/
		Swiff.remote(this.swiff, "changeDatas", this.getSelectedMenu());		
	},
	
	
	initGallery:function() {
		/*
		 * 	textes:
				"|-|email|:|"+language[lang].email+"|-|commentViewTitle|:|"+language[lang].commentViewTitle+
				"|-|firstNameLastName|:|"+language[lang].firstNameLastName+
				"|-|comment|:|"+language[lang].comment+
				"|-|detailViewTitle|:|"+language[lang].detailViewTitle+
				"|-|commentPost|:|"+language[lang].commentPost,
		 */
		var complexeObject = {
			imagesParams:{
					path:httpadress,
					imagesPath:"assets/file_library/imagesGallery/",
					download:"assets/php/download.php?path=",
					lang:lang,
					selectedData:{"fenetre":[1, 2, 3, 4, 5, 6, 7], "revetement":[1, 2, 3], "porte":[1, 2, 3, 4, 5]}
			},	
			textes:{
				email:language[lang].email,
				commentViewTitle:language[lang].commentViewTitle,
				firstNameLastName:language[lang].firstNameLastName,
				comment:language[lang].comment,
				detailViewTitle:language[lang].detailViewTitle,
				commentPost:language[lang].commentPost,
				warningText:language[lang].warningText
			}		
		};
		
	//	document.write(JSON.encode(flashvars))
		$('header').setStyle('height', 432);
			this.swiff = new Swiff(root+'assets/flash/ImagesGallery/ImagesGalleryLoader.swf', {
			container: $('header'),
			id: 'header_swiff',
			width: 963,
			height: 432,
			params: {
				wmode:'opaque',
				allowscriptaccess: 'sameDomain'
			},
			vars:{
				objects:JSON.encode(complexeObject),
				gateway:httpadress+"assets/php/amfphp/gateway.php",
				mainSwf:httpadress+"assets/flash/ImagesGallery/ImagesGallery.swf"
			}
			
		});
	}

	
});