/*
**=================================================
** MyRSS AM Library Javascript Library
** Version 1.0.1
** Ahmed Merrouche - amerrouche@free.fr
** Do not distribute
**=================================================
*/



function switchWidgetBody(div){
/*-----------------------*/
var _div = div;
view=getObject("myrssBody"+_div);
obj=getObject('minmax'+div);
obj2=getObject('minmax2'+div);

	if(visible(view)){
		fjsHideObject(view);
		obj.src='gui/images/icons/V1/max.gif';
		obj2.src='gui/images/icons/V1/plus.gif';

		}
	else{
		fjsShowObject(view);
		obj.src='gui/images/icons/V1/min.gif';
		obj2.src='gui/images/icons/V1/minus.gif';
		}
	myrss_SetIFrame();
}



function fjs_myrssPosOrigin(jspName){
/*-------------------------------------*/
	jswsize = fjs_myrssGetWindowFullSise();

	setLeft(jspName,'0');
	setTop(jspName,'0');
	setWidth(jspName,jswsize.width);
	setHeight(jspName,jswsize.height);
}

function fjs_myrssPosCenter(jspName){
/*-------------------------------------*/
	jswsize = fjs_myrssGetWindowSise();
	js_gsz = myrss_getScrollXY();


	setLeft(jspName,(jswsize.width - getWidth(jspName))/2+js_gsz.width );
	setTop(jspName,(jswsize.height - getHeight(jspName))/2+js_gsz.height );
}


//=====================================================
// AJAX
//==================================================
/*
function myrss_AjaxResponse(jspReq, jspFct, pjsArg) {
	try {
		if ((jspReq.readyState == 4) && (jspReq.status == 200)) {
	 	      	    	jspFct (jspReq.responseText, pjsArg) ;
	  	             
	            	}

    }
*/
   
 function myrss_AjaxRequest(pjs_myurl, pjs_mydata, pjs_mymethod, pjs_func, pjs_arg){
/*---------------------------------------------------------------------------------------*/

	var mymethod='post';
	
	
	try {
		//Si l'objet existe déjà on abandonne la requête et on le supprime
		//Création de l'objet XMLHTTPRequest
		gj_AjaxXHR = getXMLHTTP();
	
		if(!gj_AjaxXHR){
			alert('Ajax error \n\n no XHR availaible !!!');
			return false;
			}
		
	
		 if(pjs_mymethod == "get" && pjs_mydata != null) {
		    	pjs_myurl += "?"+pjs_mydata;
		    	pjs_mydata      = null;
		 	}
	
	    
		gj_AjaxXHR.onreadystatechange = function() {
	        	//myrss_AjaxResponse(gj_AjaxXHR, pjs_func, pjs_arg);
			if ((gj_AjaxXHR.readyState == 4) && (gj_AjaxXHR.status == 200)) {
		 	      	    	pjs_func (gj_AjaxXHR.responseText, pjs_arg) ;
		  	             
		            	}
	     		}
	
	
	//	window.satus='Working ...';
	
		gj_AjaxXHR.open(pjs_mymethod, pjs_myurl, true);
		if(pjs_mymethod == "post")
	    		gj_AjaxXHR.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	
		gj_AjaxXHR.send(pjs_mydata);

	  	}
	catch( vjs_error ) {
	      alert(" [!] AJAX Engine \n["+gj_AjaxXHR.readyState+"]\n------------Status \n " + gj_AjaxXHR.status +"\n------------Message \n " + vjs_error +"\n------------Stack\n"+vjs_error.stack);
		}
}

//=====================================================
// retourne un objet xmlHttpRequest.
// méthode compatible entre tous les navigateurs (IE/Firefox/Opera)
function getXMLHTTP(){
/*-----------------------*/

    var xhr = null;
    
    if(window.XMLHttpRequest){ // Firefox et autres
        xhr = new XMLHttpRequest();
    	}
    else if(window.ActiveXObject){ // Internet Explorer
        try{
            	xhr = new ActiveXObject("Msxml2.XMLHTTP");
        	}
        catch(e){
            	try{
                	xhr = new ActiveXObject("Microsoft.XMLHTTP");
            		}
            	catch(e1){
                	xhr = null;
            		}
        	}
    	}
    	
    else{ // XMLHttpRequest non supporté par le navigateur
       	alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    	}

    return xhr;
}


//==================================================
//==================================================




function myrss_StyleIcon(_obj,flag){
/*----------------------------------------*/

	frss=document.forms["myrssform"];
	flagVal=frss.elements[flag];
	
	obj=getElem("id", _obj);
	
	imgsrc=obj.src;
	
	if(flagVal.value=='Y'){
		flagVal.value='N';
		//obj.src = obj.src.replace(/_on(\.[^.]+)$/, '_off$1');
		imgsrc = imgsrc.replace(/_on(\.[^.]+)$/, '_off$1');
		}
	else{
		flagVal.value='Y';
		//obj.src = obj.src.replace(/_off(\.[^.]+)$/, '_on$1');
		imgsrc = imgsrc.replace(/_off(\.[^.]+)$/, '_on$1');
		}

	obj.src=imgsrc;
	//msg+='\nNew -> ['+imgsrc+'] '+flag+'='+flagVal.value;	
	//alert(msg);
	
	return flagVal.value;
}



	
function fjsMyRSS_GetPosition(obj) {
/*----------------------------------*/
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}




/**
**--------------------------------------------------------------------
**--------------------------------------------------------------------
**--------------------------------------------------------------------
** Copyright 2005-2007 
** Author : Ahmed MErrouche
** Version 1.0.0.0
** am_lib.js
**--------------------------------------------------------------------
*/
var isID=0;
var isDHTML=0;
var isLayer=0;
var isAll=0;

if(document.getElementById){
	isID=1;
	isDHTML=1;
	}
	
else	{
	if(document.all){
		isAll=1;
		isDHTML=1;
		}
	
	else{
		browserVersion=parseInt(navigator.appVersion);
		if((navigator.appName.indexOf('Netsacape') != -1) && (browserVersion==4)){
			isLayer=1;
			isDHTML=1;
			}
		}
	}

var DHTML = 0, DOM = 0, MS = 0, NS = 0, OP = 0;
function DHTML_init() {
/*---------------------*/
 	if (window.opera) {
     		OP = 1;
 		}
 	if(document.getElementById) {
   		DHTML = 1;
   		DOM = 1;
 		}
 	if(document.all && !OP) {
   		DHTML = 1;
   		MS = 1;
 		}
	if(document.layers && !OP) {
   		DHTML = 1;
   		NS = 1;
 		}
	}

DHTML_init();
	
//function getObject(id, style){
function getObject(id){
/*---------------------------*/	
	if(isID){
		return ( document.getElementById(id) );
		}
	else{
		if(isAll){
			return ( document.all[id] );
			}
		else{
			if(isLayer){
				return ( document.layers[id] ) ;
				}
			}
		}
	}

function getStyle(id){
/*---------------------------*/	
	if(isID){
		return ( document.getElementById(id).style );
		}
	else{
		if(isAll){
			return ( document.all[id].style );
			}
		else{
			if(isLayer){
				return ( document.layers[id] ) ;
				}
			}
		}
	}

function fjsMyRSS_ObjectInvisible(id)
/*---------------------*/{
	style = getStyle(id);
	style.visibility='hidden';
}

function fjsMyRSS_ObjectVisible(id)
/*---------------------*/{
	style = getStyle(id);
	style.visibility='visible';
}

function setStyle(id, sName, sValue)
/*----------------------------------------*/{
	style = getStyle(id);
	eval("style."+sName+"=\'"+sValue+"\';");
	//style[sName]=sValue;
}


function setClass(id, newclass)
/*---------------------------------*/{
	obj = getObject(id);
	obj.className=newclass;
}


function getLeft(id){
/*--------------------*/
	obj	= getObject(id);
	ostyle	= getStyle(id);

	if(__x(obj.offsetLeft)) return obj.offsetLeft;
	if(__x(ostyle.left)) return ostyle.left;
	if(__x(ostyle.pixelLeft)) return ostyle.pixelLeft;
	return null;
	}

function getTop(id){
/*--------------------*/
	obj	= getObject(id);
	ostyle	= getStyle(id);

	if(__x(obj.offsetTop)) return obj.offsetTop;
	if(__x(ostyle.top)) return ostyle.top;
	if(__x(ostyle.pixelTop)) return ostyle.pixelTop;
	return null;
	}
	
function getWidth(id){
/*--------------------*/
	obj	= getObject(id);

	if(__x(obj.offsetWidth)) return obj.offsetWidth;
	if(__x(obj.clip)) return obj.clip.width;
	return null;
	}

function getHeight(id){
/*--------------------*/
	obj	= getObject(id);

	if(__x(obj.offsetHeight)) return obj.offsetHeight;
	if(__x(obj.clip)) return obj.clip.height;
	return null;
	}

function getObjWidth(obj){
/*--------------------*/

	if(__x(obj.offsetWidth)) return obj.offsetWidth;
	if(__x(obj.clip)) return obj.clip.width;
	return null;
	}

function getObjHeight(obj){
/*--------------------*/
	if(__x(obj.offsetHeight)) return obj.offsetHeight;
	if(__x(obj.clip)) return obj.clip.height;
	return null;
	}


function setLeft(id,val){
/*--------------------*/
	if(val=='') val='';
	else val+='px';
	setStyle(id,'left',val);	
	}

function setTop(id,val){
/*--------------------*/
	if(val=='') val='';
	else val+='px';
	setStyle(id,'top',val);	

	}
	
function setWidth(id,val){
/*--------------------*/

	if(val=='') val='100%';
	else val+='px';
	setStyle(id,'width',val);	
	}

function setHeight(id,val){
/*--------------------*/

	if(val=='') val='100%';
	else val+='px';
	setStyle(id,'height',val);	
	}

function setObjWidth(obj,val){
/*--------------------*/
	setStyle(id,'width',val+'px');	
	}

function setObjHeight(obj,val){
/*--------------------*/
	setStyle(id,'height',val+'px');	
	}


function setActiveStyleSheet(title) {
/*--------------------*/
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    	if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
    	  	a.disabled = true;
    	  	if(a.getAttribute("title") == title) a.disabled = false;
    		}
  	}
}

function switchStyleSheet(link) {
/*--------------------*/
  var pjsLink;

  pjsLink = document.getElementsByTagName("link")[0];
  pjsLink.setAttribute("href",link);
}


function setWidgetCSS(cssLink) {
/*--------------------------------------*/
  var cssObject;

  cssObject = document.getElementsByTagName("link")[MYRSS_CSS];  
  cssObject.setAttribute("href",cssLink);
}



function  visible(element) {
/*--------------------*/

	if(__x(element.style))
	    return element.style.display != 'none';
	else if(__x(element.display))
	    return element.display != 'none';
	return 'block';
  }

function  fjsMyRSS_SwitchView(element) {
/*--------------------------------------*/
    if(visible(element)){
    	fjsHideObject(element);
    	}
    else{
    	fjsShowObject(element);
			}
  }

function  fjsHideObject(jspObj) {
/*--------------------*/
   setStyle(jspObj.id,'display','none');
   //jspObj.style.display = 'none';
   //return jspObj;
  }

function  fjsShowObject(jspObj) {
/*--------------------*/
    setStyle(jspObj.id,'display','');
    //jspObj.style.display = '';
    //return jspObj;
  }


function __x(e){
/*---------------*/
if ( typeof ( e ) != "undefined" ) return true;
return false;

}

/*
**=================================================
** MyRSS DHTML Javascript Library
** Version 1.0.1
** Ahmed Merrouche - amerrouche@free.fr
** Do not distribute
**=================================================
*/

var DHTML = 0, DOM = 0, MS = 0, NS = 0, OP = 0;

function DHTML_init() {

 if (window.opera) {
     OP = 1;
 }
 if(document.getElementById) {
   DHTML = 1;
   DOM = 1;
 }
 if(document.all && !OP) {
   DHTML = 1;
   MS = 1;
 }
if(document.layers && !OP) {
   DHTML = 1;
   NS = 1;
 }
}

function getElem(p1,p2,p3) {
/*---------------------------*/
 var Elem;
 if(DOM) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.getElementById(p2) == "object")
     Elem = document.getElementById(p2);
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document.getElementsByName(p2) == "object")
     Elem = document.getElementsByName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.getElementsByTagName(p2) == "object" ||
        (OP && typeof document.getElementsByTagName(p2) == "function"))
     Elem = document.getElementsByTagName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(MS) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.all[p2] == "object")
     Elem = document.all[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.all.tags(p2) == "object")
     Elem = document.all.tags(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(NS) {
   if(p1.toLowerCase()=="id" || p1.toLowerCase()=="name") {
   if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="index") {
    if (typeof document.layers[p2] == "object")
     Elem = document.layers[p2];
    else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
}

function getCont(p1,p2,p3) {
/*---------------------------*/
   var Cont;
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild) {
     if(getElem(p1,p2,p3).firstChild.nodeType == 3)
       Cont = getElem(p1,p2,p3).firstChild.nodeValue;
     else
       Cont = "";
     return(Cont);
   }
   else if(MS && getElem(p1,p2,p3)) {
     Cont = getElem(p1,p2,p3).innerText;
     return(Cont);
   }
   else return void(0);
}

function getAttr(p1,p2,p3,p4) {
   var Attr;
   if((DOM || MS) && getElem(p1,p2,p3)) {
     Attr = getElem(p1,p2,p3).getAttribute(p4);
     return(Attr);
   }
   else if (NS && getElem(p1,p2)) {
       if (typeof getElem(p1,p2)[p3] == "object")
        Attr=getElem(p1,p2)[p3][p4]
       else
        Attr=getElem(p1,p2)[p4]
         return Attr;
       }
   else return void(0);
}

function setCont(p1,p2,p3,p4) {
/*---------------------------*/
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild)
     getElem(p1,p2,p3).firstChild.nodeValue = p4;
   else if(MS && getElem(p1,p2,p3))
     getElem(p1,p2,p3).innerText = p4;
   else if(NS && getElem(p1,p2,p3)) {
     getElem(p1,p2,p3).document.open();
     getElem(p1,p2,p3).document.write(p4);
     getElem(p1,p2,p3).document.close();
   }
}

DHTML_init();



/*
**=================================================
** MyRSS CSS Javascript Library
** Version 1.0.1
** Ahmed Merrouche - amerrouche@free.fr
** Do not distribute
**=================================================
*/
var mycssId, mycssType;
var MYRSS_BACKGROUND=0;
var MYRSS_BOLD=1;
var MYRSS_UNDERLINE=2;
var MYRSS_ITALIC=3;
var MYRSS_FONT_FAMILY=4;
var MYRSS_FONT_SIZE=5;
var MYRSS_FONT_COLOR=6;
var MYRSS_BORDER_COLOR=7;
var MYRSS_TEXT_ALIGN=8;
var MYRSS_BORDER_SIZE=9;
var MYRSS_SCROLL=10;

var MYRSS_CSS=1;
var MYRSS_VIEW=1;
var MYRSS_HTITLE=2;
var MYRSS_HDESC=3;
var MYRSS_ITITLE=5;
var MYRSS_IDESC=6;

var myrssFonts = new Array('Arial','Times','Verdana','Tahoma','Courier');





function myrssSetLayout(rule,propType, propVal){
/*---------------------------------------------------*/
      var form = document.forms["myrssform"];
      fjsMyRSS_ViewWidget(form,'');
}

function myrssSetCSSRule(rule,propType, propVal){
/*---------------------------------------------------*/


	
var targetrule=myrssGetCSSRule(rule);
	
for(var r=0;r<targetrule.length;r++){

	var myrssStyle=targetrule[r].style;
	
	//alert(targetrule[r].selectorText+'\n'+targetrule[r].cssText);
	switch (propType){

		case MYRSS_BACKGROUND:
			myrssStyle.backgroundColor=propVal;
			break;

		case MYRSS_BOLD:
			myrssStyle.fontWeight=(propVal=='Y')?'bold':'normal';
			break;

		case MYRSS_UNDERLINE:
			myrssStyle.textDecoration=(propVal=='Y')?'underline':'';
			break;

		case MYRSS_ITALIC:
			myrssStyle.fontStyle=(propVal=='Y')?'italic':'normal';
			break;

		case MYRSS_FONT_FAMILY:
			myrssStyle.fontFamily=myrssFonts[propVal]+',Arial';
			break;

		case MYRSS_FONT_SIZE:
			myrssStyle.fontSize=propVal+'px';
			break;

		case MYRSS_FONT_COLOR:
			myrssStyle.color=propVal;
			break;

		case MYRSS_BORDER_COLOR:
			myrssStyle.borderColor=propVal;
			break;

		case MYRSS_TEXT_ALIGN:
		
			break;

		case MYRSS_BORDER_SIZE:
			myrssStyle.borderWidth=propVal+'px';
			break;

		case MYRSS_SCROLL:
			myrssStyle.overflow=(propVal=='Y')?'auto':'hidden';
			break;
	
		}
	}
}

function myrssGetWorkCSS(){
/*-----------------------------*/

	var mycss=null;
	mycss=document.styleSheets[MYRSS_CSS];
	/*
	for (i=0; i<document.styleSheets.length; i++){
		if(document.styleSheets[i].title=="myrss_css_view"){ 
			mycss=document.styleSheets[i];
			alert('Num'+i);
			break;
			}
		}
	*/
	return mycss;
}


function myrssGetCSSRule(rule){
/*-----------------------------*/

myrssCSS = myrssGetWorkCSS();
var myrss_CSS=new Array();
if (myrssCSS.cssRules) myrss_CSS = myrssCSS.cssRules;
else if (myrssCSS.rules) myrss_CSS = myrssCSS.rules;

	//var targetrule='';
	var targetrule=new Array();nbrules=0;
	for (i=0; i<myrss_CSS.length; i++){
		cssName=myrss_CSS[i].selectorText.toLowerCase();
		if(cssName.indexOf(rule.toLowerCase())!=-1){
		//if(myrss_CSS[i].selectorText.toLowerCase()==rule){
			targetrule[nbrules]=myrss_CSS[i]; nbrules++;
			
			}
		}

	return targetrule;
}


function myrssGetCSSRule1(rule){
/*-----------------------------*/

myrssCSS = myrssGetWorkCSS();
var myrss_CSS=new Array();
if (myrssCSS.cssRules) myrss_CSS = myrssCSS.cssRules;
else if (myrssCSS.rules) myrss_CSS = myrssCSS.rules;

	var targetrule='';
	for (i=0; i<myrss_CSS.length; i++){
		cssName=myrss_CSS[i].selectorText.toLowerCase();
		if(cssName.indexOf(rule)!=-1){
		//if(myrss_CSS[i].selectorText.toLowerCase()==rule){
			targetrule=myrss_CSS[i]; 
			break;	
			}
		}

	return targetrule;
}




function myrssGetCSSText(cssId){
/*-----------------------------*/

var myText='';
var myrssCSS = document.styleSheets[cssId];
if(!myrssCSS) return myText;

var myrss_CSS=new Array();

if (myrssCSS.cssRules) myrss_CSS = myrssCSS.cssRules;
else if (myrssCSS.rules) myrss_CSS = myrssCSS.rules;

	var targetrule=new Array();nbrules=0;
	for (i=0; i<myrss_CSS.length; i++){
		cssName=myrss_CSS[i].selectorText;
		cssData=myrss_CSS[i].cssText;
		myText+=cssName+'{'+cssData+'}\n';
		}

alert(myText);
return myText;
}

function fjs_myrssGetWindowFullSise(){
/*-------------------------------*/
js_vsz = fjs_myrssGetWindowSise();
js_gsz = myrss_getScrollXY();

//alert("View:"+js_vsz.width+" - "+js_vsz.height+"\nScroll:"+js_gsz.width+" - "+js_gsz.height);
js_res_W = js_vsz.width;
js_res_H = js_vsz.height;
if(js_gsz.width!=0) js_res_W += js_gsz.width;
if(js_gsz.height!=0) js_res_H += js_gsz.height;

return {width:js_res_W,height:js_res_H};
}

function fjs_myrssGetWindowSise(){
/*-------------------------------*/
	var w = 0;
	var h = 0;

	//IE
	if(!window.innerWidth){
		//strict mode
		if(!(document.documentElement.clientWidth == 0)){
			w = document.documentElement.clientWidth;
			h = document.documentElement.clientHeight;
		}
		//quirks mode
		else{
			w = document.body.clientWidth;
			h = document.body.clientHeight;
			}
		}
	//w3c
	else{
		w = window.innerWidth;
		h = window.innerHeight;
		}
	return {width:w,height:h};
}



function myrss_getScrollXY() {
/*-----------------------*/
  var scrOfX = 0, scrOfY = 0;
  if( window.pageYOffset && typeof( window.pageYOffset ) == 'number' ) {
    	//Netscape compliant
    	scrOfY = window.pageYOffset;
    	scrOfX = window.pageXOffset;
    	} 
  else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    	 //DOM compliant
    	 scrOfY = document.body.scrollTop;
    	 scrOfX = document.body.scrollLeft;
  	 } 
  else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    	 //IE6 standards compliant mode
    	 scrOfY = document.documentElement.scrollTop;
    	 scrOfX = document.documentElement.scrollLeft;
  	 }
  
  return { width:scrOfX, height:scrOfY };
}

function fjsMyRss_ParseUrl(pUrl){
/*---------------------------------*/
	
	var new_url = pUrl;
	
	new_url = new_url.replace(/&/,"<:sep:>");
	while(new_url.indexOf('&')!=-1){
		new_url=new_url.replace(/&/,"<:sep:>");	
		}

	new_url = new_url.replace(/%/,"<:pc:>");
	while(new_url.indexOf('%')!=-1){
		new_url=new_url.replace(/%/,"<:pc:>");	
		}

	new_url = new_url.replace(/\+/,"<:plus:>");
	while(new_url.indexOf('+')!=-1){
		new_url=new_url.replace(/\+/,"<:plus:>");	
		}

	//return escape(new_url);
	//alert(new_url);
	return new_url;
}


