//BEGIN CLASS SLIDEFRAME---------------------------------------------------------------
//external object references:
//window.iframeslides.markslide() (thumbnail marking)

//external SCRIPT references:
//a_slidepreviewbutton.htm?SLIDEPATH=
//a_slideview.htm?SLIDEPATH=
//a_slideflash.htm?SLIDEPATH= 
//blank.gif
function Slideframe(){
this.init=Slideframe_init;
this.paint=Slideframe_paint;
this.setFormat=Slideframe_setFormat;
this.getFormat=Slideframe_getFormat;
this.setdoc=Slideframe_setdoc;
this.setslide=Slideframe_setslide;
this.setslideframe=Slideframe_setslideframe;
this.animate_Slide=Slideframe_animate_Slide;
this.endOfAnimation=Slideframe_endOfAnimation;
this.getCommand=Slideframe_getCommand;
}//end function

//rudimentary init function
function Slideframe_init(q_xSlidelist,q_xPreviewButton,q_xPRESENTATIONFORMAT,q_xSHOWANIMATION,q_xPRESENTATIONNAMES,q_xBASEURL,q_xIMG){
this.mySlidelist=q_xSlidelist;
this.myPREVIEWBUTTON=q_xPreviewButton;
this.myPRESENTATIONFORMAT=q_xPRESENTATIONFORMAT;
this.mySHOWANIMATION=q_xSHOWANIMATION;
this.myPRESENTATIONNAMES=q_xPRESENTATIONNAMES;
this.myBASEURL=q_xBASEURL;
this.myAdminbase=q_xIMG;
this.myCURPRES="";
this.myLASTFILE="";
this.myLASTSLIDE=1;
this.myFade=0;//Prepared attribute for fade transition of slides
}//end function

//public
function Slideframe_paint(q_obj,q_src,q_scrollbar){
//initializes the Slideframe graphics
if(Slideframe_paint_ok(q_obj,q_src,q_scrollbar)){
	//create the object in the target region
	q_obj.mainobject=this;
	this.myContainer=q_obj;
	this.myWidth=parseInt(q_obj.style.width);
	this.myHeight=parseInt(q_obj.style.height);
	this.myLASTFILE=q_src;
	var graphicshtml=q_slideframe_html(q_obj,this.myLASTFILE,q_scrollbar);
	q_obj.innerHTML=graphicshtml;
	return "";
}//end if
}//end function
function Slideframe_paint_ok(q_obj,q_src,q_scrollbar){
//initializes the Slideframe graphics
//matches with _html function
if(q_obj){
}else{
	alert("Slideframe_paint error: Destination layer must be present before initializing.");
	return false;
}//end if
if(q_src.length==0){
	alert("Slideframe_paint error: Slideframe content URL needs to be defined.");
	return false;
}//end if
return true;
}//end function

function q_slideframe_html(q_obj,q_src,q_scrollbar){
return "<iframe id='slideimg' name='slideimg' frameborder='0' width='" + q_obj.style.width + "' height='" + q_obj.style.height + "' src='" + q_src + "' scrolling='" + q_scrollbar + "' onload='try{q_slideimgload(this)}catch(errObj){};'></iframe>\n";
}//end function

function Slideframe_setFormat(q_xPRESENTATIONFORMAT){
this.myPRESENTATIONFORMAT=q_xPRESENTATIONFORMAT;
}//end function

function Slideframe_getFormat(){
return this.myPRESENTATIONFORMAT;
}//end function

function Slideframe_setdoc(q_url,q_count,q_target){
this.setslide(q_url,q_count);
}//end function

function Slideframe_setslide(afilename,slidecount){
//image and preview
this.myLASTSLIDE=slidecount;
this.setslideframe(afilename,this.myBASEURL,this.myPRESENTATIONFORMAT,this.myPRESENTATIONNAMES);
var q_obj=document.getElementById("Slidestatus");
if(q_obj){
	var q_nlast=this.myLASTSLIDE;	
	var q_nthis=parseInt(getSlidenumber(afilename));
	document.getElementById("Slidestatus").innerHTML="Slide "+q_nthis+" of "+q_nlast;
}//end if
if(window.iframeslides){
try{
	getFrameByName("iframeslides").markslide(afilename);
}catch(errObj){}//end catch
}//end if
}//end function

function Slideframe_setslideframe(q_filename,q_baseurl,q_presentationformat,q_presentationnames){
//try{
if(q_filename==""){
q_filename=this.myAdminbase+"blank.gif";
}//end if
this.myLASTFILE=q_filename;
var q_ext=fileextension(q_filename).toLowerCase();
var q_pre=q_filename.substr(0,7);
if((q_ext=="swf")||(q_ext=="pdf")||(q_ext=="doc")||(q_ext=="xls")){
	if(this.myPREVIEWBUTTON==true){
		if(q_filename.substr(0,7)=="http://"){	window.slideimg.location.href=this.myAdminbase+"a_slidepreviewbutton.htm?SLIDEPATH="+q_filename;
		}else{
window.slideimg.location.href=this.myAdminbase+"a_slidepreviewbutton.htm?SLIDEPATH="+q_baseurl+q_filename;
		}//end if
	}else if(q_pre=="http://"){
		window.slideimg.location.href=q_filename;
	}else{
		window.slideimg.location.href=q_baseurl+q_filename;
	}//end if
	this.myCURPRES=q_ext;
}else if((q_pre=="http://")&&(q_ext=="jpg")){
	window.slideimg.location.href=this.myAdminbase+"a_slideview.htm?SLIDEPATH=" +q_filename;
	this.myCURPRES=q_filename;
}else if((q_ext=="htm") || (q_ext=="asp") || (q_ext=="html") || (q_pre=="http://")){
	if(this.myPREVIEWBUTTON==true){
			window.slideimg.location.href=this.myAdminbase+ "a_slidepreviewbutton.htm?t="+now()+"&SLIDEPATH="+q_filename;
	}else{
		window.slideimg.location.href=q_filename;
	}//end if
	this.myCURPRES=q_ext;
}else if((q_filename.indexOf("blank.gif")>=0)){
	window.slideimg.location.href=this.myAdminbase+"a_slideview.htm?SLIDEPATH=" +q_baseurl+ q_filename;
	this.myCURPRES="blank.gif";
}else if((".jpg.gif.png").indexOf(q_ext.toLowerCase())>-1){
	var q_ix=q_filename.toLowerCase().indexOf("/slide")+1;
	var q_iy=q_filename.indexOf("/",7);
	var q_presname=q_filename.substr(7,q_iy-7);
	if((q_ext.toLowerCase()!="png")&&(q_presentationformat=="html") && (q_presentationnames.indexOf(q_presname + ".htm#")>=0)){
		if(this.myCURPRES==q_presname + ".htm"){
			try{
				window.slideimg.PPTSld.location.href=q_baseurl + "slides/" + q_presname + "/" + q_presname + "_files/"+window.slideimg.PPTSld.GetHrefObj(getSlidenumber(q_filename)).mSldHref;
			}catch(errObj){
			}//end catch
		}else{
			this.myCURPRES=q_presname + ".htm";
		}//end if
		window.slideimg.location.href=q_baseurl + "slides/" + q_presname + "/" + q_presname + "_files/fullscreen2.htm?SLIDEPATH="+q_filename;
	}else if((q_presentationformat=="swf") && (q_presentationnames.indexOf(q_presname + ".swf#")>=0)){
		if(this.myCURPRES==q_presname){
			window.slideimg.setslidefile(q_filename);
		}else{//optimize this to use setflashslide() when viewer is loaded.
			window.slideimg.location.href=this.myAdminbase+"a_slideflash.htm?SLIDEPATH=" +q_baseurl+ q_filename;
			this.myCURPRES=q_presname;
		}//end if
	}else{//Do plain jpg, png or gif
		if(this.myCURPRES==q_presname && hasSlideobject()){
				q_Obj=window.slideimg.document.slideimg;
				if(this.myFade==1 && IE()){
					q_Obj.filters[0].Apply();
					q_Obj.src=q_baseurl+ slidelookup(q_filename,this.mySlidelist);
					q_Obj.filters[0].Play();
				}else{
					q_Obj.src=q_baseurl+ slidelookup(q_filename,this.mySlidelist);
				}//end if
		}else if(window.slideimg){			
			var q_slidehref=this.myAdminbase+"a_slideview.htm?SLIDEPATH=" +q_baseurl+ slidelookup(q_filename,this.mySlidelist);
			window.slideimg.location.href=q_slidehref;
			this.myCURPRES=q_presname;
		}//end if
	}//end if
}//end if
//}catch(errObj){
//}//end catch
}//end function

Slideframe.prototype.resize=function Slideframe_resize(q_width,q_height){
try{
	var q_Obj=window.slideimg.document.getElementById("slideimg");
	if(q_Obj){
	q_Obj.style.width=q_width;
	q_Obj.style.height=q_height;
	}//end if
}catch(errObj){
//alert("Slideframe_resize:"+errObj.message);
}//end catch
}//end function

function hasSlideobject(){
try{
	if(window.slideimg.document.slideimg){
		return true;
	}else{
		return false;
	}//end if
}catch(errObj){
	return false;
}//end catch
}//end function

function slidelookup(q_filename,q_slidelist){
if(q_slidelist.length>1){
	var q_find=q_filename.substr(0,q_filename.indexOf(".")).toLowerCase();
	for (var q_i=0;q_i<q_slidelist.length;q_i++){
		if (startswith(q_slidelist[q_i].toLowerCase(),q_find)){
			return q_slidelist[q_i];
		}//end if
	}//next
	return q_filename;
}else{
	return q_filename;
}//end if
}//end function

function Slideframe_animate_Slide(){
if(window.slideimg.PPTSld){
	if(window.slideimg.PPTSld.g_animManager){
		return window.slideimg.PPTSld.g_animManager.Next();
	}//end if
}//end if
return 0;
}//end function

function Slideframe_endOfAnimation(){
if(window.slideimg.PPTSld){
	if(window.slideimg.PPTSld.g_animManager){
		return AM_endOfAnimation(window.slideimg.PPTSld.g_animManager);
	}//end if
}//end if
return true;
}//end function

function AM_endOfAnimation(g_animManager){
try{
	return !(g_animManager.m_curBuild > 0 && 0 < g_animManager.m_numBuilds);
}catch(errObj){
	return true;
}//end catch
}//end function

function q_slideimgload(q_obj){
if(window.slideimg){
	if(window.slideimg.PPTSld){
		var q_sframe=q_obj.parentNode.mainobject;
		if(q_sframe.mySHOWANIMATION!="1"){
			setTimeout("q_initanimation()",500);
		}//end if
		setTimeout( "q_clickoff()",2000);	
	}//end if
}//end if
}//end function

//private
function q_initanimation(){
try{
window.slideimg.PPTSld.g_showAnimation=false;
window.slideimg.PPTSld.g_animManager.ShowShapes();
}catch(errObj){}//end catch
}//end function

//private
function q_clickoff(){
try{window.slideimg.PPTSld.document.body.onclick='';}catch(errObj){}//end catch
}//end function

function Slideframe_getCommand(q_arg){
var q_slidenumber=parseInt(getSlidenumber(this.myLASTFILE));
if((q_arg=="prev")&&((q_slidenumber-1)>0)){
	var q_filename=this.myLASTFILE.toLowerCase().replace("slide" +q_slidenumber,"slide" +(q_slidenumber-1));
	return "setdoc('"+q_filename+"',"+this.myLASTSLIDE+",1)";
}else if((q_arg=="next")&&((q_slidenumber+1)<=this.myLASTSLIDE)){
	var q_filename=this.myLASTFILE.toLowerCase().replace("slide" +q_slidenumber,"slide" +(q_slidenumber+1));
	return "setdoc('"+q_filename+"',"+this.myLASTSLIDE+",1)";
}else{
	return "";
}//end if
}//end function
//END CLASS

loadedSlide=true;
