From: Thierry Parmentelat Date: Mon, 10 Dec 2012 15:57:58 +0000 (+0100) Subject: getting closer X-Git-Tag: myslice-django-0.1-1~155 X-Git-Url: http://git.onelab.eu/?p=myslice.git;a=commitdiff_plain;h=20028a8cc2b83ed3c8d98218958ebd34bc75f891 getting closer --- diff --git a/auth/views.py b/auth/views.py index eca19396..817fb631 100644 --- a/auth/views.py +++ b/auth/views.py @@ -3,10 +3,15 @@ from django.core.context_processors import csrf from django.template import RequestContext from django.shortcuts import render_to_response from django.contrib.auth import authenticate, login +from django.http import HttpResponseRedirect + +from auth.backend import MyCustomBackend def login_user(request): state = "Please log in below..." username = password = '' + env={'hard_wired_users':MyCustomBackend.hard_wired_users} + if request.POST: username = request.POST.get('username') password = request.POST.get('password') @@ -16,10 +21,16 @@ def login_user(request): if user.is_active: login(request, user) state = "You're successfully logged in!" + return HttpResponseRedirect ('/') else: state = "Your account is not active, please contact the site admin." + env['state']=state; env['username']=username + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) else: state = "Your username and/or password were incorrect." - - return render_to_response('view-login.html',{'state':state, 'username': username}, - context_instance=RequestContext(request)) + env['state']=state; env['username']=username + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) + else: + state='Welcome to MySlice' + env['state']=state; env['username']='' + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) diff --git a/slice/views.py b/slice/views.py index a057a059..9bfe1abf 100644 --- a/slice/views.py +++ b/slice/views.py @@ -5,6 +5,7 @@ from django.core.context_processors import csrf from django.template import RequestContext from django.template.loader import render_to_string from django.shortcuts import render_to_response +from django.contrib.auth.decorators import login_required lorem=""" Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quam nunc putamus parum claram, anteposuerit litterarum formas humanitatis per seacula quarta decima et quinta decima. Eodem modo typi, qui nunc nobis videntur parum clari, fiant sollemnes in futurum. @@ -20,7 +21,6 @@ def menu_items (current): result=deepcopy(standard_menu_items) for d in result: if d['label'].lower().find(current)>=0: d['active']=True - print "menu_items(%s)=%s"%(current,result) return result @@ -29,6 +29,7 @@ for site in [ 'inria', 'upmc' , 'ibbt' ]: for slice in [ 'foo', 'bar', 'tutu', 'test', 'omf', 'heartbeat' ]: hard_wired_slice_names.append ("ple.%s.%s"%(site,slice)) +@login_required def fake_slice_view (request, name=None): result=render_to_response('view-slice.html', {'foo':'var_foo_set_in_view', @@ -41,13 +42,15 @@ def fake_slice_view (request, name=None): return result +@login_required def tab_view (request): - return render_to_response ('tab-view.html', + return render_to_response ('view-tab.html', { 'lorem': lorem, 'menu_items': menu_items('tab'), }, context_instance=RequestContext(request)) +@login_required def scroll_view (request): return render_to_response ('view-scroll.html', { 'lorem':lorem, diff --git a/static/css/mymenu.css b/static/css/mymenu.css deleted file mode 100644 index 08db8274..00000000 --- a/static/css/mymenu.css +++ /dev/null @@ -1,11 +0,0 @@ -#menu_ul { - position: absolute; - left: 0px; - margin: 15px; -} -#menu_logo { - position: absolute; - right:0px; - margin: 15px; -} - diff --git a/templates/layout-myslice.html b/templates/layout-myslice.html index de2792ea..d3a7436b 100644 --- a/templates/layout-myslice.html +++ b/templates/layout-myslice.html @@ -28,12 +28,9 @@ {% block container %}
- + {% block topmenu %} + {% include 'widget-topmenu.html' %} + {% endblock topmenu %}
{% block content_main %} diff --git a/templates/view-login.html b/templates/view-login.html index ed784636..6e3013cf 100644 --- a/templates/view-login.html +++ b/templates/view-login.html @@ -1,24 +1,17 @@ {% extends 'layout-myslice.html' %} {% block content_related %} - - -
- {% csrf_token %} - {% if next %} - - {% endif %} - username: -
- password: -
- -
+{% include 'widget-login.html' %} {% endblock content_related %} {% block content_main %} This page is currently not connected to any useful authentication system, but instead, as a proof of concept, it uses a set of hardwired user accounts, see auth/backend.py for more details. - +

Currently hard wired users:

+
    + {% for k,v in hard_wired_users.iteritems %} +
  • Name= {{ k }}, Password= {{ v }}
  • + {% endfor %} +
{% endblock content_main %} diff --git a/templates/widget-topmenu.html b/templates/widget-topmenu.html index d7f4551c..70cc1492 100644 --- a/templates/widget-topmenu.html +++ b/templates/widget-topmenu.html @@ -1,12 +1,23 @@ +{# #} {# {% insert_str prelude "js/mymenu.js" %} #} -{% insert_str prelude "css/mymenu.css" %} +{# {% insert_str prelude "css/mymenu.css" %} #} - +