home *** CD-ROM | disk | FTP | other *** search
/ PC World 2002 April / PCWorld_2002-04_cd.bin / Software / Komercni / abra / html / ceniky / CSScriptLib.js < prev    next >
Text File  |  2001-10-29  |  45KB  |  1,363 lines

  1. // -- Adobe GoLive JavaScript Library// -- Global FunctionsCSAg = window.navigator.userAgent; CSBVers = parseInt(CSAg.charAt(CSAg.indexOf("/")+1),10);
  2. function IsIE() { return CSAg.indexOf("MSIE") > 0;}
  3. function CSIEStyl(s) { return document.all.tags("div")[s].style; }
  4. function CSNSStyl(s) { return CSFindElement(s,0); }
  5. function CSFindElement(n,ly) { if (CSBVers < 4) return document[n];
  6.     var curDoc = ly ? ly.document : document; var elem = curDoc[n];
  7.     if (!elem) { for (var i=0;i<curDoc.layers.length;i++) {
  8.         elem = CSFindElement(n,curDoc.layers[i]); if (elem) return elem; }}
  9.     return elem;
  10. }
  11. function CSSetStylePos(s,d,p) { if (IsIE()) { if (d == 0) CSIEStyl(s).posLeft = p; else CSIEStyl(s).posTop = p; }
  12.     else { if (d == 0) CSNSStyl(s).left = p; else CSNSStyl(s).top = p; } }
  13. function CSGetStylePos(s,d) { if (IsIE()) { if (d == 0) return CSIEStyl(s).posLeft; else return CSIEStyl(s).posTop; }
  14.     else { if (d == 0) return CSNSStyl(s).left; else return CSNSStyl(s).top; }}
  15. CSLoopIsRunning = false; CSFctArray = new Array; CSTimeoutID = null;
  16. function CSLoop() {    
  17.     CSLoopIsRunning = false;
  18.     for (i=0;i<CSFctArray.length;i++) {
  19.         var curFct = CSFctArray[i];
  20.         if (curFct)    {
  21.             if (curFct.DoFunction(curFct)) { CSLoopIsRunning = true; curFct.counter++; }
  22.             else CSFctArray[i] = 0;
  23.         }
  24.     }
  25.     if (CSLoopIsRunning) CSTimeoutID = setTimeout("CSLoop()", 1);
  26. }
  27. function CSStartFunction(fct,data) {
  28.     if (!CSLoopIsRunning) { CSFctArray = 0; CSFctArray = new Array; }
  29.     var fctInfo = new Object;
  30.     fctInfo.DoFunction = fct; fctInfo.counter = 0; fctInfo.data = data;
  31.     CSFctArray[CSFctArray.length] = fctInfo; 
  32.     if (!CSLoopIsRunning) CSLoop();
  33. }
  34. function CSStopFunction(sceneName) {
  35.     var i;
  36.     for (i=0;i<CSFctArray.length;i++) {
  37.         var curFct = CSFctArray[i];
  38.         if (curFct){ if (curFct.data.name == sceneName){ CSFctArray[i] = 0; return; } }
  39.     }
  40. }
  41. function CSStopComplete() {
  42.     if (CSTimeoutID == null) return;
  43.     clearTimeout (CSTimeoutID); CSLoopIsRunning = false; CSTimeoutID = null;
  44. }
  45. function CSMoveLoop(fInf) {
  46.     var ticks = 60 * (((new Date()).getTime()) - fInf.data.startTime)/1000;
  47.     var f = ticks/fInf.data.ticks;
  48.     if (f < 1) { CSSetStylePos(fInf.data.layer,0,fInf.data.start[0] * (1-f) + fInf.data.end[0] * f);
  49.         CSSetStylePos(fInf.data.layer,1,fInf.data.start[1] * (1-f) + fInf.data.end[1] * f); return true; }
  50.     else { CSSetStylePos(fInf.data.layer,0,fInf.data.end[0]);
  51.         CSSetStylePos(fInf.data.layer,1,fInf.data.end[1]); }
  52.     return false;
  53. }
  54. function CSSlideObj (layer,start,end,ticks,startTime) {
  55.     this.layer=layer;this.start=start;this.end=end;this.ticks=ticks;this.startTime=startTime;
  56. }
  57. function CSSlideLayer(l,pos,anim,ticks) {
  58.     var x = pos[0]; var y = pos[1];
  59.  
  60.     if (l == '') return;
  61.     if (!anim) { CSSetStylePos(l,0,x); CSSetStylePos(l,1,y); }
  62.     else {  var fctData = new CSSlideObj(l,new Array(CSGetStylePos(l,0),CSGetStylePos(l,1)),new Array(x,y),ticks,(new Date()).getTime()); CSStartFunction(CSMoveLoop,fctData); }
  63. }
  64. function CSSetStyleVis(s,v) { if (IsIE()) CSIEStyl(s).visibility = (v == 0) ? "hidden" : "visible";
  65.     else CSNSStyl(s).visibility = (v == 0) ? 'hide' : 'show'; }
  66. function CSGetStyleVis(s) { if (IsIE()) return (CSIEStyl(s).visibility == "hidden") ? 0 : 1;
  67.     else return (CSNSStyl(s).visibility == 'hide') ? 0 : 1;}
  68. function CSGetLayerClip (el) {
  69.     if (el.isIE) return (new CSRect(0,0,el.offsetWidth,el.offsetHeight));
  70.     else return (new CSRect(el.clip.left,el.clip.top,el.clip.width,el.clip.height));
  71. }
  72. function CSSetLayerClip (el,clipRect) {
  73.     var l,t,r,b;
  74.     l=clipRect.left; t=clipRect.top; r=l+clipRect.width; b=t+clipRect.height;
  75.     if(el.isIE) { el.style.clip = "rect("+ t + " " + r + " " + b + " " + l + ")"; }
  76.     else {
  77.         el.clip.left=l; el.clip.top=t; 
  78.         el.clip.width=clipRect.width; el.clip.height=clipRect.height;
  79.     }
  80.     CSSetStyleVis(el.layer);
  81. }
  82. function CSRect (left,top,width,height) {
  83. this.left=left; this.top=top; this.width=width; this.height=height;
  84. }
  85. function CSCreateTransElement (layer, steps) {
  86.     var el;
  87.     if (IsIE()) el=document.all.tags("div")[layer];
  88.     else el=CSNSStyl(layer);
  89.     if (el==null) return null;
  90.     if (el.locked && (el.locked == true)) return null;
  91.     el.isIE=IsIE();
  92.     el.clipRect=CSGetLayerClip(el);
  93.     if (el.clipRect==null) return null;
  94.     el.maxValue=steps;
  95.     if (el.maxValue<=0) el.maxValue=30;
  96.     el.modus=""; el.layer=layer;
  97.     el.width=el.clipRect.width; el.height=el.clipRect.height;
  98.     el.locked = true;
  99.     return el;
  100. }
  101. function CSDisposeTransElement (el) { el.locked = false; }
  102. CSStateArray = new Object;
  103. CSCookieArray = new Object;
  104. CSCookieValArray = new Object;
  105. function CSWriteCookie(action) {
  106.     var name   = "DFT" + action[1];
  107.     var hrs    = action[2];
  108.     var path   = action[3];
  109.     var domain = action[4];
  110.     var secure = action[5];
  111.     var exp    = new Date((new Date()).getTime() + hrs * 3600000);
  112.     var cookieVal = "";
  113.     for(var prop in CSCookieArray) {
  114.         if(("DFT" + CSCookieArray[prop]) == name) {
  115.             if(cookieVal != "") cookieVal += "&";
  116.             cookieVal += prop + ":" + escape(CSStateArray[prop]);
  117.         }
  118.     }
  119.     if(hrs != 0)
  120.         cookieVal += "; expires=" + exp.toGMTString();
  121.     if(path != "")
  122.         cookieVal += "; path=" + path;
  123.     if(domain != "")
  124.         cookieVal += "; domain=" + domain;
  125.     if(secure == true)
  126.         cookieVal += "; secure";
  127.     //alert(cookieVal);
  128.     document.cookie = name + '=' + cookieVal;
  129. }
  130. function CSReadCookie(action) {
  131.     var name    = "DFT" + action[1];
  132.     var cookies = document.cookie;
  133.     if(cookies == "") return;
  134.     var start = cookies.indexOf(name);
  135.     if(start == -1) return;
  136.     start += name.length + 1;
  137.     var end = cookies.indexOf(";", start);
  138.     if(end == -1) end = cookies.length;
  139.     var cookieVal = cookies.substring(start, end);
  140.     var arr = cookieVal.split('&');
  141.     for(var i = 0; i < arr.length; i++) {
  142.         var a = arr[i].split(':');
  143.         CSStateArray[a[0]] = unescape(a[1]);
  144.     }    
  145. }
  146. function CSDefineState(action) {
  147.     CSCookieArray[action[1]] = action[3]; 
  148. }
  149. function CSSetState(action) {
  150.     CSStateArray[action[1]] = action[2];
  151. }
  152. function CSInitState(action) {
  153.     if(typeof(CSStateArray[action[1]]) == "undefined")
  154.         CSStateArray[action[1]] = action[2];
  155. }
  156. function CSCheckState(action) {
  157.     var obj1 = CSStateArray[action[1]];
  158.     var obj2 = action[2];
  159.     if(typeof(obj1) == "object") {
  160.         for(var i=0;i<obj1.length;i++) {
  161.             if(obj1[i] != obj2[i])
  162.                 return false;
  163.             }
  164.         return true;
  165.         }
  166.     var res;
  167.     var op = action[3];
  168.              if(op == "==") res = (CSStateArray[action[1]] == action[2]);    
  169.         else if(op == "!=") res = (CSStateArray[action[1]] != action[2]);    
  170.         else if(op == ">" ) res = (CSStateArray[action[1]] >  action[2]);    
  171.         else if(op == ">=") res = (CSStateArray[action[1]] >= action[2]);    
  172.         else if(op == "<" ) res = (CSStateArray[action[1]] <  action[2]);    
  173.         else if(op == "<=") res = (CSStateArray[action[1]] <= action[2]);    
  174.     return res;
  175. }
  176. function CSScriptInit() {if(typeof(skipPage) != "undefined") { if(skipPage) return; }
  177. idxArray = new Array;
  178. for(var i=0;i<CSInit.length;i++)
  179.     idxArray[i] = i;
  180. CSAction2(CSInit, idxArray);
  181. }function CSScriptExit() {idxArray = new Array;
  182. for(var i=0;i<CSExit.length;i++)
  183.     idxArray[i] = i;
  184. CSAction2(CSExit, idxArray);
  185. }CSInit = new Array;
  186. CSExit = new Array;
  187. CSStopExecution = false;
  188. function CSAction(array) { 
  189.     return CSAction2(CSAct, array);
  190. }
  191. function CSAction2(fct, array) { 
  192.     var result;
  193.     for (var i=0;i<array.length;i++) {
  194.         if(CSStopExecution) return false; 
  195.         var actArray = fct[array[i]];
  196.         if(actArray == null) return false; 
  197.         var tempArray = new Array;
  198.         for(var j=1;j<actArray.length;j++) {
  199.             if((actArray[j] != null) && (typeof(actArray[j]) == "object") && (actArray[j].length == 2)) {
  200.                 if(actArray[j][0] == "VAR") {
  201.                     tempArray[j] = CSStateArray[actArray[j][1]];
  202.                 }
  203.                 else {
  204.                     if(actArray[j][0] == "ACT") {
  205.                         tempArray[j] = CSAction(new Array(new String(actArray[j][1])));
  206.                     }
  207.                 else
  208.                     tempArray[j] = actArray[j];
  209.                 }
  210.             }
  211.             else
  212.                 tempArray[j] = actArray[j];
  213.         }            
  214.         result = actArray[0](tempArray);
  215.     }
  216.     return result;
  217. }
  218. CSAct = new Object;
  219. CSIm = new Object();
  220. function CSIShow(n,i) {
  221.     if (document.images) {
  222.         if (CSIm[n]) {
  223.             var img = (!IsIE()) ? CSFindElement(n,0) : document[n];
  224.             if (img && typeof(CSIm[n][i].src) != "undefined") {img.src = CSIm[n][i].src;}
  225.             if(i != 0)
  226.                 self.status = CSIm[n][3];
  227.             else
  228.                 self.status = " ";
  229.             return true;
  230.         }
  231.     }
  232.     return false;
  233. }
  234. function CSILoad(action) {
  235.     im = action[1];
  236.     if (document.images) {
  237.         CSIm[im] = new Object();
  238.         for (var i=2;i<5;i++) {
  239.             if (action[i] != '') { CSIm[im][i-2] = new Image(); CSIm[im][i-2].src = action[i]; }
  240.             else CSIm[im][i-2] = 0;
  241.         }
  242.         CSIm[im][3] = action[5];
  243.     }
  244. }
  245.  
  246. function CSClickReturn () {
  247.     var bAgent = window.navigator.userAgent; 
  248.     var bAppName = window.navigator.appName;
  249.     if ((bAppName.indexOf("Explorer") >= 0) && (bAgent.indexOf("Mozilla/3") >= 0) && (bAgent.indexOf("Mac") >= 0))
  250.         return true; // dont follow link
  251.     else return false; // dont follow link
  252. }
  253. function CSButtonReturn () {
  254.     var bAgent = window.navigator.userAgent; 
  255.     var bAppName = window.navigator.appName;
  256.     if ((bAppName.indexOf("Explorer") >= 0) && (bAgent.indexOf("Mozilla/3") >= 0) && (bAgent.indexOf("Mac") >= 0))
  257.         return false; // follow link
  258.     else return true; // follow link
  259. }
  260. function CSBrowserSwitch(action) {
  261.     var bAgent    = window.navigator.userAgent;
  262.     var bAppName    = window.navigator.appName;
  263.  
  264.     var isNS        = (bAppName.indexOf("Netscape") >= 0);
  265.     var isIE        = (bAppName.indexOf("Explorer") >= 0);
  266.     var isWin        = (bAgent.indexOf("Win") >= 0); 
  267.     var isMac        = (bAgent.indexOf("Mac") >= 0); 
  268.  
  269.     var vers        = 0;
  270.     var versIdx    = (bAgent.indexOf("Mozilla/"));
  271.  
  272.     if(versIdx >= 0)
  273.         {
  274.         var sstr    = bAgent.substring(versIdx + 8, versIdx + 9);
  275.         vers        = parseInt(sstr) - 2;
  276.         }
  277.  
  278.     var url        = action[1];
  279.     var platform    = action[2];
  280.  
  281.     var versVec;
  282.     if(platform)
  283.         {
  284.         if(isNS && isMac) versVec = action[3];
  285.         if(isIE && isMac) versVec = action[5];
  286.         if(isNS && isWin) versVec = action[4];
  287.         if(isIE && isWin) versVec = action[6];
  288.         }
  289.     else
  290.         {
  291.         if(isNS) versVec = action[3];
  292.         if(isIE) versVec = action[4];
  293.         }
  294.  
  295.     if(vers > (versVec.length-1))
  296.         vers = versVec.length-1;
  297.     if(versVec[vers] == 0)
  298.         {
  299.         location            = url;
  300.         CSStopExecution    = true;    
  301.         }
  302. }
  303.  
  304.  
  305. function CSURLPopupShow(formName, popupName, target) {
  306.     var form  = CSFindElement(formName);
  307.     var popup = form.elements[popupName];
  308.     window.open(popup.options[popup.selectedIndex].value, target);
  309.     popup.selectedIndex = 0;
  310. }
  311.  
  312. function CSSetStyleDepth(style,depth) { if (IsIE()) CSIEStyl(style).zIndex = depth; else CSNSStyl(style).zIndex = depth;}
  313. function CSGetStyleDepth(style) { if (IsIE()) return (CSIEStyl(style).zIndex); else return (CSNSStyl(style).zIndex); }
  314. CSSeqArray = new Array;
  315. function CSSeqActionFct(seq,loopCount,continueLoop) {
  316.     if ((seq.loop < 2) || ((loopCount % 2) != 0)) {
  317.         for (var i=0;i<seq.actionCount;i++) {
  318.             if (seq.actions[3*i + 1] <= seq.frame) {
  319.                 if ((loopCount > 1) && (seq.actions[3*i + 1] < seq.start)) continue;
  320.                 if (seq.actions[3*i + 2] < loopCount) {
  321.                     seq.actions[3*i + 2] = loopCount; CSLoopIsRunning = true;
  322.                     CSAction(new Array(seq.actions[3*i + 0])); continueLoop = true;
  323.                 }
  324.             } else { continueLoop = true; break; }
  325.         }
  326.     } else {
  327.         for (var i=seq.actionCount-1;i>=0;i--) {
  328.             if (seq.actions[3*i + 1] > seq.frame) {
  329.                 if (seq.actions[3*i + 1] > seq.end) continue;
  330.                 if (seq.actions[3*i + 2] < loopCount) {
  331.                     seq.actions[3*i + 2] = loopCount; CSLoopIsRunning = true;
  332.                     CSAction(new Array(seq.actions[3*i + 0])); continueLoop = true;
  333.                 }
  334.             } else { continueLoop = true; break; }
  335.         }
  336.     }
  337.     return continueLoop;
  338. }        
  339. function CSSeqFunction(fctInfo)
  340. {
  341.     var seq = fctInfo.data; var oldFrame = seq.frame;
  342.     var newTicks = (new Date()).getTime();
  343.     seq.frame = Math.round((seq.fps * (newTicks - seq.startTicks)/1000.0) - 0.5);
  344.     var continueLoop  = false; var loopCount = 1;
  345.     
  346.     if (seq.loop > 0) {
  347.         continueLoop = true;
  348.         if (seq.loop == 1) {
  349.             var iv = (seq.end - seq.start);
  350.             var f = Math.round(((seq.frame - seq.start) / iv) - 0.5);
  351.             if (f < 0) f = 0;
  352.             loopCount = f+1;
  353.             seq.frame = seq.start + ((seq.frame - seq.start) % (seq.end - seq.start));
  354.         } else {
  355.             var iv = (seq.end - seq.start);
  356.             var f = Math.round(((seq.frame - seq.start) / iv) - 0.5);
  357.             if (f < 0) f = 0;
  358.             loopCount = f+1;
  359.             f = (seq.frame - seq.start) % (2 * iv);
  360.             if (f > iv) f = 2*iv - f;
  361.             seq.frame = seq.start + f;
  362.         }
  363.     }
  364.     continueLoop = CSSeqActionFct(seq,loopCount,continueLoop);
  365.     for (var i=0;i<seq.tracks.length;i++) {
  366.         var track = seq.tracks[i]; var frameCount = 0; var lastCount = 0; var partCount = 0;
  367.         var partIdx = track.parts.ticks.length;
  368.         for (var k=0;k<track.parts.ticks.length;k++) {
  369.             frameCount += track.parts.ticks[k];
  370.             if (frameCount > seq.frame) { partIdx = k; partCount = seq.frame - lastCount; break; }
  371.             lastCount = frameCount;
  372.         }
  373.         if (partIdx < track.parts.ticks.length) {
  374.             var type=track.parts.moveType[partIdx];
  375.             if(type==1) CSSetLinearPos (track, partIdx, partCount);
  376.             else if(type==2) CSSetCurvePos (track, partIdx, partCount);
  377.             else if(type==3) if (oldFrame != seq.frame) CSSetRandomPos (track, partIdx, partCount);
  378.                              else { x = CSGetStylePos(track.layer,0); y = CSGetStylePos(track.layer,1); }
  379.             CSSetStyleVis(track.layer,track.parts.visibilities[partIdx]);
  380.             CSSetStyleDepth(track.layer,track.parts.depths[partIdx]);
  381.             continueLoop = true;
  382.         } else {
  383.             var partIdx = track.parts.moveType.length-1;
  384.             var posArray = track.parts.positions;
  385.             var x = posArray[partIdx * 6 + 0]; var y = posArray[partIdx * 6 + 1];
  386.             CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y);
  387.             CSSetStyleVis(track.layer,track.parts.visibilities[partIdx]);
  388.             CSSetStyleDepth(track.layer,track.parts.depths[partIdx]);
  389.         }
  390.     }
  391.     return continueLoop;
  392. }
  393. function CSSetLinearPos (track, partIdx, partCount) {
  394.     var curTicks = track.parts.ticks[partIdx];
  395.     var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6;
  396.     var posArray = track.parts.positions;
  397.     var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1];
  398.     var x1,x2,y1,y2;
  399.     var factor = partCount/curTicks;
  400.     x1 = x; y1 = y;
  401.     x2 = posArray[pIdx2 + 0]; y2 = posArray[pIdx2 + 1];
  402.     x = x1 * (1-factor) + x2 * factor; y = y1 * (1-factor) + y2 * factor;
  403.     CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y);
  404. }
  405. function CSSetCurvePos (track, partIdx, partCount) {
  406.     var curTicks = track.parts.ticks[partIdx];
  407.     var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6;
  408.     var posArray = track.parts.positions;
  409.     var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1];
  410.     var x1,x2,x3,x4,y1,y2,y3,y4;
  411.     var factor = partCount/curTicks;
  412.     var t = factor; var u = t * t; var v = u * t;
  413.     var val1 = 3*(u-t) - v + 1; var val2 = 3*(v+t - 2*u); var val3 = 3*(u-v); var val4 = v;
  414.     x1 = x; y1 = y; x2 = posArray[pIdx1 + 2]; y2 = posArray[pIdx1 + 3];
  415.     x3 = posArray[pIdx1 + 4]; y3 = posArray[pIdx1 + 5];
  416.     x4 = posArray[pIdx2 + 0]; y4 = posArray[pIdx2 + 1];
  417.     x = x1 * val1 + x2 * val2 + x3 * val3 + x4 * val4;
  418.     y = y1 * val1 + y2 * val2 + y3 * val3 + y4 * val4;
  419.     CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y);
  420. }
  421. function CSSetRandomPos (track, partIdx, partCount) {
  422.     var curTicks = track.parts.ticks[partIdx];
  423.     var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6;
  424.     var posArray = track.parts.positions;
  425.     var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1];
  426.     var x1,x2,y1,y2;
  427.     var factor = partCount/curTicks;
  428.     x1 = x; y1 = y;
  429.     x2 = posArray[pIdx2 + 0]; y2 = posArray[pIdx2 + 1];
  430.     var factorx = Math.random(); var factory = Math.random();
  431.     x = x1 * (1-factorx) + x2 * factorx; y = y1 * (1-factory) + y2 * factory;
  432.     CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y);
  433. }
  434. function CSStartSeq(name) {
  435.     var seq = CSGetScene(name); var date = new Date()
  436.     seq.startTicks = date.getTime()
  437.     for (var i=0;i<seq.actionCount;i++) seq.actions[3*i+2] = 0;
  438.     CSStartFunction(CSSeqFunction,seq);
  439. }
  440. function CSSceneObj (name,fps,loop,start,end,frame,sTicks,numAct,acts,tracks) {
  441.     this.name=name;this.fps=fps;this.loop=loop;this.start=start;this.end=end;
  442.     this.frame=frame;this.startTicks=sTicks;this.actionCount=numAct;
  443.     this.actions=acts;this.tracks=tracks;
  444. }
  445. function CSTrackObj (name,partIdx,partCount,parts) {
  446.     this.layer=name;this.partIdx=partIdx;this.partCount=partCount;this.parts=parts;
  447. }
  448. function CSPartObj (ticks,pos,depths,vis,moveType) {
  449.     this.ticks=ticks;this.positions=pos;this.depths=depths;this.visibilities=vis;
  450.     this.moveType=moveType;
  451. }
  452. function CSGetScene (name) {
  453.     for (i=0;i<CSSeqArray.length;i++) { var seq = CSSeqArray[i]; if (seq.name==name) return seq; }
  454.     return 0;
  455. }
  456.  
  457. function CSAutoStartScene(action) { CSStartSeq (action[1]); }
  458.  
  459. // -- Action Functions
  460. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  461.  
  462. function WBConfirmLink(action) {
  463.      
  464.     if (checkIt(action)) {
  465.          
  466.         if (action[2] != "(Empty Reference!)") {
  467.          
  468.             if (action[3].length < 1) {
  469.                 parent.location.href=action[2];
  470.             }
  471.              
  472.             else {
  473.                 parent.frames[action[3]].location.href=action[2];
  474.             }
  475.         }
  476.     }
  477.     return;
  478. }
  479. function checkIt(action) {
  480.     var carryOn = window.confirm(action[1]);
  481.     return carryOn;
  482.     }
  483. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  484.  
  485. function initIArray() {
  486. this.length = initIArray.arguments.length;
  487. for (var i = 0; i < this.length; i++)
  488. this[i+1] = initIArray.arguments[i]; 
  489. }
  490.  
  491. function dailyImageURL(action) {
  492. var dateArray = new
  493. initIArray("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");
  494. var today = new Date();
  495. var day = dateArray[today.getDay()];
  496. if (today.getDay() == 0) { day = "Sunday"; }
  497. var img = null;
  498. if (document.images) {
  499.     if (!IsIE()) img = CSFindElement(action[1],0);
  500.     else img = document.images[action[1]];
  501.         if (img) {
  502.             if (day == "Monday" && action[2] != "(Empty Reference!)") img.src = action[2]
  503.             if (day == "Tuesday" && action[3] != "(Empty Reference!)") img.src = action[3]
  504.             if (day == "Wednesday" && action[4] != "(Empty Reference!)") img.src = action[4]
  505.             if (day == "Thursday" && action[5] != "(Empty Reference!)") img.src = action[5]
  506.             if (day == "Friday" && action[6] != "(Empty Reference!)") img.src = action[6]
  507.             if (day == "Saturday" && action[7] != "(Empty Reference!)") img.src = action[7]
  508.             if (day == "Sunday" && action[8] != "(Empty Reference!)") img.src = action[8]
  509.         }  
  510. }  
  511. }
  512. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  513.  
  514. function initArray() {
  515. this.length = initArray.arguments.length;
  516. for (var i = 0; i < this.length; i++)
  517. this[i+1] = initArray.arguments[i]; 
  518. }
  519.  
  520. function dailyRedirect(action) {
  521. var dateArray = new
  522. initArray("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");
  523. var today = new Date();
  524. var day = dateArray[today.getDay()];
  525. if (today.getDay() == 0) { day = "Sunday"; }
  526. if (day == "Monday" && action[1] != "(Empty Reference!)") window.location = action[1]
  527. if (day == "Tuesday" && action[2] != "(Empty Reference!)") window.location = action[2]
  528. if (day == "Wednesday" && action[3] != "(Empty Reference!)") window.location = action[3]
  529. if (day == "Thursday" && action[4] != "(Empty Reference!)") window.location = action[4]
  530. if (day == "Friday" && action[5] != "(Empty Reference!)") window.location = action[5]
  531. if (day == "Saturday" && action[6] != "(Empty Reference!)") window.location = action[6]
  532. if (day == "Sunday" && action[7] != "(Empty Reference!)") window.location = action[7]
  533. }
  534. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  535.  
  536. function CSDeleteCookie(action) 
  537. {
  538. var name=action[1]
  539. var value=action[2]
  540. var jours=-12000
  541. path="/"
  542. domain=null
  543. var expdate = new Date ();
  544. expdate.setTime (expdate.getTime() + (jours * 60 * 60 * 1000));
  545. SetCookie(name,value,expdate)
  546. }
  547.  
  548. function SetCookie (name, value) {
  549.   var argv = SetCookie.arguments;
  550.   var argc = SetCookie.arguments.length;
  551.   var expires = (argc > 2) ? argv[2] : null;
  552.   var secure = (argc > 5) ? argv[5] : false;
  553.   document.cookie = name + "=" + escape (value) +
  554.     ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
  555.     ((path == null) ? "" : ("; path=" + path)) +
  556.     ((domain == null) ? "" : ("; domain=" + domain)) +
  557.     ((secure == true) ? "; secure" : "");
  558. }
  559. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  560.  
  561.         function frameP(action) {
  562.             if(parent.frames.length==0) {
  563.                 var fileName=window.location.href.substring(window.location.href.lastIndexOf("/")+1,window.location.href.length);
  564.                 window.location.href=action[1]+"?"+action[2]+"="+fileName;
  565.             } else {
  566.                 if(top.location.search!="") {
  567.                     var sFrame=top.location.search.substring(1,top.location.search.indexOf("="));
  568.  
  569.                     if(name==sFrame) {
  570.                         var sName=top.location.search.substring(top.location.search.indexOf("=")+1,top.location.search.length);
  571.                         var fileName=window.location.href.substring(window.location.href.lastIndexOf("/")+1,window.location.href.length);
  572.                         if(fileName!=sName) {
  573.                             location=sName;
  574.                         }
  575.                     }
  576.                 }
  577.             }
  578.         }
  579. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  580.  
  581.  
  582. function CSPAKkillframe() { 
  583.  
  584. if (self.parent.frames.length != 0)
  585. self.parent.location = document.location
  586.  
  587. }
  588. // ⌐ 1999, Adobe Systems Incorporated. All rights reserved.
  589. var actn1 = "";
  590. var actn2 = "";
  591. var pass=""
  592. var z=23;
  593. var y=28;
  594. iCounter = 3;
  595. if (Array) {
  596.     var f= new Array();
  597.     var K= new Array();
  598.     var base= new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z","a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z")
  599. function inc(){
  600. iCounter--
  601. if (iCounter > 0)
  602.     {
  603.     if (confirm("\nPassword is incorrect.\n\n\n\nRetry?"))
  604.         Check()
  605.     } 
  606.     else
  607.         alert('Access Denied');
  608. function Check(){
  609. pass = prompt("Enter your password.","")
  610. if(pass==null || pass==""){
  611.     alert("You did not enter a password!");
  612.     if(pass==""){
  613.         Check()
  614.     } 
  615. else{
  616.     var lpass=(pass.length)+1
  617.     for (l=1; l<lpass; l++){
  618.         K[l]=pass.charAt(l)
  619.     } 
  620.     var transmit=0;
  621.     for (y=1; y<lpass; y++){
  622.         for(x=0; x<62; x++){
  623.             if (K[y]==base[x]){
  624.                 transmit+=f[x]
  625.                 transmit*=y
  626.             } 
  627.         } 
  628.     } 
  629.     if (transmit==parseInt(actn1))     
  630.         go()
  631.     else
  632.         inc()
  633. function go(){
  634. alert(actn2);
  635. location.href=pass+".html";
  636. function PVpassword(action) { 
  637. if (Array) { 
  638.     actn1 = action[1];
  639.     actn2 = action[2];
  640.     z=23;
  641.     y=28;
  642.     for (x=0; x<10; x++){
  643.         f[x]=x<<9
  644.         f[x]+=23
  645.     } 
  646.     for (x=10; x<36; x++){
  647.         y=y<<1
  648.         v= Math.sqrt(y)
  649.         v = parseInt(v,16)
  650.         v+=5
  651.         f[x]=v
  652.         y++
  653.     } 
  654.     for (x=36; x<62; x++){
  655.         z=z<<1
  656.         v= Math.sqrt(z)
  657.         v = parseInt(v,16)
  658.         v+=74
  659.         f[x]=v
  660.         z++
  661.     } 
  662.     iCounter = 3;
  663.     Check();
  664. }
  665. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  666.  
  667. SSnumimg=1; SSsens2=-1;SSsens3=-1
  668. function CSSlideShow(action) 
  669. {
  670. SSmax=action[2]
  671. SSimgNom=action[1]
  672. SSloop=action[4]
  673. SSsens=action[3] 
  674. SSpalin=action[5]
  675. var SSimg = null;
  676.     if (document.images) {
  677.         if (!IsIE()) SSimg = CSFindElement(SSimgNom,0);
  678.         else SSimg = document.images[SSimgNom];
  679. SSstr=SSimg.src
  680. SSn=SSstr.length
  681. SSp=SSn-6
  682. SSpstr=SSstr.substring(0,SSp)
  683. SSnimg=SSstr.substring(SSp,SSp+2)
  684. SSformat=SSstr.substring(SSp+2,SSn)
  685. if (SSformat==".jpg" || SSformat==".JPG" || SSformat==".gif" || SSformat==".GIF")
  686. {}
  687. else
  688. {
  689.  alert("Image extension must be .jpg or .gif (case sensitive). Images must be numbered 01, 02 ...")
  690. }
  691. slide(SSmax,SSformat,SSpstr,SSnimg,SSimgNom,SSloop,SSpalin)
  692. }
  693. }
  694. function slide(SSmax,SSformat,SSpstr,SSnimg,SSimgNom,SSloop,SSpalin)
  695. {
  696. if (SSsens2==true) {SSsens=true}
  697. if (SSsens2==false) {SSsens=false}
  698. if (SSsens==true) 
  699. {
  700. SSsuite=SSnumimg-1
  701.     if (SSnumimg>SSmax)SSsuite=SSmax
  702.     if (SSnumimg<=1 & SSloop==true & SSpalin!=true) { SSsuite=SSmax }
  703.     if (SSnumimg<=1 & SSloop==true & SSpalin==true) { 
  704.         if (SSsens2==-1 & SSsens3==-1) {SSsuite=SSmax;SSsens3=1} else { SSsuite=SSnumimg+1; SSsens2=false }}
  705.     if (SSnumimg<=1 & SSloop!=true & SSpalin!=true) {
  706.         if  (SSsens2==-1 & SSsens3==-1) { SSsuite=SSmax;SSsens3=1 } else {SSsuite=SSnumimg; SSfini()}}
  707. }
  708. else
  709. {
  710. SSmax=SSmax-1
  711. SSsuite=SSnumimg+1
  712.     if (SSnumimg>SSmax & SSloop==true & SSpalin!=true) { SSsuite=1}
  713.     if (SSnumimg>SSmax & SSloop==true & SSpalin==true) {SSsuite=SSnumimg-1; SSsens2=true }
  714.     if (SSnumimg>SSmax & SSloop!=true &  SSpalin!=true) { SSsuite=SSnumimg;SSfini() }
  715.     if (SSnumimg<1) SSsuite=1
  716. }
  717. SSnumimg=SSsuite
  718. if (SSsuite<10) {
  719.     SSaller="0"+SSsuite
  720.     }
  721.     else SSaller=SSsuite
  722. SSsource=SSpstr+SSaller+SSformat
  723. var SSimg = null;
  724.     if (document.images) {
  725.         if (!IsIE()) SSimg = CSFindElement(SSimgNom,0);
  726.         else SSimg = document.images[SSimgNom];
  727.         if (SSimg) SSimg.src = SSsource;
  728.     }
  729. }
  730. function SSfini() {
  731. }
  732. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  733.  
  734. function CSSlideShowAuto(action) 
  735. {
  736. SSAfini=0
  737. SSAnumimg=0
  738. SSAmax=action[2]
  739. SSAimgNom=action[1]
  740. SSAtemps=action[3]*1000
  741. if (action[4]==true) 
  742.         {
  743.         SSAstop=true
  744.         }
  745.     else SSAstop=false
  746. var SSAimg = null;
  747.     if (document.images) {
  748.         if (!IsIE()) SSAimg = CSFindElement(SSAimgNom,0);
  749.         else SSAimg = document.images[SSAimgNom];
  750. str=SSAimg.src
  751. n=str.length
  752. p=n-6
  753. SSApstr=str.substring(0,p)
  754. SSAnimg=str.substring(p,p+2)
  755. SSAformat=str.substring(p+2,n)
  756. if (SSAformat==".jpg" || SSAformat==".JPG" || SSAformat==".gif" || SSAformat==".GIF")
  757. {}
  758. else
  759. {
  760.  alert("Image extension must be .jpg or .gif (case sensitive). Images must use 2 digit naming starting with 01, 02 ... plus extension")
  761. }
  762. if (SSAnimg.substring(0,1)=="0") 
  763. {
  764. SSAnumimg=Number(SSAnimg.substring(1,2))
  765. }
  766. else
  767. {SSAnumimg=Number(SSAnimg)}
  768.  
  769.  
  770. SSAtempo(SSAmax,SSAimgNom,SSAtemps,SSAstop,SSApstr,SSAnimg,SSAformat)
  771. }
  772. }
  773.  
  774. function SSAtempo(SSAmax,SSAimgNom,SSAtemps,SSAstop,SSApstr,SSAnimg,SSAformat)
  775. {
  776. setTimeout("slideAuto(SSAmax,SSAimgNom,SSAstop,SSApstr,SSAnimg,SSAformat)",SSAtemps)
  777. }
  778.  
  779.  
  780. function slideAuto(SSAmax,SSAimgNom,SSAstop,SSApstr,SSAnimg,SSAformat)
  781. {
  782. if (SSAfini==1) {
  783. SSAnumimg = SSAnumimg-2
  784. CSSlideShowAutoPause()
  785. }
  786. else 
  787. {
  788. SSAmax=SSAmax-1
  789. SSAsuite=SSAnumimg+1
  790.     if (SSAnumimg>SSAmax)
  791.         {
  792.         SSAsuite=1
  793.         if (SSAstop==true) SSAfini=1
  794.         else
  795.         SSAfini=0
  796.         }
  797.     if (SSAnumimg<1) SSAsuite=1
  798. SSAnumimg=SSAsuite
  799. if (SSAsuite<10) {
  800.     SSAaller="0"+SSAsuite
  801.     }
  802.     else SSAaller=SSAsuite
  803. SSAsource=SSApstr+SSAaller+SSAformat
  804. var SSAimg = null;
  805.     if (document.images) {
  806.         if (!IsIE()) SSAimg = CSFindElement(SSAimgNom,0);
  807.         else SSAimg = document.images[SSAimgNom];
  808.         if (SSAimg) SSAimg.src = SSAsource;
  809.     }
  810. SSAtempo(SSAmax,SSAimgNom,SSAtemps,SSAstop,SSApstr,SSAnimg,SSAformat)
  811. }
  812. }
  813.  
  814. function CSSlideShowAutoPause() 
  815. {}
  816. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  817.  
  818. function CSSlideShowAutoStop(action) 
  819. {
  820. if (SSAfini==0) SSAfini=1
  821. else SSAfini=0 ; SSAnumimg = SSAnumimg+2 ;  slideAuto(SSAmax,SSAimgNom,SSAstop,SSApstr,SSAnimg,SSAformat)
  822. }
  823. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  824.  
  825. function CSPAKtrg2frames(action) { 
  826.     parent.frames[action[1]].location.href = action[2]
  827.     parent.frames[action[3]].location.href = action[4]
  828.  }
  829. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  830.  
  831. function CSPakRemote(action) { 
  832.     if (TRversion()) {
  833.         if (action[2].length < 1) {
  834.             opener.location.href=action[1];
  835.         }
  836.         else {
  837.             opener.parent.frames[action[2]].location.href=action[1];
  838.         }
  839.     }
  840.     return;
  841. }
  842.  
  843. function TRversion() {
  844.     return (navigator.appName.indexOf("Netscape") >= 0 && parseInt(navigator.appVersion.charAt(0)) >= 3)
  845.           || (navigator.appName.indexOf("Explorer") >= 0 && parseInt(navigator.appVersion.charAt(0)) >= 3);
  846. }
  847. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  848.  
  849. function timeRedirect(action) {
  850. var now = new Date();
  851. var hours = now.getHours();
  852. var timeValue = action[1];
  853. if (timeValue >= 12) { timeValue = timeValue - 12; } // deals with 24-hour time
  854. if (action[2] == true) { timeValue += 12; } // deals with PM times
  855. if (hours < timeValue && action[4] != "(Empty Reference!)" && action[3] == true) {
  856. window.location = action[4]; }
  857. if (hours >= timeValue && action[6] != "(Empty Reference!)" && action[5] == true) {
  858. window.location = action[6]; }
  859. }
  860. // Script copyright 1999, Adobe Systems Incorporated. All rights reserved.
  861.  
  862. function CSVisitorCookie(action) 
  863. {
  864. resultat = "visitor"
  865. cookiename = action[1]
  866. goUrl = action[2]
  867. var arg = cookiename + "=";
  868.   var alen = arg.length;
  869.   var clen = document.cookie.length;
  870.   var i = 0;
  871.   while (i < clen) {
  872.     var j = i + alen;
  873.        if (document.cookie.substring(i, j) == arg)
  874.      return CSVisitorGetCookie (j);
  875.     i = document.cookie.indexOf(" ", i) + 1;
  876.     if (i == 0) break; 
  877.   }
  878.   VisitorSetCookie(cookiename)
  879.   return null; 
  880. }
  881. function CSVisitorGetCookie (offset) {
  882.   var endstr = document.cookie.indexOf (";", offset);
  883.   if (endstr == -1) 
  884.     endstr = document.cookie.length;
  885.   valeur=unescape(document.cookie.substring(offset, endstr))
  886.   if (valeur==resultat)
  887.   VisitorGotoLink(goUrl)
  888.   else
  889.   VisitorSetCookie(cookiename)
  890. }
  891.  
  892.  
  893. function VisitorGotoLink(goUrl) {
  894. location = goUrl
  895. }
  896.  
  897.  
  898.  
  899. function VisitorSetCookie(cookiename) 
  900. {
  901. var value="visitor"
  902. var jours=500*24
  903. path="/"
  904. domain=null
  905. var expdate = new Date ();
  906. expdate.setTime (expdate.getTime() + (jours * 60 * 60 * 1000));
  907. SetCookie(cookiename,value,expdate)
  908. }
  909.  
  910. function SetCookie (cookiename, value) {
  911.   var argv = SetCookie.arguments;
  912.   var argc = SetCookie.arguments.length;
  913.   var expires = (argc > 2) ? argv[2] : null;
  914.   var secure = (argc > 5) ? argv[5] : false;
  915.   document.cookie = cookiename + "=" + escape (value) +
  916.     ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
  917.     ((path == null) ? "" : ("; path=" + path)) +
  918.     ((domain == null) ? "" : ("; domain=" + domain)) +
  919.     ((secure == true) ? "; secure" : "");
  920. }
  921. function CSGetLayerPos(action) { 
  922.     var layer = action[1];
  923.     var x        = CSGetStylePos(layer, 0);
  924.     var y        = CSGetStylePos(layer, 1);
  925.     return new Array(x, y);
  926. }
  927. function CSGetFormElementValue(action) { 
  928.     var form = action[1];
  929.     var elem = action[2];
  930.     return document.forms[form].elements[elem].value;
  931. }
  932. CSImages=new Array();
  933. function CSPreloadImage(action) {
  934.     if (document.images) { CSImages[CSImages.length]=new Image(); CSImages[CSImages.length-1].src=action[1]; }
  935. }
  936. function CSRandomImg(action) { 
  937.     if (document.images) {
  938.         var img = null;
  939.         var whichone = Math.floor((Math.random() * 10)) % 3
  940.         if(!IsIE()) img = CSFindElement(action[1],0);
  941.         else img = document.images[action[1]];
  942.         img.src = action[whichone+2]
  943.     }
  944.  }
  945. function CSSetImageURL(action) {
  946.     var img = null;
  947.     if (document.images) {
  948.         if (!IsIE()) img = CSFindElement(action[1],0);
  949.         else img = document.images[action[1]];
  950.         if (img) img.src = action[2];
  951.     }
  952. }
  953. function CSGoBack1() { history.back() }
  954. function CSGotoLink(action) {
  955.     if (action[2].length) {
  956.         var hasFrame=false;
  957.         for(i=0;i<parent.frames.length;i++) { if (parent.frames[i].name==action[2]) { hasFrame=true; break;}}
  958.         if (hasFrame==true)
  959.             parent.frames[action[2]].location = action[1];
  960.         else
  961.             window.open (action[1],action[2],"");
  962.     }
  963.     else location = action[1];
  964. }
  965. function CSHistoryGo(action) { history.go(action[1]); }
  966. function CSOpenWindow(action) {
  967.     var wf = "";    
  968.     wf = wf + "width=" + action[3];
  969.     wf = wf + ",height=" + action[4];
  970.     wf = wf + ",resizable=" + (action[5] ? "yes" : "no");
  971.     wf = wf + ",scrollbars=" + (action[6] ? "yes" : "no");
  972.     wf = wf + ",menubar=" + (action[7] ? "yes" : "no");
  973.     wf = wf + ",toolbar=" + (action[8] ? "yes" : "no");
  974.     wf = wf + ",directories=" + (action[9] ? "yes" : "no");
  975.     wf = wf + ",location=" + (action[10] ? "yes" : "no");
  976.     wf = wf + ",status=" + (action[11] ? "yes" : "no");        
  977.     window.open(action[1],action[2],wf);
  978. }
  979. function CSDocWrite(action) { document.write(action[1]); }
  980. function CSOpenAlert(action) { alert(action[1]); }
  981. function CSSetStatus(action) { self.status = action[1]; }
  982. var gCSIEDragObject = null;
  983. function CSSetupDrag (layerName) {
  984.     this.x = 0; this.y = 0;
  985.     if (IsIE()) {
  986.         this.canDrag=true; 
  987.         this.layerObj=document.all.tags("div")[layerName];
  988.         this.layerObj.dragObj = this;
  989.         document.ondragstart = CSIEStartDrag;
  990.         document.onmousedown = CSIEMouseDown;
  991.         document.onmouseup = CSIEStopDrag;
  992.     } else {
  993.         this.layer=CSNSStyl(layerName);this.onmousemove=null; 
  994.         this.layer.document.theLayer=this;
  995.         this.layer.document.captureEvents(Event.MOUSEDOWN);
  996.         this.layer.document.onmousedown=CSNSStartDrag; 
  997.         this.layer.document.onmouseup=CSNSStopDrag;
  998.     }
  999. }
  1000. function CSNSStartDrag (ev) {
  1001.     var clickInMe = false;
  1002.     if (ev.target != this) {
  1003.         for (var i=0;i<this.images.length;i++) {
  1004.             if (this.images[i] == ev.target) { clickInMe = true; break;}
  1005.             }
  1006.         }
  1007.     else clickInMe = true;    
  1008.     if (clickInMe)
  1009.         {
  1010.         this.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP); 
  1011.         this.onmousemove=CSNSDoDrag;
  1012.         this.theLayer.x= ev.pageX;
  1013.         this.theLayer.y= ev.pageY;
  1014.         this.routeEvent(ev);
  1015.         return false;
  1016.         }
  1017.    this.onmousemove=null;this.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);
  1018.     this.routeEvent(ev);
  1019.    return true; 
  1020. }
  1021. function CSNSStopDrag (ev) {
  1022.    this.onmousemove=null;this.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);return false; 
  1023. }
  1024. function CSNSDoDrag (ev) {
  1025.     this.theLayer.layer.moveBy(ev.pageX-this.theLayer.x, ev.pageY-this.theLayer.y); 
  1026.     this.theLayer.x = ev.pageX; 
  1027.     this.theLayer.y = ev.pageY;
  1028.     this.routeEvent(ev);
  1029. }
  1030. function CSIEStartDrag () {
  1031.     if(gCSIEDragObject != null && (gCSIEDragObject.tagName==event.srcElement.tagName))
  1032.         event.returnValue=false;  
  1033. }
  1034. function CSIEStopDrag () { gCSIEDragObject=null; document.onmousemove=null; }
  1035. function CSIEMouseDown () {
  1036.     if(event.button==1) {
  1037.         dragLayer = event.srcElement;
  1038.         while (dragLayer!=null) 
  1039.             {
  1040.             if ((dragLayer.dragObj == null) && (dragLayer.tagName == "DIV"))
  1041.                 break;
  1042.             if (dragLayer.dragObj != null)
  1043.                 break;
  1044.             dragLayer=dragLayer.parentElement;
  1045.             }
  1046.             
  1047.         if (dragLayer == null) return;
  1048.         if (dragLayer.dragObj!=null && dragLayer.dragObj.canDrag) {
  1049.             gCSIEDragObject = dragLayer;
  1050.             gCSIEDragObject.dragObj.x=event.clientX;
  1051.             gCSIEDragObject.dragObj.y=event.clientY;
  1052.             document.onmousemove = CSIEMouseMove;
  1053.         }
  1054.     }
  1055. }
  1056. function CSIEMouseMove () {
  1057.     gCSIEDragObject.dragObj.layerObj.style.pixelLeft+=(event.clientX-gCSIEDragObject.dragObj.x);
  1058.     gCSIEDragObject.dragObj.layerObj.style.pixelTop+=(event.clientY-gCSIEDragObject.dragObj.y);
  1059.     gCSIEDragObject.dragObj.x=event.clientX;
  1060.     gCSIEDragObject.dragObj.y=event.clientY;
  1061.     event.returnValue = false;
  1062.     event.cancelBubble = true;
  1063. }
  1064. var gDragArray = new Array();
  1065. function CSDrag(action) { gDragArray[gDragArray.length] = new CSSetupDrag(action[1]); }
  1066. function CSFlipMove(action) {
  1067.     if (action[1] == '') return;
  1068.     var curX = CSGetStylePos(action[1],0); var curY = CSGetStylePos(action[1],1);
  1069.     var x1 = action[2][0];
  1070.     var y1 = action[2][1];
  1071.     if ((x1 != curX) || (y1 != curY)) CSSlideLayer(action[1],action[2],action[4],action[5]);
  1072.     else CSSlideLayer(action[1],action[3],action[4],action[5]);
  1073. }
  1074. function CSMoveBy(action)
  1075. {
  1076.     x = CSGetStylePos(action[1], 0);
  1077.     y = CSGetStylePos(action[1], 1);
  1078.     x += parseInt(action[2]);
  1079.     y += parseInt(action[3]);
  1080.     x = CSSetStylePos(action[1], 0, x);
  1081.     y = CSSetStylePos(action[1], 1, y);
  1082. }
  1083. function CSMoveTo(action) { CSSlideLayer(action[1],action[2],action[3],action[4]); }
  1084. function CSPlayScene(action) { CSStartSeq (action[1]); }
  1085. var CSLastSound = null
  1086. function CSPlaySound(action) {
  1087.     if (eval('document.'+action[1])!=null) {
  1088.         if (CSLastSound != null && CSLastSound != action[1]) eval ('document.' + CSLastSound + '.stop()');
  1089.         CSLastSound = action[1]
  1090.         if (window.navigator.userAgent.indexOf("MSIE") > 0) eval ('document.' + CSLastSound + '.run()');
  1091.         else eval ('document.' + CSLastSound + '.play(true)');
  1092.     } else { alert ("The current Plug-In cannot be controlled by JavaScript. Please try using LiveAudio or a compatible Plug-In!"); }
  1093. }
  1094. function CSShowHide(action) {
  1095.     if (action[1] == '') return;
  1096.     var type=action[2];
  1097.     if(type==0) CSSetStyleVis(action[1],0);
  1098.     else if(type==1) CSSetStyleVis(action[1],1);
  1099.     else if(type==2) { 
  1100.         if (CSGetStyleVis(action[1]) == 0) CSSetStyleVis(action[1],1);
  1101.         else CSSetStyleVis(action[1],0);
  1102.     }
  1103. }
  1104. function CSStopAll(action) { CSStopComplete (); }
  1105. function CSStopScene(action) { CSStopFunction (action[1]); }
  1106. function CSStopSound (action) {if (eval('document.'+action[1])!=null) { eval ('document.' + action[1] + '.stop()');}}
  1107. function CSStartWipe (action)
  1108. {
  1109.     var el=CSCreateTransElement (action[1], action[2]);
  1110.     if (el==null) return;
  1111.     var dir=action[3];
  1112.     if (dir=="_inLeft") {el.steps=el.clipRect.width/el.maxValue; el.modus="in";}
  1113.     else if (dir=="_inRight") {el.steps=el.clipRect.width/el.maxValue; el.modus="in";}
  1114.     else if (dir=="_outLeft") {el.steps=el.clipRect.width/el.maxValue; el.modus="out";}
  1115.     else if (dir=="_outRight") {el.steps=el.clipRect.width/el.maxValue; el.modus="out";}
  1116.     else if (dir=="_inTop") {el.steps=el.clipRect.height/el.maxValue; el.modus="in";}
  1117.     else if (dir=="_inBottom") {el.steps=el.clipRect.height/el.maxValue; el.modus="in";}
  1118.     else if (dir=="_outTop") {el.steps=el.clipRect.height/el.maxValue; el.modus="out";}
  1119.     else if (dir=="_outBottom") {el.steps=el.clipRect.height/el.maxValue; el.modus="out";}
  1120.     else if (dir=="_inCenter") {el.HSteps=el.clipRect.width/el.maxValue; el.VSteps=el.clipRect.height/el.maxValue; el.modus="in";}
  1121.     else if (dir=="_outCenter") {el.HSteps=el.clipRect.width/el.maxValue; el.VSteps=el.clipRect.height/el.maxValue; el.modus="out";}
  1122.     if (el.modus=="") return;
  1123.     el.currentValue=0;
  1124.     el.glDir=action[3];
  1125.     CSStartFunction(CSDoWipe,el);
  1126. }
  1127. function CSDoWipe (info)
  1128. {
  1129.     var el = info.data;
  1130.     if (el==null) return false;
  1131.     if (el.currentValue==el.maxValue) { CSFinishWipe(el); return false; }
  1132.     var r = new CSRect(el.clipRect.left,el.clipRect.top,el.clipRect.width,el.clipRect.height);
  1133.     var dir=el.glDir;
  1134.     if (dir=="_inLeft") {r.left=r.width-el.currentValue*el.steps;}
  1135.     else if (dir=="_inTop") {r.top=r.height-el.currentValue*el.steps;}
  1136.     else if (dir=="_inRight") {r.width=el.currentValue*el.steps;}
  1137.     else if (dir=="_inBottom") {r.height=el.currentValue*el.steps;}
  1138.     else if (dir=="_outLeft") {r.width=r.width-el.currentValue*el.steps;}
  1139.     else if (dir=="_outTop") {r.height=r.height-el.currentValue*el.steps;}
  1140.     else if (dir=="_outRight") {r.left=el.currentValue*el.steps;}
  1141.     else if (dir=="_outBottom") {r.top=el.currentValue*el.steps;}
  1142.     else if (dir=="_inCenter") {r=CSCenterRectIn(el,r);}
  1143.     else if (dir=="_outCenter") {r=CSCenterRectOut(el,r);}
  1144.     CSSetLayerClip(el,r);
  1145.     el.currentValue+=1;
  1146.     return true;
  1147. }
  1148. function CSFinishWipe (el)
  1149. {
  1150.     if (el.modus=="in") CSSetLayerClip(el,el.clipRect);
  1151.     else { 
  1152.         el.clipRect=new CSRect(0,0,el.width,el.height); 
  1153.         CSSetLayerClip(el,el.clipRect); 
  1154.         CSSetStyleVis(el.layer,0);
  1155.     }
  1156.     CSDisposeTransElement(el);
  1157. }
  1158. function CSCenterRectIn(el,r)
  1159. {
  1160.     var hValue= el.currentValue*el.HSteps/2;
  1161.     var vValue= el.currentValue*el.VSteps/2;
  1162.     r.left=Math.round(r.left+r.width/2-hValue); 
  1163.     r.top=Math.round(r.top+r.height/2-vValue); 
  1164.     r.width=Math.round(hValue*2);
  1165.     r.height=Math.round(vValue*2);
  1166.     return r;
  1167. }
  1168. function CSCenterRectOut(el,r)
  1169. {
  1170.     var hValue= el.currentValue*el.HSteps/2;
  1171.     var vValue= el.currentValue*el.VSteps/2;
  1172.     r.left+=Math.round(hValue); 
  1173.     r.top+=Math.round(vValue); 
  1174.     r.width-=Math.round(hValue*2);
  1175.     r.height-=Math.round(vValue*2);
  1176.     return r;
  1177. }
  1178. function CSFixFct() {
  1179.     var d = document; var w = window;
  1180.     if (d.cs.csFix.w != w.innerWidth || d.cs.csFix.h != w.innerHeight) {
  1181.         d.location = d.location; }
  1182. }
  1183. function CSNSFix(action) { 
  1184.     var d = document; var w = window;
  1185.     if ((navigator.appName == 'Netscape') && (parseInt(navigator.appVersion) == 4)) {
  1186.         if (typeof d.cs == 'undefined') { 
  1187.             d.cs = new Object;
  1188.             d.cs.csFix = new Object; 
  1189.         } else if (CSIsFrame (w) == true) CSFixFct();
  1190.         d.cs.csFix.w = w.innerWidth;
  1191.         d.cs.csFix.h = w.innerHeight; 
  1192.         window.onresize = CSFixFct;
  1193.       }
  1194. }
  1195. function CSIsFrame (window) {
  1196.     var rootWindow = window.parent;
  1197.     if (rootWindow == 'undefined') return false;
  1198.     for (i = 0; i < rootWindow.frames.length; i++)
  1199.         if (window == rootWindow.frames[i]) return true;
  1200.     return false;
  1201. }
  1202. function CSResizeWindow(action) { 
  1203.     if(navigator.appVersion.charAt(0) >=4) { window.resizeTo (action[1],action[2]) }
  1204. }
  1205. function CSScrollDown(action){
  1206.     if(navigator.appVersion.charAt(0) >=4) {
  1207.         var container = 0    
  1208.         if (action[2] > 0)        {
  1209.             while (container < action[1]) {
  1210.                    window.scrollBy(0,action[2]);
  1211.                    container = container + action[2];  
  1212.             }     
  1213.           }
  1214.     }
  1215. }
  1216. function CSScrollLeft(action){
  1217.     if(navigator.appVersion.charAt(0) >=4) {
  1218.         var container = 0    
  1219.         if (action[2] > 0)        {
  1220.             while (container < action[1]) {
  1221.                    window.scrollBy(-action[2],0);
  1222.                    container = container + action[2];  
  1223.             }     
  1224.           }
  1225.     }
  1226. }
  1227. function CSScrollRight(action){
  1228.     if(navigator.appVersion.charAt(0) >=4) {
  1229.         var container = 0    
  1230.         if (action[2] > 0)        {
  1231.             while (container < action[1]) {
  1232.                    window.scrollBy(action[2],0);
  1233.                    container = container + action[2];  
  1234.             }     
  1235.           }
  1236.     }
  1237. }
  1238. function CSScrollUp(action){
  1239.     if(navigator.appVersion.charAt(0) >=4) {
  1240.         var container = 0    
  1241.         if (action[2] > 0)        {
  1242.             while (container < action[1]) {
  1243.                    window.scrollBy(0,-action[2]);
  1244.                    container = container + action[2];  
  1245.             }     
  1246.           }
  1247.     }
  1248. }
  1249. function CSSetBackColor(action) { document.bgColor = action[1]; }
  1250. function CSActionGroup (action) {
  1251.     for(var i=1;i<action.length;i++) { CSAction(new Array(action[i])); }
  1252. }
  1253. function CSCallAction(action)
  1254. {
  1255.     CSAction(new Array(action[1]));
  1256. }
  1257. function CSCallFunction(action)
  1258. {
  1259.     var str = action[1];
  1260.     str += "(";
  1261.     str += action[2];
  1262.     str += ");"
  1263.  
  1264.     return eval(str);
  1265. }
  1266. function CSConditionAction(action) {
  1267.     if (action[1]) {
  1268.         if (CSAction(new Array(action[1])) == true) {
  1269.             if (action[2]) CSAction(new Array(action[2]));
  1270.         } else if (action[3]) CSAction(new Array(action[3]));
  1271.     }
  1272. }
  1273. function CSIdleObject (action) {
  1274.     this.conditionAction = action[2];
  1275.     this.trueAction = action[3];
  1276.     this.falseAction = action[4];
  1277.     this.exitIdleIfTrue = action[1];
  1278.     this.lastState = false;
  1279. }
  1280. function CSIdleAction(action) {
  1281.     idleObj = new CSIdleObject (action);
  1282.     CSStartFunction (CSDoIdle,idleObj);
  1283. }
  1284. function CSDoIdle (param) {
  1285.     idleObject=param.data;
  1286.     if (idleObject.conditionAction) {
  1287.         gCurrentIdleObject = idleObject;
  1288.         var result = CSAction(new Array(idleObject.conditionAction));
  1289.         if (result == true && idleObject.lastState==false) {
  1290.             idleObject.lastState = result;
  1291.             if (idleObject.trueAction) {
  1292.                 CSAction(new Array(idleObject.trueAction));
  1293.                 if (idleObject.exitIdleIfTrue == true) return false;
  1294.             }
  1295.         } else if (result == false && idleObject.lastState == true) {
  1296.             idleObject.lastState = false;
  1297.             if (idleObject.falseAction) {
  1298.                 CSAction(new Array(idleObject.falseAction));
  1299.             }        
  1300.         }
  1301.     }
  1302.     return true;
  1303. }
  1304. function CSLayerIntersect (condition)
  1305. {
  1306.     var l1,t1,r1,b1,l2,t2,r2,b2;
  1307.     if (IsIE()) {
  1308.         var layer1=document.all.tags("div")[condition[1]];
  1309.         var layer2=document.all.tags("div")[condition[2]];
  1310.         l1=layer1.style.pixelLeft; t1=layer1.style.pixelTop; r1=layer1.offsetWidth+l1; b1=layer1.offsetHeight+t1;
  1311.         l2=layer2.style.pixelLeft; t2=layer2.style.pixelTop; r2=layer2.offsetWidth+l2; b2=layer2.offsetHeight+t2;    
  1312.     } else {
  1313.         var layer1=CSNSStyl(condition[1]);
  1314.         var layer2=CSNSStyl(condition[2]);
  1315.         l1=layer1.x; t1=layer1.y; r1=layer1.clip.width+l1; b1=layer1.clip.height+t1;
  1316.         l2=layer2.x; t2=layer2.y; r2=layer2.clip.width+l2; b2=layer2.clip.height+t2;
  1317.     }
  1318.     var w = (r1 < r2 ? r1 : r2) - (l1 > l2 ? l1 : l2)
  1319.     var h = (b1 < b2 ? b1 : b2) - (t1 > t2 ? t1 : t2)
  1320.     return ((w >= 0) && (h >= 0));
  1321. }
  1322. CSCurrentPressedKey = -1;
  1323. function CSKeyPress(ev) {
  1324.     var code;
  1325.     if(IsIE()) CSCurrentPressedKey = event.keyCode;
  1326.     else CSCurrentPressedKey = ev.which;
  1327. }
  1328. document.onkeypress    = CSKeyPress;
  1329.  
  1330. function CSKeyCompare(condition)
  1331. {
  1332.     var eq = (condition[1] == CSCurrentPressedKey);
  1333.     if(eq)
  1334.         CSCurrentPressedKey = -1;
  1335.     return eq;
  1336. }
  1337. function CSTimeout (condition) {
  1338.     var result = false;
  1339.     if (typeof (gCurrentIdleObject) == "undefined")    return result;
  1340.     if (gCurrentIdleObject.lastTime) {
  1341.         var t=new Date();
  1342.         if (t.getTime() >= gCurrentIdleObject.lastTime) { 
  1343.             if (t.getTime() >= gCurrentIdleObject.nextTime) { 
  1344.                 gCurrentIdleObject.lastTime = t.getTime() + condition[1]*1000;
  1345.                 gCurrentIdleObject.nextTime = gCurrentIdleObject.lastTime + condition[1]*1000;
  1346.                 return false;
  1347.             }
  1348.             return true;
  1349.         }
  1350.     } else { 
  1351.         var t=new Date();
  1352.         gCurrentIdleObject.lastTime = t.getTime() + condition[1]*1000;
  1353.         gCurrentIdleObject.nextTime = gCurrentIdleObject.lastTime + condition[1]*1000;
  1354.     }
  1355.     return result;
  1356. }// EOF