diff --git a/webgoat-container/src/main/webapp/css/main.css b/webgoat-container/src/main/webapp/css/main.css
index d12e740683..c81b51679c 100644
--- a/webgoat-container/src/main/webapp/css/main.css
+++ b/webgoat-container/src/main/webapp/css/main.css
@@ -659,6 +659,10 @@ fieldset[disabled] .btn-warning.active {
max-height: 375px;
overflow-y: auto;
}
+
+#about-modal {
+ opacity: 95%;
+}
/* ==========================================================================
Media Queries
========================================================================== */
diff --git a/webgoat-container/src/main/webapp/js/goatApp/controller/LessonController.js b/webgoat-container/src/main/webapp/js/goatApp/controller/LessonController.js
index 3ac5e074ec..424b654b62 100644
--- a/webgoat-container/src/main/webapp/js/goatApp/controller/LessonController.js
+++ b/webgoat-container/src/main/webapp/js/goatApp/controller/LessonController.js
@@ -11,7 +11,8 @@ define(['jquery',
'goatApp/view/CookieView',
'goatApp/view/ParamView',
'goatApp/model/ParamModel',
- 'goatApp/support/GoatUtils'
+ 'goatApp/support/GoatUtils',
+ 'goatApp/view/UserAndInfoView'
],
function($,
_,
@@ -26,7 +27,8 @@ define(['jquery',
CookieView,
ParamView,
ParamModel,
- GoatUtils
+ GoatUtils,
+ UserAndInfoView
) {
'use strict'
@@ -36,8 +38,11 @@ define(['jquery',
this.lessonView = options.lessonView;
_.extend(Controller.prototype,Backbone.Events);
+
this.start = function() {
this.listenTo(this.lessonContent,'contentLoaded',this.onContentLoaded);
+ //'static' elements of page/app
+ this.userAndInfoView = new UserAndInfoView();
};
//load View, which can pull data
this.loadLesson = function(scr,menu,stage) {
diff --git a/webgoat-container/src/main/webapp/js/goatApp/view/UserAndInfoView.js b/webgoat-container/src/main/webapp/js/goatApp/view/UserAndInfoView.js
new file mode 100644
index 0000000000..b6ee51c86d
--- /dev/null
+++ b/webgoat-container/src/main/webapp/js/goatApp/view/UserAndInfoView.js
@@ -0,0 +1,45 @@
+//UserAndInfoView
+define(['jquery',
+ 'underscore',
+ 'backbone'],
+function($,
+ _,
+ Backbone) {
+ return Backbone.View.extend({
+ el:'#user-and-info-nav', //Check this,
+
+ events: {
+ 'click #about-button': 'showAboutModal',
+ 'click #user-menu': 'showUserMenu'
+ },
+
+ initialize: function() {
+
+ },
+
+ render:function(title) {
+ },
+
+ showUserMenu: function() {
+ var menu = this.$el.find('.dropdown-menu');
+ if (menu.is(':visible')) {
+ menu.hide(200);
+ } else {
+ menu.show(400);
+ /*menu.on('mouseout', function() {
+ $('#user-and-info-nav .dropdown-menu').hide(200);
+ });*/
+ }
+
+ },
+
+ showAboutModal: function() {
+ $('#about-modal').show(400);
+ $('#about-modal div.modal-header button.close').unbind('click').on('click', function() {
+ $('#about-modal').hide(200);
+ });
+ }
+
+
+ });
+});
\ No newline at end of file