/static/genetrack/genetrack.js

https://bitbucket.org/cistrome/cistrome-harvard/ · JavaScript · 79 lines · 60 code · 9 blank · 10 comment · 11 complexity · e6c9a37a7fc1aacfb65145e7f92b8fa3 MD5 · raw file

  1. var cookie_name = "genetrack_ui"
  2. var now = new Date();
  3. now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
  4. // this toggles between none and block
  5. function toggle(name){
  6. var elem = get(name)
  7. if (elem) {
  8. if (elem.style.display=="none"){
  9. elem.style.display="block"
  10. setCookie(cookie_name, name, now)
  11. } else {
  12. elem.style.display="none"
  13. setCookie(cookie_name, '', now)
  14. }
  15. }
  16. }
  17. function main(){
  18. //executed upon main body load
  19. var value = getCookie(cookie_name);
  20. toggle( value )
  21. }
  22. // this toggles between visible and hidden
  23. function show(name){
  24. var elem = get(name)
  25. if (elem.style.visibility=="hidden"){
  26. elem.style.visibility="visible";
  27. } else {
  28. elem.style.visibility="hidden";
  29. }
  30. }
  31. // utility function to get the length of on object
  32. function len(obj){
  33. return obj.length;
  34. }
  35. // utility function to get an element by id
  36. function get(name){
  37. return document.getElementById(name);
  38. }
  39. // pops up a window
  40. function pop_up(url) {
  41. day = new Date();
  42. id = day.getTime();
  43. eval("page" + id + " = window.open(url, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=1,width=500,height=300');");
  44. }
  45. //
  46. // cookie management off the web
  47. // http://www.webreference.com/js/column8/property.html
  48. //
  49. function setCookie(name, value, expires, path, domain, secure) {
  50. var curCookie = name + "=" + escape(value) +
  51. ((expires) ? "; expires=" + expires.toGMTString() : "") +
  52. ((path) ? "; path=" + path : "") +
  53. ((domain) ? "; domain=" + domain : "") +
  54. ((secure) ? "; secure" : "");
  55. document.cookie = curCookie;
  56. }
  57. function getCookie(name) {
  58. var dc = document.cookie;
  59. var prefix = name + "=";
  60. var begin = dc.indexOf("; " + prefix);
  61. if (begin == -1) {
  62. begin = dc.indexOf(prefix);
  63. if (begin != 0) return null;
  64. } else
  65. begin += 2;
  66. var end = document.cookie.indexOf(";", begin);
  67. if (end == -1)
  68. end = dc.length;
  69. return unescape(dc.substring(begin + prefix.length, end));
  70. }