var isie = /msie/i.test(navigator.userAgent) && !window.opera;
var isie6 = isie && !window.XMLHttpRequest;

function add_events(fonctionnalite) {
	//Ouverture "fiche article"
	if(fonctionnalite=='catalogue_savoir_plus' || fonctionnalite=='selection_fiche_article') {
		if(fonctionnalite=='catalogue_savoir_plus') {
			tab=document.getElementsByClassName('bouton_fiche');
			if(tab.length>0) {
				tab=tab.concat(document.getElementsByClassName('b_fiche'));
			} else {
				tab=document.getElementsByClassName('b_fiche');
			}
		} else if(fonctionnalite=='selection_fiche_article') {
			tab=document.getElementsByClassName('selection_article_view');
		}
		
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				var url = add_param(this.href,'target','dhtml');
				var elt_id=this.readAttribute('id');
				if(this.className=='b_fiche') var prefixe='b_fiche_';
				else if(this.className=='selection_article_view') var prefixe='b_article_sel_';
				else var prefixe='bouton_fiche_';
				var id_article=elt_id.substring(prefixe.length,elt_id.length);
				var target = 'en_savoir_plus'+ id_article;
				var o_options = new Object();
				o_options = {method: 'GET', onComplete: function( http_request) {
						//tab_obj_popup.push ( new popup( target, http_request.responseText, 580, 250, 'center', 'center', '' ) );
						win = new Window({className: "popupdeb", title: "", showEffect: Element.show, hideEffect: Element.hide, width:580, destroyOnClose: true, recenterAuto:true});//height:150, 
						win.getContent().update(http_request.responseText);
						win.showCenter();//win.show();
						//Fonctionnalités à ajouter
						//borders(document.getElementsByClassName('article'));
						net_corners.apply_all();
					}
				};
				var req = new Ajax.Request(url,o_options);
				Event.stop(event);
			});
		}

	//Ouverture "oubli mot de passe"
	} else if(fonctionnalite=='lien_oubli') {
		tab=document.getElementsByClassName('lien_oubli');
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				//Ouverture de la page oubli //'iframe'
				var url = add_param(this.href,'target','dhtml');
				var target = 'oubli';
				var o_options = new Object();
				o_options = {method: 'GET', onComplete: function( http_request) {
						win = new Window({className: "popupdeb", title: "Oubli de mot de passe", showEffect: Element.show, hideEffect: Element.hide, width:450, destroyOnClose: true, recenterAuto:true});//height:150, 
						win.getContent().update(http_request.responseText);
						win.showCenter();//win.show();
					}
				};
				var req = new Ajax.Request(url,o_options);
				Event.stop(event);
			});
		}

	//Ouverture "Détail d'une sélection (liste des articles)"
	} else if(fonctionnalite=='client_detail_selection') {
		tab=document.getElementsByClassName('lien_detail_selection');
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				//Ouverture de la page oubli //'iframe'
				var url = add_param(this.href,'target','dhtml');
				var target = 'detail_selection';
				var o_options = new Object();
				o_options = {method: 'GET', onComplete: function( http_request) {
						win = new Window({className: "popupdeb", title: "Détails sélection de produits", showEffect: Element.show, hideEffect: Element.hide, width:780, destroyOnClose: true, recenterAuto:true});//height:150, 
						win.getContent().update(http_request.responseText);
						win.showCenter();//win.show();
						//Fonctionnalités à ajouter
                		add_events('selection_fiche_article');
					}
				};
				var req = new Ajax.Request(url,o_options);
				Event.stop(event);
			});
		}

	//Gestion affichage du bouton submit pour modifier le titre d'une sélection dans la page "client_selection"
	} else if(fonctionnalite=='client_selection_name') {
		tab=document.getElementsByClassName('submit_sel_name');
		for(i=0;i<tab.length;i++) {
			tab[i].style.visibility='hidden';
		}
		tab=document.getElementsByClassName('input_sel_name');
		var sel_names=new Array();
		for(i=0;i<tab.length;i++) {
			//alert(tab[i].readAttribute('id'))
			sel_names[tab[i].readAttribute('id')]=tab[i].value;
			Event.observe(tab[i], 'keydown', function(event) {
				var elt_id=this.readAttribute('id');
				if(sel_names[elt_id]!=this.value) {
					var prefixe='sel_name_';
					var id_selection=elt_id.substring(prefixe.length,elt_id.length);
					//alert(id_selection);
					if($('submit_sel_name_'+id_selection)) {
						$('submit_sel_name_'+id_selection).style.visibility='visible';
					}
				}
			});
		}
		
	//Ajax fonctionnality : suppression d'un article dans une sélection
	} else if(fonctionnalite=='selection_article_delete') {
		tab=document.getElementsByClassName('selection_article_delete');
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				//Système 1 : permet d'afficher une fenêtre d'information suite au traitement
				/*//Ouverture de la page oubli //'iframe'
				var url = add_param("ajax_request.php",'target','dhtml');
				var target = 'traitement';
				var o_options = new Object();
				o_options = {method: 'GET', onComplete: function( http_request) {
						win = new Window({className: "popupdeb", title: "Suppression en cours...", showEffect: Element.show, hideEffect: Element.hide, width:590, destroyOnClose: true, recenterAuto:true});//height:150, 
						win.getContent().update(http_request.responseText);
						win.showCenter();//win.show();
						
						//La fenêtre disparaît au bout d'une seconde d'affichage
						//setTimeout("win.close();",5000);
					}
				};
				var req = new Ajax.Request(url,o_options);*/
				//Système 2 : permet de recharger une zone de page
				tab_id = this.readAttribute('id').split('_');
				var id_selection = tab_id[3];
				var id_article = tab_id[4];
				var elt_id = 'nav_selection'+id_selection;
				var url = add_param(add_param(this.href,'func','selection'),'obj_id',id_selection);
				url=url.replace('catalogue.php','ajax_request.php');
				//var url = 'ajax_request.php?act=del&id='+id_article+'&func=selection&obj_id='+id_selection;
				var req = new Ajax.Updater(elt_id, url, {method: 'get', onComplete: function() {
						borders(document.getElementsByClassName('nav_selection'));
						//net_corners.apply_all();
						add_events('selection_fiche_article');
						add_events('selection_article_delete');
						add_events('selection_delete');
					}
				});
				Event.stop(event);
			});
		}
		
	//Ajax fonctionnality : ajout d'un article dans une sélection
	} else if(fonctionnalite=='selection_article_add') {
		tab=document.getElementsByClassName('b_add');
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				//Rechargement de la sélection
				tab_id = this.readAttribute('id').split('_');
				var id_selection = tab_id[3];
				var id_article = tab_id[4];
				var elt_id = 'nav_selection'+id_selection;
				var url = add_param(add_param(this.href,'func','selection'),'obj_id',id_selection);
				url=url.replace('catalogue.php','ajax_request.php');
				//var url = 'ajax_request.php?act=add&id='+id_article+'&func=selection&obj_id='+id_selection;
				var req = new Ajax.Updater(elt_id, url, {method: 'get', onComplete: function() {
						borders($(elt_id));
						//net_corners.apply_all();
						add_events('selection_fiche_article');
						add_events('selection_article_delete');
						add_events('selection_delete');
					}
				});
				Event.stop(event);
			});
		}
		
	//Ajax fonctionnality : vider la sélection courante
	} else if(fonctionnalite=='selection_delete') {
		tab=document.getElementsByClassName('selection_delete');
		for(i=0;i<tab.length;i++) {
			Event.observe(tab[i], 'click', function(event) {
				if(confirm('Etes-vous sûr(e) de vouloir vider cette sélection ?\nCette action ne peut pas être annulée !')) {
					//Rechargement de la sélection
					tab_id = this.readAttribute('id').split('_');
					var id_selection = tab_id[2];
					var elt_id = 'nav_selection'+id_selection;
					var url = add_param(add_param(this.href,'func','selection'),'obj_id',id_selection);
					url=url.replace('catalogue.php','ajax_request.php');
					//var url = 'ajax_request.php?act=drain&func=selection&obj_id='+id_selection;
					var req = new Ajax.Updater(elt_id, url, {method: 'get', onComplete: function() {
							borders($(elt_id));
							//net_corners.apply_all();
							add_events('selection_fiche_article');
							add_events('selection_article_delete');
							add_events('selection_delete');
						}
					});
				}
				Event.stop(event);
			});
		}
	}

}

function popup_vide() {
	win = new Window({className: "popupvide", title: "", showEffect: Element.show, hideEffect: Element.hide, height:2, width:2, destroyOnClose: true, recenterAuto:true, opacity: 0 });
	win.getContent().update('');
	win.show();
}

//Mise en place d'un contrôle qui va gérer l'effacement de la valeur par défaut d'un champ texte
function input_text_default(elt,value) {
	if(!elt.value) elt.value=value;
	Event.observe(elt, 'focus', function(event) {
		if(this.value==value)
			this.value='';
	});
	Event.observe(elt, 'blur', function(event) {
		if(!this.value)
			this.value=value;
	});
}

function init_menu_catalogue() {
	tab_liens=document.getElementsByClassName('link_niv1');
	for(var i=0;i<tab_liens.length;i++) {
		Event.observe(tab_liens[i], 'click', function(event) {
			var parentLi=this.parentNode;
			tab_liens2=document.getElementsByClassName('opened');
			for(var j=0;j<tab_liens2.length;j++) {
				tab_liens2[j].className=tab_liens2[j].className.replace('opened','off');
			}
			parentLi.className=parentLi.className.replace('off','opened');
			//borders($('nav_univers'));
			Event.stop(event);
		});
	}
}

function borders(box) {
	//if(isie6) return false;

	//var border = RUZEE.ShadedBorder.create({ corner:8, shadow:0,  border:2 });
	if(is_array(box)) {
		for(var i=0; i<box.length; i++) {
			//border.render(box[i]);
			net_corners.apply(box[i]);
		}
	} else {
		//border.render(box);
		net_corners.apply(box);
	}
}

function is_array( mixed_var ) {
    return ( mixed_var instanceof Array );
}

//Fonction permettant de sortir de toutes les iframes et de retourner à une page précise
function main_load(url) {
	window.open(url,'_top');
}
