home *** CD-ROM | disk | FTP | other *** search
/ Mundo do CD-ROM 118 / cdrom118.iso / internet / webaroo / WebarooSetup.exe / Webaroo.msi / _8D8E49DF3B744BEFA8E8B41FD0552244 < prev    next >
Encoding:
Text File  |  2005-12-23  |  4.1 KB  |  143 lines

  1. /***********************************************
  2. * Switch Content script- πâ╗Dynamic Drive (www.dynamicdrive.com)
  3. * This notice must stay intact for legal use. Last updated April 2nd, 2005.
  4. * Visit http://www.dynamicdrive.com/ for full source code
  5. ***********************************************/
  6.  
  7. var enablepersist="on" //Enable saving state of content structure using session cookies? (on/off)
  8. var collapseprevious="no" //Collapse previously open content when opening present? (yes/no)
  9.  
  10. var contractsymbol='<img src="../images/sectionOpen.gif"/> ' //HTML for contract symbol. For image, use: <img src="whatever.gif">
  11. var expandsymbol='<img src="../images/sectionClose.gif"/> ' //HTML for expand symbol.
  12.  
  13. if (document.getElementById){
  14. document.write('<style type="text/css">')
  15. document.write('.switchcontent{display:none;}')
  16. document.write('</style>')
  17. }
  18.  
  19. function getElementbyClass(rootobj, classname){
  20. var temparray=new Array()
  21. var inc=0
  22. var rootlength=rootobj.length
  23. for (i=0; i<rootlength; i++){
  24. if (rootobj[i].className==classname)
  25. temparray[inc++]=rootobj[i]
  26. }
  27. return temparray
  28. }
  29.  
  30. function sweeptoggle(ec){
  31. var thestate=(ec=="expand")? "block" : "none"
  32. var inc=0
  33. while (ccollect[inc]){
  34. ccollect[inc].style.display=thestate
  35. inc++
  36. }
  37. revivestatus()
  38. }
  39.  
  40.  
  41. function contractcontent(omit){
  42. var inc=0
  43. while (ccollect[inc]){
  44. if (ccollect[inc].id!=omit)
  45. ccollect[inc].style.display="none"
  46. inc++
  47. }
  48. }
  49.  
  50. function expandcontent(curobj, cid){
  51. var spantags=curobj.getElementsByTagName("SPAN")
  52. var showstateobj=getElementbyClass(spantags, "showstate")
  53. if (ccollect.length>0){
  54. if (collapseprevious=="yes")
  55. contractcontent(cid)
  56. document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
  57. if (showstateobj.length>0){ //if "showstate" span exists in header
  58. if (collapseprevious=="no")
  59. showstateobj[0].innerHTML=(document.getElementById(cid).style.display=="block")? contractsymbol : expandsymbol
  60. else
  61. revivestatus()
  62. }
  63. }
  64. }
  65.  
  66. function revivecontent(){
  67. contractcontent("omitnothing")
  68. selectedItem=getselectedItem()
  69. selectedComponents=selectedItem.split("|")
  70. for (i=0; i<selectedComponents.length-1; i++)
  71. document.getElementById(selectedComponents[i]).style.display="block"
  72. }
  73.  
  74. function revivestatus(){
  75. var inc=0
  76. while (statecollect[inc]){
  77. if (ccollect[inc].style.display=="block")
  78. statecollect[inc].innerHTML=contractsymbol
  79. else
  80. statecollect[inc].innerHTML=expandsymbol
  81. inc++
  82. }
  83. }
  84.  
  85. function get_cookie(Name) { 
  86. var search = Name + "="
  87. var returnvalue = "";
  88. if (document.cookie.length > 0) {
  89. offset = document.cookie.indexOf(search)
  90. if (offset != -1) { 
  91. offset += search.length
  92. end = document.cookie.indexOf(";", offset);
  93. if (end == -1) end = document.cookie.length;
  94. returnvalue=unescape(document.cookie.substring(offset, end))
  95. }
  96. }
  97. return returnvalue;
  98. }
  99.  
  100. function getselectedItem(){
  101. if (get_cookie(window.location.pathname) != ""){
  102. selectedItem=get_cookie(window.location.pathname)
  103. return selectedItem
  104. }
  105. else
  106. return ""
  107. }
  108.  
  109. function saveswitchstate(){
  110. var inc=0, selectedItem=""
  111. while (ccollect[inc]){
  112. if (ccollect[inc].style.display=="block")
  113. selectedItem+=ccollect[inc].id+"|"
  114. inc++
  115. }
  116.  
  117. document.cookie=window.location.pathname+"="+selectedItem
  118. }
  119.  
  120. function do_onload(){
  121. uniqueidn=window.location.pathname+"firsttimeload"
  122. var alltags=document.all? document.all : document.getElementsByTagName("*")
  123. ccollect=getElementbyClass(alltags, "switchcontent")
  124. statecollect=getElementbyClass(alltags, "showstate")
  125. if (enablepersist=="on" && ccollect.length>0){
  126. document.cookie=(get_cookie(uniqueidn)=="")? uniqueidn+"=1" : uniqueidn+"=0" 
  127. firsttimeload=(get_cookie(uniqueidn)==1)? 1 : 0 //check if this is 1st page load
  128. if (!firsttimeload)
  129. revivecontent()
  130. }
  131. if (ccollect.length>0 && statecollect.length>0)
  132. revivestatus()
  133. }
  134.  
  135. if (window.addEventListener)
  136. window.addEventListener("load", do_onload, false)
  137. else if (window.attachEvent)
  138. window.attachEvent("onload", do_onload)
  139. else if (document.getElementById)
  140. window.onload=do_onload
  141.  
  142. if (enablepersist=="on" && document.getElementById)
  143. window.onunload=saveswitchstate