ranger-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From omal...@apache.org
Subject [14/44] ARGUS-1. Initial code commit (Selvamohan Neethiraj via omalley)
Date Thu, 14 Aug 2014 20:50:25 GMT
http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.ttf
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.ttf b/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.ttf
new file mode 100644
index 0000000..d365924
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.ttf differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.woff b/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.woff
new file mode 100644
index 0000000..b9bd17e
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontawesome/fontawesome-webfont.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300.woff
new file mode 100644
index 0000000..99f3353
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300i.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300i.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300i.woff
new file mode 100644
index 0000000..dd0a0ea
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-300i.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400.woff
new file mode 100644
index 0000000..55b25f8
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400i.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400i.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400i.woff
new file mode 100644
index 0000000..cedefb8
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-400i.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600.woff
new file mode 100644
index 0000000..e83bb33
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600i.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600i.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600i.woff
new file mode 100644
index 0000000..983bb33
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-600i.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700.woff
new file mode 100644
index 0000000..27619e7
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700i.woff
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700i.woff b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700i.woff
new file mode 100644
index 0000000..e12c3a9
Binary files /dev/null and b/security-admin/src/main/webapp/fonts/fontopensans/open-sans-700i.woff differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/System-Settings-icon.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/System-Settings-icon.png b/security-admin/src/main/webapp/images/System-Settings-icon.png
new file mode 100644
index 0000000..2f34e5d
Binary files /dev/null and b/security-admin/src/main/webapp/images/System-Settings-icon.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/avatar.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/avatar.png b/security-admin/src/main/webapp/images/avatar.png
new file mode 100644
index 0000000..74a8031
Binary files /dev/null and b/security-admin/src/main/webapp/images/avatar.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/body-bg.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/body-bg.png b/security-admin/src/main/webapp/images/body-bg.png
new file mode 100644
index 0000000..5fcb51d
Binary files /dev/null and b/security-admin/src/main/webapp/images/body-bg.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/clear.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/clear.png b/security-admin/src/main/webapp/images/clear.png
new file mode 100644
index 0000000..580b52a
Binary files /dev/null and b/security-admin/src/main/webapp/images/clear.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/database_table_32.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/database_table_32.png b/security-admin/src/main/webapp/images/database_table_32.png
new file mode 100644
index 0000000..14bb068
Binary files /dev/null and b/security-admin/src/main/webapp/images/database_table_32.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/error-404-icon.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/error-404-icon.png b/security-admin/src/main/webapp/images/error-404-icon.png
new file mode 100644
index 0000000..9b8f81d
Binary files /dev/null and b/security-admin/src/main/webapp/images/error-404-icon.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/error-500-icon.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/error-500-icon.png b/security-admin/src/main/webapp/images/error-500-icon.png
new file mode 100644
index 0000000..017cc53
Binary files /dev/null and b/security-admin/src/main/webapp/images/error-500-icon.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/favicon.ico
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/favicon.ico b/security-admin/src/main/webapp/images/favicon.ico
new file mode 100644
index 0000000..8dff3f1
Binary files /dev/null and b/security-admin/src/main/webapp/images/favicon.ico differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/folder.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/folder.png b/security-admin/src/main/webapp/images/folder.png
new file mode 100644
index 0000000..0613c6b
Binary files /dev/null and b/security-admin/src/main/webapp/images/folder.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/folder2.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/folder2.png b/security-admin/src/main/webapp/images/folder2.png
new file mode 100644
index 0000000..85da97f
Binary files /dev/null and b/security-admin/src/main/webapp/images/folder2.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/form.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/form.png b/security-admin/src/main/webapp/images/form.png
new file mode 100644
index 0000000..3ea179c
Binary files /dev/null and b/security-admin/src/main/webapp/images/form.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hbase.jpg
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hbase.jpg b/security-admin/src/main/webapp/images/hbase.jpg
new file mode 100644
index 0000000..27c177a
Binary files /dev/null and b/security-admin/src/main/webapp/images/hbase.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hdfs.jpg
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hdfs.jpg b/security-admin/src/main/webapp/images/hdfs.jpg
new file mode 100644
index 0000000..2f6dad2
Binary files /dev/null and b/security-admin/src/main/webapp/images/hdfs.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hive.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hive.png b/security-admin/src/main/webapp/images/hive.png
new file mode 100644
index 0000000..b7939b1
Binary files /dev/null and b/security-admin/src/main/webapp/images/hive.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hline.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hline.png b/security-admin/src/main/webapp/images/hline.png
new file mode 100644
index 0000000..b488b95
Binary files /dev/null and b/security-admin/src/main/webapp/images/hline.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hortonworks-logo.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hortonworks-logo.png b/security-admin/src/main/webapp/images/hortonworks-logo.png
new file mode 100644
index 0000000..52a8bf2
Binary files /dev/null and b/security-admin/src/main/webapp/images/hortonworks-logo.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hortonworks_logo.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hortonworks_logo.png b/security-admin/src/main/webapp/images/hortonworks_logo.png
new file mode 100644
index 0000000..24ac876
Binary files /dev/null and b/security-admin/src/main/webapp/images/hortonworks_logo.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hortonworks_logo_bw.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hortonworks_logo_bw.png b/security-admin/src/main/webapp/images/hortonworks_logo_bw.png
new file mode 100644
index 0000000..4c23c70
Binary files /dev/null and b/security-admin/src/main/webapp/images/hortonworks_logo_bw.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/hortonworks_logo_w.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/hortonworks_logo_w.png b/security-admin/src/main/webapp/images/hortonworks_logo_w.png
new file mode 100644
index 0000000..abef9ac
Binary files /dev/null and b/security-admin/src/main/webapp/images/hortonworks_logo_w.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/knox1.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/knox1.png b/security-admin/src/main/webapp/images/knox1.png
new file mode 100644
index 0000000..56265c7
Binary files /dev/null and b/security-admin/src/main/webapp/images/knox1.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/storm.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/storm.png b/security-admin/src/main/webapp/images/storm.png
new file mode 100644
index 0000000..510cc92
Binary files /dev/null and b/security-admin/src/main/webapp/images/storm.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/storm1.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/storm1.png b/security-admin/src/main/webapp/images/storm1.png
new file mode 100644
index 0000000..a5b36c7
Binary files /dev/null and b/security-admin/src/main/webapp/images/storm1.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/images/xa-logo.png
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/images/xa-logo.png b/security-admin/src/main/webapp/images/xa-logo.png
new file mode 100644
index 0000000..1c90e5d
Binary files /dev/null and b/security-admin/src/main/webapp/images/xa-logo.png differ

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/index.html
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/index.html b/security-admin/src/main/webapp/index.html
new file mode 100644
index 0000000..58215e6
--- /dev/null
+++ b/security-admin/src/main/webapp/index.html
@@ -0,0 +1,126 @@
+<!doctype html>
+<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
+<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
+<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
+<!--[if gt IE 8]> 	   <html class="ie"> <![endif]-->
+<html class="no-js">
+	<!--<![endif]-->
+	<head>
+		<meta charset="utf-8">
+		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+		<title>Hortonworks</title>
+		<meta name="description" content="">
+		<meta name="viewport" content="width=device-width">
+
+		<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
+		<link rel="shortcut icon" href="images/favicon.ico">
+		<link rel="stylesheet" href="styles/app-font.css">
+
+		<link href="styles/bootstrap.css" media="all" rel="stylesheet" type="text/css" id="bootstrap-css">
+		<link href="libs/other/backgrid/backgrid.css" media="all" rel="stylesheet" type="text/css" >
+		<link href="libs/bower/backgrid-paginator/css/backgrid-paginator.css" media="all" rel="stylesheet" type="text/css" >
+		<link href="libs/bower/backgrid-filter/css/backgrid-filter.css" media="all" rel="stylesheet" type="text/css" >
+		<link href="libs/bower/select2/select2.css" media="all" rel="stylesheet" type="text/css" >
+		<link href="libs/bower/pines-notify/css/jquery.pnotify.default.css" rel="stylesheet">
+		<link href="libs/bower/tag-it/css/jquery.tagit.css" rel="stylesheet">
+		<link href="libs/other/datepicker/css/datepicker.css" media="all" rel="stylesheet" type="text/css">
+		<link href="libs/bower/x-editable/css/bootstrap-editable.css" media="all" rel="stylesheet" type="text/css">
+		<link href="libs/other/jquery-ui/css/jquery-ui-1.10.3.custom.min.css" rel="stylesheet">
+		<link href="libs/other/visualsearch/css/reset.css" rel="stylesheet">
+		<link href="libs/other/visualsearch/css/workspace.css" rel="stylesheet">
+		<link href="libs/other/visualsearch/css/icons.css" rel="stylesheet">   
+		<link href="styles/xa.css" media="all" rel="stylesheet" type="text/css" >
+	</head>
+
+	<body class="fluid-layout">
+		<!-- Main navigation bar
+		================================================== -->
+		<header class="navbar navbar-fixed-top" id="top-navbar">
+			<div class="navbar-inner">
+				<div class="container">
+					<a class="logo page-logo" href="#"><img alt="Af_logo" src="images/hortonworks_logo_w.png"></a>
+					<a class="btn nav-button collapsed" data-toggle="collapse" data-target=".nav-collapse"> <span class="icon-reorder"></span> </a>
+					<div id="r_topNav">
+
+					</div>
+					<div id="r_topProfileBar">
+
+					</div>
+				</div>
+			</div>
+		</header>
+		<!-- / Main navigation bar -->
+		<!-- Page content
+		================================================== -->
+		<section class="container">
+
+			<section id="r_breadcrumbs" class="row-fluid">
+				
+			</section>
+			
+			<section id="r_content" class="row-fluid" style="min-height: 450px;">
+
+
+				<!-- <img src="images/loading-blue.gif" style="margin-left: 43%;margin-top: 1%;width:4%;" /> -->
+
+				<div class="loading-img">
+					<!--<img src="images/Hortonworks.jpg" />-->
+
+					<div id="center">
+						<div class="letter_container_1">
+							<span>L</span>
+						</div>
+						<div class="letter_container_2">
+							<span>O</span>
+						</div>
+						<div class="letter_container_3">
+							<span>A</span>
+						</div>
+						<div class="letter_container_4">
+							<span>D</span>
+						</div>
+						<div class="letter_container_5">
+							<span>I</span>
+						</div>
+						<div class="letter_container_6">
+							<span>N</span>
+						</div>
+						<div class="letter_container_7">
+							<span>G</span>
+						</div>
+						<div class="letter_container_8">
+							<span>..</span>
+						</div>
+					</div>
+				</div>
+
+			</section><!-- r_content -->
+
+			<!-- Page footer
+			================================================== -->
+			<footer id="r_footer">
+
+			</footer>
+			<!-- / Page footer -->
+		</section>
+		<!-- Page content ends
+		================================================== -->
+
+		<a href="#" class="btn-top _allowNav" id="back-top" title="Scroll to top">
+			<i class="icon-arrow-up bigger-120 _allowNav"></i>
+		</a>
+
+
+		<!-- build:js scripts/main.js -->
+		<script data-main="scripts/Init" src="libs/bower/requirejs/js/require.js"></script>
+		<!-- endbuild -->
+		<script type="text/javascript">
+			require.config({
+				waitSeconds : 0
+			});
+			if (!window.console) window.console = {};
+            if (!window.console.log) window.console.log = function () { };
+
+		</script>
+	</body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/robots.txt
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/robots.txt b/security-admin/src/main/webapp/robots.txt
new file mode 100644
index 0000000..9417495
--- /dev/null
+++ b/security-admin/src/main/webapp/robots.txt
@@ -0,0 +1,3 @@
+# robotstxt.org
+
+User-agent: *

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/App.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/App.js b/security-admin/src/main/webapp/scripts/App.js
new file mode 100644
index 0000000..6b55cea
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/App.js
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * Frestone Infotech. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with Frestone Infotech.
+ */
+
+define(function(require) {
+    'use strict';
+
+    var Backbone		= require('backbone'); 
+    var localization	= require('utils/XALangSupport');
+	var SessionMgr		= require('mgrs/SessionMgr');
+    /*
+     * Localization initialization
+     */
+    localization.setDefaultCulture(); // will take default that is en
+    
+	var App = new Backbone.Marionette.Application();
+	App.userProfile = SessionMgr.getUserProfile();
+
+	/* Add application regions here */
+	App.addRegions({
+    	rTopNav			: "#r_topNav",
+        rTopProfileBar	: "#r_topProfileBar",
+        rBreadcrumbs	: '#r_breadcrumbs',
+        rContent		: "#r_content",
+        rFooter			: "#r_footer"
+	});
+
+	/* Add initializers here */
+	App.addInitializer( function () {
+	//	Communicator.mediator.trigger("Application:Start");
+        Backbone.history.start();
+	});
+
+    // Add initialize hooks
+    App.on("initialize:before", function() {
+    });
+	
+    App.on("initialize:after", function() {
+    });
+    
+    App.addInitializer(function(options) {
+        console.log('Creating new Router instance');
+    });
+    
+    return App;
+});
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/Init.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/Init.js b/security-admin/src/main/webapp/scripts/Init.js
new file mode 100644
index 0000000..6921e84
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/Init.js
@@ -0,0 +1,139 @@
+require.config({
+
+//    baseUrl: "/scripts",
+
+	 urlArgs : 'ver=build.version',
+	
+	/* starting point for application */
+    deps: ['backbone.marionette', 'bootstrap', 'Main','globalize','utils/XALangSupport'],
+
+    shim: {
+        backbone: {
+            deps: [ 'underscore', 'jquery'],
+            exports: 'Backbone'
+        },
+        bootstrap: {
+            deps: ['jquery'],
+            exports: 'jquery'
+        },
+        backgrid : {
+        	deps: [ 'backbone','backbone-fetch-cache']
+        },
+        'backgrid-paginator' : {
+        	deps: [ 'backbone', 'backgrid' ]
+        },
+        'backgrid-filter' : {
+        	deps: [ 'backbone', 'backgrid' ]
+        },
+        'backbone-forms.templates' : {
+        	deps: [ 'backbone-forms.list', 'backbone-forms' ]
+        },
+        'backbone-forms.XAOverrides' : {
+        	deps: [ 'backbone-forms' ]
+        },
+		'Backbone.BootstrapModal' : {
+			deps : ['jquery', 'underscore', 'backbone']
+		},
+		'bootstrap-editable': {
+           deps: ['bootstrap']
+       },
+       'jquery-toggles' : {
+    	   deps: ['jquery']
+       },
+       'jquery.cookie': {
+           deps: [ 'jquery' ]
+       },
+       'tag-it': {
+           deps: [ 'jquery', 'jquery-ui' ]
+       },
+       'jquery-ui': {
+           deps: [ 'jquery' ]
+       },
+       'globalize' :{
+   			exports: 'Globalize'
+   		},
+   	   'bootstrap-datepicker' : {
+   		   deps: ['bootstrap']
+   	   } ,
+
+       pnotify :	{ deps: ['jquery'], exports: 'pnotify' },
+       moment  :	{ deps: ['jquery'], exports: 'moment' },
+       'localstorage' :{
+            deps : ['backbone','underscore','jquery']
+       },
+       'backbone-fetch-cache' :{
+            deps : ['backbone','underscore','jquery']
+       },
+       'visualsearch': {
+            deps: [ 'jquery', 'jquery-ui','backbone','underscore']
+       },
+       'select2' : { 
+    	   deps: ['jquery', 'bootstrap'] 
+       },
+       'bootbox' : {
+         deps: ['jquery'] 
+       }       
+    },
+
+    paths: {
+    	
+        jquery						: '../libs/bower/jquery/js/jquery.min',
+        'jquery-ui'					: '../libs/other/jquery-ui/js/jquery-ui-1.10.3.custom',
+        backbone					: '../libs/bower/backbone-amd/js/backbone',
+        underscore					: '../libs/bower/underscore-amd/js/underscore',
+
+        /* alias all marionette libs */
+        'backbone.marionette'		: '../libs/bower/backbone.marionette/js/backbone.marionette',
+		'backbone.wreqr'			: '../libs/bower/backbone.wreqr/js/backbone.wreqr',
+        'backbone.babysitter'		: '../libs/bower/backbone.babysitter/js/backbone.babysitter',
+
+        /* alias the bootstrap js lib */
+        bootstrap					: '../libs/bower/bootstrap/js/bootstrap',
+        
+        /* BackGrid for Tables */
+        'backgrid'					: '../libs/other/backgrid/backgrid',
+        'backbone-fetch-cache'		: '../libs/other/backbone.fetch-cache',
+        
+        'backgrid-paginator'		: '../libs/bower/backgrid-paginator/js/backgrid-paginator',
+        'backgrid-filter'			: '../libs/bower/backgrid-filter/js/backgrid-filter',
+       
+        'backbone-pageable'			: '../libs/bower/backbone-pageable/js/backbone-pageable',
+		'localstorage'				: '../libs/bower/backbone.localstorage/backbone.localStorage',
+        'backbone-forms'			: '../libs/bower/backbone-forms/js/backbone-forms',
+        'backbone-forms.list'		: '../libs/bower/backbone-forms/js/list',
+        'backbone-forms.templates'	: '../libs/bower/backbone-forms/js/bootstrap',
+        'backbone-forms.XAOverrides': '../libs/fsOverrides/BBFOverrides',
+
+		'Backbone.BootstrapModal'	: '../libs/bower/backbone.bootstrap-modal/js/backbone.bootstrap-modal',
+		'bootstrap-editable'		: '../libs/bower/x-editable/js/bootstrap-editable',
+		'bootstrap-datepicker'		: '../libs/other/datepicker/js/bootstrap-datepicker',
+		
+		'jquery.cookie'				: '../libs/other/jquery-cookie/js/jquery.cookie',
+        'jquery-toggles'			: '../libs/bower/jquery-toggles/js/toggles.min',
+        'tag-it'					: '../libs/bower/tag-it/js/tag-it',
+        'select2'					: '../libs/bower/select2/select2',
+        'bootbox'					: '../libs/bower/bootbox/js/bootbox',
+        'pnotify'					: '../libs/bower/pines-notify/js/jquery.pnotify.min',
+        'moment'					: '../libs/bower/moment/js/moment-with-langs.min',
+        'visualsearch'				: '../libs/other/visualsearch/js/visualsearch',
+        'globalize'               	: '../libs/bower/globalize/lib/globalize',
+        /* handlebars from the require handlerbars plugin below */
+        'handlebars'				: '../libs/bower/require-handlebars-plugin/js/Handlebars',
+        /* require handlebars plugin - Alex Sexton */
+        'i18nprecompile'			: '../libs/bower/require-handlebars-plugin/js/i18nprecompile',
+        'json2'						: '../libs/bower/require-handlebars-plugin/js/json2',
+        'hbs'						: '../libs/bower/require-handlebars-plugin/js/hbs',
+
+        'tmpl'						: '../templates'
+    },
+
+    hbs: {
+		disableI18n: true,
+        helperPathCallback:         // Callback to determine the path to look for helpers
+            function (name) {       // ('/template/helpers/'+name by default)
+        		return "../helpers/XAHelpers";
+        },
+        templateExtension: "html", 
+        compileOptions: {} 
+    }
+});

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/Main.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/Main.js b/security-admin/src/main/webapp/scripts/Main.js
new file mode 100644
index 0000000..23cb1d4
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/Main.js
@@ -0,0 +1,22 @@
+require([
+	'backbone',
+	'App',
+	'RegionManager',
+	'routers/Router',
+	'controllers/Controller',
+	'modules/XAOverrides',
+	'hbs!tmpl/common/loading_tmpl'
+],
+function ( Backbone, App, RegionManager, AppRouter, AppController, XAOverrides,loadingHTML ) {
+    'use strict';
+
+	App.appRouter = new AppRouter({
+		controller: new AppController()
+	});
+	App.appRouter.on('beforeroute', function(event) {
+		$(App.rContent.$el).html(loadingHTML);
+	});
+	// Start Marionette Application in desktop mode (default)
+	Backbone.fetchCache._cache = {};
+	App.start();
+});

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXAccessAuditListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXAccessAuditListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXAccessAuditListBase.js
new file mode 100644
index 0000000..70eee2d
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXAccessAuditListBase.js
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXAccessAudit		= require('models/VXAccessAudit');
+
+	var VXAccessAuditListBase = XABaseCollection.extend(
+	/** @lends VXAccessAuditListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/accessAudit',
+
+		model : VXAccessAudit,
+
+		/**
+		 * VXAccessAuditListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXAccessAudit';
+			this.modelAttrName = 'vXAccessAudits';
+			this.bindErrorEvents();
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXAccessAuditListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXAssetListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXAssetListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXAssetListBase.js
new file mode 100644
index 0000000..f8b08a6
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXAssetListBase.js
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXAsset				= require('models/VXAsset');
+
+	var VXAssetListBase = XABaseCollection.extend(
+	/** @lends VXAssetListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/assets',
+
+		model : VXAsset,
+
+		/**
+		 * VXAssetListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXAsset';
+			this.modelAttrName = 'vXAssets';
+			this.bindErrorEvents();
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXAssetListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXAuditMapListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXAuditMapListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXAuditMapListBase.js
new file mode 100644
index 0000000..6d283ad
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXAuditMapListBase.js
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXAuditMap			= require('models/VXAuditMap');
+
+	var VXAuditMapListBase = XABaseCollection.extend(
+	/** @lends VXAuditMapListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'xusers/auditmaps',
+
+		model : VXAuditMap,
+
+		/**
+		 * VXAuditMapListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXAuditMap';
+			this.modelAttrName = 'vXAuditMaps';
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXAuditMapListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXAuditRecordListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXAuditRecordListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXAuditRecordListBase.js
new file mode 100644
index 0000000..9797621
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXAuditRecordListBase.js
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXAuditRecord		= require('models/VXAuditRecord');
+
+	var VXAuditRecordListBase = XABaseCollection.extend(
+	/** @lends VXAuditRecordListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/audit/report',
+
+		model : VXAuditRecord,
+
+		/**
+		 * VXAuditRecordListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXAuditRecord';
+			this.modelAttrName = 'vXAuditRecords';
+			this.bindErrorEvents();
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXAuditRecordListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXAuthSessionListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXAuthSessionListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXAuthSessionListBase.js
new file mode 100644
index 0000000..dd354a8
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXAuthSessionListBase.js
@@ -0,0 +1,55 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXAuthSession		= require('models/VXAuthSession');
+
+	var VXAuthSessionListBase = XABaseCollection.extend(
+	/** @lends VXAuthSessionListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'xusers/authSessions',
+
+		model : VXAuthSession,
+
+		/**
+		 * VXAuthSessionListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXAuthSession';
+			this.modelAttrName = 'vXAuthSessions';
+			this.bindErrorEvents();
+		}
+		
+
+		/*************************
+		 * Non - CRUD operations
+		 *************************/
+
+	},{
+	/**
+	* Table Cols to be passed to Backgrid
+	* UI has to use this as base and extend this.
+	*
+	*/
+
+		tableCols : {}
+	});
+
+    return VXAuthSessionListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXGroupListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXGroupListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXGroupListBase.js
new file mode 100644
index 0000000..54ce428
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXGroupListBase.js
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXGroup				= require('models/VXGroup');
+
+	var VXGroupListBase = XABaseCollection.extend(
+	/** @lends VXGroupListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'xusers/groups',
+
+		model : VXGroup,
+
+		/**
+		 * VXGroupListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXGroup';
+			this.modelAttrName = 'vXGroups';
+			this.bindErrorEvents();
+		},
+		/*************************
+		 * Non - CRUD operations
+		 *************************/
+		
+		getGroupsForUser : function(userId, options){
+			var url = XAGlobals.baseURL + 'xusers/' + userId + '/groups';
+			
+			options = _.extend({
+				//data : JSON.stringify(postData),
+				contentType : 'application/json',
+				dataType : 'json'
+			}, options);
+
+			return this.constructor.nonCrudOperation.call(this, url, 'GET', options);
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXGroupListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXPermMapListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXPermMapListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXPermMapListBase.js
new file mode 100644
index 0000000..7f03f6e
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXPermMapListBase.js
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXPermMap			= require('models/VXPermMap');
+
+	var VXPermMapListBase = XABaseCollection.extend(
+	/** @lends VXPermMapListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'xusers/permmaps',
+
+		model : VXPermMap,
+
+		/**
+		 * VXPermMapListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXPermMap';
+			this.modelAttrName = 'vXPermMaps';
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXPermMapListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXPolicyExportAuditListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXPolicyExportAuditListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXPolicyExportAuditListBase.js
new file mode 100644
index 0000000..7681819
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXPolicyExportAuditListBase.js
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXPolicyExportAudit	= require('models/VXPolicyExportAudit');
+
+	var VXPolicyExportAuditListBase = XABaseCollection.extend(
+	/** @lends VXGroupListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/exportAudit',
+
+		model : VXPolicyExportAudit,
+
+		/**
+		 * VXGroupListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXPolicyExportAudit';
+			this.modelAttrName = 'vXPolicyExportAudits';
+			this.bindErrorEvents();
+		}
+		
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXPolicyExportAuditListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXPortalUserListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXPortalUserListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXPortalUserListBase.js
new file mode 100644
index 0000000..34a8073
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXPortalUserListBase.js
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXPortalUser		= require('models/VXPortalUser');
+
+	var VXPortalUserListBase = XABaseCollection.extend(
+	/** @lends VXPortalUserListBase.prototype */
+	{
+		url: XAGlobals.baseURL + '',
+
+		model : VXPortalUser,
+
+		/**
+		 * VXPortalUserListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXPortalUser';
+			this.modelAttrName = 'vXPortalUsers';
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXPortalUserListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXResourceListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXResourceListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXResourceListBase.js
new file mode 100644
index 0000000..3dcde9e
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXResourceListBase.js
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXResource			= require('models/VXResource');
+	
+	var VXResourceListBase 	= XABaseCollection.extend(
+	/** @lends VXResourceListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/resources',
+
+		model : VXResource,
+	//	localStorage: new Backbone.LocalStorage("VXResourceCollection"),
+	//	local:true,
+		/**
+		 * VXResourceListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXResource';
+			this.modelAttrName = 'vXResources';
+			this.bindErrorEvents();
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+	});
+
+    return VXResourceListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXTrxLogListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXTrxLogListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXTrxLogListBase.js
new file mode 100644
index 0000000..3271bd2
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXTrxLogListBase.js
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXTrxLog			= require('models/VXTrxLog');
+
+	var VXTrxLogListBase = XABaseCollection.extend(
+	/** @lends VXTrxLogListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'assets/report',
+
+		model : VXTrxLog,
+
+		/**
+		 * VXTrxLogListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXTrxLog';
+			this.modelAttrName = 'vXTrxLogs';
+			this.bindErrorEvents();
+		},
+		getFullTrxLogListForTrxId : function(trxId, options){
+			var url = this.url  + '/' + trxId ;
+			
+			options = _.extend({
+				//	data : JSON.stringify(postData),
+				contentType : 'application/json',
+				dataType : 'json'
+			}, options);
+			
+			return this.constructor.nonCrudOperation.call(this, url, 'GET', options);
+		}
+	},{
+		// static class members
+		/**
+		* Table Cols to be passed to Backgrid
+		* UI has to use this as base and extend this.
+		*
+		*/
+
+		tableCols : {}
+
+	});
+
+    return VXTrxLogListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collection_bases/VXUserListBase.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collection_bases/VXUserListBase.js b/security-admin/src/main/webapp/scripts/collection_bases/VXUserListBase.js
new file mode 100644
index 0000000..b3d9a78
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collection_bases/VXUserListBase.js
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var XABaseCollection	= require('collections/XABaseCollection');
+	var XAGlobals			= require('utils/XAGlobals');
+	var VXUser				= require('models/VXUser');
+
+	var VXUserListBase = XABaseCollection.extend(
+	/** @lends VXUserListBase.prototype */
+	{
+		url: XAGlobals.baseURL + 'xusers/users',
+
+		model : VXUser,
+
+		/**
+		 * VXUserListBase initialize method
+		 * @augments XABaseCollection
+		 * @constructs
+		 */
+		initialize : function() {
+			this.modelName = 'VXUser';
+			this.modelAttrName = 'vXUsers';
+			this.bindErrorEvents();
+		},
+		
+
+		/*************************
+		 * Non - CRUD operations
+		 *************************/
+
+		getUsersOfGroup : function(groupId, options){
+			var url = XAGlobals.baseURL  + 'xusers/'  + groupId + '/users';
+			
+			options = _.extend({
+				//data : JSON.stringify(postData),
+				contentType : 'application/json',
+				dataType : 'json'
+			}, options);
+
+			return this.constructor.nonCrudOperation.call(this, url, 'GET', options);
+		}
+	},{
+	/**
+	* Table Cols to be passed to Backgrid
+	* UI has to use this as base and extend this.
+	*
+	*/
+
+		tableCols : {}
+	});
+
+    return VXUserListBase;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXAccessAuditList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXAccessAuditList.js b/security-admin/src/main/webapp/scripts/collections/VXAccessAuditList.js
new file mode 100644
index 0000000..2aba7a9
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXAccessAuditList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXAccessAuditListBase		= require('collection_bases/VXAccessAuditListBase');
+
+	var VXAccessAuditList = VXAccessAuditListBase.extend(
+	/** @lends VXAccessAuditList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXAccessAuditList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXAssetList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXAssetList.js b/security-admin/src/main/webapp/scripts/collections/VXAssetList.js
new file mode 100644
index 0000000..22aa9a6
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXAssetList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXAssetListBase		= require('collection_bases/VXAssetListBase');
+
+	var VXAssetList = VXAssetListBase.extend(
+	/** @lends VXAssetList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXAssetList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXAuditMapList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXAuditMapList.js b/security-admin/src/main/webapp/scripts/collections/VXAuditMapList.js
new file mode 100644
index 0000000..8c2876b
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXAuditMapList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXAuditMapListBase		= require('collection_bases/VXAuditMapListBase');
+
+	var VXAuditMapList = VXAuditMapListBase.extend(
+	/** @lends VXAuditMapList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXAuditMapList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXAuditRecordList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXAuditRecordList.js b/security-admin/src/main/webapp/scripts/collections/VXAuditRecordList.js
new file mode 100644
index 0000000..69e6d7b
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXAuditRecordList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXAuditRecordListBase		= require('collection_bases/VXAuditRecordListBase');
+
+	var VXAuditRecordList = VXAuditRecordListBase.extend(
+	/** @lends VXAuditRecordList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXAuditRecordList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXAuthSessionList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXAuthSessionList.js b/security-admin/src/main/webapp/scripts/collections/VXAuthSessionList.js
new file mode 100644
index 0000000..66c0423
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXAuthSessionList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXAuthSessionListBase		= require('collection_bases/VXAuthSessionListBase');
+
+	var VXAuthSessionList = VXAuthSessionListBase.extend(
+	/** @lends VXAuthSessionList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXAuthSessionList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXGroupList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXGroupList.js b/security-admin/src/main/webapp/scripts/collections/VXGroupList.js
new file mode 100644
index 0000000..a7328b1
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXGroupList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXGroupListBase		= require('collection_bases/VXGroupListBase');
+
+	var VXGroupList = VXGroupListBase.extend(
+	/** @lends VXGroupList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXGroupList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXPermMapList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXPermMapList.js b/security-admin/src/main/webapp/scripts/collections/VXPermMapList.js
new file mode 100644
index 0000000..5c8026d
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXPermMapList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXPermMapListBase		= require('collection_bases/VXPermMapListBase');
+
+	var VXPermMapList = VXPermMapListBase.extend(
+	/** @lends VXPermMapList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXPermMapList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXPolicyExportAuditList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXPolicyExportAuditList.js b/security-admin/src/main/webapp/scripts/collections/VXPolicyExportAuditList.js
new file mode 100644
index 0000000..9ba954c
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXPolicyExportAuditList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXPolicyExportAuditListBase		= require('collection_bases/VXPolicyExportAuditListBase');
+
+	var VXPolicyExportAuditList = VXPolicyExportAuditListBase.extend(
+	/** @lends VXGroupList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXPolicyExportAuditList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXPortalUserList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXPortalUserList.js b/security-admin/src/main/webapp/scripts/collections/VXPortalUserList.js
new file mode 100644
index 0000000..1e06976
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXPortalUserList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXPortalUserListBase= require('collection_bases/VXPortalUserListBase');
+
+	var VXPortalUserList = VXPortalUserListBase.extend(
+	/** @lends VXPortalUserList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXPortalUserList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXResourceList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXResourceList.js b/security-admin/src/main/webapp/scripts/collections/VXResourceList.js
new file mode 100644
index 0000000..a4422ac
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXResourceList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXResourceListBase		= require('collection_bases/VXResourceListBase');
+
+	var VXResourceList = VXResourceListBase.extend(
+	/** @lends VXResourceList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXResourceList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXTrxLogList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXTrxLogList.js b/security-admin/src/main/webapp/scripts/collections/VXTrxLogList.js
new file mode 100644
index 0000000..c60ba25
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXTrxLogList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXTrxLogListBase		= require('collection_bases/VXTrxLogListBase');
+
+	var VXTrxLogList = VXTrxLogListBase.extend(
+	/** @lends VXTrxLogList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXTrxLogList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/VXUserList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/VXUserList.js b/security-admin/src/main/webapp/scripts/collections/VXUserList.js
new file mode 100644
index 0000000..92ab307
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/VXUserList.js
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require){
+	'use strict';	
+
+	var VXUserListBase		= require('collection_bases/VXUserListBase');
+
+	var VXUserList = VXUserListBase.extend(
+	/** @lends VXUserList.prototype */
+	{
+	},{
+		// static class members
+	});
+
+    return VXUserList;
+});
+
+

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/collections/XABaseCollection.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/collections/XABaseCollection.js b/security-admin/src/main/webapp/scripts/collections/XABaseCollection.js
new file mode 100644
index 0000000..171ae2a
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/collections/XABaseCollection.js
@@ -0,0 +1,136 @@
+/*
+ * Copyright (c) 2014 XASecure
+ * All rights reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * XASecure. ("Confidential Information").  You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with XASecure.
+ */
+
+define(function(require) {
+	'use strict';
+
+	var Backbone	= require('backbone');
+	var XAGlobals	= require('utils/XAGlobals');
+	var XAUtils		= require('utils/XAUtils');
+	
+	require('backbone-pageable');
+	var XABaseCollection = Backbone.PageableCollection.extend(
+	/** @lends XABaseCollection.prototype */
+	{
+		/**
+		 * XABaseCollection's initialize function
+		 * @augments Backbone.PageableCollection
+		 * @constructs
+		 */
+
+		initialize : function() {
+		},
+		bindErrorEvents :function(){
+			this.bind("error", XAUtils.defaultErrorHandler);
+		},
+		/**
+		 * state required for the PageableCollection 
+		 */
+		state : {
+			firstPage: 0,
+			pageSize : XAGlobals.settings.PAGE_SIZE
+		},
+		mode : 'server',
+		/**
+		 * queryParams required for the PageableCollection 
+		 * Server sends us this :
+		 * pageSize: "2"
+		 * resultSize: "2"
+		 * startIndex: "0"
+		 * totalCount: "15"
+		 */
+		queryParams: {
+			pageSize	: 'pageSize',
+			sortKey		: 'sortBy',
+			order		: 'sortType',
+			totalRecords: 'totalCount',
+			startIndex : function(){
+				return this.state.currentPage * this.state.pageSize;
+			}
+		},
+
+		/**
+		 * override the parseState of PageableCollection for our use
+		 */
+		parseState: function (resp, queryParams, state, options) {
+			if(!this.modelAttrName){
+				throw new Error("this.modelAttrName not defined for " + this);
+			}
+			var serverState = _.omit(resp,this.modelAttrName);
+			var newState = _.clone(state);
+
+			_.each(_.pairs(_.omit(queryParams, "directions")), function (kvp) {
+				var k = kvp[0], v = kvp[1];
+				var serverVal = serverState[v];
+				if (!_.isUndefined(serverVal) && !_.isNull(serverVal)){
+					if((k == 'pageSize') || (k == 'totalRecords')){
+						newState[k] = parseInt(serverState[v],10);
+					} else {
+						newState[k] = serverState[v];
+					}
+				}
+			});
+
+			if (serverState.sortType) {
+				newState.order = _.invert(queryParams.directions)[serverState.sortType] * 1;
+			}
+			
+			var startIndex = parseInt(serverState.startIndex,10);
+			var totalCount = parseInt(serverState.totalCount,10);
+			var pageSize = parseInt(serverState.pageSize,10);
+
+			newState.pageSize = pageSize ? pageSize : state.pageSize;
+			newState.currentPage = startIndex === 0 ? 0 : Math.ceil(startIndex / newState.pageSize);
+			//newState.totalPages = totalCount === 0 ? 0 : Math.ceil(totalCount / serverState.pageSize);
+
+			return newState;
+		},
+
+		/**
+		 * override the parseRecords of PageableCollection for our use
+		 */
+		parseRecords : function(resp, options){
+			if(!this.modelAttrName){
+				throw new Error("this.modelAttrName not defined for " + this);
+			}
+			return resp[this.modelAttrName];
+		}
+
+	}, {
+		//static functions
+
+		/**
+		 * function to get table cols for backgrid, this function assumes that the 
+		 * collection has a static tableCols member.
+		 */
+		getTableCols : function(cols, collection){
+			var retCols = _.map(cols, function(v, k, l){
+				var defaults = collection.constructor.tableCols[k];
+				if(! defaults){
+					//console.log("Error!! " + k + " not found in collection: " , collection);
+					defaults = {};
+				}
+				return _.extend({ 'name' : k }, defaults, v );
+			});
+
+			return retCols;
+		},
+		nonCrudOperation : function(url, requestMethod, options){
+			return Backbone.sync.call(this, null, this, _.extend({
+				url: url,
+				type: requestMethod
+			}, options));
+		}
+
+	});
+
+	return XABaseCollection;
+});

http://git-wip-us.apache.org/repos/asf/incubator-argus/blob/7defc061/security-admin/src/main/webapp/scripts/communicator.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/communicator.js b/security-admin/src/main/webapp/scripts/communicator.js
new file mode 100644
index 0000000..5d2bfd2
--- /dev/null
+++ b/security-admin/src/main/webapp/scripts/communicator.js
@@ -0,0 +1,24 @@
+define([
+	'backbone',
+	'backbone.marionette'
+],
+function( Backbone ) {
+    'use strict';
+
+	var Communicator = Backbone.Marionette.Controller.extend({
+		initialize: function( options ) {
+			console.log("initialize a Communicator");
+
+			// create a pub sub
+			this.vent = new Backbone.Wreqr.EventAggregator();
+
+			//create a req/res
+			this.reqres = new Backbone.Wreqr.RequestResponse();
+
+			// create commands
+			this.command = new Backbone.Wreqr.Commands();
+		}
+	});
+
+	return new Communicator();
+});


Mime
View raw message