Advertisement
Guest User

brpg

a guest
Oct 20th, 2010
342
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <script>
  2.     (function() {
  3.         var button = {
  4.             init: function() {
  5.                 button.div = $('#button');
  6.                 button.div.empty();
  7.  
  8.                 //Timer display
  9.                 button.timer = $('<span style="font-size: 1.2em;"></span>');
  10.                 button.timer.appendTo(button.div);
  11.  
  12.                 button.messagediv = $('<div class="success"></div>');
  13.                 button.messagediv2 = $('<div class="error"></div>');
  14.                 button.message = $('<p></p>');
  15.  
  16.                 //Form
  17.                 var form = $('<form method="post" action="/game"></form>');
  18.                 form.appendTo(button.div);
  19.  
  20.                 //csrf token
  21.                 $('<input id="csrf_token" name="csrf_token" type="hidden" value="36ef26bb-dc38-424d-b794-b73a24952477" />').appendTo(form);
  22.  
  23.                 //Click button
  24.                 button.click = $('<input type="submit" value="Play!" class="play" />');
  25.                 button.click.appendTo(form);
  26.  
  27.                 button.click.bind("click", function () {
  28.                     button.timer.html('Please wait...');
  29.                     var div = $('#click_message');
  30.                     div.animate({ opacity: 0 }, 300);
  31.  
  32.                     $.post('/game', form.serialize(), function (data) {
  33.                         try {
  34.                             clearInterval(button.interval);
  35.                         } catch (e) { }
  36.  
  37.                         //Remove existing click messages
  38.                         div.empty();
  39.  
  40.                         //Show the new message
  41.                         button.message.html(data.message);
  42.                         if (data.status == "OK") {
  43.                             button.message.appendTo(button.messagediv);
  44.                             button.messagediv.prependTo(div);
  45.                         } else if (data.status == "EARLY") {
  46.                             button.message.appendTo(button.messagediv2);
  47.                             button.messagediv2.prependTo(div);
  48.                         } else {
  49.                             location.reload();
  50.                         }
  51.  
  52.                         //Update the timer
  53.                         button.seconds = data.seconds;
  54.                         button.timer.html('<b>' + Math.floor(button.seconds / 60) + '</b> minutes, <b>' + button.seconds % 60 + '</b> seconds left.');
  55.  
  56.                         button.countdown();
  57.                         button.interval = setInterval(button.countdown, 1000);
  58.  
  59.                         div.animate({ opacity: 1 }, 300);
  60.  
  61.                         if (data.player != undefined) {
  62.                             for (var i in data.player) {
  63.                                 $('#' + i).html(data.player[i]);
  64.                             }
  65.                         }
  66.                     }, 'json');
  67.                     return false;
  68.                 });
  69.  
  70.                 button.seconds = -1287629188.0;
  71.                 button.timer.html('<b>' + Math.floor(button.seconds / 60) + '</b> minutes, <b>' + button.seconds % 60 + '</b> seconds left.');
  72.  
  73.                 button.countdown();
  74.  
  75.                 button.interval = setInterval(button.countdown, 1000);
  76.             },
  77.             countdown: function() {
  78.                 button.seconds -= 1;
  79.  
  80.                 if (button.seconds <= -1) {
  81.                     button.seconds += 1;
  82.                     button.timer.html('You can click <u>now</u>!');
  83.                     document.title = "Click now! :: Boring RPG :: Home";
  84.                     clearInterval(button.interval);
  85.                 }
  86.                 if (button.seconds <= 0) {
  87.                     button.timer.html('You can click <u>now</u>!');
  88.                     document.title = "Click now! :: Boring RPG :: Home";
  89.                     clearInterval(button.interval);
  90.                 } else {
  91.                     button.timer.html('<b>' + Math.floor(button.seconds / 60) + '</b> minutes, <b>' + button.seconds % 60 + '</b> seconds left.');
  92.                     var message = Math.floor(button.seconds / 60) + ':';
  93.                     if (button.seconds % 60 < 10)
  94.                         message += '0';
  95.                     message += button.seconds % 60;
  96.                     document.title = message + " :: Boring RPG :: Home";
  97.                 }
  98.             }
  99.         }
  100.  
  101.         button.init();
  102.     })();
  103.  
  104. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement