loader.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. var _origVars = [];
  2. for (var _prop in window) {
  3. _origVars.push(_prop);
  4. }
  5. function varLeaks() {
  6. for (var prop in window) {
  7. var found = false;
  8. for (var i=0; i<_origVars.length; i++) {
  9. if (prop == _origVars[i]) {
  10. found = true;
  11. break;
  12. }
  13. }
  14. if (!found) {
  15. console.log(prop);
  16. }
  17. }
  18. }
  19. var m = window.location.href.match(/\?(.*)$/);
  20. var queryString = m ? m[1] : '';
  21. function queryStringParam(name) {
  22. m = queryString.match(new RegExp("(?:^|&)"+name+"(?:=([^&]))?"));
  23. if (m) {
  24. if (m[1]) return m[1];
  25. return true;
  26. }
  27. }
  28. function includeJS(src) {
  29. document.write("<script type='text/javascript' src='" + src + "'><\/script>");
  30. }
  31. function includeCSS(href) {
  32. document.write("<link rel='stylesheet' type='text/css' href='" + href + "' />");
  33. }
  34. var _build = queryStringParam('build');
  35. var _minified = queryStringParam('minified');
  36. var _legacy = queryStringParam('legacy');
  37. if (_build) {
  38. includeCSS('../build/fullcalendar/fullcalendar.css');
  39. }else{
  40. includeCSS('../src/css/main.css');
  41. includeCSS('../src/css/grid.css');
  42. includeCSS('../src/css/agenda.css');
  43. }
  44. if (_legacy) {
  45. includeJS('jquery-legacy/jquery-1.3.2.min.js');
  46. includeJS('jquery-legacy/jquery-ui-1.7.3.custom.min.js');
  47. }
  48. else if (_build) {
  49. includeJS('../build/fullcalendar/jquery/jquery.js');
  50. includeJS('../build/fullcalendar/jquery/jquery-ui-custom.js');
  51. }
  52. else {
  53. includeJS('../src/jquery/jquery.js');
  54. includeJS('../src/jquery/jquery-ui-custom.js');
  55. }
  56. if (_build) {
  57. if (_minified) {
  58. includeJS('../build/fullcalendar/fullcalendar.min.js');
  59. }else{
  60. includeJS('../build/fullcalendar/fullcalendar.js');
  61. }
  62. includeJS('../build/fullcalendar/gcal.js');
  63. }else{
  64. includeJS('../src/main.js');
  65. includeJS('../src/grid.js');
  66. includeJS('../src/agenda.js');
  67. includeJS('../src/view.js');
  68. includeJS('../src/selection_util.js');
  69. includeJS('../src/util.js');
  70. includeJS('../src/gcal.js');
  71. }
  72. //if (!window.DISABLE_FIREBUG_LITE) {
  73. if (!window.console || !console.log) {
  74. includeJS('firebug-lite/firebug-lite-compressed.js');
  75. }
  76. //}
  77. window.onload = function() {
  78. $('body').append(
  79. "<form style='position:absolute;top:0;right:0;text-align:right;font-size:10px;color:#666'>" +
  80. "<label for='build'>build</label> " +
  81. "<input type='checkbox' id='build' name='build'" + (_build ? " checked='checked'" : '') +
  82. " style='vertical-align:middle' onclick='$(this).parent().submit()' />" +
  83. "<br />" +
  84. "<label for='minified'>minified</label> " +
  85. "<input type='checkbox' id='minified' name='minified'" + (_minified ? " checked='checked'" : '') +
  86. " style='vertical-align:middle' onclick='$(this).parent().submit()' />" +
  87. "<br />" +
  88. "<label for='legacy'>legacy</label> " +
  89. "<input type='checkbox' id='legacy' name='legacy'" + (_legacy ? " checked='checked'" : '') +
  90. " style='vertical-align:middle' onclick='$(this).parent().submit()' />" +
  91. "</form>"
  92. );
  93. };