// FICHIER DE FONCTIONS COMMUNES ///////////////////////////////////
// Filtres pour déclencher les initiliazers de pages
var triggers = [
	{
		filter:new RegExp('home', 'g'), 
		funct:initHome
	},
	{
		filter:new RegExp('MYfaq', 'g'), 
		funct:initFaq
	},
	{
		filter:new RegExp('services-formulaire','g'),	
		funct:initForm
	},
	{
		filter:new RegExp('MYdossiers-traites','g'),	
		funct:initDossiersTraites
	},
	{
		filter:new RegExp('tmpl_dossiers','g'),	
		funct:initDossiersTraites
	},
	{
		filter:new RegExp('tmplfaq','g'),
		funct:initDossiersTraites
	},
	{
		filter:new RegExp('tmplsalle-de-presse','g'),
		funct:initDossiersTraites
	}
];


var tasksUrl = WP_template_url + '/ajax/tasks.php',
	language = jQuery('body').data('language');

// var tasksUrl = WP_template_url + '/MY_ajax-formulaire-plainte.php',
// 	language = jQuery('body').data('language');

$(document).ready(function(){
	// Global initializers
	initGeneral();
	initEnglish();
	
	// Specific page initializers
	for (var i = 0; i < triggers.length; i++) {
		var trigger = triggers[i];
		
		if ($('body').attr('class').match(trigger.filter)) {
			trigger.funct();
			break;
		}
	}

	// $('.log').on('click', function(e){ console.log('yo')});

	$('.log').click( function(event){
		console.log('log clicked');
		
		var form = $(this).closest('form');

		var data = {};
		data.lang = language;
		data.task = 'saveLog';
		data.action = $(this).data('action');

		data.nom_plainte = $('#nom_plainte').val();
		data.prenom_plainte = $('#prenom_plainte').val();
		data.adresse_plainte = $('#adresse_plainte').val();
		data.ville_plainte = $('#ville_plainte').val();
		data.province_plainte = $('#province_plainte').val();
		data.code_postal_plainte = $('#code_postal_plainte').val();
		data.telephone_plainte = $('#telephone_plainte').val();
		data.autre_plainte = $('#autre_plainte').val();
		data.telecopieur_plainte = $('#telecopieur_plainte').val();
		data.courriel_plainte = $('#courriel_plainte').val();
		data.autre_personne_plainte = $('#autre_personne_plainte').val();
		data.nature_probleme_plainte = $('#nature_probleme_plainte').val();
		data.arrondissement_plainte = $('#arrondissement_plainte').val();
		data.dossier_plainte = $('#dossier_plainte').val();
		data.raisons_plainte = $('#raisons_plainte').val();
		data.demarche_plainte = $('#demarche_plainte').val();
		data.representants_plainte = $('#representants_plainte').val();
		data.files_upload = $('#files_upload').val();
		data.objectif_plainte = $('#objectif_plainte').val();
		data.age_plainte = $("input[name='age_plainte']:checked").length ? $("input[name='age_plainte']:checked").val() : '';
		data.sexe_plainte =  $("input[name='sexe_plainte']:checked").length ? $("input[name='sexe_plainte']:checked").val() : '';
		data.autochtone_plainte = $("input[name='autochtone_plainte']:checked").length ? $("input[name='autochtone_plainte']:checked").val() : '';
		data.ethnie_plainte = $("input[name='ethnie_plainte']:checked").length ? $("input[name='ethnie_plainte']:checked").val() : '';
		data.minorite_plainte =  $("input[name='minorite_plainte']:checked").length ? $("input[name='minorite_plainte']:checked").val() : '';
		data.extra_minorite =  $('#extra_minorite').val();
		data.extra_ethnie =  $('#extra_ethnie').val();
		data.connaissance_plainte = $('#connaissance_plainte').val();

		console.log(data);
		
		$.ajax({
			url : tasksUrl,
			type : 'post',
			data: data,
			dataType : 'json',
			success : function(data){ },
			complete : function(data) {
				console.log('complete');
			}
		});
	});


});

function initGeneral(){
	//console.log('init General');	
	
	bindMainMenu()
	
	$('.top-layer').fancybox({
	});
	
	$('.top-layer-video').fancybox({
		'type'      : 'swf',
        'swf'       : {'wmode':'transparent','allowfullscreen':'true'}
	});
}

function validateEmail(email) {
	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	return re.test(email);
}

function initHome(){
	//console.log('init Home');
	
	$(".listeLangues img").click(function(e){
		e.preventDefault();
		var c=$(this).attr("src");
		d=c.lastIndexOf('/');//cherche le dernier '/' de la source
		e=c.lastIndexOf('.');//cherche le dernier '.' de la source
		f=c.substring(d+1,e);//trouve le nombre entre le '/' et le '.'
		$(".bandeau").attr("src","/wp-content/themes/ombudsman/img/langues/bandeau-"+f+".png");
	})
	
	$(".slideshow").slides({
		pagination:true,
		generatePagination:true,
		crossfade:true
	});
	
	//Resize main column
	setTimeout(function(){
		if($('#sidebar-video').height > $('#content').height()){
			tallest = $('#sidebar-video').height();
		}else{
			tallest = $('#content').height();
		}
		
		if($('#sidebar-main').height() > tallest){
			tallest = $('#sidebar-main').height();
		}
		
		$('#content').height(tallest);
	},500)
	
	
}

function initEnglish() {
	$('div#dialog-access-simple')
		.dialog({
			autoOpen: false,
			title: 'AccèsSimple',
			modal: true,
			buttons: {
				Ok  : function(ev) {
					window.location.href = $('li.acces-simple-en a').attr('href');
				}, 
				Cancel  : function(ev) {
					$(this).dialog('close');
				}
			}
		});

	$('li.acces-simple-en a').click(function(ev) {
		$('div#dialog-access-simple').dialog('open');
		
		ev.preventDefault();
	});
}

function initFaq(){
	console.log('init faq');
	$(".collapse").accordion(
		{
			header:'h3', 
			collapsible:true, 
			autoHeight:false,
			active: false
		}
	);
}

function initDossiersTraites(){
	console.log('init dossiers');
	$(".collapse").accordion(
		{
			header:'h3', 
			collapsible:true, 
			autoHeight:false,
			active: false
		}
	);
}

function initForm(){
	console.log('init Form');
	
	$('p.extra').hide();
	
	$('input[name="ethnie_plainte"]').click(function(){
		if($('input[name="ethnie_plainte"]:checked').val()=='Autre'){
			$('p.ethnie-extra').show();
		}else{
			$('p.ethnie-extra').hide();
		}
	});
	
	$('input[name="minorite_plainte"]').click(function(){
		if($('input[name="minorite_plainte"]:checked').val()=='Oui'){
			$('p.minorite-extra').show();
		}else{
			$('p.minorite-extra').hide();
		}
	});
	
	$('#fPlainte').bind('submit', onFormPlainteSubmit);	
	
	// upload_data = new Array();
	
	// $('#file_upload').uploadify({
	// 	'uploader'  : '/wp-content/themes/ombudsman/js/uploadify/uploadify.swf',
	// 	'script'    : '/wp-content/themes/ombudsman/js/uploadify/uploadify.php',
	// 	'cancelImg' : '/wp-content/themes/ombudsman/js/uploadify/cancel.png',
	// 	'folder'    : '/wp-content/themes/ombudsman/upload-form',
	// 	'auto'      : true,
	// 	'multi'		: true,
	// 	'sizeLimit'   : 5242880,
	// 	'fileExt'     : '*.doc;*.docx;*.xls;*.xlsx;*.pdf;*.jpg*.jpeg',
	// 	'buttonImg'   : '/wp-content/themes/ombudsman/img/'+$('#file_upload_image').val(),
	// 	'queueID'        : 'custom-queue',
	// 	'removeCompleted': false,
	// 	'onComplete': function(event, ID, fileObj, response, data){ 
	// 		upload_data.push({'id':ID,'file':response});
			
	// 		if($('#files_plainte').attr('value') == '' || $('#files_plainte').attr('value') == 'undefined'){
	// 			$('#files_plainte').attr('value',$('#files_plainte').val()+response);
	// 		}else{
	// 			$('#files_plainte').attr('value',$('#files_plainte').val()+','+response);
	// 		}
	// 	},
	// 	'onCancel': function(event, ID, fileObj, data){
	// 		for(i=0;i<upload_data.length;i++){
	// 			if(upload_data[i].id==ID){
	// 				text = $('#files_plainte').val();
	// 				file = upload_data[i].file;
	// 				$('#files_plainte').val(text.replace(file,''));
	// 				upload_data.splice(i,1);
	// 			}
	// 		}
			
	// 		//Efface l'image physiquement
	// 		$.post($('#fPlainte').attr("action"),{action:'delete',files_plainte: file+','}, function (data){});
	// 	}
	//   });

}

function onFormPlainteSubmit(e){
	e.preventDefault();

	$('#submit-button').hide();


	setTimeout(function(){ console.log('sdafsadf') }, 3000);
	//Validation des champs requis
	var erreur = false;
	$('.requis').each(function(){
		if($(this).val()=='' || $(this).val()=='undefined'){
			$(this).addClass('error');	
			erreur = true;
		}else{
			$(this).removeClass('error');	
		}
	});

	$('.numbers-only').each(function(){

		if($(this).val()!='' && $(this).val()!='undefined') {
			if(!/^\d+$/.test($(this).val())) {
				$(this).addClass('error');
				erreur = true;
			}
			else {
				$(this).removeClass('error');
			}
		}
	});

	$('.email').each(function(){

		if($(this).val()!='' && $(this).val()!='undefined') {

			if(!validateEmail($(this).val())) {
				$(this).addClass('error');
				erreur = true;
			}
			else {
				$(this).removeClass('error');
			}
		}
	});
	
	if(!erreur){
		$('#submit-button').hide();
		$('.msg-error').hide();
		$('.loader').show();


		var form = $('#fPlainte')[0],
		 	formData = new FormData(form),
		 	originalUrl = WP_main_url + $(e.currentTarget).attr("action");

			var url = originalUrl.replace("/en/", "/"); //Remove the WPML /en/ to the Ajax Post URL to avoid a 404 return.


		formData.append('action', 'send');

		$.ajax({
		    url: url,
		    data: formData,
		    type: 'POST',
		    contentType: false,
		    processData: false,
		    complete: function(data){
		    	$('.loader').hide();
		    	$('#thanks').show();
		    	$(e.currentTarget).hide();
		    },
		    success: function(data, textStatus, jqXHR) {
		    	console.log(data, textStatus, jqXHR);

          	},
	        error: function(jqXHR, textStatus, errorThrown) {
	          	console.log(jqXHR, textStatus, errorThrown);
				$('#submit-button').show();
	        }
		});

		//Callback
		
	}else{
		$('#submit-button').show();
		$('.msg-error').show();
		$('.error').focus(function(){
			$(this).removeClass('error');
		});
	}
}


/************************
*    MAIN MENU
*************************/

// Globales
var menu_timeout_speed = 500;
var menu_timer = 0;
var menu_item = 0;

function bindMainMenu() {
    $('#menu-principal li').bind('mouseover',  openMainMenu);
    $('#menu-cats li').bind('mouseover',  openMainMenu);
	$('#menu-principal-en li').bind('mouseover',  openMainMenu);
    $('#menu-cats-en li').bind('mouseover',  openMainMenu);
   
    //Remove first child
    $('.menu').children('li').children('a').attr('href','#');
    $('.menu').children('li').children('a').click(function(e){
        e.preventDefault();   
    })
   
    // $(document).bind('click', closeMainMenu);
    $('html').click(function() {
		closeMainMenu();
	});

	$('.menu-item').click(function(event){
	    event.stopPropagation();
	});
}


function openMainMenu() {
    //e.preventDefault();
    cancerTimerMainMenu();
    closeMainMenu();
    menu_item = $(this).find('ul').css('visibility', 'visible');
    $(this).addClass('current');
}

function closeMainMenu() {
    if(menu_item) {
        menu_item.css('visibility', 'hidden');
    }
    $('.menu li').each(function(){
        if($(this).hasClass('current')){
            $(this).removeClass('current')
        }
    })
}

function timerMainMenu() {
    menu_timer = window.setTimeout(closeMainMenu, menu_timeout_speed);
}

function cancerTimerMainMenu() {
    if(menu_timer) {
        window.clearTimeout(menu_timer);
        menu_timer = null;
    }
}

function sdp_showBlock(target) {
  $('#'+target).toggle();
}


function numbersOnly(evt) {
	var theEvent = evt || window.event;

	// Handle paste
	if (theEvent.type === 'paste') {
		key = event.clipboardData.getData('text/plain');
	} else {
		// Handle key press
		var key = theEvent.keyCode || theEvent.which;
		key = String.fromCharCode(key);
	}
	var regex = /[0-9]|\./;
	if( !regex.test(key) ) {
		theEvent.returnValue = false;
		if(theEvent.preventDefault) theEvent.preventDefault();
	}
}
