// drawplugin.js

/*************************************** drawFlash ************************************/
function drawPluginFlash(url,height,width) {
    var html = "<object  codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\" height=\""+height+"\" width=\""+width+"\">";
    html += "<param name=\"movie\" value=\""+url+"\" id=\"myFlash\">";
    html += "<embed id=\"flashEmbed\" src=\""+url+"\" type=\"application/x-shockwave-flash\" height=\""+height+"\" width=\""+width+"\" pluginspace=\"http://www.macromedia.com/go/getflashplayer\">";
    html += "</embed></object>";
	return html;
}
/*************************************** drawVideoFlash ************************************/
function drawPluginVideoFlash(url,height,width) {
	var swf = document.location.href;
	swf = "../../../../ahp/flash/simple_player.swf";
    var html = "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" height=\""+height+"\" width=\""+width+"\">";
	html += "<param name=\"allowScriptAccess\" value=\"sameDomain\" />";
	html += "<param name=\"movie\" value=\""+swf+"\" />";
	html += "<param name=\"quality\" value=\"high\" />";
	html += "<param name=\"bgcolor\" value=\"#ffffff\" />";
  	html += "<param name=\"FLASHVARS\" value =\"URLInfo="+url+"\" />";
	html += "<embed src=\""+swf+"\" quality=\"high\" bgcolor=\"#ffffff\" width=\""+width+"\" height=\""+height+"\" name=\"simple_player\" align=\"middle\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" FLASHVARS=\"URLInfo="+url+"\"/>";
    html += "</object>";
	return html;
}
/*************************************** drawReal ************************************/
function drawPluginReal(url,height,width,autostart,showcontrols) {
    var html;
	if (showcontrols)
	{
	    html = drawObjectReal(url,height-20,width,autostart,false);
	    html +=drawObjectReal(url,20,width,autostart,true);
	}
	else
	    html = drawObjectReal(url,height,width,autostart,false);
    return html;
}
function drawObjectReal(url,height,width,autostart,controls) {
	var show = controls?"controlpanel":"ImageWindow";
	var id = controls?"ControlPanel":"MediaPlayer";
  	var html = "<object classid=\"clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA\" id=\""+id+"\" ";
  	html += "width=\""+width+"\" ";
  	html += "height=\""+height+"\">";
  	html += "<param name=\"src\" value=\""+url+"\"></param>";
    html += "<param name=\"controls\" value=\""+show+"\"/>";
  	html += "<param value=\"Clip1\" name=\"console\"/>";
  	html += "<param value=\""+autostart+"\" name=\"autostart\"/>";
  	html += "<param value=\"true\" name=\"maintainaspect\"/>";
  	html += "<embed name=\""+id+"\" type=\"audio/x-pn-realaudio-plugin\" autostart=\""+autostart+"\" ";
  	html += "console=\"Clip1\" maintainaspect=\"true\" ";
  	html += "controls=\""+show+"\" ";
  	html += "src=\""+url+"\" ";
  	html += "width=\""+width+"\" ";
  	html += "height=\""+height+"\">";
  	html += "</embed></object>";
  	return html;
}
/*************************************** drawWms ************************************/
function drawPluginWms(url,height,width,autostart,showcontrols) {
	var auto = autostart?1:0;
	var show = showcontrols?1:0;
  	var html = "<object id=\"MediaPlayer\" ";
  	if (navigator.userAgent.indexOf('MSIE') != -1)
  	    html += "codebase=\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701\" classid=\"clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6\" standby=\"Loading Microsoft Windows Media 	Player components...\" type=\"application/x-oleobject\" ";
  	else
  	    html += "type=\"video/x-ms-wmv\" ";
  	html += "width=\""+width+"\" ";
  	html += "height=\""+height+"\">";
  	html += "<param name=\"url\" value=\""+url+"\">";
  	if (!showcontrols)
  	    html += "<param name=\"UIMode\" value=\"none\">";
  	html += "<param name=\"ShowStatusBar\" value=\""+show+"\">";
  	html += "<param name=\"ShowControls\" value=\""+show+"\">";
  	html += "<param name=\"src\" value=\""+url+"\">";
  	html += "<param name=\"stretchToFit\" value=\"1\">";
  	html += "<param name=\"autostart\" value=\""+auto+"\">";
  	html += "</object>";
  	return html;
}
/************************************** drawImage *********************************/
function drawImage(url,maxHeight,maxWidth,resize) {
	var img = new Image();
    img.src = url;
    if (resize && !img.complete) {
    	// Image is not loaded
    	// Load it before !
    	return null;
    }
    var html = "<img src=\"";
    html += url;
    html += "\" ";
    if (resize) {
    	var size = resizeImage(img,maxHeight,maxWidth);
	    if (size[0]>0) {
	    	html += "height=\""+size[0]+"\" ";
	    }
	    if (size[1]>0) {
	    	html += "width=\""+size[1]+"\" ";
	    }
	}
    html += "/>";
    return html;
}
function resizeImage(img,maxHeight,maxWidth) {
    var realHeight = img.height;
    var realWidth = img.width;
  	var drawHeight = realHeight;
  	var drawWidth = realWidth;
  	if (drawWidth == 0) {
  		drawWidth = maxWidth;
  	}
  	if (drawHeight == 0) {
  		drawHeight = maxHeight;
  	}
    // Si la largeur ou la hauteur depasse la taille maximale
    if ((realHeight > maxHeight) || (realWidth > maxWidth)) {
      // Si la largeur et la hauteur depasse la taille maximale
      if ((realHeight > maxHeight) && (realWidth > maxWidth)) {
        // On positionne la hauteur à max
        drawHeight = maxHeight;
        // On recalcule la taille proportionnellement
        drawWidth = parseInt((realWidth * drawHeight) / realHeight, 10);
        if (drawWidth > maxWidth) {
          // C'est pas bon. On positionne la largeur à max.
          drawWidth = maxWidth;
          // On recalcule la taille proportionnellement
          drawHeight = parseInt((realHeight * drawWidth) / realWidth, 10);
        }
      } else if ((realHeight > maxHeight) && (realWidth <= maxWidth)) {
        // Si la hauteur depasse la taille maximale
        drawHeight = maxHeight;
        // On recalcule la taille proportionnellement
        drawWidth = parseInt((realWidth * drawHeight) / realHeight, 10);
      } else if ((realHeight <= maxHeight) && (realWidth > maxWidth)) {
        // Si la largeur depasse la taille maximale
        drawWidth = maxWidth;
        // On recalcule la taille proportionnellement
        drawHeight = parseInt((realHeight * drawWidth) / realWidth, 10);
      }
    }
	var size = new Array(2);
	size[0] = drawHeight;
	size[1] = drawWidth;
	return size;
}
