From: Jordan Augé Date: Thu, 25 Jul 2013 13:27:50 +0000 (+0200) Subject: updated look and feel of the site X-Git-Tag: myslice-0.2-1~90^2~1 X-Git-Url: http://git.onelab.eu/?p=myslice.git;a=commitdiff_plain;h=dd6a3c82ae4bc1f7cea47551a546b2f7aeda3df6 updated look and feel of the site --- diff --git a/auth/templates/widget-login.html b/auth/templates/widget-login.html index ac90bcc1..80578e5e 100644 --- a/auth/templates/widget-login.html +++ b/auth/templates/widget-login.html @@ -1,6 +1,6 @@ {% insert_str prelude 'css/login.css' %}

{{ state }}

- +
{% csrf_token %} {% if next %} diff --git a/auth/views.py b/auth/views.py index 2a9ff836..43ca56ea 100644 --- a/auth/views.py +++ b/auth/views.py @@ -29,7 +29,8 @@ def login_user(request): if user.is_active: login(request, user) #state = "You're successfully logged in!" - return HttpResponseRedirect ('/login-ok') + return HttpResponseRedirect ('/portal/dashboard') + #return HttpResponseRedirect ('/login-ok') else: env['state'] = "Your account is not active, please contact the site admin." return render_to_response('view-login.html',env, context_instance=RequestContext(request)) @@ -37,7 +38,7 @@ def login_user(request): env['state'] = "Your username and/or password were incorrect." return render_to_response('view-login.html',env, context_instance=RequestContext(request)) else: - state='Welcome to MySlice' + state='' #Welcome to MySlice' env['state']=state env['username']=the_user(request) return render_to_response('view-login.html',env, context_instance=RequestContext(request)) diff --git a/manifold/js/manifold.js b/manifold/js/manifold.js index 94b64428..e7f6c1d8 100644 --- a/manifold/js/manifold.js +++ b/manifold/js/manifold.js @@ -32,11 +32,25 @@ var CLEAR_RECORDS = 8; var IN_PROGRESS = 101; var DONE = 102; +/* Update requests from plugins */ var SET_ADD = 201; var SET_REMOVED = 202; +/* Query status */ +var STATUS_NONE = 500; // Query has not been started yet +var STATUS_GET_IN_PROGRESS = 501; // Query has been sent, no result has been received +var STATUS_GET_RECEIVED = 502; // Success +var STATUS_GET_ERROR = 503; // Error +var STATUS_UPDATE_PENDING = 504; +var STATUS_UPDATE_IN_PROGRESS = 505; +var STATUS_UPDATE_RECEIVED = 506; +var STATUS_UPDATE_ERROR = 507; +// outdated ? + // A structure for storing queries + + function QueryExt(query, parent_query, main_query) { /* Constructor */ @@ -45,15 +59,16 @@ function QueryExt(query, parent_query, main_query) { this.query = query this.parent_query = (typeof parent_query == "undefined") ? false : parent_query this.main_query = (typeof main_query == "undefined") ? false : main_query - - // How to link to an update query ? they both have the same UUID !! - + + this.status = null; + this.results = null; + this.update_query = null; // null unless we are a main_query (aka parent_query == null); only main_query_fields can be updated... } function QueryStore() { - var main_queries = {}; - var analyzed_queries = {}; + this.main_queries = {}; + this.analyzed_queries = {}; /* Insertion */ @@ -63,14 +78,17 @@ function QueryStore() { query.analyze_subqueries(); } - query_ext = QueryExt(query, null, null) + query_ext = new QueryExt(query, null, null) manifold.query_store.main_queries[query.query_uuid] = query_ext; // We also need to insert all queries and subqueries from the analyzed_query query.iter_subqueries(function(sq, data, parent_query) { - parent_query_ext = this.find_analyzed_query_ext(parent_query.query_uuid); + if (parent_query) + parent_query_ext = manifold.query_store.find_analyzed_query_ext(parent_query.query_uuid); + else + parent_query_ext = null; sq_ext = QueryExt(sq, parent_query_ext, query_ext) - this.analyzed_queries[sq.query_uuid] = sq_ext; + manifold.query_store.analyzed_queries[sq.query_uuid] = sq_ext; }); } @@ -124,7 +142,7 @@ var manifold = { * Query management **************************************************************************/ - query_store: QueryStore(), + query_store: new QueryStore(), // XXX Remaining functions are deprecated since they are replaced by the query store @@ -142,6 +160,10 @@ var manifold = { * \param ManifoldQuery query Query to be added */ insert_query : function (query) { + // NEW API + manifold.query_store.insert(query); + + // FORMER API if (query.analyzed_query == null) { query.analyze_subqueries(); } @@ -375,10 +397,24 @@ var manifold = { switch(event_type) { case SET_ADD: // Query uuid has been updated with the key of a new element - query = manifold.find_query(query_uuid); + query_ext = manifold.find_analyzed_query(query_uuid); + + // update is only possible is the query is not pending, etc + // CHECK status ! + + // XXX we can only update subqueries of the main query. Check ! + // assert query_ext.parent_query == query_ext.main_query + update_query = query_ext.parent_query.update_query; + + // NOTE: update might modify the fields in Get + // NOTE : we have to modify all child queries + // NOTE : parts of a query might not be started (eg slice.measurements, how to handle ?) + + // if everything is done right, update_query should not be null. It is updated when we received results from the get query + // object = the same as get + // filter = key : update a single object for now + // fields = the same as get - // XXX We need to find the parent to update the property - // XXX We need to find the non-analyzed query so that it can be updated also break; case SET_REMOVED: // Query uuid has been updated with the key of a removed element diff --git a/myslice/viewutils.py b/myslice/viewutils.py index 2b5ab862..937fa9bd 100644 --- a/myslice/viewutils.py +++ b/myslice/viewutils.py @@ -5,7 +5,7 @@ from copy import deepcopy standard_topmenu_items = [ # { 'label':'Tab', 'href': '/tab/'}, # { 'label':'Scroll', 'href': '/scroll/'}, - { 'label':'One Plugin', 'href': '/plugin/'}, +# { 'label':'One Plugin', 'href': '/plugin/'}, { 'label':'Dashboard', 'href': '/portal/dashboard/'}, { 'label':'Slice', 'href': '/slice/'}, ] diff --git a/portal/views.py b/portal/views.py index 597f319d..dd631825 100644 --- a/portal/views.py +++ b/portal/views.py @@ -41,9 +41,7 @@ class DashboardView(TemplateView): def get_context_data(self, **kwargs): user_hrn = 'ple.upmc.jordan_auge' - messages.info(self.request, 'You have logged in') - - + #messages.info(self.request, 'You have logged in') page = Page(self.request) # Slow... diff --git a/trash/sliceview.py b/trash/sliceview.py index d462e3e6..252291f7 100644 --- a/trash/sliceview.py +++ b/trash/sliceview.py @@ -24,7 +24,7 @@ from plugins.quickfilter.quickfilter import QuickFilter from plugins.messages.messages import Messages from plugins.updater.updater import Updater -tmp_default_slice='ple.inria.heartbeat' +tmp_default_slice='ple.inria.myslicedemo' debug = True @login_required diff --git a/views/templates/view-login.html b/views/templates/view-login.html index 6cd126e4..f958c601 100644 --- a/views/templates/view-login.html +++ b/views/templates/view-login.html @@ -5,6 +5,7 @@ {% endblock unfold2_margin %} {% block unfold2_main %} + + +
+
+

Welcome to the OneLab portal !

+

New to OneLab? Please register or learn more about the project.

+
+

+

+Experimentally-driven research is key to success in exploring the possible +futures of the Internet. The OneLab initiative provides an open, +general-purpose, shared experimental facility, both large-scale and +sustainable, which allows European industry and academia to innovate and assess +the performance of their solutions. Based on the results of several different +European and national projects, OneLab offers access to a range of tools and +testbeds including PlanetLab Europe, the NITOS wireless testbed, and other +federated testbeds. +

+
+
+ {% endblock unfold2_main %} diff --git a/views/templates/widget-topmenu.html b/views/templates/widget-topmenu.html index cc0fa707..eabd6f88 100644 --- a/views/templates/widget-topmenu.html +++ b/views/templates/widget-topmenu.html @@ -6,7 +6,8 @@