

function evalRep(rep,dt){
	if(!rep || rep==''){ return true; }
	var ret = JSON.decode(rep);
	if(ret.error){ 
		var alerts = '';
		if($type(ret.error)!='array'){ ret.error=[ret.error]; }
		ret.error.each(function(el){
			if(el.error && el.champs){
				obj = dt.form.getElement('input[name='+el.champs+']');
				if(!obj){ obj = dt.form.getElement('textarea[name='+el.champs+']'); }
	
				if(obj){
					obj.errors=[el.error];
					dt.addError(obj);
					dt.focusOnError(obj);
					return true;
				}else{
					alerts += el.error+'<br />';	
				}
			}else{
				alerts += (el.error?el.error:el)+'<br />';
			}
			
		});
		if(alerts!=''){
			calert(alerts); 
		}
	}
	
	if(ret.reloadAjax){ 
		new Request({url:ret.reloadAjax, onComplete:function(res){ $('content_data').set('html', res); initOnAjax(); }}).send();
	}	
	if(ret.save){ calert(ret.save.join('<br />')) }	
	if(ret.callback){ eval(ret.callback.join(';')) }		
	if(ret.redir){ redir(ret.redir[0]); }		
	
}
function selectMultiple(item){
    return item.get('value');
}

function redir(ch){
	if(!ch) { ch = window.location.href; }
	window.location.href=ch;	
}

var lastFormCh=null;
function valide_form(dt){
	
	lastFormCh = new FormCheck(dt, { 
	fixPngForIe:0,
			submitByAjax:true , 
			onSubmit:function(){
				var addDatas='';
				dt.getElements('select').each(function(el){
					addDatas += '&'+el.get('name')+'_datas='+el.getSelected().map(selectMultiple);
				});
				this.setOptions({'addDatas':addDatas});
				//this.options.addDatas=addDatas;
				if(typeof(tinyMCE)!='undefined'){
					tinyMCE.triggerSave(false,true);	
				}
		 		if(dt.get('onajaxrequest')){
					eval(dt.get('onajaxrequest'));	
				}
			},
			display : { affiche_bottom:true,tipsOffsetY:95,addClassErrorToField:1},
			ajaxEvalScripts:true, 
			onAjaxSuccess:function(rep){
				evalRep(rep,lastFormCh);
				if(dt.get('onajaxsuccess')){
					eval(dt.get('onajaxsuccess'));	
				}
			}
		});
}
window.addEvent('domready', function(){
	
	if($('frame_affiliation')){
		$('content').setStyle('width', '98%');
		$$('.sidebar').dispose();	
		$$('.pub728x90').dispose();
	}
	
	var inputWord = $('q');
	var auto = new Autocompleter.Request.JSON(inputWord, path2+'tags/api.html', {
		'indicatorClass': 'autocompleter-loading',
		'minLength': 2,
		onSelection:function(){
			val = this.opted.split(' ').join('+');
			//window.location.href=path2+'tags/'+val+'.html';
		}
	});
	$('recherche').addEvent('submit', function(e){ new Event(e).stop(); window.location.href=path2+'tags/'+auto.element.get('value').split(' ').join('+')+'.html'; });
	$('rechercheBtn').addEvent('click', function(e){ new Event(e).stop(); window.location.href=path2+'tags/'+auto.element.get('value').split(' ').join('+')+'.html'; });



	// on charge les valeurs des sélect
	$$('select').each(function(el){
		val = el.get('value_check');
		if(val){
			val = val.split(',');
		$(el).getElements('option').each(function(op){
			$A(val).each(function(op1){
			if($(op).get('value')==op1){
				$(op).set('selected', 'selected');
			}
			});
		})
		}
	});
	// on charge les valeurs des sélect
	$$('option[appear]').each(function(el){
		$($(el).get('appear')).setStyle('display', $(el).get('selected')?'block':'none');
	});
	$$('select').addEvent('change', function(){
		this.getElements('option[appear]').each(function(el){
			var elem = $($(el).get('appear'));
			elem.setStyle('display', 'none');
			if(el.get('selected')){
				elem.setStyle('display', 'block');
			}
		});
	});
	// on charge les valeurs des boutons modifier
	$$('input[type=checkbox], input[type=radio]').each(function(el){
		if($(el).get('value')==$(el).get('value_check')){
			$(el).set('checked', 'checked');
		}
	});

  
  

	var myMenu = new MenuMatic({id:"menu"}); 
	
	$$('.Astuce').each(function(element,index) {
		element.store('tip:title', tooltip(element.get('title')));
	});

   initOnAjax();

});
function tooltip(msg){
	return '<table class="fc-tbx" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="tl"></td><td class="t"></td><td class="tr"></td></tr><tr><td class="l"></td><td class="c"><div class="err"><p>'+msg+'</p></div></td><td class="r"></td></tr><tr><td class="bl"></td><td class="b"></td><td class="br"></td></tr></tbody></table>';
}

function initOnAjax(){
	$$('form.ValidateForm').each(valide_form);
var Astuce = new Tips('.tips,.Astuce',{
	 hideDelay: 50,
	 showDelay: 50,
	 offset:{x:-40},
	 onShow: function(toolTipElement){
			toolTipElement.fade(1);
		},
		onHide: function(toolTipElement){
			toolTipElement.fade(0);
		}
	 }); 

  $$('.ajax').each(function(el){
	 el.addEvent('click', function(e){
		new Event(e).stop();
		var vt = JSON.decode(el.get('config'));
		vt = $merge({url:el.get('href')}, vt);
		new Request(vt).send();
	 });
  });
   $$('.ajaxConfirm').each(function(el){
	 el.addEvent('click', function(e){
		new Event(e).stop();
		console.log(el.get('config'));
		var vt = JSON.decode(el.get('config'));
		vt = $merge({url:el.get('href')}, vt);
		cconfirm('Etes vous s&ucirc;r de vouloir effectuer cette action',function(){ new Request(vt).send();	 }, $empty); 
	 });
  });
$$('.confirm').each(function(el){
	 el.addEvent('click', function(e){
		new Event(e).stop();
		cconfirm('Etes vous s&ucirc;r de vouloir effectuer cette action',function(){ new Request({url:el.get('href'), onComplete:evalRep}).send();	 }, $empty); 
	 });
  });	
}

function sortFuncAsc(record1, record2) {
            var value1 = record1.optText.toLowerCase();
            var value2 = record2.optText.toLowerCase();
            if (value1 > value2) return(1);
            if (value1 < value2) return(-1);
            return(0);
        }
        function sortSelect(selectToSort, ascendingOrder) {
            if (arguments.length == 1) ascendingOrder = true;    // default to ascending sort
            // copy options into an array
            var myOptions = [];
            for (var loop=0; loop<selectToSort.options.length; loop++) {
                myOptions[loop] = { optText:selectToSort.options[loop].text, optValue:selectToSort.options[loop].value, optSel:selectToSort.options[loop].selected  };
            }

            myOptions.sort(sortFuncAsc);

            // copy sorted options from array back to select box
            selectToSort.options.length = 0;
            for (var loop=0; loop<myOptions.length; loop++) {
                var optObj = document.createElement('option');
                optObj.text = myOptions[loop].optText;
                optObj.value = myOptions[loop].optValue;
                optObj.selected = myOptions[loop].optSel;
               selectToSort.options.add(optObj);
            }
        }



