// JavaScript Document


function EcrireCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function uniqid (prefix, more_entropy) {

    if (typeof prefix == 'undefined') {
        prefix = "";
    }
 
   var retId;
    var formatSeed = function (seed, reqWidth) {
        seed = parseInt(seed,10).toString(16); // to hex str
        if (reqWidth < seed.length) { // so long we split
            return seed.slice(seed.length - reqWidth);
        }
        if (reqWidth > seed.length) { // so short we pad
            return Array(1 + (reqWidth - seed.length)).join('0')+seed;
        }
        return seed;
    };
 
    // BEGIN REDUNDANT
    if (!this.php_js) {
        this.php_js = {};
    }
    // END REDUNDANT
    if (!this.php_js.uniqidSeed) { // init seed with big random int
        this.php_js.uniqidSeed = Math.floor(Math.random() * 0x75bcd15);
    }
    this.php_js.uniqidSeed++;
 
    retId  = prefix; // start with prefix, add current milliseconds hex string
    retId += formatSeed(parseInt(new Date().getTime()/1000,10),8);
    retId += formatSeed(this.php_js.uniqidSeed,5); // add seed hex string
 
    if (more_entropy) {
        // for more entropy we add a float lower to 10
        retId += (Math.random()*10).toFixed(8).toString();
   }

    return retId;
}

function trim (myString)
{
return myString.replace(/^\s+/g,'').replace(/\s+$/g,'');
}


function strlen (string) {
 
    var str = string+'';
    var i = 0, chr = '', lgth = 0;
 
    var getWholeChar = function (str, i) {
        var code = str.charCodeAt(i);
        var next = '', prev = '';
        if (0xD800 <= code && code <= 0xDBFF) { 
            if (str.length <= (i+1))  {
                throw 'High surrogate without following low surrogate';
            }
            next = str.charCodeAt(i+1);
            if (0xDC00 > next || next > 0xDFFF) {
                throw 'High surrogate without following low surrogate';
            }
            return str.charAt(i)+str.charAt(i+1);
        } else if (0xDC00 <= code && code <= 0xDFFF) {
            if (i === 0) {
                throw 'Low surrogate without preceding high surrogate';
            }
            prev = str.charCodeAt(i-1);
            if (0xD800 > prev || prev > 0xDBFF) { 
                throw 'Low surrogate without preceding high surrogate';
            }
            return false; 
        }
        return str.charAt(i);
    };
 
    for (i=0, lgth=0; i < str.length; i++) {
        if ((chr = getWholeChar(str, i)) === false) {
            continue;
        } 
        lgth++;
    }
    return lgth;
}

function viewScroll() {
			var xScroll, yScroll;
			if (self.pageYOffset) {
				yScroll = self.pageYOffset;
				xScroll = self.pageXOffset;
			} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
				yScroll = document.documentElement.scrollTop;
				xScroll = document.documentElement.scrollLeft;
			} else if (document.body) {// all other Explorers
				yScroll = document.body.scrollTop;
				xScroll = document.body.scrollLeft;	
			}
			arrayPageScroll = new Array(xScroll,yScroll);
			return arrayPageScroll;
		};	

function previewComment(){

var currentPos = viewScroll();	
var pseudoComment = trim($('#form-pseudo').val());
var libelleComment = trim($('#form-libelle').val());
var textComment = trim($('#form-text').val());

var fileComment = trim($('#form-file').val());

var curHei = $('html').height();

$('#overAllBG').remove();
$('#previewContent').remove();

$('body').prepend('<div id="overAllBG" onclick="$(\'#overAllBG\').fadeOut(200);$(\'#previewContent\').fadeOut(200); $(\'body\').css({overflow:\'auto\'});" style="width:100%; height:'+curHei+'px; background:#000; position:absolute; z-index:200; top:'+parseInt(currentPos[1])+'px; left:0; display:none;"></div><div id="previewContent" style="position:absolute; display:none; z-index:210; width:500px; left:50%; height:'+curHei+'px; background:#FFF; top:'+parseInt(currentPos[1])+'px; margin-left:-250px;"><div style="margin:0 10px; background:#3A8707; padding:0 10px; height:30px; color:#FFF; font-size:16px; font-weight:bold; line-height:26px;"><a href="javascript:;" class="closePrev" style="float:right; color:#FFF; text-decoration:none; font-size:20px; font-weight:normal" onclick="$(\'#overAllBG\').fadeOut(200);$(\'#previewContent\').fadeOut(200); $(\'body\').css({overflow:\'auto\'});"><span>X</span></a>Prévisualisation</div><div style="margin:10px 10px 0 10px; background:#CAEC02; padding:10px; color:#000; font-size:16px; height:'+(curHei-60)+'px; font-size:11px;"><div class="commentBox" id="myCommentContent">Chargement des données...</div></div></div>');
$('body').css({overflow:'hidden'});
$('#overAllBG').css({opacity:0.7});

$('#overAllBG').fadeIn(300);
$('#myCommentContent').load('content-preview.php?pseudo='+encodeURIComponent(pseudoComment)+'&text='+encodeURIComponent(textComment)+'&file='+encodeURIComponent(fileComment)+'&libelle=+'+libelleComment+'&uid='+uniqid());
$('#previewContent').fadeIn(400);

$(window).scroll( function() {
currentPos = viewScroll();	
$('#overAllBG').css({top:parseInt(currentPos[1])+'px'});
$('#previewContent').css({top:parseInt(currentPos[1])+'px'});
});



}


function checkComment(){
	var error_glob = 0;
	$('#load-comment').hide();
	$('#error-pseudo').html(''); $('#error-text').html(''); $('#error-libelle').html(''); $('.champ-erreur').removeClass('champ-erreur'); $('.div-erreur').removeClass('div-erreur');
	//if(strlen(trim($('#form-pseudo').val()))<1){
		//$('#form-pseudo').addClass('champ-erreur');
		//$('#error-pseudo').html("Vous devez indiquer un nom ou pseudo");
		//$('#error-pseudo').addClass("div-erreur");
		//error_glob = 1;
	//}
	
	if(strlen(trim($('#form-pseudo').val()))>50){
		$('#form-pseudo').addClass('champ-erreur');
		$('#error-pseudo').html("50 caractères maximum");
		$('#error-pseudo').addClass("div-erreur");
		error_glob = 1;
	}
	
	if($('#form-libelle').val()<1 || $('#form-libelle').val()>12){
		$('#form-libelle').addClass('champ-erreur');
		$('#error-libelle').html("Vous devez indiquer votre statut");
		$('#error-libelle').addClass("div-erreur");
		error_glob = 1;
	}
	
	if(strlen(trim($('#form-text').val()))<10){
		$('#form-text').addClass('champ-erreur');
		$('#error-text').html("10 caractères minimum");
		$('#error-text').addClass("div-erreur");
		error_glob = 1;
		
	}
	
	
	
	
		if(error_glob<1)
	{
		
		$('#load-comment').html('<div><img src="images/load.gif" alt="Chargement" style="float:left; margin-right:10px;"><strong class="big">Envoi en cours...</strong><br />Merci de patienter.</div>');
		$('#load-comment').slideDown(300);
		$('#form-comment').slideUp(300,function(){$('#form-comment').submit();});
		
		
	}
	
}


function resetFile(){
	$('#filer').html('<input type="file" class="champ" id="form-file" name="file" onchange="$(\'#deleteFile\').show();" />');
	$('#deleteFile').hide();
}

function resetForm(){
	var  myparent = $(window.parent.document);
	myparent.find('#filer').html('<input type="file" class="champ" id="form-file" name="file" onchange="$(\'#deleteFile\').show();" />');
	myparent.find('#deleteFile').hide();
	myparent.find('#form-text').val('');
}
