  var NS = (navigator.appName=="Netscape")?true:false; 

function ouvrefenetre(url) {
popup = window.open(url,'windowName','width=450,height=400,resizable=yes,scrollbars=1');
if (!popup.opener)
    popup.opener = self;
}


function supressError() {
    return true;
}

function ouvreparent(url) {
    window.onerror = supressError;
    opener.location.href = url;
}


function supressError() {
    return true;
}

function load(url) {
    window.onerror = supressError;
    opener.location.href = url;
}

function getRefToDivMod( divID, oDoc ) {
  if( !oDoc ) { oDoc = document; }
  if( document.layers ) {
    if( oDoc.layers[divID] ) { return oDoc.layers[divID]; } else {
      for( var x = 0, y; !y && x < oDoc.layers.length; x++ ) {
        y = getRefToDivMod(divID,oDoc.layers[x].document); }
      return y; } }
  if( document.getElementById ) { return oDoc.getElementById(divID); }
  if( document.all ) { return oDoc.all[divID]; }
  return document[divID];
}

function resizeWinTo( idOfDiv ) {
  var oH = getRefToDivMod( idOfDiv ); if( !oH ) { return false; }
  var oW = oH.clip ? oH.clip.width : oH.offsetWidth;
  var oH = oH.clip ? oH.clip.height : oH.offsetHeight; if( !oH ) { return false; }
  var x = window; x.resizeTo( oW + 200, oH + 200 );
  var myW = 0, myH = 0, d = x.document.documentElement, b = x.document.body;
  if( x.innerWidth ) { myW = x.innerWidth; myH = x.innerHeight; }
  else if( d && d.clientWidth ) { myW = d.clientWidth; myH = d.clientHeight; }
  else if( b && b.clientWidth ) { myW = b.clientWidth; myH = b.clientHeight; }
  if( window.opera && !document.childNodes ) { myW += 16; }
  x.resizeTo( oW + ( ( oW + 200 ) - myW ), oH + ( (oH + 200 ) - myH ) );
}


/* Augmentation et réduction des polices d'affichage
*/

var taille=13
function choixStyle(dir) {
var li; 

if (10<taille+dir&&taille+dir<20){
   for(var i=0; li=document.getElementsByTagName("link")[i]; i++) {

     if(li.getAttribute("rel").indexOf("style") != -1 && li.getAttribute("title")) {
      if(li.getAttribute("title").indexOf("cr") !=-1) li.disabled = true;
		if (li.getAttribute("title").indexOf(taille+dir)>-1)li.disabled = false;
	  }
	 }

    taille=taille+dir;
   }
  }


/////////////////////////
//Fonctions readspeaker//
/////////////////////////

/* The selected text function */

var selectedString="";

function getSelectedHTML() {
  selectedString="";
  var rng=undefined;
  if (window.getSelection) {
    selobj = window.getSelection();
    if (!selobj.isCollapsed) {
      if (selobj.getRangeAt) {
        rng=selobj.getRangeAt(0);
      }
      else {
        rng = document.createRange();
        rng.setStart(selobj.anchorNode,selobj.anchorOffset);
        rng.setEnd(selobj.focusNode,selobj.focusOffset);
      }
      if (rng) {
        DOM = rng.cloneContents();
        object = document.createElement('div');
        object.appendChild(DOM.cloneNode(true));
        selectedString=object.innerHTML;
      }
      else {
        selectedString=selobj;
      }
    }
  }
  else if (document.selection) {
    selobj = document.selection;
    rng = selobj.createRange();
    if (rng && rng.htmlText) {
      selectedString = rng.htmlText;
    }
    else if (rng && rng.text) {
      selectedString = rng.text;
    }
  }
  else if (document.getSelection) {
    selectedString=document.getSelection();
  }
  	selectedString = cleanSelectedString(selectedString);
}

function copyselected()
{
  setTimeout("getSelectedHTML()",50);
  return true;
}

document.onmouseup = copyselected;
document.onkeyup = copyselected;

/* The expanding function */

function readspeaker(rs_call,rs_post)
{
  var rs_div="";
  if (selectedString.length>0) {
    rs_call=rs_call.replace("/cgi-bin/rsent?","/enterprise/rsent_wrapper.php?");
  }
  if (rs_post) {
    rs_div=rs_post;
  }
  else {
    rs_div="rs_div";
  }
  savelink=rs_call+"&save=1";
  start_rs_table="<table style='border:1px solid #aeaeae; text-align:center; font-size: 10px;'><tr><td>";
  rs_embed="<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' style='height:20px; width:250px;'>";
  rs_embed+="<param name='movie' value='http://media.readspeaker.com/flash/readspeaker20.swf?mp3="+escape(rs_call)+"&autoplay=1&rskin=bump&text_play=Lecture&text_pause=Pause&text_stop=Stop&text_vol=Volume' />";
  rs_embed+="<param name='quality' value='high' />";
  rs_embed+="<param name='SCALE' value='exactfit' />";
  rs_embed+="<param name='wmode' value='transparent' />";
  rs_embed+="<embed wmode='transparent' src='http://media.readspeaker.com/flash/readspeaker20.swf?mp3="+escape(rs_call)+"&autoplay=1&rskin=bump&text_play=Lecture&text_pause=Pause&text_stop=Stop&text_vol=Volume' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwaveflash' scale='exactfit' style='height:20px; width:250px;' />";
  rs_embed+="</embed></object>";
  rs_downloadlink="<br /><a href='"+savelink+"'>T&eacute;l&eacute;charger le fichier audio</a>";
  close_rs="<br /><a href='#' onclick='close_rs_div(\""+rs_div+"\"); return false;'>Fermer le lecteur audio</a>";
  end_rs_table="</td></tr></table>";

  var x=document.getElementById(rs_div);
  if(x) {
	x.innerHTML=start_rs_table+rs_embed+rs_downloadlink+close_rs+end_rs_table;
  }
}

function close_rs_div(rs_div)
{
  var x=document.getElementById(rs_div);
  if(x) {
	x.innerHTML="";
  }
}

/* Selected text cleaning function */

function cleanSelectedString(theString)
{
	var comments = theString.match(/<!--/gi);
	var temp = "";
	if(comments != undefined)
	{
		for(i=0;i<comments.length;i++)
		{
			var temp = theString.substring(theString.search(/<!--/gi),theString.search(/-->/gi)+3);
			theString = theString.replace(temp,"");
		}
	}
	var regexp = /(<\/?[A-Z]+[0-9]?)\s?[^>]*>/gi
	theString = theString.replace(regexp, "$1>");
	var regexp2 = /<\/?[A-Z]+[0-9]?\s?>/gi
	theString = theString.replace(regexp2, function(m) { return returnTags(m);});
	var regexp_spaces = /\s+?\s*/gi
	theString = theString.replace(regexp_spaces, " ");	
	var regexp_br = /(<br>)+?\s?(<br>\s*)*/gi
	theString = theString.replace(regexp_br, "<br>");	
	return theString;
}

function returnTags(thematch)
{ 
	var regtag = /<\/?(h[1-6]|a|area|ul|ol|dl|dd|dt|li|table|td|tr|th|p|hr|br)>/i
	if(regtag.test(thematch))
	{ 
		return thematch;
	} 
	else 
	{
		return "";
	}
}


