var imports = function(url)
{
	var script = document.createElement('script')
	script.type = 'text/javascript';
	script.src = url;
}

function getElementsByClassName(class_name)
{
	var all_obj,ret_obj=new Array(),j=0,teststr;
	
	if(document.all)all_obj=document.all;
	else if(document.getElementsByTagName && !document.all)
	all_obj=document.getElementsByTagName("*");
	
	for(i=0;i<all_obj.length;i++)
	{
		if(all_obj[i].className.indexOf(class_name)!=-1)
		{
			teststr=","+all_obj[i].className.split(" ").join(",")+",";
			if(teststr.indexOf(","+class_name+",")!=-1)
			{
				ret_obj[j]=all_obj[i];
				j++;
			}
		}
	}
	return ret_obj;
}

function sha1Hash(msg)
{
    // constants [4.2.1]
    var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];


    // PREPROCESSING 
 
    msg += String.fromCharCode(0x80); // add trailing '1' bit to string [5.1.1]


    // convert string msg into 512-bit/16-integer blocks arrays of ints [5.2.1]
    var l = Math.ceil(msg.length/4) + 2;  // long enough to contain msg plus 2-word length
    var N = Math.ceil(l/16);              // in N 16-int blocks
    var M = new Array(N);
    for (var i=0; i<N; i++) {
        M[i] = new Array(16);
        for (var j=0; j<16; j++) {  // encode 4 chars per integer, big-endian encoding
            M[i][j] = (msg.charCodeAt(i*64+j*4)<<24) | (msg.charCodeAt(i*64+j*4+1)<<16) | 
                      (msg.charCodeAt(i*64+j*4+2)<<8) | (msg.charCodeAt(i*64+j*4+3));
        }
    }
    // add length (in bits) into final pair of 32-bit integers (big-endian) [5.1.1]
    M[N-1][14] = ((msg.length-1) >>> 30) * 8;
    M[N-1][15] = ((msg.length-1)*8) & 0xffffffff;


    // set initial hash value [5.3.1]
    var H0 = 0x67452301;
    var H1 = 0xefcdab89;
    var H2 = 0x98badcfe;
    var H3 = 0x10325476;
    var H4 = 0xc3d2e1f0;


    // HASH COMPUTATION [6.1.2]


    var W = new Array(80); var a, b, c, d, e;
    for (var i=0; i<N; i++) {


        // 1 - prepare message schedule 'W'
        for (var t=0;  t<16; t++) W[t] = M[i][t];
        for (var t=16; t<80; t++) W[t] = ROTL(W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16], 1);


        // 2 - initialise five working variables a, b, c, d, e with previous hash value
        a = H0; b = H1; c = H2; d = H3; e = H4;


        // 3 - main loop
        for (var t=0; t<80; t++) {
            var s = Math.floor(t/20); // seq for blocks of 'f' functions and 'K' constants
            var T = (ROTL(a,5) + f(s,b,c,d) + e + K[s] + W[t]) & 0xffffffff;
            e = d;
            d = c;
            c = ROTL(b, 30);
            b = a;
            a = T;
        }


        // 4 - compute the new intermediate hash value
        H0 = (H0+a) & 0xffffffff;  // note 'addition modulo 2^32'
        H1 = (H1+b) & 0xffffffff; 
        H2 = (H2+c) & 0xffffffff; 
        H3 = (H3+d) & 0xffffffff; 
        H4 = (H4+e) & 0xffffffff;
    }


    return H0.toHexStr() + H1.toHexStr() + H2.toHexStr() + H3.toHexStr() + H4.toHexStr();
}



//
// function 'f' [4.1.1]
//
function f(s, x, y, z) 
{
    switch (s) {
    case 0: return (x & y) ^ (~x & z);
    case 1: return x ^ y ^ z;
    case 2: return (x & y) ^ (x & z) ^ (y & z);
    case 3: return x ^ y ^ z;
    }
}


//
// rotate left (circular left shift) value x by n positions [3.2.5]
//
function ROTL(x, n)
{
    return (x<<n) | (x>>>(32-n));
}


//
// extend Number class with a tailored hex-string method 
//   (note toString(16) is implementation-dependant, and 
//   in IE returns signed numbers when used on full words)
//
Number.prototype.toHexStr = function()
{
    var s="", v;
    for (var i=7; i>=0; i--) { v = (this>>>(i*4)) & 0xf; s += v.toString(16); }
    return s;
}


 function bt_over(obj, sens)
 {

  if (sens == 1) 	obj.style.color = "#77D10D";
  else			obj.style.color = "#518227";
 }


 function bt_over2(obj, sens)
 {
  if (sens == 1) 	obj.style.color = "#77D10D";
  else			obj.style.color = "#666666";
 }


 function bt_over3(obj, sens)
 {

  if (sens == 1) 	obj.style.color = "#518227";
  else			obj.style.color = "#FFFFFF";
 }
 
 function bt_over4(obj, sens)
 {
  if (sens == 1) 	obj.style.color = "#F1902E";
  else			obj.style.color = "#FE5301";
 }
       
 function bt_under(obj, sens)
 {
  if (sens == 1) 	obj.style.borderBottom = "3px solid #77D10D";
  else			obj.style.borderBottom = "none";
 }
 
function is_url(u) 
{
if (u.search(/^([http]+[/:/]+[\///])+(.+)?[/\./]+[a-z]{2,4}$/) == -1)	{ return false;	}
else {return true;}

}

function getScrollLeft() {
    var scrollLeft = (document.documentElement&&document.documentElement.scrollLeft
                                ?document.documentElement.scrollLeft
                                :document.body.scrollLeft);
    return scrollLeft;
}


function findPosX(obj) {
	    var curleft = 0;
	    if (obj && obj.offsetParent) {
		    while (obj.offsetParent) {
			    curleft += obj.offsetLeft;
			    obj = obj.offsetParent;
		    }
	    } else if (obj && obj.x) curleft += obj.x;
	    return curleft;
}




       
function findPosY(obj) {
	    var curtop = 0;
	    if (obj && obj.offsetParent) {
		    while (obj.offsetParent) {
			    curtop += obj.offsetTop;
			    obj = obj.offsetParent;
		    }
	    } else if (obj && obj.y) curtop += obj.y;
	    return curtop;
}


function protected_mail(email)
	{
	var pattern = '!SPAM!';
	goodmail = email.replace(pattern, "@");
	a = window.open("mailto:"+goodmail);
	if (a != null) a.close();
	}


/******************************************* AJAX **************************************************/


var xmlhttp = null;
 
function createXmlhttp() {
 var xhttp = null;
 try {
   xhttp = new ActiveXObject("Msxml2.XMLHTTP")
 } catch(e) {
   try {
     xhttp = new ActiveXObject("Microsoft.XMLHTTP")
   } catch (x) {
     xhttp = null
   }
 }
 
 if (!xhttp && typeof XMLHttpRequest != "undefined") {
   xhttp = new XMLHttpRequest()
 }
 
 return xhttp;
}
 
function execreq(lurl,name_fct) {
  if (xmlhttp && xmlhttp.readyState != 0) {
    xmlhttp.abort()
  }
 
  xmlhttp = createXmlhttp();
  if (xmlhttp) {
    xmlhttp.open("GET", lurl, true);
    xmlhttp.onreadystatechange = 
     function()

     {
       if (xmlhttp.readyState == 4) {
	  // alert (xmlhttp.responseText);
        eval(name_fct+'("'+xmlhttp.responseText+'");');
       }
     }
    xmlhttp.send(null);
  }
  else return false;
}
 
 
/* VARIABLES GLOBALES */
var opacity_service;
var current_nc;
var current_index;
var field_modified = "";
var nb_xfruits = "";
var current_id_fg;
var current_obj_pos_id;
var crypt; 
var xfruiters_obj;
var xfruiters_val;
var bricks_obj;
var bricks_val;
var current_item;
var timer_service;
var main_html;
var GL_top = 35;
var GL_top_max = 159;
var GL_height_diff = 65;
var current_scroll;
var required_api;




function fade (opac, id) {
 var passed = parseInt(opac);
 var newOpac = parseInt(passed+10);
 obj = document.getElementById(id);
 
 if ( newOpac < 80 ) {
	obj.style.opacity = '.'+newOpac;
	obj.style.filter = "alpha(opacity:"+newOpac+")";
	opacity_service = setTimeout ("fade('" + newOpac + "', '" + id + "')", 30);
 }
 else { 
	obj.style.opacity = '0.9';
	obj.style.filter = "alpha(opacity:90)";
 }
}


function getWindowHeight() {
    var windowHeight=0;
    if (typeof(window.innerHeight)=='number') {
        windowHeight=window.innerHeight;
    }
    else {
     if (document.documentElement&&
       document.documentElement.clientHeight) {
         windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body&&document.body.clientHeight) {
         windowHeight=document.body.clientHeight;
      }
     }
    }
    return windowHeight;
}


function getScrollTop() {
    var scrollTop = (document.documentElement&&document.documentElement.scrollTop
                                ?document.documentElement.scrollTop
                                :document.body.scrollTop);
    return scrollTop;
}



function main_opacity(val)
{
 obj = document.getElementById('main_inner');
 if (val == 1)
 {
  obj.style.filter = "alpha(opacity:30)";
  obj.style.opacity = "0.3";
 }
 else
 {
  obj.style.filter = "alpha(opacity:100)";
  obj.style.opacity = "1"; 	
 }
}


 function show_object(obj, val, type_display)
 {
 if (document.getElementById(obj) != null)
  {
  if (type_display == 'd')
   {
   if (val == 0) document.getElementById(obj).style.display='none';
   else		document.getElementById(obj).style.display='';     	
   }
  else
   {
   if (val == 0) document.getElementById(obj).style.visibility='hidden';
   else		document.getElementById(obj).style.visibility='visible';   	
   }
  }
 }
 
 function show_service_cb(res)
 {
  main_opacity(1);
  current_scroll = getScrollTop();
  document.getElementById('div_service').innerHTML = res;
  if (document.getElementById('tooltip') != null) document.getElementById('tooltip').style.visibility = 'hidden';
  document.getElementById('div_service').style.display = 'block';
  document.getElementById('div_service').focus();
  
  if (document.getElementById('inner_service_item_summary') != null)
  	document.getElementById('inner_service_item_summary').style.height= (document.getElementById('div_service').style.height.split('px')[0] - 48) + 'px';
 
  if (document.getElementById('inner_service_item_content') != null)
  	document.getElementById('inner_service_item_content').style.height= (document.getElementById('div_service').style.height.split('px')[0] - 48) + 'px';


  show_object('s_service', 0, 'd');   
    
  if (document.getElementById('new_email'))	 	document.getElementById('new_email').focus();
  if (document.getElementById(current_nc + '_title'))  	document.getElementById(current_nc + '_title').focus();
  
  if(typeof sIFR == "function"){
   sIFR.replaceElement(named({sSelector:".titlelogin", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#77D10D", sWmode:"transparent"}));
   sIFR.replaceElement(named({sSelector:".titlespan", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#77D10D", sWmode:"transparent"}));
   //sIFR.replaceElement(named({sSelector:".titlebar", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#FFFFFF", sWmode:"transparent"}));
   sIFR.replaceElement(named({sSelector:".titletooltip", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#FFFFFF", sWmode:"transparent"}));
  }
  
  if (current_nc == "map")
   {
   var SCRIPT = document.createElement("script");
   SCRIPT.type = "text/javascript";
   SCRIPT.src  = "/_config/geoloc.js";
   HEAD = document.getElementsByTagName("head");
   HEAD[0].appendChild(SCRIPT);   
   }


  if (current_nc == "item")
  	{
  	document.getElementById('main_inner').style.display = 'none';
  	/*
  	main_html = document.getElementById('main_inner').innerHTML;
  	document.getElementById('main_inner').innerHTML = "";
  	*/
  	
  	setTimeout("focus_summary('" + current_index + "')", 1);
  	}


  if (current_nc == "rss_opml")
  	{
	var SCRIPT = document.createElement("script");

	SCRIPT.type = "text/javascript";
	SCRIPT.src  = "/_xfruits/_javascript/prototype.js";
	HEAD = document.getElementsByTagName("head");
	HEAD[0].appendChild(SCRIPT); 


 	var SCRIPT = document.createElement("script");
	SCRIPT.type = "text/javascript";

	SCRIPT.src  = "/_xfruits/_javascript/scriptaculous.js";
   	HEAD = document.getElementsByTagName("head");
   	HEAD[0].appendChild(SCRIPT); 


   	setTimeout("make_dd()", 1000);   	
       	}


  current_nc = current_index = ""; 
  loading('loading', 0); 
 }
 
 function loading(img, etat)
 {
 if (etat == '1') 	document.getElementsByTagName('body')[0].style.cursor='wait';	
 else			document.getElementsByTagName('body')[0].style.cursor='auto';	
 show_object(img, etat);
 }
 
 function make_dd()
 {
 Sortable.create("fields_service",  {tag:"div",dropOnEmpty:true,containment:["fields_service"],onUpdate:onUpdateDnd});
 }


function onUpdateDnd(element)
	{
	document.getElementById('tabdnd').value = Sortable.sequence(element);
	}
	 
 function focus_summary(id)
 {


	var obj = document.getElementsByName('summary_name_' + id)[0];
 	obj.focus();
 }
 
 function do_show_service(nc, id)
 {
  current_nc = nc;
  current_index = id;
  current_item = null;
  
  var vTop;
  var wHeight = getWindowHeight();  
  var sTop = getScrollTop();
  
  var new_height;
  var new_top;
  
  loading('loading', 1);
  show_object('my_title_1', 0);
  
  if (current_nc == "item")
   {
   document.getElementById('div_service').style.height = (wHeight - GL_height_diff) + "px";
   document.getElementById('div_service').style.top = GL_top + "px";


   
   var obj1 = document.getElementById('item_' + current_index);
   if (obj1 != null)   
   	{
   	var a = obj1.getElementsByTagName('a')[0];
   	a.style.color = '#AAA';
   	}
   }
  else
   {
   /*
   if (id > 0 && current_nc != "addto")		{ vTop = GL_top;}
   else						{ vTop = GL_top_max;}
   */
   //.style.top = (getWindowHeight() - height)/2 + "px";

   document.getElementById('div_service').style.top = (GL_top + sTop) + "px"; 	
   document.getElementById('div_service').style.height= "auto";
   }
 
  x_show_service(nc, id, show_service_cb);
  }
 
 function move_service(scroll_top)
 {
 var sTop = getScrollTop();
 
 var obj = document.getElementById('div_service');
 if (obj != null)
 	{
 	if (scroll_top != sTop)
 		{
 		scroll_top = sTop;
 		obj.style.top = (GL_top + scroll_top) + "px";
 		}
 	}	


 timer_service = setTimeout("move_service('" +scroll_top + "')", 10);
 }
 
 function close_service()
 {
 timer_service = null;
 verify_feed("", 0, "");
 loading('loading', 0);
 show_object('s_service', 1, 'd');
 if (document.getElementById('main_inner').style.display == 'none') document.getElementById('main_inner').style.display = '';
 document.getElementById('div_service').style.display = 'none';	   
 main_opacity(0);
 window.scroll(0, current_scroll);
 }


 function reinit_bg(obj, color)
 {
 obj.style.background = color;	
 }
 
 function verify_fields(required)
 {
	ok = true;
	if (required != null)
	{
		for(i=0;i<required.length;i++)
		{
			if (required[i] == "rss_blog_id_api")
			{
				if (document.formulaireDeBrique.rssblogidapi.selectedIndex == 0)
					ok = false;
			}
			else 
			{
				if (document.getElementById(required[i]).value == "" ) 
				{
					ok = false;
					document.getElementById(required[i]).style.background = "#F1902E";
				}
			}
		}
	}
	return ok;	
 }
  function verify_fields_clone(required)
 {
	ok = true;
	if (required != null)
	{
		for(i=0;i<required.length;i++)
		{
			switch (required[i])
			{
				case "rss_blog_id_api":
					if (document.formulaireDeBrique.rssblogidapi.selectedIndex == 0)
						ok = false;
				break;
				case "rss_blog_url_api":
					if (document.formulaireDeBrique.rssblogurlapi.value == "")
					{
						ok = false;
						document.formulaireDeBrique.rssblogurlapi.style.background = "#F1902E";
					}
				break;
				case "rss_blog_user":
					if (document.formulaireDeBrique.rssbloguser.value == "")
					{
						ok = false;
						document.formulaireDeBrique.rssbloguser.style.background = "#F1902E";
					}
				break;
				case "rss_blog_password":
					if (document.formulaireDeBrique.rssblogpassword.value == "")
					{
						ok = false;
						document.formulaireDeBrique.rssblogpassword.style.background = "#F1902E";
					}
				break;
				default:
					if (document.getElementById(required[i]).value == "" ) 
					{
								
	
						ok = false
						alert("false");
						document.getElementById(required[i]).value = "LOOOOOOOL";
						document.getElementById(required[i]).style.background = "#F1902E";
					}
				break;
			}
			
		}
	}
	return ok;	
 }
 
 function verify_required(required)
 {
  if (verify_fields(required)) document.getElementById('form_service').submit();
 }

 function verify_api(required)
 {
  if (verify_fields_clone(required))
  {
  required_api = required;
  var id_api = document.formulaireDeBrique.rssblogidapi.options[document.formulaireDeBrique.rssblogidapi.selectedIndex].value;
  var url_api = document.formulaireDeBrique.rssblogurlapi.value;
  var user = document.formulaireDeBrique.rssbloguser.value;
  var password = document.formulaireDeBrique.rssblogpassword.value;
  
  var lurl="/_xfruits/fonctions_ajax.php?action=verify_api&id_api=" + id_api + "&url_api=" + url_api + "&user=" + user + "&password=" + password;
  execreq(lurl, "fct_verify_api"); 	
  }
  else
	  alert ( 'pas bon' );
 }
 
 
  function fct_verify_api(responseText)
 {
  var res=responseText;
  if(res != "")
  {
  for (var i=0; i<required_api.length; i++)
  	{
		document.getElementById(required_api[i] + "_hidden").disabled = false;
		switch (required_api[i])
		{
		case "rss_blog_id_api":
			document.formulaireDeBrique.rssblogidapihidden.disabled = false;
			document.formulaireDeBrique.rssblogidapihidden.value = document.formulaireDeBrique.rssblogidapi.options[document.formulaireDeBrique.rssblogidapi.selectedIndex].value;
		break;
		
		case "rss_blog_url_api":
			document.formulaireDeBrique.rssblogurlapihidden.disabled = false;
			document.formulaireDeBrique.rssblogurlapihidden.value = document.formulaireDeBrique.rssblogurlapi.value;
		break;
		
		case "rss_blog_user":
			document.formulaireDeBrique.rssbloguserhidden.disabled = false;
			document.formulaireDeBrique.rssbloguserhidden.value = document.formulaireDeBrique.rssbloguser.value;
		break;
		
		case "rss_blog_password":
			document.formulaireDeBrique.rssblogpasswordhidden.disabled = false;
			document.formulaireDeBrique.rssblogpasswordhidden.value = document.formulaireDeBrique.rssblogpassword.value;
		break;
		
		}
  	document.getElementById(required_api[i]).disabled = true;
  	}
  
  document.getElementById('div_error').style.display = 'none';
  document.getElementById('button_test').style.display = 'none';
  document.getElementById('button_submit').style.display = '';
  
  document.getElementById('label_blog_id').style.visibility = 'visible';
  document.getElementById('div_blog_id').innerHTML = res;
  }
  else
  {
  document.getElementById('div_error').style.display = '';
  }
 }

var required_param = new Array ();

function verify_mail_server(required, texte)
 {
 	var required_test = new Array ();
	  if ( required.length > 2 )
	  {
		  for (var i=0; i<(required.length - 1); i++)
			{
				required_test[i] = required[i];
			}
		}
		else
			required_test = required;
			
	required_param = required;
  if (verify_fields(required_test))
  {
  required_api = required;
  var user = document.getElementById(required[0]).value;
  var password = document.getElementById(required[1]).value;
  if ( required.length > 2 )
  {
	  var pop_adress = document.getElementById(required[2]).value;
	  var pop_port = document.getElementById(required[3]).value;
	  var pop_pop3_or_imap = document.getElementById(required[4]).value;
	  var pop_ssl = document.getElementById(required[5]).checked;
  }
  
	
  if ( required.length == 2 )
  	var lurl="/_xfruits/fonctions_ajax.php?action=verify_mail_server&user=" + user + "&password=" + password;
  else
  	var lurl="/_xfruits/fonctions_ajax.php?action=verify_mail_server&user=" + user + "&password=" + password + "&pop_adress=" + pop_adress + "&pop_port=" + pop_port + "&pop_pop3_or_imap=" + pop_pop3_or_imap + "&pop_ssl=" + pop_ssl;
  
 // alert(lurl);
  
  document.getElementById('button_test1_button').value = texte;

  execreq(lurl, "fct_verify_mail_server"); 	
  }
 }
   
  function fct_verify_mail_server(responseText)
 {
  var res=responseText;
  if ( (res != "") && (res != "nopop") )
  {
  	required = required_param;
	  for (var i=0; i<required.length; i++)
		{
		document.getElementById(required[i] + "_hidden").disabled = false;
		document.getElementById(required[i] + "_hidden").value = document.getElementById(required[i]).value;
		document.getElementById(required[i]).disabled = true;
		}
		if ( required.length > 5 )
			document.getElementById(required[5] + "_hidden").value = document.getElementById(required[5]).checked;
		
	document.getElementById('div_error').style.display = 'none';
	document.getElementById('button_test1').style.display = 'none';
	document.getElementById('button_test2').style.display = 'none';
	document.getElementById('button_submit').style.display = '';
	document.getElementById('div_ok').style.display = '';
	document.getElementById('mail_host').disabled = false;
	document.getElementById('mail_host').value = res;
  }
  else
  {
  	if ( res == "nopop" )
	{
	  document.getElementById('button_test1').style.display = '';
	  document.getElementById('button_test2').style.display = 'none';
		document.getElementById('button_submit').style.display = 'none';
	 document.getElementById('div_pop').style.display = 'none';
	  document.getElementById('div_ok').style.display = 'none';
	  document.getElementById('div_error').style.display = '';
	}
	else
	{
	  document.getElementById('button_test1').style.display = 'none';
	  document.getElementById('button_test2').style.display = '';
		document.getElementById('button_submit').style.display = 'none';
	 document.getElementById('div_pop').style.display = '';
	  document.getElementById('div_ok').style.display = 'none';
	  document.getElementById('div_error').style.display = '';
	 }
  }
 }
   
 function verify_feed(nc, i, feed)
 {
   current_nc = nc;
   current_index = i;
   
   if ((feed.search("http://") != -1 || feed.search("https://") != -1) && feed.length > 7)
    {
    loading('loading_bar', 1);
    //document.getElementsByTagName('body')[0].style.cursor='wait';
    var lurl="/_xfruits/fonctions_ajax.php?action=verify_feed&feed=" + feed;
    execreq(lurl, "fct_verify");
    }
   else
    {
    if (document.getElementById(current_nc + '_valid_' + current_index) != null)
    	{ document.getElementById(current_nc + '_valid_' + current_index).style.display = 'none';}
    }
   
    if (document.getElementById(current_nc + '_valid_' + current_index) != null)
   	{ if (feed.search("http://") == -1 && feed.search("https://") == -1) 	document.getElementById(current_nc + '_feed_' + current_index).value = "http://";}
 }

  function fct_verify(responseText)
 {  
  var res=responseText;
  if(res == "ok")
   {
   document.getElementById(current_nc + '_valid_' + current_index).src = "/_theme/images/verify_good.gif";
   var nxt = parseInt(current_index) + 1;
   
   if (document.getElementById(current_nc + '_divinput_' + nxt) != null )
     {document.getElementById(current_nc + '_divinput_' + nxt).style.display='';}
   }
  else
   {
   document.getElementById(current_nc + '_valid_' + current_index).src = "/_theme/images/verify_bad.gif";
   }
  document.getElementById(current_nc + '_valid_' + current_index).style.display = '';
  
   //document.getElementsByTagName('body')[0].style.cursor='auto';
   loading('loading_bar', 0);
 }
 

 function verify_email(nc, i, mail)
 {
   current_nc = nc;
   current_index = i;
   
   if (ver_aux_mail(mail))
    {
    var nxt = parseInt(current_index) + 1;
   
    if (document.getElementById(current_nc + '_divinput_' + nxt) != null )
     {document.getElementById(current_nc + '_divinput_' + nxt).style.display='';}
    }
 }
  
 function verify_podcast(nc, i, feed, id_feed_group)
 {
   current_nc = nc;
   current_index = i;
   
   if ((feed.search("http://") != -1 || feed.search("https://") != -1) && feed.length > 7)
    {
    loading('loading_bar', 1);
    var lurl="/_xfruits/fonctions_ajax.php?action=verify_podcast&feed=" + feed + "&id=" + id_feed_group;
    execreq(lurl, "fct_verify_podcast");
    }
   else
    {
    if (document.getElementById(current_nc + '_valid_' + current_index) != null)
    	{ document.getElementById(current_nc + '_valid_' + current_index).style.display = 'none';}
    }
   
    if (document.getElementById(current_nc + '_valid_' + current_index) != null)
   	{ if (feed.search("http://") == -1 && feed.search("https://") == -1) 	document.getElementById(current_nc + '_feed_' + current_index).value = "http://";}
 }

function fct_verify_podcast(responseText)
{  
	var res=responseText;
	var tab = res.split("|");
	
	if(tab[0] == "ok")
	{
		document.getElementById(current_nc + '_valid_' + current_index).src = "/_theme/images/verify_good.gif";
		var nxt = parseInt(current_index) + 1;
		
		if (document.getElementById(current_nc + '_divinput_' + nxt) != null )
			{document.getElementById(current_nc + '_divinput_' + nxt).style.display='';}
		
		document.getElementById(current_nc + '_div_settings').style.display = "";
		if (tab[1] != "")
			document.getElementById(current_nc + '_spec').value = tab[1];

		document.getElementById(current_nc + "_feed_" + current_index).readOnly = true;
		document.getElementById('button_test').style.display = 'none';
		document.getElementById('button_submit').style.display = '';   
	}
	else
	{
		document.getElementById(current_nc + '_valid_' + current_index).src = "/_theme/images/verify_bad.gif";
	}
	
	document.getElementById(current_nc + '_valid_' + current_index).style.display = '';
	loading('loading_bar', 0);
}



 function del_feed_group(id, nb)
 {
  if (nb_xfruits == "")	nb_xfruits = nb;
  loading('loading', 1);
  var lurl="/_xfruits/fonctions_ajax.php?action=del_feed_group&id=" + id;
  execreq(lurl, "fct_del_feed_group"); 
 }
 
  function fct_del_feed_group(responseText)
 {
  var res=responseText;
  var obj1, obj2;
  if(res != "")
  {
   close_popup();
   obj1 = document.getElementById("my_feed_group_" + res);
   if (obj1 != null)	obj1.style.display = 'none';
   if (nb_xfruits > 0) nb_xfruits--;
   document.getElementById("my_xfruits").innerHTML = "My xFruits (" + nb_xfruits + ")";
  }
  loading('loading', 0);
 }




  
  function change_status(id)
 {
  current_id_fg = id;
  var lurl="/_xfruits/fonctions_ajax.php?action=change_status&id=" + id;
  execreq(lurl, "fct_change_status");
 }
 
  function fct_change_status(responseText)
 {
  var res=responseText;
  
  if(res != "")
  {
   if (document.getElementById("private_" + current_id_fg).style.display == "none")
   {
   document.getElementById("public_" + current_id_fg).style.display = "none";
   document.getElementById("private_" + current_id_fg).style.display = "";	
   }
   else
   {
   document.getElementById("private_" + current_id_fg).style.display = "none";
   document.getElementById("public_" + current_id_fg).style.display = "";		
   }	
   document.getElementById('my_link_href_' + current_id_fg).href = res;
  }
 }

 


  function show_popup_cb(res)
 {
  var obj = document.getElementById(current_obj_pos_id);
  document.getElementById('popup').style.top = (findPosY(obj) + 20) + "px";
  document.getElementById('popup').style.left = (findPosX(obj) - 70) + "px";
  document.getElementById('popup').innerHTML = res;
  document.getElementById('popup').style.display = 'block';
  document.getElementById('popup').style.opacity = '.1';
  if (document.getElementById('id_new_name') != null)	document.getElementById('id_new_name').focus();
  if (document.getElementById('mail_to_send') != null)	document.getElementById('mail_to_send').focus();
  fade(10, 'popup');
 }
 
 function do_show_popup(action, obj_pos_id, id)
 {
  current_obj_pos_id = obj_pos_id;
  x_show_popup(action, id, show_popup_cb);  	
 }


  function show_popup_big_cb(res)
 {
  var ecart;
  var obj = document.getElementById(current_obj_pos_id);
  
  if (current_obj_pos_id == "chg_gmt")	ecart = 100;
  else					ecart = 135;
  
  document.getElementById('popup').style.top = (findPosY(obj) - ecart) + "px";
  document.getElementById('popup').style.left = (findPosX(obj) + 10) + "px";
  document.getElementById('popup').innerHTML = res;
  document.getElementById('popup').style.display = 'block';
  /*

  document.getElementById('popup').style.opacity = '.1';
  if (document.getElementById('id_new_name') != null)	document.getElementById('id_new_name').focus();
  if (document.getElementById('mail_to_send') != null)	document.getElementById('mail_to_send').focus();
  fade(10, 'popup');
  */
 }
 
 function do_show_popup_big(action, obj_pos_id, id)
 {
  current_obj_pos_id = obj_pos_id;
  x_show_popup(action, id, show_popup_big_cb);  	
 }
 
 function close_popup()
 {
 var retu = false; 
 
 if (document.getElementById('popup') != null)				{ if(document.getElementById('popup').style.display!='none') retu = true; document.getElementById('popup').style.display='none';}
 if (document.getElementById('ajax_listOfOptions') != null)		{ if(document.getElementById('popup').style.display!='ajax_listOfOptions') retu = true; document.getElementById('ajax_listOfOptions').style.display='none';}
 if (document.getElementById('ajax_listOfOptions_iframe') != null)	{ if(document.getElementById('popup').style.display!='ajax_listOfOptions_iframe') retu = true; document.getElementById('ajax_listOfOptions_iframe').style.display='none';}
 
 return retu;
 }
 
  function fct_login(responseText)
 {
  var res=responseText;


  if(res!="")
  {
   window.location.href = "/" + res + "/";
  }
  else
  {
   document.getElementById('div_loginbox').style.display='none';
   document.getElementById('div_error_login').style.display='block';
  }
 }
 
 function login(sessid)
 {
  var lurl="/_xfruits/login.php?ident=" + sha1Hash(document.getElementById('id_login').value + '@' + document.getElementById('id_pass').value) + "&sessid=" + sessid; // + "&remember=" + document.getElementById('id_remember').checked + "&sessid=" + sessid;
  execreq(lurl, "fct_login");
 }


  function fct_logout(responseText)
 {
  var res=responseText;


  if(res!="pas_ok")
  {
   window.location.href = "/";
  }
 }
 
 function logout(sessid)
 {
  var lurl="/_xfruits/login.php?logout=true&sessid=" + sessid;
  execreq(lurl, "fct_logout");
 }
 
  function show_login_cb(res)
 {
  var obj = document.getElementById(current_obj_pos_id);
  document.getElementById('loginbox').style.top = (findPosY(obj) + 30) + "px";
  document.getElementById('loginbox').style.left = (findPosX(obj) - 75) + "px";
  document.getElementById('loginbox').innerHTML = res;
  document.getElementById('loginbox').style.display = 'block';
  document.getElementById('loginbox').style.opacity = '1';
  fade(10, 'loginbox');
 }
 
 function do_show_xfruiters(obj, val)
 {
  xfruiters_obj = obj;
  xfruiters_val = val;
  loading('loading', 1);
  //document.getElementsByTagName('body')[0].style.cursor='wait';
  x_show_xfruiters(obj, val, show_xfruiters_cb)
 }


  function show_xfruiters_cb(res)
 {
  if (xfruiters_obj == "order")
  {
   if (xfruiters_val == "recent") 	{document.getElementById('span_recent_active').style.display='none'; document.getElementById('span_recent_inactive').style.display=''; document.getElementById('span_popular_active').style.display=''; document.getElementById('span_popular_inactive').style.display='none';}
   else					{document.getElementById('span_popular_active').style.display='none'; document.getElementById('span_popular_inactive').style.display=''; document.getElementById('span_recent_active').style.display=''; document.getElementById('span_recent_inactive').style.display='none';}
  }
  document.getElementById('div_xfruiters').innerHTML = res;
  if(typeof sIFR == "function"){
   //sIFR.replaceElement(named({sSelector:".title", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#FFFFFF", sWmode:"transparent"}));
  }
  document.getElementById('div_xfruiters').style.display = 'block';
  //document.getElementsByTagName('body')[0].style.cursor='auto';
  loading('loading', 0);
 }
 
 function search_from_xfruiters_tag(tag)
 {
  document.getElementById('s_key').value = tag;
  document.getElementById('s_tag').checked = true;
  do_show_xfruiters('search_type', 'tag');
  do_show_xfruiters('key', encodeURI(tag));
 }


 function do_show_bricks(obj, val)
 {
  bricks_obj = obj;
  bricks_val = val;
  loading('loading', 1);
  x_show_bricks(obj, val, show_bricks_cb)
 }


  function show_bricks_cb(res)
 {
  if (bricks_obj == "order" || bricks_obj == "byaccount_order")
  {
   if (bricks_val == "recent") 	{document.getElementById('span_recent_active').style.display='none'; document.getElementById('span_recent_inactive').style.display=''; document.getElementById('span_popular_active').style.display=''; document.getElementById('span_popular_inactive').style.display='none';}
   else				{document.getElementById('span_popular_active').style.display='none'; document.getElementById('span_popular_inactive').style.display=''; document.getElementById('span_recent_active').style.display=''; document.getElementById('span_recent_inactive').style.display='none';}
  }
  document.getElementById('div_bricks').innerHTML = res;
  if(typeof sIFR == "function"){
   //sIFR.replaceElement(named({sSelector:".title", sFlashSrc:"/_theme/sifr/franklin.swf", sColor: "#FFFFFF", sWmode:"transparent"}));
  }
  document.getElementById('div_bricks').style.display = 'block';
  
  loading('loading', 0);
 }
 
 function search_from_bricks_tag(tag)
 {
  document.getElementById('s_key').value = tag;
  document.getElementById('s_tag').checked = true;
  do_show_bricks('search_type', 'tag');
  do_show_bricks('key', encodeURI(tag));
 }
   
 function do_show_login(obj_pos_id)
 {
  current_obj_pos_id = obj_pos_id;
  x_show_login(show_login_cb);  	
 }



 function do_show_item_content(val, old_item)
 {
  if (current_item == null) current_item = old_item;


  var obj = document.getElementById('summary_item_' + current_item);
  if (obj != null)   { obj.className = "title"; obj.className = "readed";}  

  current_item = val;
  var obj = document.getElementById('summary_item_' + current_item);
  if (obj != null)   { obj.className = "title_sel";}
  loading('loading_bar', 1);
  x_show_item_content(val, show_item_content_cb);
 }


  function show_item_content_cb(res)
 {
  var obj1 = document.getElementById('item_' + current_item);
  if (obj1 != null)   
   	{
   	var a = obj1.getElementsByTagName('a')[0];
   	a.style.color = '#AAA';
   	}
  document.getElementById('inner_service_item_content').innerHTML = res;
  loading('loading_bar', 0);
 }  
 
 function change_name(id)
 {
  current_id_fg = id;
  var lurl="/_xfruits/fonctions_ajax.php?action=change_name&id=" + id + "&new_name=" + document.getElementById('id_new_name').value;
  execreq(lurl, "fct_change_name");
 }


  function fct_change_name(responseText)
 {
  var res=responseText;
  if(res != "")
  {
   tab = res.split("|");
   
   if (document.getElementById('racine_' + current_id_fg) != null && document.getElementById('extension_' + current_id_fg) != null)
   	{
   	document.getElementById('racine_' + current_id_fg).innerHTML = tab[0];
   	document.getElementById('extension_' + current_id_fg).innerHTML = tab[1];
   	}
   
   document.getElementById('my_link_href_' + current_id_fg).href = tab[0] + tab[1];
   document.getElementById('my_link_href2_' + current_id_fg).href = tab[0] + tab[1];
   //document.getElementById('my_link_' + current_id_fg).innerHTML = tab[0];
   //document.getElementById('my_extension_' + current_id_fg).innerHTML = tab[1];
   close_popup();
  }
  else
  {
   document.getElementById('div_name').style.display='none';
   document.getElementById('div_error_name').style.display='block';
  }
 }


 function save_geoloc()
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=save_geoloc&lat=" + document.getElementById('id_latitude').value + "&long=" + document.getElementById('id_longitude').value;
  execreq(lurl, "fct_save_geoloc");
 }


  function fct_save_geoloc(responseText)
 {
  var res=responseText;
  if(res == "ok")
  {
   close_popup();
  }
 }


 function save_gmt()
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=save_gmt&timezone=" + document.getElementById('feedgroup_timezone').value;
  execreq(lurl, "fct_save_gmt");
 }


  function fct_save_gmt(responseText)
 {
  var res=responseText;
  if(res != "")
  {
   document.getElementById('chg_gmt').innerHTML = res;
   close_popup();
  }
 }
 
  
 function verify_login(required, sessid)
 {
  if (verify_fields(required))  login2(sessid);
 }
 
  function fct_login2(responseText)
 {
  var res=responseText;


  if(res!="" && res != "null")
  {
   window.location.href = "/" + res + "/";
  }
  else
  {
   document.getElementById('div_fields_signin').style.display='none';
   document.getElementById('div_fields_error_login').style.display='block';
  }
 }
 
 function login2(sessid)
 {
  var lurl="/_xfruits/login.php?ident=" + sha1Hash(document.getElementById('login').value + '@' + document.getElementById('pass').value) + "&sessid=" + sessid + "";
  execreq(lurl, "fct_login2");
 }
 
 function send_pass(mail)
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=send_pass&mail=" + mail;
  execreq(lurl, "fct_send_pass"); 
 }
 
  function fct_send_pass(responseText)
 {
  var res=responseText;
  if(res!="")
   {
   document.getElementById('div_send_pass').innerHTML = res;
   document.getElementById('ok_send').style.display = 'none';
   document.getElementById('ok_close').style.display = '';
  }
 }

  function send_vfruits_mail(mail)
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=send_vfruits_mail&mail=" + mail;
  execreq(lurl, "fct_send_vfruits_mail"); 
 }
 
  function fct_send_vfruits_mail(responseText)
 {
  var res=responseText;
  if(res!="")
   {
   document.getElementById('div_send_mail_vfruits').innerHTML = res;
   document.getElementById('mail_vfruits').value="";
  }
 }
 
 function verify_profile(required, id)
 {
  if (verify_fields(required))
  {
  ok = true;
  if (!ver_aux_mail(document.getElementById('profile_email').value)) {document.getElementById('profile_email').style.background = "#F1902E"; ok=false;}
  if (!ver_aux_pass(document.getElementById('profile_pass').value)) {document.getElementById('profile_pass').style.background = "#F1902E"; ok=false;}
  }
  if (ok) search_mail_exist(id);
 }
 
 function verify_new_user(required)
 {
  if (verify_fields(required))
  {
   ok = true;
   if (!ver_aux_mail(document.getElementById('new_email').value)) {document.getElementById('err_newuser_1').style.display='block'; ok=false;}
   if (!ver_aux_login(document.getElementById('new_login').value)) {document.getElementById('err_newuser_2').style.display='block'; ok=false;}
   if (!ver_aux_pass(document.getElementById('new_pass').value)) {document.getElementById('err_newuser_3').style.display='block'; ok=false;}
   
   if (ok) search_user_exist();
   else
   {
   document.getElementById('div_fields_newuser').style.display='none';
   document.getElementById('div_fields_error_newuser').style.display='block';
   return false;
   }
  }
 }

 function verify_new_vfruiter(required)
 {
  if (verify_fields(required))
  {

   if (document.getElementById('accept_cgu').checked == false) {document.getElementById('label_cgu').style.background="#F1902E"; return false;}
   
   ok = true;
   if (!ver_aux_mail(document.getElementById(required[0]).value)) {document.getElementById('err_newuser_1').style.display='block'; ok=false;}
   if (!ver_aux_login(document.getElementById(required[1]).value)) {document.getElementById('err_newuser_2').style.display='block'; ok=false;}
   if (!ver_aux_pass(document.getElementById(required[2]).value)) {document.getElementById('err_newuser_3').style.display='block'; ok=false;}
   if (document.getElementById(required[2]).value != document.getElementById(required[3]).value) {document.getElementById('err_newuser_5').style.display='block'; ok=false;}
   
   if (ok) search_vfruiter_exist();
   else
   {
   document.getElementById('div_fields_newuser').style.display='none';
   document.getElementById('div_fields_error_newuser').style.display='block';
   return false;
   }
  }
 }

function ver_aux_mail(mail)
 {
 var re = /^[a-z0-9\-_\.]+@[a-z0-9\-_]+(\.[a-z0-9]{2,})+$/i;
 if (re.test(mail)) { return true;}
 else return false;
 }
	 
 function ver_aux_login(login)
 {
 var re = /^[a-z0-9][a-z0-9_]{3,31}$/i;
 if (re.test(login)) return true;
 else return false; 	
 }


 function ver_aux_pass(pass)
 {
 var re = /^[a-z0-9][a-z0-9_]{3,15}$/i;
 if (re.test(pass)) return true;
 else return false; 	
 }


  
 function search_user_exist()
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=search_user_exist&mail=" + sha1Hash(document.getElementById('new_email').value) + "&login=" + sha1Hash(document.getElementById('new_login').value) + "&crypto=" + document.getElementById('new_code').value;
  execreq(lurl, "fct_search_user_exist");
 } 

 function search_vfruiter_exist()
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=search_vfruiter_exist&mail=" + sha1Hash(document.getElementById('vfruits_email').value) + "&login=" + sha1Hash(document.getElementById('vfruits_login').value);
  execreq(lurl, "fct_search_user_exist");
 } 

  function fct_search_user_exist(responseText)
 {
  var res=responseText;
  
   if (res == "bad_code")
    {
    document.getElementById('new_code').style.background = "#F1902E";
    }
   else if (res != "" && res != "null" && res != "ok")
    {
    document.getElementById('err_newuser_4').style.display='block';
    document.getElementById('div_fields_newuser').style.display='none';
    document.getElementById('div_fields_error_newuser').style.display='block';
    }
   else 
   {
   document.getElementById('form_new_user').submit(); 	
   }
 }
 
 function search_mail_exist(id)
 {
  var lurl="/_xfruits/fonctions_ajax.php?action=search_mail_exist&mail=" + sha1Hash(document.getElementById('profile_email').value) + "&id=" + id;
  execreq(lurl, "fct_search_mail_exist");
 } 
 
 function fct_search_mail_exist(responseText)
 {
  var res=responseText;
  if(res == "ok")   	{ document.getElementById('form_profile').submit();}
  else			{ document.getElementById('profile_email').style.background = "#F1902E";}
 }

 function generate_login(mail, dest)
 {
 if (ver_aux_mail(mail))
  {
  if (document.getElementById(dest) != null && document.getElementById(dest).value == "")
   {
   var tab = mail.split('@');
   var login = tab[0].replace(/^(_)*|([^a-z0-9_])/g, "");
   document.getElementById(dest).value=login;
   }
  }
 }
 
 function show_tab_cloud(obj1, obj2, obj3)
 {
 document.getElementById(obj1).style.display='';
 document.getElementById(obj2).style.display='none';
 document.getElementById(obj3).style.display='none';
 document.getElementById(obj1 + "_tab").className='selected';
 document.getElementById(obj2 + "_tab").className='';
 document.getElementById(obj3 + "_tab").className='';
 }
 
 function change_addto(id)
 {
 var obj, imgs, i;


  imgs = getElementsByClassName('imgaddto');
  for (i=0;i<imgs.length;i++)
  	{ 
  	obj = imgs[i];
  	if (id != "")
  		{
		imgs[i].style.opacity = '0.1';
		imgs[i].style.filter = "alpha(opacity:10)";
		}
	else
		{
  		obj.style.opacity = '1';
	 	obj.style.filter = "alpha(opacity:100)";
		}
	}
  if (id != "")
  	{
  	document.getElementById('imgaddto_' + id).style.opacity = '1';
	document.getElementById('imgaddto_' + id).style.filter = "alpha(opacity:100)";	
  	}


 }
 
 function up_down_summary(key_code, cpt, nb_tot, old_item)
 {
 	var new_cpt;


	if (key_code == 27)
		close_service();
	else
	{
	 	if (key_code == 33) new_cpt = 0;
	 	if (key_code == 34) new_cpt = nb_tot - 1;
	 	if (key_code == 40) new_cpt = cpt + 1;
	 	if (key_code == 38) new_cpt = cpt - 1;
	 	
	 	if (document.getElementById('summary_' + new_cpt) != null)
	 		{
	 		document.getElementById('summary_' + new_cpt).focus();
	 	 	var tab = document.getElementById('summary_' + new_cpt).name.split('_');
	 		do_show_item_content(tab[2], old_item);
	 		}
	 	}
}


function normal_opacity(id)
{
	document.getElementById(id).style.opacity='1';
	document.getElementById(id).style.filter='alpha(opacity:100)';
}


function show_hide(id) 
	{
       	var objet=document.getElementById(id);
       	if (objet != null)
       		{
	      	if (objet.style.display=='none') 	{ objet.style.display='';}
	      	else 				      	{ objet.style.display='none';}
	      	}
    	}
    	
function main_event(e)
	{
	if (e.keyCode == 27)
		{
		if (close_popup() == false)	close_service();
		}
	}