]> 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)
application/libraries/Core.php
public/js/application.js

index 98083b38c527ca8687ddfa84be398861d8622ba1..09466f508e2aa033dd352e13031fea7a5c2911f8 100644 (file)
@@ -39,7 +39,8 @@ class Core {
                }
 
                $menu['System'] = array(
-                       'About KronOS'  => 'javascript:wos.openCoreApp("credits");void(0);',
+                       'About KronOS'  => 'javascript:wos.credits();void(0);',
+//                     'About KronOS'  => 'javascript:wos.openCoreApp("credits");void(0);',
                        'Preferences'   => 'javascript:wos.openCoreApp("account");void(0);',
                        'Logout'        => 'javascript:wos.logout();void(0);',
                );
index 27369ddeed074407d7d323bcfc831e4dd920c418..d6ba8b8a403618b025525dbb1ea3df6098e0fa9c 100644 (file)
@@ -1,3 +1,4 @@
+<<<<<<< HEAD
 var state
 var wos
 
@@ -135,6 +136,33 @@ var wos
                        }, "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();
@@ -150,3 +178,180 @@ $(function () {
        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