//Javascript document

function popupmail(){
	var remonte = "";
	if (navigator.appName == "Netscape"){
		remonte = "../../"
	}else{
		remonte = "../../../../../"
	}
	var strUrl = remonte+'pressrel/public_html/network/pages/videos/Sector-Videos-Send.php?titre=' + document.getElementById('titre_page').value + '&url=' + document.getElementById('txtCurrentUrl').value;
	//var strUrl = 'http://www.pressreleasesnetwork.com/network/pages/videos/Sector-Videos-Send.php?titre=' + document.getElementById('titre_page').value ;      //#######
	window.open(strUrl, 'sendVideos', 'width=610,height=460,toolbar=no,scrollbars=no,resizable=no');

}

/* video_send_EN.htm*/

function verif(){
	var model = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/;
	if (document.getElementById('to').value == "" || document.getElementById('from').value == ""){
		alert(document.getElementById('missing').value);
		return false;
	} else if(model.test(document.getElementById('to').value) == false) {
		alert(document.getElementById('error_email').value);
		return false;
	}
	return true;
}

var ns6=document.getElementById&&!document.all

function restrictinput(maxlength,e,placeholder){
	if (window.event&&event.srcElement.value.length>=maxlength)
		return false
	else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
		var pressedkey=/[a-zA-Z0-9.,/]/ 
		if (pressedkey.test(String.fromCharCode(e.which)))
			e.stopPropagation()
	}
}

function countlimit(maxlength,e,placeholder){
	var theform=eval(placeholder)
	var lengthleft=maxlength-theform.value.length
	var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder)
	if (window.event||e.target&&e.target==eval(placeholder)){
		if (lengthleft<0)
			theform.value=theform.value.substring(0,maxlength)
		placeholderobj.innerHTML=lengthleft
	}
}

function displaylimit(strChar, thename, theid, thelimit){
	var theform=theid!=""? document.getElementById(theid) : thename
	var limit_text='<div id="compteur"><span id="'+theform.toString()+'" >'+thelimit+'</span> Remaining characters</div>'
	if (document.all||ns6)
	document.write(limit_text)
	if (document.all){
	eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
	eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
	}
	else if (ns6){
	document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); 
	document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); 
	}
}


function ereg_replace(tx,rg,ch)
{
	var regEx = new RegExp(rg,"g");
	return tx.replace(regEx,ch);
}

/* infobulles */
function GetId(id) {
	return document.getElementById(id);
}
var i=false; // La variable i nous dit si la bulle est visible ou non
 
function move(e) {
	if(i) {  // Si la bulle est visible, on calcul en temps reel sa position ideale
		if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
			GetId("curseur").style.left=e.pageX + 5+"px";
			GetId("curseur").style.top=e.pageY + 10+"px";
		}
		else { // Modif proposé par TeDeum, merci à  lui
			if(document.documentElement.clientWidth>0) {
				GetId("curseur").style.left=20+event.x+document.documentElement.scrollLeft+"px";
				GetId("curseur").style.top=10+event.y+document.documentElement.scrollTop+"px";
			} else {
				GetId("curseur").style.left=20+event.x+document.body.scrollLeft+"px";
				GetId("curseur").style.top=10+event.y+document.body.scrollTop+"px";
			}
		}
	}
}

function montre(text) {
	if(i==false) {
		GetId("curseur").style.visibility="visible"; // Si il est cacher (la verif n'est qu'une securité) on le rend visible.
		GetId("curseur").innerHTML = text; // on copie notre texte dans l'élément html
		i=true;
	}
}

function cache() {
	if(i==true) {
		GetId("curseur").style.visibility="hidden"; // Si la bulle est visible on la cache
		i=false;
	}
}

document.onmousemove=move; // dès que la souris bouge, on appelle la fonction move pour mettre à jour la position de la bulle.

//Bookmarking
function getDeliciousURL() {
        var url = window.document.URL.toString();
        var title = encodeURIComponent((document.getElementById("titre_page").value));
	var urlDelicious = "http://del.icio.us/post?url="+url+"&amp;title="+ title;
	window.open(urlDelicious,"_blank","toolbar=no, location=yes, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=yes, width=700, height=500");
        return true;      
}

function getDiggURL() {
	var url = window.document.URL.toString();
	var title = encodeURIComponent(document.getElementById("titre_page").value);
	var urlDigg = "http://digg.com/submit?phase=2&url="+url+"&title="+ title;
	window.open(urlDigg,"_blank");
        return true;      
}

function getStumbleURL(){
	var url = window.document.URL.toString();
	var title = encodeURIComponent(document.getElementById("titre_page").value);
	var urlSlashdot = "http://www.stumbleupon.com/submit?url="+url+"&title="+title;
	window.open(urlSlashdot,"_blank");
        return true;
}

function getRedditURL(){
	var url = window.document.URL.toString();
	var title = encodeURIComponent(document.getElementById("titre_page").value);
	var urlReddit = "http://reddit.com/submit?url="+url+"&title="+title;
	window.open(urlReddit,"_blank");
        return true;
}

function getMyYahooURL(){
	window.open('http://myweb2.search.yahoo.com/myresults/bookmarklet?t='+encodeURIComponent(document.getElementById("titre_page").value)+'&d='+'&u='+encodeURIComponent(window.location.href)+'&ei=UTF-8','popup','width=600px,height=500px,status=0,location=0,resizable=1,scrollbars=1,left=100,top=50',0);
}

/* Fonction de redirection des ss-categories */
function sel_cat(cat, lang, cat2) {
	window.location.replace("categories.php?cat="+cat+"&cat2="+cat2+"&"+lang);
}


function Pager(tableName, itemsPerPage) {
    this.tableName = tableName;
    this.itemsPerPage = itemsPerPage;
    this.currentPage = 1;
    this.pages = 0;
    this.inited = false;
    
    this.showRecords = function(from, to) {        
        var rows = document.getElementById(tableName).rows;
        // i starts from 1 to skip table header row
        for (var i = 1; i < rows.length; i++) {
            if (i < from || i > to)  
                rows[i].style.display = 'none';
            else
                rows[i].style.display = '';
        }
    }
    
    this.showPage = function(pageNumber) {
    	if (! this.inited) {
    		alert("not inited");
    		return;
    	}

        var oldPageAnchor = document.getElementById('pg'+this.currentPage);
        oldPageAnchor.className = 'pg-normal';
        
        this.currentPage = pageNumber;
        var newPageAnchor = document.getElementById('pg'+this.currentPage);
        newPageAnchor.className = 'pg-selected';

//alert("this.pages: " + this.pages + " - this.currentPage: " + this.currentPage);

		if (this.currentPage==this.pages){
			this.HideNext();
		}
		else if (this.currentPage<this.pages){
			this.DisplayNext();
		}
		
		if (this.currentPage==1){
			this.HidePrev();
		}
		else if (this.currentPage>1){
			this.DisplayPrev();
		}
	
        var from = (pageNumber - 1) * itemsPerPage + 1;
        var to = from + itemsPerPage - 1;
        this.showRecords(from, to);
    }   
    
    this.prev = function() {
        if (this.currentPage > 1)
            this.showPage(this.currentPage - 1);
    }
    
    this.next = function() {
        if (this.currentPage < this.pages) {
            this.showPage(this.currentPage + 1);
        }
    }
	
	this.DisplayPrev = function(){
		//It displays it
		var newStyle = document.getElementById('arrow_prev');
		newStyle.style.display = '';
		var barStyle = document.getElementById('bar_prev');
		barStyle.style.display = '';
	}
	this.HidePrev = function(){
		//It displays it
		var newStyle = document.getElementById('arrow_prev');
		newStyle.style.display = 'none';
		var barStyle = document.getElementById('bar_prev');
		barStyle.style.display = 'none';
	}
	this.DisplayNext = function(){
		//It displays it
		var newStyle = document.getElementById('arrow_next');
		newStyle.style.display = '';
		var barStyle = document.getElementById('bar_next');
		barStyle.style.display = '';
	}
	this.HideNext = function(){
		//It hides it
		var newStyle = document.getElementById('arrow_next');
		newStyle.style.display = 'none';
		var barStyle = document.getElementById('bar_next');
		barStyle.style.display = 'none';
	}    
    this.init = function() {
        var rows = document.getElementById(tableName).rows;
        var records = (rows.length - 1); 
        this.pages = Math.ceil(records / itemsPerPage);
        this.inited = true;
    }

    this.showPageNav = function(pagerName, positionId) {
    	if (! this.inited) {
    		alert("not inited");
    		return;
    	}
    	var element = document.getElementById(positionId);
    	
    	var pagerHtml = '';
		//if (this.currentPage >1){ //desaparece prev al init()
	    	pagerHtml += '<span onclick="' + pagerName + '.prev();" class="pg-normal"  id="arrow_prev">&#171&#171</span><span id="bar_prev"> | </span>';
		//}
		for (var page = 1; page <= this.pages; page++) {
			if (page>1){ pagerHtml += " | " }
            pagerHtml += '<span id="pg' + page + '" class="pg-normal" onclick="' + pagerName + '.showPage(' + page + ');">' + page + '</span>';
		}    
	   	if (this.pages != this.currentPage){
			pagerHtml += '<span id="bar_next"> | </span><span onclick="'+pagerName+'.next();" class="pg-normal" id="arrow_next">&#187;&#187;</span>';
		}
		
        element.innerHTML = pagerHtml;
		
		this.HidePrev(); //hidding previos arrow when loading the navigation bar for the first time.
		
		//Essai de gestion du prev/next. Ce fut un echec mais je laisse le code auquel j'avais abouti, ca aidera surement celui qui va s'y coller
		/*var pagerHtml = '';
		if(this.currentPage != 1) {
			pagerHtml += '<span onclick="' + pagerName + '.prev();" class="pg-normal">&#171 Prev </span> | ';
		}
        for (var page = 1; page <= this.pages; page++) {
            pagerHtml += '<span id="pg' + page + '" class="pg-normal" onclick="' + pagerName + '.showPage(' + page + ');">' + page + '</span> | ';
		}
		if(this.currentPage < this.pages) {
			 pagerHtml += '<span onclick="'+pagerName+'.next();" class="pg-normal"> Next &#187;</span>';  
		}
		element.innerHTML = pagerHtml;*/
    }
}
