Advertisement
Guest User

Image Clock

a guest
Jul 14th, 2013
240
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5 2.68 KB | None | 0 0
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <title>The time is...</title>
  5. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  6.  
  7. <script type="text/javascript">
  8.  
  9. function parseurlresults(data, pageid)
  10. {
  11. // alert(JSON.stringify(data.query));
  12. if(data.query.pages && data.query.pages[pageid] && data.query.pages[pageid].imageinfo[0] && data.query.pages[pageid].imageinfo
  13.  
  14. [0].url)
  15. {
  16. var element = document.getElementById('image1');
  17. element.src = data.query.pages[pageid].imageinfo[0].url;
  18. element.style.maxWidth = screen.width + "px";
  19. }
  20. else
  21. {
  22. writetimetext();
  23. }
  24.  
  25. }
  26.  
  27. function parselistresults(data)
  28. {
  29. // alert(JSON.stringify(data.query));
  30. if(data.query.categorymembers && data.query.categorymembers[0])
  31. {
  32. var r = Math.floor(Math.random() * data.query.categorymembers.length);
  33.  
  34. // do another ajax query:
  35. $.ajax({
  36. url: 'https://commons.wikimedia.org/w/api.php',
  37.         data: {
  38.             action: 'query',
  39.             format: 'json',
  40.             prop: 'imageinfo',
  41.         titles: data.query.categorymembers[r].title,
  42.             iiprop: 'url',
  43.         },
  44.         dataType: 'jsonp',
  45.         type: 'GET',
  46.         success: function (urldata) { parseurlresults(urldata, data.query.categorymembers[r].pageid); },
  47.     error: function( xhr ) {writetimetext();}
  48.     });
  49.  
  50. }
  51. else
  52. {
  53. writetimetext();
  54. }
  55.  
  56. }
  57.  
  58. function writetimetext()
  59. {
  60. //alert("failed!");
  61. var dTime = new Date();
  62. var hours = dTime.getHours();
  63. var minute = dTime.getMinutes();
  64. var hours12 = hours;
  65. if(hours12 > 12)
  66.     hours12 -= 12;
  67. var timestring = '' + hours12 + ':' + ((minute < 10) ? '0' : '') + minute + ((hours >= 12) ? " PM" : " AM");
  68.  
  69. var n = document.getElementById('clocktext');
  70. $(n).html('Failed to load image. The time is ' + timestring);
  71. }
  72.  
  73. function loadTimePic()
  74. {
  75. var dTime = new Date();
  76. var hours = dTime.getHours();
  77. var minute = dTime.getMinutes();
  78. if(hours > 12)
  79.     hours -= 12;
  80. var category = "Time_" + ((hours < 10) ? '0' : '') + hours + ':' + ((minute < 10) ? '0' : '') + minute;
  81. //alert(category);
  82.  
  83. $.ajax({
  84. url: 'https://commons.wikimedia.org/w/api.php',
  85.        data: {
  86.            action: 'query',
  87.            format: 'json',
  88.            list: 'categorymembers',
  89.         cmnamespace: 6,
  90.            cmtitle: 'Category:' + category,
  91.        },
  92.        dataType: 'jsonp',
  93.        type: 'GET',
  94.         success: function (data) { parselistresults(data); },
  95.     error: function( xhr ) {writetimetext();}
  96.    });
  97.  
  98. }
  99.  
  100. $(document).ready(function () {
  101.    loadTimePic();
  102.    // window.setInterval(loadTimePic,60000);
  103.  });
  104.  
  105. </script>
  106.  
  107. </head>
  108. <body id="body">
  109. <img id="image1" src=""/>
  110. <div style="font-size: 30pt;" id="clocktext" ></div>
  111. </body>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement