Merge with bca4629627e858fb4788d0cc8a67155d41578f5f
authorcavaliet
Thu, 18 Aug 2011 16:34:42 +0200
changeset 145 4a8a170af947
parent 141 6c67db5ebab7 (current diff)
parent 131 bca4629627e8 (diff)
child 146 e2d3fa7aad7c
Merge with bca4629627e858fb4788d0cc8a67155d41578f5f
src/ldt/ldt/user/templates/ldt/user/change_email_done.html
src/ldt/ldt/user/templates/ldt/user/home.html
src/ldt/ldt/user/templates/ldt/user/profile.html
src/ldt/ldt/user/templates/ldt/user/space.html
--- a/src/ldt/ldt/admin.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/admin.py	Thu Aug 18 16:34:42 2011 +0200
@@ -1,31 +1,31 @@
-#from django.contrib import admin
-from ldt.management import test_cms
-
-"""
-site admin pour cms page
-"""
-if test_cms():
-    pass
-#    class AdminSite(admin.AdminSite):
-#        index_template = 'admin/page_index.html'
-#        login_template = 'admin/page_login.html'
-#        app_index_template = 'admin/page_app_index.html'    
-        
-#    admin_site = AdminSite()
-
-#    from cms.models import Page
-#    from cms.admin import pageadmin
-
-#    class CmsPageAdmin(pageadmin.PageAdmin):
-#        change_list_template = "admin/cms_change_list.html"
-#       change_form_template = "admin/cms_change_form.html"
-
-#    admin_site.register(Page, CmsPageAdmin)
-
-#    from cms.plugins.snippet.models import Snippet
-#    from cms.plugins.snippet.admin import SnippetAdmin
-
-#    class CmsSnippetAdmin(SnippetAdmin):
-#        change_form_template = "admin/page_change_form.html"
-#        change_list_template = "admin/page_change_list.html"
-#    admin_site.register(Snippet, CmsSnippetAdmin)
+##from django.contrib import admin
+#from ldt.management import test_cms
+#
+#"""
+#site admin pour cms page
+#"""
+#if test_cms():
+#    pass
+##    class AdminSite(admin.AdminSite):
+##        index_template = 'admin/page_index.html'
+##        login_template = 'admin/page_login.html'
+##        app_index_template = 'admin/page_app_index.html'    
+#        
+##    admin_site = AdminSite()
+#
+##    from cms.models import Page
+##    from cms.admin import pageadmin
+#
+##    class CmsPageAdmin(pageadmin.PageAdmin):
+##        change_list_template = "admin/cms_change_list.html"
+##       change_form_template = "admin/cms_change_form.html"
+#
+##    admin_site.register(Page, CmsPageAdmin)
+#
+##    from cms.plugins.snippet.models import Snippet
+##    from cms.plugins.snippet.admin import SnippetAdmin
+#
+##    class CmsSnippetAdmin(SnippetAdmin):
+##        change_form_template = "admin/page_change_form.html"
+##        change_list_template = "admin/page_change_list.html"
+##    admin_site.register(Snippet, CmsSnippetAdmin)
--- a/src/ldt/ldt/core/models.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/core/models.py	Thu Aug 18 16:34:42 2011 +0200
@@ -1,34 +1,9 @@
-from django.contrib.auth.models import User, Group
+from django.contrib.auth.models import User
 from django.db import models
-
-class OwnerManager(models.Manager):
-    def get_by_natural_key(self, user_name):
-        return self.get(user__username=user_name)
-
-
-class Owner(models.Model):
-    objects = OwnerManager()
-    
-    user = models.ForeignKey(User, blank=True, null=True)
-    group = models.ForeignKey(Group, blank=True, null=True)
-
-    def __unicode__(self):
-        if self.user:
-            return self.user.username
-        else:
-            return self.group.name
-    
-    def natural_key(self):
-        # Right now there is no group so the user.username is enough
-        return self.user.username
-    natural_key.dependencies = ['auth.user']
     
 
-
 class Document(models.Model):
-    owner = models.ForeignKey(Owner, blank=True, null=True)
+    owner = models.ForeignKey(User, blank=True, null=True)
 
     class Meta:
         abstract = True
-
-
--- a/src/ldt/ldt/ldt_utils/models.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/models.py	Thu Aug 18 16:34:42 2011 +0200
@@ -2,7 +2,8 @@
 from django.contrib.auth.models import User
 from django.db import models
 from django.utils.translation import ugettext_lazy as _
-from ldt.core.models import Document, Owner
+#from ldt.core.models import Document, Owner
+from ldt.core.models import Document
 import ldt.indexation
 from utils import (create_ldt, copy_ldt, create_empty_iri, update_iri, 
     generate_uuid)
@@ -351,7 +352,8 @@
 
     @staticmethod
     def create_project(user, title, contents):
-        owner = Owner.objects.get(user=user) #@UndefinedVariable
+#        owner = Owner.objects.get(user=user) #@UndefinedVariable
+        owner = user
         project = Project(title=title, owner=owner)
         project.ldt_id = str(uuid.uuid1()) #@UndefinedVariable
         project.created_by = user.username
@@ -364,7 +366,8 @@
         return create_ldt(project, user)
 
     def copy_project(self, user, title):
-        owner = Owner.objects.get(user=user) #@UndefinedVariable
+#        owner = Owner.objects.get(user=user) #@UndefinedVariable
+        owner = user
         project = Project(title=title, owner=owner)
         project = copy_ldt(self, project, user)
         project.save()
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html	Thu Aug 18 16:34:42 2011 +0200
@@ -24,9 +24,9 @@
         </td>
         <td class="projecttitle">
         {% ifequal project.state 2 %}
-        {% if show_username %}{{ project.owner.user.username }} : {% endif %}{{ project.title }}
+        {% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}
         {% else %}
-        <a class="projecttitlelink" href="{% url ldt.ldt_utils.views.update_project ldt_id=project.ldt_id %}">{% if show_username %}{{ project.owner.user.username }} : {% endif %}{{ project.title }}</a>
+        <a class="projecttitlelink" href="{% url ldt.ldt_utils.views.update_project ldt_id=project.ldt_id %}">{% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}</a>
         {% endifequal %}
         </td>
     </tr>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/workspace_base.html	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/workspace_base.html	Thu Aug 18 16:34:42 2011 +0200
@@ -51,8 +51,7 @@
 	<div class="span-12" id="contentsdiv">
 	    <div class="span-12 last titlediv" >
 			<div class="span-8 projectscontentstitle">{% trans "content list" %}
-			&nbsp;<a class='ldt_link_create' href="{% url ldt.ldt_utils.views.create_ldt_view %}" ><img src="{{LDT_MEDIA_PREFIX}}img/film_add.png" alt="{% trans 'Create content' %}" title="{% trans 'Create content' %}" /></a>
-			</div>
+			<a class='content_link_create' href="{% url ldt.ldt_utils.views.write_content %}" ><img class='icon_title' src="{{LDT_MEDIA_PREFIX}}img/film_add.png" alt="{% trans 'Create content' %}" title="{% trans 'Create content' %}" /></a></div>
 			<div class="span-4 last searchfielddiv" >
 			    <div class="searchfield rounded"><input id="searchcontentsinput" class="searchfieldinput searchfieldinputbase" value="{% trans 'search' %}" type="text" /><img id="contentsajaxloader" class="searchajaxloader" src="{{LDT_MEDIA_PREFIX}}/img/ajax-loader-16x16.gif" alt="loader"/><img id="contentsclear" class="searchclear" src="{{LDT_MEDIA_PREFIX}}img/clear-left.png"/></div>
 			</div>
@@ -64,7 +63,7 @@
 	<div class="span-12 last" id="projectsdiv">
 		<div class="span-12 last titlediv" >
 			<div class="span-8 projectscontentstitle" >{% trans "My projects" %}
-			&nbsp;<a class='ldt_link_create' href="{% url ldt.ldt_utils.views.create_ldt_view %}" ><img src="{{LDT_MEDIA_PREFIX}}img/page_add.png" alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
+			<a class='ldt_link_create' href="{% url ldt.ldt_utils.views.create_ldt_view %}" ><img class='icon_title' src="{{LDT_MEDIA_PREFIX}}img/page_add_large.png" alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
 			<div class="span-4 last searchfielddiv" >
 			    <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" value="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src="{{LDT_MEDIA_PREFIX}}/img/ajax-loader-16x16.gif" alt="loader"/><img id="projecsclear" class="searchclear" src="{{LDT_MEDIA_PREFIX}}img/clear-left.png"/></div>
 			</div>
--- a/src/ldt/ldt/ldt_utils/urls.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/urls.py	Thu Aug 18 16:34:42 2011 +0200
@@ -8,6 +8,7 @@
 urlpatterns = patterns('ldt.ldt_utils',
     url(r'^searchInit/(?P<field>.*)/(?P<query>.*)$', 'views.searchInit'),
     url(r'^searchForm/$', 'views.searchForm'),
+    url(r'^import_rs/$', 'views.import_rs'),
     url(r'^published/$', 'views.published_project'),
     url(r'^groups/$', 'views.groups'),
     url(r'^get_group_projects/$', 'views.get_group_projects'),
--- a/src/ldt/ldt/ldt_utils/views.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/ldt_utils/views.py	Thu Aug 18 16:34:42 2011 +0200
@@ -16,7 +16,6 @@
 from django.utils.translation import ugettext as _, ungettext
 from forms import (LdtAddForm, SearchForm, AddProjectForm, CopyProjectForm,
     ContentForm, MediaForm)
-from ldt.core.models import Owner
 from ldt.ldt_utils.models import Content
 from ldt.ldt_utils.utils import boolean_convert, LdtUtils, LdtSearch
 from lxml.html import fragment_fromstring
@@ -82,7 +81,7 @@
     content_list = Content.objects.all() #@UndefinedVariable
 
     # get list of projects owned by the current user
-    project_list = Project.objects.filter(owner__user=request.user) #@UndefinedVariable
+    project_list = Project.objects.filter(owner=request.user) #@UndefinedVariable
     
     is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
     
@@ -174,7 +173,7 @@
     if is_owner:
         owner = None
         try:
-            owner = Owner.objects.get(user=request.user) #@UndefinedVariable
+            owner = request.user #@UndefinedVariable
         except:
             return HttpResponseServerError("<h1>User not found</h1>")
         query &= Q(owner=owner)
@@ -194,8 +193,8 @@
         # Get group, user and project_list
         grp = Group.objects.get(id=id_group)  #@UndefinedVariable
         users = User.objects.filter(groups__in=[grp]) #@UndefinedVariable
-        query &= Q(owner__user__in=users) #@UndefinedVariable
-        project_list = Project.objects.filter(query).extra(select={'lower_title': 'lower(title)'}).order_by('owner__user__username','lower_title') #@UndefinedVariable
+        query &= Q(owner__in=users) #@UndefinedVariable
+        project_list = Project.objects.filter(query).extra(select={'lower_title': 'lower(title)'}).order_by('owner__username','lower_title') #@UndefinedVariable
         show_username = True
     else :
         project_list = Project.objects.filter(query) #@UndefinedVariable
@@ -348,7 +347,7 @@
 def list_ldt(request):
     contents = Content.objects.all() #@UndefinedVariable
     try:
-        owner = Owner.objects.get(user=request.user) #@UndefinedVariable
+        owner = request.user #@UndefinedVariable
     except:
         return HttpResponseRedirect(settings.LOGIN_URL)
     ldtProjects = Project.objects.filter(owner=owner) #@UndefinedVariable
@@ -1111,7 +1110,7 @@
     # Get group, user and project_list
     grp = Group.objects.get(id=request.POST["id_group"])  #@UndefinedVariable
     users = User.objects.filter(groups__in=[grp]) #@UndefinedVariable
-    project_list = Project.objects.filter(owner__user__in=users).extra(select={'lower_title': 'lower(title)'}).order_by('owner__user__username','lower_title')  #@UndefinedVariable
+    project_list = Project.objects.filter(owner__in=users).extra(select={'lower_title': 'lower(title)'}).order_by('owner__username','lower_title')  #@UndefinedVariable
 
     is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
     
--- a/src/ldt/ldt/management/__init__.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/management/__init__.py	Thu Aug 18 16:34:42 2011 +0200
@@ -3,9 +3,7 @@
 from django.contrib.contenttypes.models import ContentType
 from django.core.exceptions import ObjectDoesNotExist
 from django.db.models import signals
-from ldt.core.models import Owner
-from ldt.user.models import ldt, IriGroup
-# import logging
+from ldt.user.models import ldt
 
     
 def post_save_ldt(instance, raw, created, **kwargs):
@@ -13,37 +11,15 @@
     
 signals.post_save.connect(post_save_ldt, ldt) 
 
-def post_save_irigroup(instance, raw, created, **kwargs):
-    signals.post_save.send(sender=Group, instance=instance, raw=raw, created=created)
-    
-signals.post_save.connect(post_save_irigroup, IriGroup) 
-
 def post_save_user(instance, raw, created, **kwargs):
     if created:
         try:
-            owner = Owner.objects.get(user=instance)
+            owner = instance
         except ObjectDoesNotExist:
-            owner = Owner(user=instance)
+            owner = User(instance)
             owner.save() 
     
 signals.post_save.connect(post_save_user, User) 
-
-def post_save_group(instance, raw, created, **kwargs):
-    if created:
-        try:
-            owner = Owner.objects.get(group=instance)
-        except ObjectDoesNotExist:
-            owner = Owner(group=instance)
-            owner.save()
-    
-signals.post_save.connect(post_save_group, Group) 
-
-    
-def test_cms():
-    if 'cms' in settings.INSTALLED_APPS:
-        return True
-    else:
-        return False
         
 def test_ldt():
     if 'ldt.ldt_utils' in settings.INSTALLED_APPS:
@@ -53,14 +29,6 @@
 
 def get_content_type_list() :
     content_type_list = []
-    if test_cms():
-        content_type = ContentType.objects.get(app_label='cms', model='page')
-        content_type_list.append(content_type)
-        content_type = ContentType.objects.get(app_label='snippet', model='snippet')
-        content_type_list.append(content_type)
-    # if test_ldt():
-        # content_type = ContentType.objects.get(app_label='ldt', model='content')
-        # content_type_list.append(content_type)
     return content_type_list
 
 
--- a/src/ldt/ldt/static/ldt/css/workspace.css	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/static/ldt/css/workspace.css	Thu Aug 18 16:34:42 2011 +0200
@@ -2,9 +2,10 @@
 
 .titlediv {
 	margin: 0px 0px 25px 0px;
+	min-height: 40px;
+	vertical-align: middle;
 }
 
-
 .ldt_player_code {
 	width: 580px;
 	overflow: auto;
@@ -14,9 +15,14 @@
 	padding: 2px;
 }
 
+.icon_title {
+	float: right;
+	margin-top: 6px;
+}
+
 .searchfielddiv {
 	top: 50%;
-	margin-top: 12px;
+	margin-top: 5px;
 }
 
 .searchfield {
@@ -154,11 +160,6 @@
 	padding-right: 16px;
 }
 
-.titlediv {
-	min-height: 46px;
-	vertical-align: middle;	
-}
-
 .cellimg {
 	width: 18px;
 	text-align: center;
Binary file src/ldt/ldt/static/ldt/img/film_add.png has changed
Binary file src/ldt/ldt/static/ldt/img/page_add_large.png has changed
--- a/src/ldt/ldt/templates/ldt/ldt_base.html	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/templates/ldt/ldt_base.html	Thu Aug 18 16:34:42 2011 +0200
@@ -96,7 +96,7 @@
         </div>
         <div id="loginstate" >
             {% if user.is_authenticated %}
-            {{user.username}}&nbsp;|&nbsp;<a href="{% url ldt.user.views.logout_view %}" >{% trans "Log out" %}</a>
+            <a href="{% url ldt.user.views.profile %}" >{{user.username}}</a>|&nbsp;<a href="{% url ldt.user.views.logout_view %}" >{% trans "Log out" %}</a>
             {% endif %}
         </div>
         {% endblock %}
@@ -133,11 +133,6 @@
 					<input type="submit" class="quick_search_submit" value="" />{% csrf_token %}</form>
 		        </div>
 		        {% endif %}
-		        <!--div id="loginstate" class="block span-4 last">
-		            {% if user.is_authenticated %}
-		            {{user.username}}&nbsp;|&nbsp;<a href="{% url ldt.user.views.logout_view %}" >{% trans "Log out" %}</a>
-		            {% endif %}
-		        </div-->
             </div>
             {% if LANGUAGES.1 %}
               <div id="language_chooser">            
--- a/src/ldt/ldt/user/admin.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/admin.py	Thu Aug 18 16:34:42 2011 +0200
@@ -2,8 +2,8 @@
 from django.contrib import admin
 from django.contrib.auth.admin import UserAdmin
 from django.utils.translation import ugettext as _
-from forms import ldtForm, IriGroupForm
-from models import ldt, IriGroup
+from forms import ldtForm
+from models import ldt
 
 class ldtAdmin(UserAdmin):    
     list_display = ('username', 'email', 'first_name', 'last_name')
@@ -30,11 +30,3 @@
         
 admin.site.unregister(ldt)
 admin.site.register(ldt, ldtAdmin)
-
-class IriGroupAdmin(admin.ModelAdmin):
-    form = IriGroupForm
-    model = IriGroup
-    filter_horizontal = ('permissions',)
-    
-admin.site.unregister(IriGroup)
-admin.site.register(IriGroup, IriGroupAdmin)
--- a/src/ldt/ldt/user/forms.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/forms.py	Thu Aug 18 16:34:42 2011 +0200
@@ -1,10 +1,8 @@
 from django import forms
 from django.contrib.auth.forms import UserCreationForm
-from django.contrib.auth.models import Permission
 from django.forms.util import ErrorList
 from django.utils.translation import gettext as _
-from ldt.management import get_content_type_list
-from models import ldt, IriGroup
+from models import ldt
 
 
 class ldtForm(UserCreationForm):
@@ -21,10 +19,6 @@
         
         super(ldtForm, self).__init__(data, files, auto_id, prefix,
             initial, error_class, label_suffix, empty_permitted, instance)
-            
-        # filtre les permissions necessaires
-        content_type_list = get_content_type_list()
-        self.fields['user_permissions'].queryset = Permission.objects.filter(content_type__in=content_type_list)
         
         if instance:
             self.fields['password1'].required = False
@@ -56,23 +50,7 @@
             user.save()
         
         return user
-        
-class IriGroupForm(forms.ModelForm):
-    class meta:
-        model = IriGroup
-        
-    def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None,
-                 initial=None, error_class=ErrorList, label_suffix=':',
-                 empty_permitted=False, instance=None):
-        if instance:
-            initial = initial or {}                               
-        
-        super(IriGroupForm, self).__init__(data, files, auto_id, prefix,
-            initial, error_class, label_suffix, empty_permitted, instance)
-            
-        # filtre les permissions necessaires
-        content_type_list = get_content_type_list()
-        self.fields['permissions'].queryset = Permission.objects.filter(content_type__in=content_type_list)
+
         
 class EmailChangeForm(forms.Form):
     email1 = forms.EmailField(label=_("E-mail"), max_length=75)
--- a/src/ldt/ldt/user/models.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/models.py	Thu Aug 18 16:34:42 2011 +0200
@@ -1,18 +1,10 @@
 from django.contrib import admin
-from django.contrib.auth.models import User, Group, UserManager
-from django.db import models
+from django.contrib.auth.models import User, UserManager
 import datetime
 
-
-class IriGroup(Group):
-    description = models.TextField(null=True, blank=True)
-    
-    def __unicode__(self):
-        return self.name
-
             
 class ldt(User):
-    irigroups = models.ManyToManyField(IriGroup, blank=True)
+#    irigroups = models.ManyToManyField(IriGroup, blank=True)
     
     class Meta:
         verbose_name = 'iri user'
@@ -38,4 +30,3 @@
 User.objects.contribute_to_class(User, "objects")
 
 admin.site.register(ldt)
-admin.site.register(IriGroup)
--- a/src/ldt/ldt/user/templates/ldt/user/change_email.html	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/templates/ldt/user/change_email.html	Thu Aug 18 16:34:42 2011 +0200
@@ -1,11 +1,6 @@
 {% extends "ldt/user/user_base.html" %}
 {# form of email address's change #}
 {% load i18n %}
-{% block breadcrumb %}
-    <li></li>
-    <li><a href="{% url ldt.user.views.profile %}">{% trans "Profiles" %}</a></li>
-    <li>{% trans "Modification de l'adresse émail" %}</li>
-{% endblock %}
 
 {% block content_title %}{% trans "Modification de l'adresse émail" %}{% endblock %}
 {% block js_declaration %}{{ block.super }}
@@ -15,6 +10,7 @@
         });
     </script>
 {% endblock %}
+
 {% block css_import %}
 {{ block.super }}
     <style type="text/css">
@@ -22,8 +18,10 @@
     </style>
 {% endblock %}
 
-{% block iricontent %}
-<p>{% trans "Please enter your new e-mail twice so we can verify you typed it in correctly." %}</p>
+{% block content %}
+{{ block.super }}
+{% if form %}
+<p>{% trans "Please enter your new e-mail twice so we can verify you typed it in correctly." %}. {% trans "Your actual email address is" %} : <b>{{ user.email }}</b>.</p>
 <form action="" method="POST" id="change_email">
 {% csrf_token %}
     <table>
@@ -48,4 +46,7 @@
         <tr><th></th><td><input type="submit" class="button" name="submit" value="{% trans 'change my e-mail' %}" /></td></tr>
     </table>
 </form>
+{% else %}
+<p>{% trans "Your new email address has been saved." %}</p>
+{% endif %}
 {% endblock%}
--- a/src/ldt/ldt/user/templates/ldt/user/change_email_done.html	Thu Aug 18 13:28:02 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-{% extends "ldt/user/user_base.html" %}
-{# if email is changed successfully, retrun this page #}
-{% load i18n %}
-{% block breadcrumb %}
-    <li></li>
-    <li><a href="{% url ldt.user.views.profile %}">{% trans "Profiles" %}</a></li>
-    <li>{% trans "email change" %}</li>
-{% endblock %}
-
-{% block content_title %}{% trans "email change" %}{% endblock %}
-{% block iricontent %}
-<p> {% trans "email changed" %}</p>
-<a href="{% url ldt.user.views.profile %}">{% trans "back to profile" %}</a>
-{% endblock %}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/templates/ldt/user/change_password.html	Thu Aug 18 16:34:42 2011 +0200
@@ -0,0 +1,27 @@
+{% extends "ldt/user/user_base.html" %}
+{# form of password change #}
+{% load i18n %}
+
+{% block css_import %}
+{{ block.super }}
+    <style type="text/css">
+        label.error { float: none; color: red; padding-left: .5em; vertical-align: middle; }
+    </style>
+{% endblock %}
+
+{% block content %}
+{{ block.super }}
+{% if form %}
+	<form method="post" id="my_form"
+		action="{% url ldt.user.views.change_password %}"
+		accept-charset="utf-8">
+	{% csrf_token %}
+	<table>
+		{{ form.as_table }}
+	</table>
+	<input type="submit" class="search_submit" /></form>
+	</div>
+{% else %}
+<p>{% trans "Your new password has been saved." %}</p>
+{% endif %}
+{% endblock%}
--- a/src/ldt/ldt/user/templates/ldt/user/home.html	Thu Aug 18 13:28:02 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-{% extends "ldt/ldt_base.html" %}
-{% load i18n %}
-
-{% block title %}Home{% endblock %}
-
-{% block content_base %}
-
-<p>Welcome</p>
-<li><a href="{% url django.contrib.auth.views.login  %}" >{% trans "Se connecter" %}</a></li>
-<li><a href="{% url registration.views.register  %}" >{% trans "Créer un compte" %}</a></li>
-<li><a href="{% url django.contrib.auth.views.password_reset  %}" >{% trans "récupérer mot de passe" %}</a></li>
-
-{% endblock %} 
-
--- a/src/ldt/ldt/user/templates/ldt/user/profile.html	Thu Aug 18 13:28:02 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-{% extends "ldt/user/user_base.html" %}
-{# user's profiles(change password, change email) #}
-{% load i18n %}
-{% block  iricontent %}
-<ul>
-    <li><a href="{% url django.contrib.auth.views.password_change %}" >{% trans "Password change" %}</a></li>
-    <li><a href="{% url ldt.user.views.change_email%}">{% trans "Mail change" %}</a></li>
-</ul>
-{% endblock %} 
--- a/src/ldt/ldt/user/templates/ldt/user/space.html	Thu Aug 18 13:28:02 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-{% extends "ldt/user/user_base.html" %}
-{# user's space (edit page or project lignes de temps) #}
-{% load i18n %}
-{% block breadcrumb %}
-    <li></li>
-    <li>{% trans "Space" %}</li>    
-{% endblock %}
-
-{% block content_title %}{% trans "Space" %}{% endblock %}
-{% block iricontent%}
-<ul>
-{% if cms %}
-    <li><a href="{% url admin:page %}">{% trans "Page" %}</a></li>
-{% endif %}
-{% if ldt %}
-    <li><a href="{% url ldt.ldt_utils.views.list_ldt %}">{% trans "Projets Lignes de temps" %}</a></li>
-{% endif %}
-</ul>      
-{% endblock %}
--- a/src/ldt/ldt/user/templates/ldt/user/user_base.html	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/templates/ldt/user/user_base.html	Thu Aug 18 16:34:42 2011 +0200
@@ -4,8 +4,19 @@
 {% load i18n %}
 
 
+{% block css_import %}
+{{ block.super }}
+    <link rel="stylesheet" href="{{LDT_MEDIA_PREFIX}}/css/workspace.css" type="text/css"/>
+{% endblock %}
+
 {% block content %}
-    <div id="iri-user-content" class="span-24 last">
-        {% block iricontent %}{% endblock %}
-    </div>
+{% if user.is_authenticated %}
+<ul>
+    <li><a href="{% url ldt.user.views.change_password %}" >{% trans "Password change" %} </a></li>
+    <li><a href="{% url ldt.user.views.change_email %}">{% trans "Mail change" %}</a></li>
+</ul>
+{% endif %}
+<div id="iri-user-content" class="span-24 last">
+    {% block iricontent %}{% endblock %}
+</div>
 {% endblock%}
--- a/src/ldt/ldt/user/urls.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/urls.py	Thu Aug 18 16:34:42 2011 +0200
@@ -4,9 +4,8 @@
     url(r'^loginAjax/$', 'ldt.user.views.loginAjax'),
     url(r'^profile/', 'ldt.user.views.profile'),
     url(r'^logout/', 'ldt.user.views.logout_view'),
-    url(r'^space/$', 'ldt.user.views.space'),
     url(r'^emailchange/$', 'ldt.user.views.change_email'),
-    url(r'^emailchange/done/$', 'ldt.user.views.change_email_done'),
+    url(r'^pwdchange/$', 'ldt.user.views.change_password'),
 #    url(r'^space/ldt/$', 'ldt.ldt_utils.views.list_ldt'),
 #    url(r'^space/ldt/indexproject/(?P<id>.*)$', 'ldt.ldt_utils.views.index_project'),
 #    url(r'^space/ldt/init/(?P<method>.*)/(?P<url>.*)$', 'ldt.ldt_utils.views.init'),
--- a/src/ldt/ldt/user/views.py	Thu Aug 18 13:28:02 2011 +0200
+++ b/src/ldt/ldt/user/views.py	Thu Aug 18 16:34:42 2011 +0200
@@ -1,32 +1,18 @@
 from django.contrib.auth import authenticate, login, logout
 from django.contrib.auth.decorators import login_required
-from django.core.urlresolvers import reverse
+from django.contrib.auth.forms import PasswordChangeForm
 from django.http import HttpResponse, HttpResponseRedirect
 from django.shortcuts import render_to_response
 from django.template import RequestContext, loader
 from django.utils import simplejson
 from django.utils.translation import ugettext as _
 from forms import EmailChangeForm
-from ldt.management import test_cms, test_ldt
-# from django.contrib.sites.models import Site, RequestSite
 
 
-def home(request):
-    return render_to_response('ldt/user/home.html', context_instance=RequestContext(request))
     
 @login_required   
 def profile(request):
-    return render_to_response('ldt/user/profile.html', context_instance=RequestContext(request))
-
-@login_required     
-def space(request, page_id=None, slug=None):
-    cms = test_cms()
-    ldt = test_ldt()
-    context = {
-        'cms': cms,
-        'ldt': ldt
-    }
-    return render_to_response('ldt/user/space.html', context, context_instance=RequestContext(request))
+    return render_to_response('ldt/user/user_base.html', context_instance=RequestContext(request))
     
 
     
@@ -54,21 +40,28 @@
         else:
             return HttpResponse(simplejson.dumps({'message': error_message, }))
     return render_to_response('ldt/user/login_ajax.html', context_instance=RequestContext(request))
+
             
 @login_required              
-def change_email(request, post_change_redirect=None):
-    if post_change_redirect is None:
-        post_change_redirect = reverse('ldt.user.views.change_email_done')
+def change_email(request):
     if request.method == "POST":
         form = EmailChangeForm(request.user, request.POST)
         if form.is_valid():
             form.save()
-            return HttpResponseRedirect(post_change_redirect)
+            form = None
     else:
         form = EmailChangeForm(request.user)
     return render_to_response('ldt/user/change_email.html', {'form': form, }, context_instance=RequestContext(request))
+
     
-@login_required    
-def change_email_done(request, template_name='ldt/user/change_email_done.html'):
-    return render_to_response(template_name, context_instance=RequestContext(request))
+@login_required   
+def change_password(request):
+    if request.method == "POST":
+        form = PasswordChangeForm(request.user, request.POST)
+        if form.is_valid():
+            form.save()
+            form = None
+    else:
+        form = PasswordChangeForm(request.user)
+    return render_to_response('ldt/user/change_password.html', {'form': form, }, context_instance=RequestContext(request))