2
function LoadSld( slideId )
4
if( !g_supportsPPTHTML ) return
6
parent.SldUpdated(slideId)
7
g_origSz=parseInt(SlideObj.style.fontSize)
8
g_origH=SlideObj.style.posHeight
9
g_origW=SlideObj.style.posWidth
10
g_scaleHyperlinks=(document.all.tags("AREA").length>0)
11
if( g_scaleHyperlinks )
13
if( g_scaleInFrame||(IsWin("PPTSld") && parent.IsFullScrMode() ) )
14
document.body.scroll="no"
16
if( IsWin("PPTSld") && parent.IsFullScrMode() ) {
17
document.oncontextmenu=parent._CM;
21
function MakeSldVis( fTrans )
23
fTrans=fTrans && g_showAnimation
27
idx=g_bgSound.indexOf(",");
28
pptSound.src=g_bgSound.substr( 0, idx );
29
pptSound.loop= -(parseInt(g_bgSound.substr(idx+1)));
31
SlideObj.filters.revealtrans.Apply()
33
SlideObj.style.visibility="visible"
35
SlideObj.filters.revealtrans.Play()
37
function MakeNotesVis()
39
if( !IsNts() ) return false
40
SlideObj.style.display="none"
41
nObj = document.all.item("NotesObj")
49
function Redirect( frmId,sId )
51
var str=document.location.hash,idx=str.indexOf('#')
52
if(idx>=0) str=str.substr(1);
53
if( window.name != frmId && ( sId != str) ) {
54
obj = document.all.item("Main-File")
55
window.location.href=obj.href+"#"+sId
60
function HideMenu() { if( frames["PPTSld"] && PPTSld.document.all.item("ctxtmenu") && PPTSld.ctxtmenu.style.display!="none" ) { PPTSld.ctxtmenu.style.display='none'; return true } return false }
61
function IsWin( name ) { return window.name == name }
62
function IsNts() { return IsWin("PPTNts") }
63
function IsSldOrNts() { return( IsWin("PPTSld")||IsWin("PPTNts") ) }
64
function SupportsPPTAnimation() { return( navigator.platform == "Win32" && navigator.appVersion.indexOf("Windows")>0 ) }
65
function SupportsPPTHTML()
67
var appVer=navigator.appVersion, msie=appVer.indexOf("MSIE "), ver=0
69
ver=parseFloat( appVer.substring( msie+5, appVer.indexOf(";",msie) ) )
73
return( ver >= 4 && msie >= 0 )
75
var MHTMLPrefix = CalculateMHTMLPrefix();
76
function CalculateMHTMLPrefix()
78
if ( document.location.protocol == 'mhtml:') {
79
href=new String(document.location.href)
80
Start=href.indexOf('!')+1
81
End=href.lastIndexOf('/')+1
83
return href.substring(0, Start)
85
return href.substring(0, End)
92
if( !g_supportsPPTHTML || IsNts() ||
93
( !g_scaleInFrame && (( window.name != "PPTSld" ) || !parent.IsFullScrMode()) ) )
96
cltWidth=document.body.clientWidth
97
cltHeight=document.body.clientHeight
98
factor=(1.0*cltWidth)/g_origW
99
if( cltHeight < g_origH*factor )
100
factor=(1.0*cltHeight)/g_origH
102
newSize = g_origSz * factor
103
if( newSize < 1 ) newSize=1
106
s.fontSize=newSize+"px"
107
s.posWidth=g_origW*factor
108
s.posHeight=g_origH*factor
109
s.posLeft=(cltWidth-s.posWidth)/2
110
s.posTop=(cltHeight-s.posHeight)/2
112
if( g_scaleHyperlinks )
113
ScaleHyperlinks( factor )
118
if( IsNts() ) return;
120
if( !parent.IsFramesMode() && event.keyCode == 27 && !parent.HideMenu() )
121
parent.window.close( self );
122
else if( event.keyCode == 32 )
124
if( window.name == "PPTSld" )
125
parent.PPTSld.DocumentOnClick();
127
parent.GoToNextSld();
131
function DocumentOnClick()
133
if( IsNts() || parent.HideMenu() ) return;
134
if( ( g_allowAdvOnClick && !parent.IsFramesMode() ) ||
135
(event && (event.keyCode==32) ) )
136
parent.GoToNextSld();
141
var g_supportsPPTHTML = SupportsPPTHTML(), g_scaleInFrame = true, gId="", g_bgSound="",
142
g_scaleHyperlinks = false, g_allowAdvOnClick = true, g_showInBrowser = false;
143
var g_showAnimation = g_supportsPPTHTML && SupportsPPTAnimation() && ( (window.name=="PPTSld" && !parent.IsFramesMode()) || g_showInBrowser );var g_hasTrans = false, g_autoTrans = false, g_transSecs = 0;
144
var g_animManager = null;
146
var ENDSHOW_MESG="End of slide show, click to exit.", SCREEN_MODE="Frames", gIsEndShow=0, NUM_VIS_SLDS=19, SCRIPT_HREF="script.js", FULLSCR_HREF="fullscreen.htm";
147
var gCurSld = gPrevSld = 1, g_offset = 0, gNtsOpen = gHasNts = gOtlTxtExp = gNarrationPaused = false, gOtlOpen = true
148
window.gPPTHTML=SupportsPPTHTML()
150
function UpdNtsPane(){ PPTNts.location.replace( MHTMLPrefix+GetHrefObj( gCurSld ).mNtsHref ) }
151
function UpdNavPane( sldIndex ){ if(gNavLoaded) PPTNav.UpdNav() }
152
function UpdOtNavPane(){ if(gOtlNavLoaded) PPTOtlNav.UpdOtlNav() }
153
function UpdOtlPane(){ if(gOtlLoaded) PPTOtl.UpdOtl() }
154
function SetHasNts( fVal )
156
if( gHasNts != fVal ) {
161
function ToggleOtlText()
163
gOtlTxtExp=!gOtlTxtExp
166
function ToggleOtlPane()
168
frmset=document.all("PPTHorizAdjust")
169
frm=document.all("PPTOtl")
174
frmset.cols="20%,80%"
177
frm.noResize=!frm.noResize
180
function ToggleNtsPane()
182
frmset=document.all("PPTVertAdjust")
183
frm=document.all("PPTNts")
188
frmset.rows="80%,20%"
193
function FullScreen(){ window.open( MHTMLPrefix+FULLSCR_HREF,null,"fullscreen=yes" ) }
194
function ToggleVNarration()
196
rObj=PPTSld.document.all("NSPlay")
198
if( gNarrationPaused )
203
gNarrationPaused=!gNarrationPaused
206
function GetCurSldNum()
208
obj=GetHrefObj(gCurSld)
209
if( obj.mOrigVis == 1 )
214
function GetNumSlds()
216
if( GetHrefObj(gCurSld).mOrigVis == 1 )
219
return gDocTable.length
221
function GetSldNum( href )
223
for(ii=0; ii<gDocTable.length; ii++) {
224
if ( gDocTable[ii].mSldHref == href )
229
function GetHrefObj( sldIdx ){ return gDocTable[sldIdx-1] }
230
function IsFramesMode(){ return ( SCREEN_MODE == "Frames" ) }
231
function IsFullScrMode(){ return ( SCREEN_MODE == "FullScreen" ) }
232
function GoToNextSld()
235
if( GetHrefObj( ii-1 ).mOrigVis == 0 ) {
236
if( ii<=gDocTable.length ) {
239
GoToSld(obj.mSldHref)
245
while ( obj && ( obj.mOrigVis == 0 ) )
247
if( obj && obj.mOrigVis ) {
248
GoToSld(obj.mSldHref)
252
if( !IsFramesMode() ) EndShow()
254
function GoToPrevSld()
259
while ( ( obj.mVis == 0 ) && ( ii>0 ) )
261
GoToSld(obj.mSldHref)
264
function GoToFirst(){ GoToSld( GetHrefObj(1).mSldHref ) }
269
GoToSld( GetHrefObj(ii).mSldHref )
271
function GoToSld( href )
273
if( PPTSld.event ) PPTSld.event.cancelBubble=true
274
GetHrefObj( GetSldNum(href) ).mVis=1
275
PPTSld.location.href=MHTMLPrefix+href
277
function SldUpdated( id )
279
if( id == GetHrefObj(gCurSld).mSldHref ) return
281
gCurSld=GetSldNum(id)
282
if( IsFramesMode() ) {
283
UpdNavPane(); UpdOtlPane(); UpdNtsPane()
287
function PrevSldViewed(){ GoToSld( GetHrefObj(gPrevSld).mSldHref ) }
288
function HasPrevSld() { return ( gIsEndShow || ( gCurSld != 1 && GetHrefObj( gCurSld-1 ).mVis == 1 )||( GetCurSldNum() > 1 ) ) }
289
function HasNextSld() { return (GetCurSldNum() != GetNumSlds()) }
292
if( PPTSld.event ) PPTSld.event.cancelBubble=true
296
doc.writeln('<html><head><script defer>function CloseWindow(){ if( parent.HideMenu() ) return; if( !parent.IsFramesMode() && event && (event.keyCode==27 || event.keyCode==32 || event.type=="click" ) ) parent.window.close( self ); } function Unload() { parent.gIsEndShow=0; } function SetupEndShow() { parent.gIsEndShow=1; document.body.scroll="no"; document.onkeypress=CloseWindow; document.onclick=CloseWindow; document.oncontextmenu=parent._CM; }</script></head><body bgcolor=black onload=SetupEndShow() onunload=Unload()><center><p><font face=Tahoma color=white size=2><br><b>' + ENDSHOW_MESG + '</b></font></p></center></body></html>')
299
function SetSldVisited(){ gDocTable[gCurSld-1].mVisited=true }
300
function IsSldVisited(){ return gDocTable[gCurSld-1].mVisited }
301
function hrefList( sldHref, visible, sldIdx )
303
this.mSldHref= this.mNtsHref = sldHref
304
this.mSldIdx = sldIdx
305
this.mOrigVis= this.mVis = visible
308
var gDocTable = new Array(
309
new hrefList("slide0001.htm", 1, 1),
310
new hrefList("slide0003.htm", 1, 2),
311
new hrefList("slide0004.htm", 1, 3),
312
new hrefList("slide0020.htm", 1, 4),
313
new hrefList("slide0005.htm", 1, 5),
314
new hrefList("slide0021.htm", 1, 6),
315
new hrefList("slide0032.htm", 1, 7),
316
new hrefList("slide0033.htm", 1, 8),
317
new hrefList("slide0026.htm", 1, 9),
318
new hrefList("slide0027.htm", 1, 10),
319
new hrefList("slide0028.htm", 1, 11),
320
new hrefList("slide0009.htm", 1, 12),
321
new hrefList("slide0010.htm", 1, 13),
322
new hrefList("slide0013.htm", 1, 14),
323
new hrefList("slide0029.htm", 1, 15),
324
new hrefList("slide0030.htm", 1, 16),
325
new hrefList("slide0015.htm", 1, 17),
326
new hrefList("slide0016.htm", 1, 18),
327
new hrefList("slide0017.htm", 1, 19)
330
function ImgBtn( oId,bId,w,action )
334
t.SetActive = _IBSetA
335
t.SetInactive= _IBSetI
336
t.SetPressed = _IBSetP
337
t.SetDisabled= _IBSetD
340
t.UserAction = action
345
t.mIsOn = t.mCurState = 0
350
obj=this.ChgState( gHiliteClr,gShadowClr,2 )
357
obj=this.ChgState( gFaceClr,gFaceClr,1 )
364
obj=this.ChgState( gShadowClr,gHiliteClr,2 )
365
obj.style.posLeft+=1; obj.style.posTop+=1
370
obj=this.ChgState( gFaceClr,gFaceClr,0 )
373
function _IBSetE( state )
376
GetObj( t.mBorderId ).style.visibility="visible"
377
if( state != t.mIsOn ) {
389
if( t.UserAction != null )
394
obj.style.posLeft=obj.style.posLeft+(t.mCurState-4)*t.mWidth
396
obj.style.posLeft=obj.style.posLeft+(t.mCurState-0)*t.mWidth
401
function _IBUI( clr1,clr2,nextState )
404
SetBorder( GetObj( t.mBorderId ),clr1,clr2 )
405
obj=GetObj( t.mObjId )
406
obj.style.posLeft=obj.style.posLeft+(t.mCurState-nextState)*t.mWidth-obj.style.posTop
407
t.mCurState=nextState
410
function TxtBtn( oId,oeId,action,chkState )
414
t.SetActive = _TBSetA
415
t.SetInactive= _TBSetI
416
t.SetPressed = _TBSetP
417
t.SetDisabled= _TBSetD
418
t.SetEnabled = _TBSetE
419
t.GetState = chkState
420
t.UserAction = action
429
if( t.mIsOn && !t.GetState() )
430
t.ChgState( gHiliteClr,gShadowClr,0,0 )
435
if( t.mIsOn && !t.GetState() )
436
t.ChgState( gFaceClr,gFaceClr,0,0 )
441
this.ChgState( gShadowClr,gHiliteClr,1,1 )
445
this.ChgState( gFaceClr,gFaceClr,0,0 )
452
t.ChgState( gFaceClr,gFaceClr,0,0 )
454
t.ChgState( gShadowClr,gHiliteClr,1,1 )
461
if( t.UserAction != null )
469
function _TBUI( clr1,clr2,lOffset,tOffset )
471
SetBorder( GetObj( this.mObjId ),clr1,clr2 )
472
Offset( GetObj( this.m_elementsId ),lOffset,tOffset )
474
function GetObj( objId ){ return document.all.item( objId ) }
475
function Offset( obj, top, left ){ obj.style.top=top; obj.style.left=left }
476
function SetBorder( obj, upperLeft, lowerRight )
479
s.borderStyle = "solid"
481
s.borderLeftColor = s.borderTopColor = upperLeft
482
s.borderBottomColor= s.borderRightColor = lowerRight
484
function GetBtnObj(){ return gBtnArr[window.event.srcElement.id] }
485
function BtnOnOver(){ b=GetBtnObj(); if( b != null ) b.SetActive() }
486
function BtnOnDown(){ b=GetBtnObj(); if( b != null ) b.SetPressed() }
487
function BtnOnOut(){ b=GetBtnObj(); if( b != null ) b.SetInactive() }
496
function GetNtsState(){ return parent.gNtsOpen }
497
function GetOtlState(){ return parent.gOtlOpen }
498
function GetOtlTxtState(){ return parent.gOtlTxtExp }
499
function NtsBtnSetFlag( fVal )
501
s=document.all.item( this.m_flagId ).style
509
var gHiliteClr="THREEDHIGHLIGHT",gShadowClr="THREEDSHADOW",gFaceClr="THREEDFACE"
510
var gBtnArr = new Array()
511
gBtnArr["nb_otl"] = new TxtBtn( "nb_otl","nb_otlElem",parent.ToggleOtlPane,GetOtlState )
512
gBtnArr["nb_nts"] = new TxtBtn( "nb_nts","nb_ntsElem",parent.ToggleNtsPane,GetNtsState )
513
gBtnArr["nb_prev"]= new ImgBtn( "nb_prev","nb_prevBorder",30,parent.GoToPrevSld )
514
gBtnArr["nb_next"]= new ImgBtn( "nb_next","nb_nextBorder",30,parent.GoToNextSld )
515
gBtnArr["nb_sldshw"]= new ImgBtn( "nb_sldshw","nb_sldshwBorder",18,parent.FullScreen )
516
gBtnArr["nb_voice"] = new ImgBtn( "nb_voice","nb_voiceBorder",18,parent.ToggleVNarration )
517
gBtnArr["nb_otlTxt"]= new ImgBtn( "nb_otlTxt","nb_otlTxtBorder",23,parent.ToggleOtlText )
518
gBtnArr["nb_nts"].m_flagId= "notes_flag"
519
gBtnArr["nb_nts"].SetFlag = NtsBtnSetFlag
520
gBtnArr["nb_otlTxt"].ChangeIcon= GetOtlTxtState
521
var sNext="Next",sPrev="Previous",sEnd="End Show",sFont="Arial"
525
var doc=PPTSld.document.body,x=PPTSld.event.clientX+doc.scrollLeft,y=PPTSld.event.clientY+doc.scrollTop
527
m = PPTSld.document.all.item("ctxtmenu")
529
if( (x+m.scrollWidth > doc.clientWidth)&&(x-m.scrollWidth > 0) )
530
m.style.pixelLeft=x-m.scrollWidth
533
if( (y+m.scrollHeight > doc.clientHeight)&&(y-m.scrollHeight > 0) )
534
m.style.pixelTop=y-m.scrollHeight
540
if( !parent.IsFullScrMode() ) return;
541
if(!PPTSld.event.ctrlKey) {
549
if( PPTSld.document.all.item("ctxtmenu") ) return
551
var mObj=CreateItem( PPTSld.document.body )
554
s.position="absolute"
557
SetCMBorder(mObj,"menu","black")
559
var iObj=CreateItem( mObj )
560
SetCMBorder( iObj, "threedhighlight","threedshadow" )
562
CreateMenuItem( iObj,sNext,M_GoNextSld,M_True )
563
CreateMenuItem( iObj,sPrev,M_GoPrevSld,M_HasPrevSld )
564
var sObj=CreateItem( iObj )
565
SetCMBorder(sObj,"menu","menu")
567
s.borderTopColor="threedshadow"
568
s.borderBottomColor="threedhighlight"
571
CreateMenuItem( iObj,sEnd,M_End,M_True )
573
function Highlight() { ChangeClr("activecaption","threedhighlight") }
574
function Deselect() { ChangeClr("threedface","menutext") }
577
e=PPTSld.event.srcElement
578
if( e.type=="menuitem" && e.IsActive() )
581
PPTSld.event.cancelBubble=true
583
function ChangeClr( bg,clr )
585
e=PPTSld.event.srcElement
586
if( e.type=="menuitem" && e.IsActive() ) {
587
e.style.backgroundColor=bg
592
function M_HasPrevSld() { return( parent.HasPrevSld() ) }
593
function M_GoNextSld() { if( gIsEndShow ) M_End(); else GoToNextSld() }
594
function M_GoPrevSld() { if( gIsEndShow ) { history.back(); PPTSld.event.cancelBubble=true; } else GoToPrevSld() }
595
function M_True() { return true }
596
function M_End() { window.close( self ) }
597
function CreateMenuItem( node,text,action,eval )
599
var e=CreateItem( node )
606
e.style.color="threedshadow"
608
e.onmouseover=Highlight
609
e.onmouseout=Deselect
615
function CreateItem( node )
617
var elem=PPTSld.document.createElement("DIV")
618
node.insertBefore( elem )
621
function SetCMBorder( o,ltClr,rbClr )
624
s.backgroundColor="menu"
625
s.borderStyle="solid"
627
s.borderColor=ltClr+" "+rbClr+" "+rbClr+" "+ltClr
b'\\ No newline at end of file'