home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 December / PCWorld_2007-12_cd.bin / akce / website / wsx5_ev_trial_en.exe / RESFiles.001 / x5engine.js < prev   
Text File  |  2007-03-09  |  24KB  |  624 lines

  1. // Incomedia WebSite X5 2007. All rights reserved.
  2. var imBrw_op=window.opera;
  3. var imBrw_ie=document.all && !imBrw_op;
  4. var imBrw_ns=document.getElementById && !imBrw_ie;
  5. var imEffectEnabled = /MSIE [678]/.test(navigator.userAgent) && navigator.platform == "Win32";
  6. var imHoverToEnable = /MSIE (5\.5)|[6]/.test(navigator.userAgent) && navigator.platform == "Win32";
  7. var mbTipOk = false;
  8. function imGetLayer(sName) {return document.all?document.all[sName]:document.getElementById?document.getElementById(sName) : "";}
  9. function imIEBody(){return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body}
  10. function imOpenLocation(sNewLocation){
  11. document.location = sNewLocation;
  12. }
  13. function imGetParameter(sParamName) {
  14. var sQueryString = "";
  15. var iStart = 0;
  16. var iEnd = 0;
  17. if (window.top.location.search != 0)
  18. sQueryString = unescape(window.top.location.search);
  19. sParamName = sParamName + "=";
  20. if (sQueryString.length > 0) {
  21. iStart = sQueryString.indexOf(sParamName);
  22. if ( iStart != -1 ) {
  23. iStart += sParamName.length;
  24. iEnd = sQueryString.indexOf("&",iStart);
  25. if (iEnd == -1)
  26. iEnd = sQueryString.length;
  27. return sQueryString.substring(iStart,iEnd);
  28. }
  29. return null;
  30. }
  31. }
  32. document.onmouseover=imTipMove;
  33. function imTipShow(oLink,sTitle,iWidth,sImage,sBackColor,sForeColor,sBorderdColor,iTextSize,bDoFade) {
  34. if (imBrw_ns||imBrw_ie){
  35. var oTip=imGetLayer("imToolTip");
  36. oLink.title = '';
  37. if (sImage != "") sImage = "<img src=\"" + sImage + "\" /><br />";
  38. sStyle = (sImage == "") ? "text-align: left; white-space: nowrap;": "text-align: center; width: "+iWidth+"px;";
  39. oTip.innerHTML = "<div><div style=\"padding: 3px; background-color: " +sBackColor+ "; color: " +sForeColor+ "; border: 1px solid " +sBorderdColor+"; font: "+(iTextSize*2+6)+"pt Tahoma, Arial; "+sStyle+"\">" + sImage + sTitle +"</div></div>";
  40. mbTipOk=true;
  41. if (imBrw_ie || imBrw_ns || imBrw_op) {
  42. iFadeStep=0;
  43. if (bDoFade) imTipDoFade();
  44. }
  45. }
  46. return false;
  47. }
  48. function imTipHide(){
  49. if (imBrw_ns||imBrw_ie){
  50. var oTip=imGetLayer("imToolTip");
  51. mbTipOk=false;
  52. oTip.style.visibility='hidden';
  53. oTip.style.left='-1000px';
  54. }
  55. }
  56. function imTipMove(e){
  57. if (mbTipOk) {
  58. var oTip=imGetLayer("imToolTip");
  59. var offsetxpoint=-60;
  60. var offsetypoint=20;
  61. var curX=(imBrw_ns)? e.pageX : event.clientX + imIEBody().scrollLeft;
  62. var curY=(imBrw_ns)? e.pageY : event.clientY + imIEBody().scrollTop;
  63. var rightedge=imBrw_ie&&!imBrw_op? imIEBody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20;
  64. var bottomedge=imBrw_ie&&!imBrw_op? imIEBody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20;
  65. var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000;
  66. if (rightedge<oTip.offsetWidth)
  67. oTip.style.left=imBrw_ie? imIEBody().scrollLeft+event.clientX-oTip.offsetWidth+"px" : window.pageXOffset+e.clientX-oTip.offsetWidth+"px";
  68. else if (curX<leftedge)
  69. oTip.style.left="5px";
  70. else
  71. oTip.style.left=curX+offsetxpoint+"px";
  72. if (bottomedge<oTip.offsetHeight)
  73. oTip.style.top=imBrw_ie? imIEBody().scrollTop+event.clientY-oTip.offsetHeight-offsetypoint+"px" : window.pageYOffset+e.clientY-oTip.offsetHeight-offsetypoint+"px";
  74. else
  75. oTip.style.top=curY+offsetypoint+"px";
  76. oTip.style.visibility="visible";
  77. }
  78. }
  79. function imTipDoFade(){
  80. if (iFadeStep<=100){
  81. var oTip=imGetLayer("imToolTip");
  82. iFadeStep+=15;
  83. if(imBrw_ie)
  84. oTip.style.filter = "alpha(opacity=" + iFadeStep + ")";
  85. else
  86. oTip.style.opacity = iFadeStep/100;
  87. oTime=setTimeout('imTipDoFade()', 50);
  88. }
  89. }
  90. function imOnload() {
  91. if (document.getElementById("imMnMn") != null) {
  92. if (document.getElementsByTagName) {
  93. if (imHoverToEnable) {
  94. var oList = document.getElementById("imMnMn").getElementsByTagName("LI");
  95. for (var i=0; i<oList.length; i++) {
  96. oList[i].onmouseover=function() {this.className+=" iehover";}
  97. oList[i].onmouseout=function() {this.className=this.className.replace(new RegExp(" iehover\\b"), "");}
  98. }
  99. }
  100. }
  101. }
  102. }
  103. if (window.attachEvent) window.attachEvent("onload", imOnload);
  104. function imPreloadImages(sImgNames) {
  105. sNames = sImgNames.split(",");
  106. for(iList = 0 ; iList < sNames.length ; iList++) {
  107. var oImg = new Image();
  108. oImg.src = sNames[iList];
  109. }
  110. }
  111. function imFormatInt(i) {
  112. if (i<10) i='0'+i;
  113. return i;
  114. }
  115. function imShowHour() {
  116. var now=new Date();
  117. imGetLayer("imHour").innerHTML = now.getHours()+':'+imFormatInt(now.getMinutes())+':'+imFormatInt(now.getSeconds())+' ';
  118. setTimeout(imShowHour,1000);
  119. }
  120. function imShowDate(sDay,sMonth,iMode) {
  121. var now=new Date();
  122. if (iMode == 0)
  123. document.write(sDay.substr(now.getDay()*3,3)+' '+now.getDate()+' '+sMonth.substr(now.getMonth()*3,3)+', '+now.getFullYear());
  124. else
  125. document.write(sDay.substr(now.getDay()*3,3)+', '+sMonth.substr(now.getMonth()*3,3)+' '+now.getDate()+' '+now.getFullYear());
  126. }
  127. function imPopUpWin(sUrl,w,h,cb,sb){
  128. if (cb=='yes')
  129. sProp='';
  130. else {
  131. if ((w==-1) || (h==-1)) {
  132. sProp= 'width='+screen.width+',height='+screen.height+',top=0,left=0,scrollbars=no,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
  133. } else {
  134. l=(screen.width)?(screen.width-w)/2:100;
  135. t=(screen.height)?(screen.height-h)/2:100;
  136. sProp='width='+ w +',height='+ h +',top='+ t +',left='+ l +',scrollbars='+ sb +',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
  137. }
  138. }
  139. oWin=window.open(sUrl,'',sProp);
  140. oWin.focus();
  141. }
  142. var msSSTrans = new Array(50);
  143. msSSTrans[0] = "BasicImage(grayscale=0, xray=0, mirror=0, invert=0, opacity=1, rotation=0)";
  144. msSSTrans[1] = "rnd";
  145. msSSTrans[2] = "Barn(motion='out',orientation='vertical')";
  146. msSSTrans[3] = "Barn(motion='out',orientation='horizontal')";
  147. msSSTrans[4] = "Barn(motion='in',orientation='vertical')";
  148. msSSTrans[5] = "Barn(motion='in',orientation='horizontal')";
  149. msSSTrans[6] = "Blinds(Bands=2,direction='up')";
  150. msSSTrans[7] = "Blinds(Bands=2,direction='down')";
  151. msSSTrans[8] = "Blinds(Bands=2,direction='left')";
  152. msSSTrans[9] = "Blinds(Bands=2,direction='right')";
  153. msSSTrans[10] = "Blinds(Bands=15,direction='up')";
  154. msSSTrans[11] = "Blinds(Bands=15,direction='down')";
  155. msSSTrans[12] = "Blinds(Bands=15,direction='left')";
  156. msSSTrans[13] = "Blinds(Bands=15,direction='right')";
  157. msSSTrans[14] = "Checkerboard(Direction='up',SquaresX=4,SquaresY=4)";
  158. msSSTrans[15] = "Checkerboard(Direction='down',SquaresX=4,SquaresY=4)";
  159. msSSTrans[16] = "Checkerboard(Direction='left',SquaresX=4,SquaresY=4)";
  160. msSSTrans[17] = "Checkerboard(Direction='right',SquaresX=4,SquaresY=4)";
  161. msSSTrans[18] = "Checkerboard(Direction='up',SquaresX=50,SquaresY=12)";
  162. msSSTrans[19] = "Checkerboard(Direction='down',SquaresX=50,SquaresY=12)";
  163. msSSTrans[20] = "Checkerboard(Direction='left',SquaresX=50,SquaresY=12)";
  164. msSSTrans[21] = "Checkerboard(Direction='right',SquaresX=50,SquaresY=12)";
  165. msSSTrans[22] = "Fade(Overlap=1.00)";
  166. msSSTrans[23] = "Fade(Overlap=0.00)";
  167. msSSTrans[24] = "GradientWipe(GradientSize=0.00,wipestyle=0,motion='forward')";
  168. msSSTrans[25] = "GradientWipe(GradientSize=0.00,wipestyle=0,motion='reverse')";
  169. msSSTrans[26] = "GradientWipe(GradientSize=0.00,wipestyle=1,motion='forward')";
  170. msSSTrans[27] = "GradientWipe(GradientSize=0.00,wipestyle=1,motion='reverse')";
  171. msSSTrans[28] = "GradientWipe(GradientSize=0.75,wipestyle=0,motion='forward')";
  172. msSSTrans[29] = "GradientWipe(GradientSize=0.75,wipestyle=0,motion='reverse')";
  173. msSSTrans[30] = "GradientWipe(GradientSize=0.75,wipestyle=1,motion='forward')";
  174. msSSTrans[31] = "GradientWipe(GradientSize=0.75,wipestyle=1,motion='reverse')";
  175. msSSTrans[32] = "Iris(irisstyle='PLUS',motion='out')";
  176. msSSTrans[33] = "Iris(irisstyle='PLUS',motion='in')";
  177. msSSTrans[34] = "Iris(irisstyle='DIAMOND',motion='out')";
  178. msSSTrans[35] = "Iris(irisstyle='DIAMOND',motion='in')";
  179. msSSTrans[36] = "Iris(irisstyle='CIRCLE',motion='out')";
  180. msSSTrans[37] = "Iris(irisstyle='CIRCLE',motion='in')";
  181. msSSTrans[38] = "Iris(irisstyle='CROSS',motion='out')";
  182. msSSTrans[39] = "Iris(irisstyle='CROSS',motion='in')";
  183. msSSTrans[40] = "Iris(irisstyle='SQUARE',motion='out')";
  184. msSSTrans[41] = "Iris(irisstyle='SQUARE',motion='in')";
  185. msSSTrans[42] = "Iris(irisstyle='STAR',motion='out')";
  186. msSSTrans[43] = "Iris(irisstyle='STAR',motion='in')";
  187. msSSTrans[44] = "RadialWipe(wipestyle='CLOCK')";
  188. msSSTrans[45] = "RadialWipe(wipestyle='WEDGE')";
  189. msSSTrans[46] = "RadialWipe(wipestyle='RADIAL')";
  190. msSSTrans[47] = "Wheel(spokes=2)";
  191. msSSTrans[48] = "Wheel(spokes=4)";
  192. msSSTrans[49] = "Wheel(spokes=10)";
  193. msSSTrans[50] = "RandomBars(orientation='horizontal')";
  194. msSSTrans[51] = "RandomBars(orientation='vertical')";
  195. msSSTrans[52] = "RandomDissolve(duration=1)";
  196. msSSTrans[53] = "Slide(slidestyle='HIDE',Bands=1)";
  197. msSSTrans[54] = "Slide(slidestyle='SWAP',Bands=1)";
  198. msSSTrans[55] = "Slide(slidestyle='PUSH',Bands=1)";
  199. msSSTrans[56] = "Slide(slidestyle='HIDE',Bands=2)";
  200. msSSTrans[57] = "Slide(slidestyle='SWAP',Bands=2)";
  201. msSSTrans[58] = "Slide(slidestyle='PUSH',Bands=2)";
  202. msSSTrans[59] = "Slide(slidestyle='HIDE',Bands=10)";
  203. msSSTrans[60] = "Slide(slidestyle='SWAP',Bands=10)";
  204. msSSTrans[61] = "Slide(slidestyle='PUSH',Bands=10)";
  205. msSSTrans[62] = "Spiral(GridSizeX=8,GridSizeY=8)";
  206. msSSTrans[63] = "Spiral(GridSizeX=16,GridSizeY=16)";
  207. msSSTrans[64] = "Zigzag(GridSizeX=6,GridSizeY=6)";
  208. msSSTrans[65] = "Zigzag(GridSizeX=12,GridSizeY=12)";
  209. msSSTrans[66] = "Stretch(stretchstyle='HIDE')";
  210. msSSTrans[67] = "Stretch(stretchstyle='PUSH')";
  211. msSSTrans[68] = "Stretch(stretchstyle='SPIN')";
  212. msSSTrans[69] = "Strips(motion='rightdown')";
  213. msSSTrans[70] = "Strips(motion='leftdown')";
  214. msSSTrans[71] = "Strips(motion='rightup')";
  215. msSSTrans[72] = "Strips(motion='leftup')";
  216. msSSTrans[73] = "Pixelate(MaxSquare=5)";
  217. msSSTrans[74] = "Pixelate(MaxSquare=50)";
  218. msSSTrans[75] = "Inset()";
  219. var msImgList = new Array();
  220. var miImgW = new Array();
  221. var miImgH = new Array();
  222. var miSSDelay = new Array();
  223. var miSSEffect = new Array();
  224. var msSSDescr = new Array();
  225. var msSSLink = new Array();
  226. var miSSCount = new Array();
  227. var moSSTime = new Array();
  228. function imSSLoad(iID,oImgData) {
  229. msImgList[iID] = new Array();
  230. miImgW[iID] = new Array();
  231. miImgH[iID] = new Array();
  232. miSSEffect[iID] = new Array();
  233. miSSDelay[iID] = new Array();
  234. msSSDescr[iID] = new Array();
  235. msSSLink[iID] = new Array();
  236. for(i=0;i<oImgData.length;i++){
  237. msImgList[iID][i+1] = "slideshow/"+oImgData[i][0];
  238. miImgW[iID][i+1] = oImgData[i][1];
  239. miImgH[iID][i+1] = oImgData[i][2];
  240. miSSDelay[iID][i+1] = oImgData[i][3]*1000;
  241. miSSEffect[iID][i+1] = oImgData[i][4];
  242. msSSDescr[iID][i+1] = oImgData[i][5];
  243. msSSLink[iID][i+1] = oImgData[i][6];
  244. }
  245. if(!miSSCount[iID]) miSSCount[iID]=1;
  246. }
  247. function imDoTrans(iID,iStep) {
  248. iLast = msImgList[iID].length-1;
  249. miSSCount[iID]=(miSSCount[iID]+iStep);
  250. if (miSSCount[iID] == iLast + 1) miSSCount[iID] = 1;
  251. if (miSSCount[iID] == 0) miSSCount[iID] = iLast;
  252. var div_Descr=imGetLayer("imSSDescr_"+iID);
  253. var div_Main=imGetLayer("imSSBackg_"+iID);
  254. var div_Image=imGetLayer("imSSImage_"+iID);
  255. if (imEffectEnabled) {
  256. if (miSSEffect[iID][miSSCount[iID]] == 1)
  257. iSSEffectType = Math.floor(Math.random()*73) + 2;
  258. else
  259. iSSEffectType = miSSEffect[iID][miSSCount[iID]];
  260. div_Main.style.filter="progid:DXImageTransform.Microsoft."+msSSTrans[iSSEffectType];
  261. div_Main.filters.item(0).Apply();
  262. }
  263. div_Descr.innerHTML=msSSDescr[iID][miSSCount[iID]];
  264. div_Image.src = msImgList[iID][miSSCount[iID]];
  265. iHeight=parseInt(msSSDescr[iID][miSSCount[iID]]==''?0:div_Descr.offsetHeight);
  266. iTop=parseInt((div_Main.offsetHeight-miImgH[iID][miSSCount[iID]]-iHeight)/2);
  267. div_Image.style.top=iTop+'px';
  268. div_Descr.style.top=iTop+miImgH[iID][miSSCount[iID]]+'px';
  269. div_Image.style.left=parseInt((div_Main.offsetWidth-miImgW[iID][miSSCount[iID]])/2)+'px';
  270. if (imEffectEnabled) div_Main.filters.item(0).Play();
  271. if(msSSLink[iID][miSSCount[iID]] != "#")
  272. div_Image.style.cursor = 'pointer';
  273. else
  274. div_Image.style.cursor = 'default';
  275. iNext = miSSCount[iID]+1
  276. if (iNext <= iLast) {
  277. oImg = new Image();
  278. oImg.src = msImgList[iID][iNext];
  279. }
  280. }
  281. function imLink(iID){
  282. if(msSSLink[iID][miSSCount[iID]] != "#")
  283. location = msSSLink[iID][miSSCount[iID]];
  284. }
  285. function imDoAuto(iID) {
  286. imDoTrans(iID,1);
  287. iAutoDelay=miSSDelay[iID][miSSCount[iID]];
  288. moSSTime[iID]=setTimeout("imDoAuto("+iID+")", iAutoDelay);
  289. }
  290. function imSSPlay(iID,Auto,iBtnType) {
  291. if (Auto == 1) {
  292. miSSCount[iID]=1;
  293. iAutoDelay=miSSDelay[iID][miSSCount[iID]];
  294. moSSTime[iID]=setTimeout("imDoAuto("+iID+")", iAutoDelay);
  295. }
  296. else {
  297. cmd_Auto = imGetLayer('imssPlay_' + iID);
  298. if (cmd_Auto.alt == 'Pause') {
  299. cmd_Auto.alt='Play';
  300. cmd_Auto.src='res/ss_play'+iBtnType+'.gif';
  301. clearTimeout(moSSTime[iID]);
  302. }
  303. else {
  304. cmd_Auto.alt='Pause';
  305. cmd_Auto.src='res/ss_pause'+iBtnType+'.gif';
  306. imDoTrans(iID, 1);
  307. iAutoDelay=miSSDelay[iID][miSSCount[iID]];
  308. moSSTime[iID]=setTimeout("imDoAuto("+iID+")", iAutoDelay);
  309. }
  310. }
  311. }
  312. function imFilterCheck(oEvent,expr){
  313. if (imEffectEnabled)
  314. iKey = oEvent.keyCode;
  315. else
  316. iKey = oEvent.which;
  317. sKey = String.fromCharCode(iKey);
  318. if (expr.test(sKey))
  319. return true;
  320. else
  321. return false;
  322. }
  323. function imKeyFilter(iType, oEvent){
  324. if (iType == 0)
  325. expr = /[\d\n\b]/;
  326. else if (iType == 1)
  327. expr = /[\d\n\b\- ]/;
  328. else if (iType == 2)
  329. expr = /[\d\n\b\/]/;
  330. return imFilterCheck(oEvent,expr);
  331. }
  332. var iMMCurPos=0;
  333. var iMMEnd = 0;
  334. var iMMEndDisplace = 0;
  335. var oMMTime = null;
  336. var imMMVel=0;
  337. var iMMHeaderSize = 0;
  338. var iMMFooterSize = 0;
  339. var iMMTimerInt = 0;
  340. function imGetOffset(sName) {return imGetLayer(sName).offsetHeight ?
  341. imGetLayer(sName).offsetHeight :
  342. imGetLayer(sName).style.pixelHeight ?
  343. imGetLayer(sName).style.pixelHeight : 0;
  344. }
  345. function imMMScrollMenu(){
  346. if (document.documentElement && document.documentElement.scrollTop)
  347. iMMEnd = document.documentElement.scrollTop > iMMHeaderSize ?
  348. document.documentElement.scrollTop - iMMHeaderSize :
  349. 0;
  350. else if (document.body && document.body.scrollTop)
  351. iMMEnd = document.body.scrollTop > iMMHeaderSize ?
  352. document.body.scrollTop - iMMHeaderSize :
  353. 0;
  354. else
  355. iMMEnd = 0;
  356. if(iMMCurPos > iMMEnd)
  357. iMMEndDisplace = -(imMMVel-1);
  358. else if (iMMCurPos < iMMEnd)
  359. iMMEndDisplace = (imMMVel-1);
  360. iMMCurPos += ((iMMEnd - iMMCurPos + iMMEndDisplace)/imMMVel);
  361. iMMCurPos = parseInt(iMMCurPos);
  362. imGetLayer("imMnMn").style.paddingTop = iMMCurPos + 'px';
  363. if (iMMCurPos == iMMEnd){
  364. clearTimeout(oMMTime);
  365. oMMTime = null;
  366. }
  367. else{
  368. clearTimeout(oMMTime);
  369. oMMTime = setTimeout("imMMScrollMenu()", iMMTimerInt);
  370. }
  371. }
  372. function imMMMenu(){
  373. if(!oMMTime)
  374. oMMTime = setTimeout("imMMScrollMenu()", iMMTimerInt);
  375. }
  376. function imMMInit(iMMVel){
  377. iMMHeaderSize = imGetLayer("imMenuMain").offsetTop;
  378. iMMFooterSize = imGetLayer("imFooter").offsetTop;
  379. imMMVel = iMMVel;
  380. iTimerInt = 5;
  381. iMMCurPos = 0;
  382. imGetLayer("imMnMn").style.paddingTop = iMMCurPos + 'px';
  383. window.onscroll = imMMMenu;
  384. }
  385. function imZIZoom(sImage,iHeight,iWidth,sDescr) {
  386. var imZIdiv_Backg = imGetLayer("imZIBackg");
  387. var imZIdiv_Image = imGetLayer("imZIImage");
  388. var imZIyScroll;
  389. var imZIwindowHeight;
  390. if (window.innerHeight && window.scrollMaxY)
  391. imZIyScroll = window.innerHeight + window.scrollMaxY;
  392. else if (document.body.scrollHeight > document.body.offsetHeight)
  393. imZIyScroll = document.body.scrollHeight;
  394. else
  395. imZIyScroll = document.body.offsetHeight;
  396. if (self.innerHeight)
  397. imZIwindowHeight = self.innerHeight;
  398. else if (document.documentElement && document.documentElement.clientHeight)
  399. imZIwindowHeight = document.documentElement.clientHeight;
  400. else if (document.body)
  401. imZIwindowHeight = document.body.clientHeight;
  402. imZIpageHeight = imZIyScroll < imZIwindowHeight ? imZIwindowHeight : imZIyScroll;
  403. if (self.pageYOffset)
  404. imZIyScroll = self.pageYOffset;
  405. else if (document.documentElement && document.documentElement.scrollTop)
  406. imZIyScroll = document.documentElement.scrollTop;
  407. else if (document.body)
  408. imZIyScroll = document.body.scrollTop;
  409. imZIdiv_Backg.style.top = '0px';
  410. imZIdiv_Backg.style.height = (imZIpageHeight + 'px');
  411. imZIdiv_Backg.style.zIndex = '2000';
  412. var imZIImageTop = imZIyScroll + ((imZIwindowHeight - 35 - iHeight) / 2);
  413. var div_Descr = "";
  414. if (sDescr!="") div_Descr = "<div id=\"imZICaption\">" + sDescr + "</div>";
  415. imZIdiv_Backg.innerHTML = "<div id=\"imZIImage\" style=\"margin-top:" + ((imZIImageTop < 0) ? "0px" : imZIImageTop) + "px" + "; width: " + (iWidth + 14) + "px\"><img src=\"" + sImage + "\" width=\"" + iWidth + "\" height=\"" + iHeight + "\" />" + div_Descr + "</div>";
  416. imZIdiv_Backg.style.display = "block";
  417. }
  418. function imZIHide(){
  419. imGetLayer("imZIBackg").style.display = "none";
  420. imGetLayer("imZIImage").innerHtml = "";
  421. }
  422. var moFGTime = null;
  423. var mFGMoving = new Array();
  424. function imFGClickLR(iFGIndex,iFGBkSize,iFGEndBlock,iFGMaxBlock,iFGSpeed,iFGDir){
  425. var oFGObj = imGetLayer("imFGImgList_" + iFGIndex);
  426. var imiLeft = parseInt(oFGObj.style.left);
  427. iFGEndBlock = iFGEndBlock <= iFGMaxBlock ? iFGEndBlock < 0 ? 0 : iFGEndBlock : iFGMaxBlock;
  428. if(Math.abs(imiLeft) == iFGEndBlock*iFGBkSize){
  429. mFGMoving[iFGIndex] = null;
  430. return;
  431. }
  432. if(mFGMoving[iFGIndex] && mFGMoving[iFGIndex] != iFGDir)
  433. return;
  434. else
  435. mFGMoving[iFGIndex] = iFGDir;
  436. if(Math.abs(imiLeft) < iFGEndBlock*iFGBkSize && iFGDir==1){
  437. if(Math.abs(imiLeft - iFGSpeed) > iFGEndBlock*iFGBkSize )
  438. iFGSpeed = imiLeft+iFGEndBlock*iFGBkSize;
  439. oFGObj.style.left = imiLeft - iFGSpeed + "px";
  440. setTimeout("imFGClickLR(" + iFGIndex + "," + iFGBkSize + "," + iFGEndBlock + "," + iFGMaxBlock + "," + iFGSpeed + "," + iFGDir + ")",40);
  441. }
  442. else if(Math.abs(imiLeft) > iFGEndBlock*iFGBkSize && imiLeft <= 0 && iFGDir==2){
  443. if(Math.abs(imiLeft + iFGSpeed) < iFGEndBlock*iFGBkSize || (imiLeft + iFGSpeed) > iFGEndBlock*iFGBkSize)
  444. iFGSpeed = Math.abs(imiLeft)-iFGEndBlock*iFGBkSize;
  445. oFGObj.style.left = imiLeft + iFGSpeed + "px";
  446. setTimeout("imFGClickLR(" + iFGIndex + "," + iFGBkSize + "," + iFGEndBlock + "," + iFGMaxBlock + "," + iFGSpeed + "," + iFGDir + ")",40);
  447. }
  448. }
  449. function imFGClickUD(iFGIndex,iFGBkSize,iFGEndBlock,iFGMaxBlock,iFGSpeed,iFGDir){
  450. var oFGObj = imGetLayer("imFGImgList_" + iFGIndex);
  451. var imiTop = parseInt(oFGObj.style.top);
  452. //set bound
  453. iFGEndBlock = iFGEndBlock <= iFGMaxBlock ? iFGEndBlock < 0 ? 0 : iFGEndBlock : iFGMaxBlock;
  454. if(Math.abs(imiTop) == iFGEndBlock*iFGBkSize){
  455. mFGMoving[iFGIndex] = null;
  456. return;
  457. }
  458. if(mFGMoving[iFGIndex] && mFGMoving[iFGIndex] != iFGDir)
  459. return;
  460. else
  461. mFGMoving[iFGIndex] = iFGDir;
  462. if(Math.abs(imiTop) < iFGEndBlock*iFGBkSize && iFGDir==2){
  463. if(Math.abs(imiTop - iFGSpeed) > iFGEndBlock*iFGBkSize )
  464. iFGSpeed = parseInt((imiTop+iFGEndBlock*iFGBkSize));
  465. oFGObj.style.top = imiTop - iFGSpeed + "px";
  466. setTimeout("imFGClickUD(" + iFGIndex + "," + iFGBkSize + "," + iFGEndBlock + "," + iFGMaxBlock + "," + iFGSpeed + "," + iFGDir + ")",40);
  467. }
  468. else if(Math.abs(imiTop) > iFGEndBlock*iFGBkSize && imiTop <= 0 && iFGDir==1){
  469. if(Math.abs(imiTop + iFGSpeed) < iFGEndBlock*iFGBkSize || (imiTop + iFGSpeed) > iFGEndBlock*iFGBkSize)
  470. iFGSpeed = parseInt((Math.abs(imiTop)-iFGEndBlock*iFGBkSize));
  471. oFGObj.style.top = imiTop + iFGSpeed + "px";
  472. setTimeout("imFGClickUD(" + iFGIndex + "," + iFGBkSize + "," + iFGEndBlock + "," + iFGMaxBlock + "," + iFGSpeed + "," + iFGDir + ")",40);
  473. }
  474. }
  475. function imFGMove(iFGIndex,iFGSpeed,iFGType,iFGCmd){
  476. clearTimeout(moFGTime);
  477. if(iFGType < 1 || iFGType > 4)
  478. return;
  479. var imDataObj = imGetLayer("imFGImgList_" + iFGIndex);
  480. var imDataCont = imGetLayer("imFGImgCont_" + iFGIndex);
  481. var imiLeft = parseInt(imDataObj.style.left);
  482. var imiTop = parseInt(imDataObj.style.top);
  483. var imiSize = imGetLayer("imFGItem_" + iFGIndex + "_" + 1 ).offsetHeight;
  484. var imiTWBlock = parseInt(imDataObj.offsetWidth/imiSize);
  485. var imiTHBlock = parseInt(imDataObj.offsetHeight/imiSize);
  486. switch(iFGType){
  487. case 1:{
  488. if (imiLeft - iFGSpeed >= imDataCont.offsetWidth - imDataObj.offsetWidth)
  489. switch(iFGCmd){
  490. case 0:
  491. if(mFGMoving[iFGIndex])
  492. return;
  493. imDataObj.style.left = imiLeft - iFGSpeed + "px";
  494. break;
  495. case 1:
  496. imFGClickLR(iFGIndex,imiSize,parseInt(Math.abs(imiLeft/imiSize)+1),
  497. imiTWBlock-parseInt(imDataCont.offsetWidth/imiSize),
  498. iFGSpeed,1);
  499. return;
  500. default:
  501. imFGClickLR(iFGIndex,imiSize,
  502. parseInt(Math.abs(imiLeft/imiSize)+parseInt(imDataCont.offsetWidth/imiSize)),
  503. imiTWBlock-parseInt(imDataCont.offsetWidth/imiSize),
  504. iFGSpeed,
  505. 1);
  506. return;
  507. }
  508. break;
  509. }
  510. case 2 :{
  511. if (imiLeft + iFGSpeed < 0)
  512. switch(iFGCmd){
  513. case 0:
  514. if(mFGMoving[iFGIndex])
  515. return;
  516. imDataObj.style.left = imiLeft + iFGSpeed + "px";
  517. break;
  518. case 1 :
  519. imFGClickLR(iFGIndex,imiSize,parseInt(Math.abs(imiLeft/imiSize)),
  520. imiTWBlock-parseInt(imDataCont.offsetWidth/imiSize),
  521. iFGSpeed,2);
  522. return;
  523. default:
  524. imFGClickLR(iFGIndex,imiSize,
  525. parseInt(Math.abs(imiLeft/imiSize)-parseInt(imDataCont.offsetWidth/imiSize)),
  526. imiTWBlock-parseInt(imDataCont.offsetWidth/imiSize),
  527. iFGSpeed,
  528. 2);
  529. return;
  530. }
  531. else
  532. imDataObj.style.left = 0;
  533. break;
  534. }
  535. case 3 :{
  536. if (imiTop + iFGSpeed < 0)
  537. switch(iFGCmd){
  538. case 0 :
  539. if(mFGMoving[iFGIndex])
  540. return;
  541. imDataObj.style.top = imiTop + iFGSpeed + "px";
  542. break;
  543. case 1 :
  544. imFGClickUD(iFGIndex,imiSize,parseInt(Math.abs(imiTop/imiSize)),
  545. imiTHBlock-parseInt(imDataCont.offsetHeight/imiSize),
  546. iFGSpeed,1);
  547. return;
  548. default :
  549. imFGClickUD(iFGIndex,imiSize,
  550. parseInt(Math.abs(imiTop/imiSize)-parseInt(imDataCont.offsetHeight/imiSize)),
  551. imiTHBlock-parseInt(imDataCont.offsetHeight/imiSize),
  552. iFGSpeed,
  553. 1);
  554. return;
  555. }
  556. else{
  557. imDataObj.style.top = 0;
  558. return;
  559. }
  560. break;
  561. }
  562. case 4 :{
  563. if (imiTop - iFGSpeed >= imDataCont.offsetHeight - imDataObj.offsetHeight)
  564. switch(iFGCmd){
  565. case 0 :
  566. if(mFGMoving[iFGIndex])
  567. return;
  568. imDataObj.style.top = imiTop - iFGSpeed + "px";
  569. break;
  570. case 1 :
  571. imFGClickUD(iFGIndex,imiSize,parseInt(Math.abs(imiTop/imiSize))+1,
  572. imiTHBlock-parseInt(imDataCont.offsetHeight/imiSize),
  573. iFGSpeed,2);
  574. return;
  575. default:
  576. imFGClickUD(iFGIndex,imiSize,
  577. parseInt(Math.abs(imiTop/imiSize)+parseInt(imDataCont.offsetHeight/imiSize))+1,
  578. imiTHBlock-parseInt(imDataCont.offsetHeight/imiSize),
  579. iFGSpeed,
  580. 2);
  581. return;
  582. }
  583. }
  584. }
  585. moFGTime = setTimeout("imFGMove(" + iFGIndex + "," + iFGSpeed + "," + iFGType + "," + iFGCmd + ")", 50);
  586. }
  587. function imFGShow(iIndex,sImageSrc,iImageH,iDescH,sDescr,sLink,iEffect){
  588. var div_FGMain = imGetLayer("imFGMain_" + iIndex);
  589. if (imEffectEnabled && iEffect != 0) {
  590. if (iEffect == 1) iEffect = Math.floor(Math.random()*73) + 2;
  591. div_FGMain.style.filter="progid:DXImageTransform.Microsoft."+msSSTrans[iEffect];
  592. div_FGMain.filters.item(0).Apply();
  593. }
  594. var iTop = parseInt((div_FGMain.offsetHeight-iImageH-iDescH)/2);
  595. var div_Descr = (iDescH == 0) ? "" : "<div id=\"imFGDescr_" + iIndex + "\" style=\"top: " + (iTop + iImageH) + "px\">" + sDescr + "</div>";
  596. div_FGMain.innerHTML = "<img src=\"imagebrowser/"+sImageSrc+"\" style=\"margin-top: " + iTop + "px\"/>" + div_Descr;
  597. if (sLink!="#") {
  598. div_FGMain.onclick= function onclick(event) {location = sLink};
  599. div_FGMain.style.cursor="pointer";
  600. } else {
  601. div_FGMain.onclick="";
  602. div_FGMain.style.cursor="default";
  603. }
  604. if (imEffectEnabled && iEffect != 0) div_FGMain.filters.item(0).Play();
  605. }
  606. function imMapSwap(oLI) {
  607. if(oLI.className == 'imMap_closed')
  608. oLI.className = 'imMap_open';
  609. else
  610. oLI.className = 'imMap_closed';
  611. }
  612. function imMapExpAll() {
  613. var a = document.getElementsByTagName('li');
  614. for(var i = 0; i < a.length; i++)
  615. if(a[i].className == 'imMap_closed')
  616. a[i].className = 'imMap_open';
  617. }
  618. function imMapCmpAll() {
  619. var a = document.getElementsByTagName('li');
  620. for(var i = 0; i < a.length; i++)
  621. if(a[i].className == 'imMap_open')
  622. a[i].className = 'imMap_closed';
  623. }
  624.