Podstawowe logowanie do edytora.
authorLukasz Rekucki <lreqc@localhost.(none)>
Fri, 21 Aug 2009 11:50:55 +0000 (13:50 +0200)
committerLukasz Rekucki <lreqc@localhost.(none)>
Fri, 21 Aug 2009 11:50:55 +0000 (13:50 +0200)
apps/explorer/views.py
project/settings.py
project/static/css/master.css
project/templates/base.html
project/templates/registration/head_login.html [new file with mode: 0644]
project/templates/registration/login.html [new file with mode: 0644]
project/urls.py

index 8d80d02..5134eed 100644 (file)
@@ -3,8 +3,10 @@ import hg, urllib2
 from django.utils import simplejson as json
 
 from django.views.generic.simple import direct_to_template
 from django.utils import simplejson as json
 
 from django.views.generic.simple import direct_to_template
+
 from django.conf import settings
 from django.http import HttpResponseRedirect
 from django.conf import settings
 from django.http import HttpResponseRedirect
+from django.contrib.auth.decorators import login_required
 
 from explorer import forms, models
 
 
 from explorer import forms, models
 
index c5b0c2d..a418706 100644 (file)
@@ -62,6 +62,15 @@ TEMPLATE_LOADERS = (
 #     'django.template.loaders.eggs.load_template_source',
 )
 
 #     'django.template.loaders.eggs.load_template_source',
 )
 
+TEMPLATE_CONTEXT_PROCESSORS = (
+    "django.core.context_processors.auth",
+    "django.core.context_processors.debug",
+    "django.core.context_processors.i18n",
+    "django.core.context_processors.media",
+    "django.core.context_processors.request",
+)
+
+
 MIDDLEWARE_CLASSES = (
     'django.middleware.common.CommonMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
 MIDDLEWARE_CLASSES = (
     'django.middleware.common.CommonMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
index 1a726a8..e7dfb70 100644 (file)
@@ -4,10 +4,21 @@ body {
     overflow: hidden;
 }
 
     overflow: hidden;
 }
 
-#breadcrumbs {
-    padding: 2px 10px;
+#header { 
+    position: relative;
+    padding: 2px 0.5em;
     background-color: #CDCDCD;
     background-color: #CDCDCD;
-    border-bottom: 1px solid #858585;
+       border-bottom: 1px solid black;
+       clear: both;
+}
+
+#header #breadcrumbs {
+
+}
+
+#header #login_info {
+       position: absolute;
+       right: 1em;
 }
 
 ul {
 }
 
 ul {
@@ -204,3 +215,18 @@ p {
     color: #FFF;
     cursor: default;
 }
     color: #FFF;
     cursor: default;
 }
+
+
+div.isection {
+       margin: 1em auto;
+       border: 1px solid black;
+       padding: 0.5em 2em;
+       background: #9f9ffa;
+
+       width: 60%;
+}
+
+div.isection p {
+       margin: 0.5em 1em;
+}
+
index 6e9c389..9622fa4 100644 (file)
@@ -3,14 +3,17 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:p="http://platforma.wolnelektury.pl/">
     <head>
         <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:p="http://platforma.wolnelektury.pl/">
     <head>
         <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
-        <title>{% block title %}Platforma Redakcyjna{% endblock %}</title>
+        <title>{% block title %}Platforma Redakcyjna{% block subtitle %}{% endblock subtitle %}{% endblock title%}</title>
         <link rel="stylesheet" href="/static/css/master.css" type="text/css" />
         <script src="/static/js/jquery.js" type="text/javascript" charset="utf-8"></script>
         {% block extrahead %}
         {% endblock %}
     </head>
     <body id="{% block bodyid %}base{% endblock %}">
         <link rel="stylesheet" href="/static/css/master.css" type="text/css" />
         <script src="/static/js/jquery.js" type="text/javascript" charset="utf-8"></script>
         {% block extrahead %}
         {% endblock %}
     </head>
     <body id="{% block bodyid %}base{% endblock %}">
-        <div id="breadcrumbs">{% block breadcrumbs %}Platforma Redakcyjna{% endblock breadcrumbs %}</div>
+       <div id="header">
+          <span id="breadcrumbs">{% block breadcrumbs %}Platforma Redakcyjna{% endblock breadcrumbs %}</span>
+          <span id="login_info">{% include "registration/head_login.html" %}</span>
+       </div>
         {% block maincontent %}
             
         {% endblock %}
         {% block maincontent %}
             
         {% endblock %}
diff --git a/project/templates/registration/head_login.html b/project/templates/registration/head_login.html
new file mode 100644 (file)
index 0000000..d6df7fe
--- /dev/null
@@ -0,0 +1,6 @@
+{% if user.is_authenticated %}
+<span class="user_name">{{ user.get_full_name }}</span> | 
+<a href='{% url django.contrib.auth.views.logout %}?next_page={{request.get_full_path}}'>Wyloguj</a>
+{% else %}
+<a href='{% url django.contrib.auth.views.login %}?next_page={{request.get_full_path}}'>Logowanie</a>
+{% endif %}
diff --git a/project/templates/registration/login.html b/project/templates/registration/login.html
new file mode 100644 (file)
index 0000000..8bf8967
--- /dev/null
@@ -0,0 +1,15 @@
+{% extends "base.html" %}
+
+{% block subtitle %} - Logowanie {% endblock subtitle %}
+
+{% block maincontent %}
+
+<div class="isection">
+<form method="POST" action="{% url django.contrib.auth.views.login %}">
+{{ form.as_p }}
+<p><input type="submit" value="Login" /></p>
+<input type="hidden" name="next_page" value="{{ next_page }}" />
+</form>
+</div>
+
+{% endblock maincontent %}
index 19f0520..d153f84 100644 (file)
@@ -7,7 +7,7 @@ admin.autodiscover()
 
 
 urlpatterns = patterns('',
 
 
 urlpatterns = patterns('',
-    # Example:
+    # Explorer:
     url(r'^$', 'explorer.views.file_list', name='file_list'),
     url(r'^file/(?P<path>[^/]+)/$', 'explorer.views.file_xml', name='file_xml'),
     url(r'^html/(?P<path>[^/]+)/$', 'explorer.views.file_html', name='file_html'),
     url(r'^$', 'explorer.views.file_list', name='file_list'),
     url(r'^file/(?P<path>[^/]+)/$', 'explorer.views.file_xml', name='file_xml'),
     url(r'^html/(?P<path>[^/]+)/$', 'explorer.views.file_html', name='file_html'),
@@ -17,6 +17,10 @@ urlpatterns = patterns('',
     # Admin panel
     url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
     url(r'^admin/(.*)', admin.site.root),
     # Admin panel
     url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
     url(r'^admin/(.*)', admin.site.root),
+
+    # Authorization
+    url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'redirect_field_name': 'next_page'}),
+    url(r'^accounts/logout$', 'django.contrib.auth.views.logout', {'next_page': '/'}), # {'redirect_field_name': 'next_page'}),
 )
 
 
 )