]> jfr.im git - z_archive/KronOS.git/commitdiff
Merge
authorJohn Runyon <redacted>
Thu, 25 Oct 2012 07:07:20 +0000 (10:07 +0300)
committerJohn Runyon <redacted>
Thu, 25 Oct 2012 07:07:20 +0000 (10:07 +0300)
1  2 
public/js/application.js

index 27369ddeed074407d7d323bcfc831e4dd920c418,6cb17407a235d4d802fdb338f5a3ca839a08e3dd..d6ba8b8a403618b025525dbb1ea3df6098e0fa9c
++<<<<<<< HEAD
 +var state
 +var wos
 +
 +(function( $ ) {
 +      $.fn.pageConstruct = function( initvar ) {
 +
 +              this.buildPage = function() {
 +                      document.cookie = "session_id=0;expires=0";
 +                      this.loadMenu();
 +                      this.loadContainer();
 +              }
 +
 +              this.loadDefaults = function() {
 +                      var self = this;
 +//                    $.getJSON("/backend/logged_in", function(resp) {
 +//                            if (!resp.contents) {
 +                                      self.hideMenu();
 +                                      self.hideBackground();
 +                                      self.setUsername('<em>unauthenticated</em>');
 +                                      self.loadLogin();
 +//                            } else {
 +//                                    self.loadUsername();
 +//                                    self.loadBackground();
 +//                            }
 +//                    });
 +              }
 +
 +              this.showError = function(e, t, c) {
 +                      var n = $(".alert").length;
 +                      if (n>2) {
 +                              $(".alert").first().remove();
 +                      }
 +                      error = '<div class="alert alert-block alert-' + t + '"><button type="button" class="close" data-dismiss="alert">&times;</button>' + e + '</div>'
 +                      $(c).append(error);
 +              }
 +
 +              this.loadMenu = function() {
 +                      $('body').append('<div class="navbar navbar-inverse navbar-fixed-top"></div>');
 +                      $('.navbar').append('<div class="navbar-inner"><div class="container-fluid"></div></div>');
 +                      $('.container-fluid').append('<a class="brand" href="#">KronOS</a>');
 +                      $('.container-fluid').append('<div class="menuitems"></div>');
 +                      $('.container-fluid').append('<p class="navbar-text pull-right">Logged in as <a href="#" class="navbar-link" id="username"><em>unauthenticated</em></a> &bull; <span style="font-family:monospace;"><span id="clock"></span></span></p>');
 +                      $('#clock').jclock({
 +                              format: '%H:%M',
 +                      });
 +              };
 +
 +              this.loadContainer = function() {
 +                      $('body').append('<div id="desktop" class="container-fluid"></div>');
 +                      $('desktop').append('<div class="row"></div>');
 +              };
 +
 +              this.loadMenuItems = function() {
 +                      $.getJSON("/backend/get_menu", function(resp) {
 +                              if (resp.success) {
 +                                      navStr = '<ul class="nav">';
 +                                      $.each(resp.contents, function(key, val) {
 +                                              openStr = '<li class="dropdown"><a tabindex="-1" class="dropdown-toggle" data-toggle="dropdown" href="#">'+key+' <b class="caret"></b></a><ul class="dropdown-menu">';
 +                                              innerStr = '';
 +                                              closeStr = '</ul></li>';
 +                                              $.each(val, function(ikey, ival) {
 +                                                      if (typeof ival == "object") {
 +                                                              innerStr += '<li class="dropdown-submenu"><a tabindex="-1" href="#">'+ikey+'</a><ul class="dropdown-menu">';
 +                                                              $.each(ival, function(iikey, iival) {
 +                                                                      innerStr += '<li><a tabindex="-1" href=\''+iival+'\'>'+iikey+'</a></li>';
 +                                                              });
 +                                                              innerStr += '</ul></li>';
 +                                                      } else {
 +                                                              innerStr += '<li><a tabindex="-1" href=\''+ival+'\'>'+ikey+'</a></li>';
 +                                                      }
 +                                              });
 +                                              navStr += openStr+innerStr+closeStr;
 +                                      });
 +                                      navStr += '</ul>';
 +                                      $('.menuitems').html(navStr);
 +                              } else {
 +                                      throwError(resp.error, 'error', '#desktop');
 +                              }
 +                      });
 +              };
 +
 +              this.hideMenu = function() {
 +                      $('.menuitems').empty();
 +              }
 +
 +              this.loadLogin = function() {
 +                      $.ajax({
 +                              url: "/backend/login_modal",
 +                              success: function (data) {
 +                                      $('body').append(data);
 +                                      $('#loginModal').modal({
 +                                              backdrop: 'static',
 +                                              keyboard: false,
 +                                      });
 +                                      $('#loginModal').modal('show');
 +                              },
 +                              dataType: 'html'
 +                      });
 +              }
 +
 +              this.loadBackground = function() {
 +                      background = '<style>body { background-image:url(\'/public/img/default-background.jpg\'); background-position: center top; } </style>'
 +                      $('body').append(background);
 +              };
 +
 +              this.hideBackground = function() {
 +                      $('style').remove();
 +              }
 +
 +              this.setUsername = function(name) {
 +                      $("#username").html(name);
 +              }
 +
 +              this.submitLogin = function() {
 +                      loginData = {
 +                              'username': $('#inputUsername').val(),
 +                              'password': $('#inputPassword').val()
 +                      };
 +                      self = this;
 +                      $.post('/account/login', loginData, function(resp) {
 +                              if (resp.success) {
 +                                      document.cookie = "session_id="+resp.data.sid+";expires=0";
 +                                      self.setUsername(resp.data.name);
 +                                      self.loadMenuItems();
 +                                      self.loadBackground();
 +
 +                                      $('#loginModal').modal('hide');
 +                                      $('#inputUsername').val("")
 +                                      $(".alert").remove();
 +                              } else {
 +                                      self.showError(resp.error, 'error', '.messagebody');
 +                              }
 +
 +                              $('#inputPassword').val("")
 +                      }, "json");
 +              }
 +
++              this.credits = function() {
++                      $('body').append('<div id="credits" class="modal hide fade"></div>');
++                      
++                      $('#credits').append('<div class="modal-header">');
++                      $('#credits').append('<div class="modal-body">');
++                      $('#credits').append('<div class="modal-footer">');
++
++                      $('').append('');
++                      $('#credits>.modal-header').append('<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>');
++                      $('#credits>.modal-header').append('<h3 id="creditsLabel">About KronOS</h3>');
++
++                      $('#credits>.modal-body').append('<h4>Committers</h4>');
++                      $('#credits>.modal-body').append('<ul><li>BiohZn</li><li>DimeCadmium</li><li>Oscar</li><li>hyster</li><li>DarkDeviL</li></ul>');
++
++                      $('#credits>.modal-footer').append('<button class="btn" aria-hidden="true" onClick="wos.hideCredits();">Close</button>');
++
++                      $('#credits').modal({
++                              backdrop: false
++                      });
++                      $('#credits').modal('show');
++              }
++
++              this.hideCredits = function() {
++                      $('#credits').modal('hide');
++                      $('#credits').remove();
++              }
++
 +              this.logout = function() {
 +                      document.cookie = "session_id=0;expires=0";
 +                      this.loadDefaults();
 +              }
 +
 +              return this;
 +      };
 +})( jQuery );
 +
 +$(function () {
 +      wos = $('document.body').pageConstruct();
 +
 +      wos.buildPage();
 +      wos.loadDefaults();
 +});
++=======
+ var state\r
+ var wos\r
\r
+ (function( $ ) {\r
+       $.fn.pageConstruct = function( initvar ) {\r
\r
+               this.buildPage = function() {\r
+                       document.cookie = "session_id=0;expires=0";\r
+                       this.loadMenu();\r
+                       this.loadContainer();\r
+               }\r
\r
+               this.loadDefaults = function() {\r
+                       var self = this;\r
+ //                    $.getJSON("/backend/logged_in", function(resp) {\r
+ //                            if (!resp.contents) {\r
+                                       self.hideMenu();\r
+                                       self.hideBackground();\r
+                                       self.setUsername('<em>unauthenticated</em>');\r
+                                       self.loadLogin();\r
+ //                            } else {\r
+ //                                    self.loadUsername();\r
+ //                                    self.loadBackground();\r
+ //                            }\r
+ //                    });\r
+               }\r
\r
+               this.showError = function(e, t, c) {\r
+                       var n = $(".alert").length;\r
+                       if (n>2) {\r
+                               $(".alert").first().remove();\r
+                       }\r
+                       error = '<div class="alert alert-block alert-' + t + '"><button type="button" class="close" data-dismiss="alert">&times;</button>' + e + '</div>'\r
+                       $(c).append(error);\r
+               }\r
\r
+               this.loadMenu = function() {\r
+                       $('body').append('<div class="navbar navbar-inverse navbar-fixed-top"></div>');\r
+                       $('.navbar').append('<div class="navbar-inner"><div class="container-fluid"></div></div>');\r
+                       $('.container-fluid').append('<a class="brand" href="#">KronOS</a>');\r
+                       $('.container-fluid').append('<div class="menuitems"></div>');\r
+                       $('.container-fluid').append('<p class="navbar-text pull-right">Logged in as <a href="#" class="navbar-link" id="username"><em>unauthenticated</em></a></p>');\r
+               };\r
\r
+               this.loadContainer = function() {\r
+                       $('body').append('<div id="desktop" class="container-fluid"></div>');\r
+                       $('desktop').append('<div class="row"></div>');\r
+               };\r
\r
+               this.loadMenuItems = function() {\r
+                       $.getJSON("/backend/get_menu", function(resp) {\r
+                               if (resp.success) {\r
+                                       navStr = '<ul class="nav">';\r
+                                       $.each(resp.contents, function(key, val) {\r
+                                               openStr = '<li class="dropdown"><a tabindex="-1" class="dropdown-toggle" data-toggle="dropdown" href="#">'+key+' <b class="caret"></b></a><ul class="dropdown-menu">';\r
+                                               innerStr = '';\r
+                                               closeStr = '</ul></li>';\r
+                                               $.each(val, function(ikey, ival) {\r
+                                                       if (typeof ival == "object") {\r
+                                                               innerStr += '<li class="dropdown-submenu"><a tabindex="-1" href="#">'+ikey+'</a><ul class="dropdown-menu">';\r
+                                                               $.each(ival, function(iikey, iival) {\r
+                                                                       innerStr += '<li><a tabindex="-1" href=\''+iival+'\'>'+iikey+'</a></li>';\r
+                                                               });\r
+                                                               innerStr += '</ul></li>';\r
+                                                       } else {\r
+                                                               innerStr += '<li><a tabindex="-1" href=\''+ival+'\'>'+ikey+'</a></li>';\r
+                                                       }\r
+                                               });\r
+                                               navStr += openStr+innerStr+closeStr;\r
+                                       });\r
+                                       navStr += '</ul>';\r
+                                       $('.menuitems').html(navStr);\r
+                               } else {\r
+                                       throwError(resp.error, 'error', '#desktop');\r
+                               }\r
+                       });\r
+               };\r
\r
+               this.hideMenu = function() {\r
+                       $('.menuitems').empty();\r
+               }\r
\r
+               this.loadLogin = function() {\r
+                       $.ajax({\r
+                               url: "/backend/login_modal",\r
+                               success: function (data) {\r
+                                       $('body').append(data);\r
+                                       $('#loginModal').modal({\r
+                                               backdrop: 'static',\r
+                                               keyboard: false,\r
+                                       });\r
+                                       $('#loginModal').modal('show');\r
+                               },\r
+                               dataType: 'html'\r
+                       });\r
+               }\r
\r
+               this.loadBackground = function() {\r
+                       background = '<style>body { background-image:url(\'/public/img/default-background.jpg\'); background-position: center top; } </style>'\r
+                       $('body').append(background);\r
+               };\r
\r
+               this.hideBackground = function() {\r
+                       $('style').remove();\r
+               }\r
\r
+               this.setUsername = function(name) {\r
+                       $("#username").html(name);\r
+               }\r
\r
+               this.submitLogin = function() {\r
+                       loginData = {\r
+                               'username': $('#inputUsername').val(),\r
+                               'password': $('#inputPassword').val()\r
+                       };\r
+                       self = this;\r
+                       $.post('/account/login', loginData, function(resp) {\r
+                               if (resp.success) {\r
+                                       document.cookie = "session_id="+resp.data.sid+";expires=0";\r
+                                       self.setUsername(resp.data.name);\r
+                                       self.loadMenuItems();\r
+                                       self.loadBackground();\r
\r
+                                       $('#loginModal').modal('hide');\r
+                                       $('#loginModal').remove();\r
+                               } else {\r
+                                       self.showError(resp.error, 'error', '.messagebody');\r
+                               }\r
\r
+                               $('#inputPassword').val("")\r
+                       }, "json");\r
+               }\r
\r
+               this.credits = function() {\r
+                       $('body').append('<div id="credits" class="modal hide fade"></div>');\r
+                       \r
+                       $('#credits').append('<div class="modal-header">');\r
+                       $('#credits').append('<div class="modal-body">');\r
+                       $('#credits').append('<div class="modal-footer">');\r
\r
+                       $('').append('');\r
+                       $('#credits>.modal-header').append('<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>');\r
+                       $('#credits>.modal-header').append('<h3 id="creditsLabel">About KronOS</h3>');\r
\r
+                       $('#credits>.modal-body').append('<h4>Committers</h4>');\r
+                       $('#credits>.modal-body').append('<ul><li>BiohZn</li><li>DimeCadmium</li><li>Oscar</li><li>hyster</li><li>DarkDeviL</li></ul>');\r
\r
+                       $('#credits>.modal-footer').append('<button class="btn" aria-hidden="true" onClick="wos.hideCredits();">Close</button>');\r
\r
+                       $('#credits').modal({\r
+                               backdrop: false\r
+                       });\r
+                       $('#credits').modal('show');\r
+               }\r
\r
+               this.hideCredits = function() {\r
+                       $('#credits').modal('hide');\r
+                       $('#credits').remove();\r
+               }\r
\r
+               this.logout = function() {\r
+                       document.cookie = "session_id=0;expires=0";\r
+                       this.loadDefaults();\r
+               }\r
\r
+               return this;\r
+       };\r
+ })( jQuery );\r
\r
+ $(function () {\r
+       wos = $('document.body').pageConstruct();\r
\r
+       wos.buildPage();\r
+       wos.loadDefaults();\r
+ });\r
++>>>>>>> 3ff0a8ddc9627b0815f031e0cf65314bb95a9e31