# HG changeset patch # User verrierj # Date 1319792500 -7200 # Node ID 94fdb72b7d565f5750b285acbb4813205f2aeeff # Parent 3dcd742acc13f448c683aba2ccc1674dc0bc545a Users can add their own groups diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/forms.py --- a/src/ldt/ldt/ldt_utils/forms.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/forms.py Fri Oct 28 11:01:40 2011 +0200 @@ -1,5 +1,6 @@ from django import forms from django.utils.translation import ugettext_lazy as _ +from django.contrib.auth.models import User from ldt.forms import widgets as ldt_widgets from models import Project, Content, Media from utils import generate_uuid @@ -83,3 +84,7 @@ css = { 'all' : ('admin/css/forms.css', 'admin/css/base.css', 'admin/css/widgets.css') } + +class GroupAddForm(forms.Form): + name = forms.CharField(required=True) + members_list = forms.ModelMultipleChoiceField(User.objects.all(), required=False) diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/models.py --- a/src/ldt/ldt/ldt_utils/models.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/models.py Fri Oct 28 11:01:40 2011 +0200 @@ -4,6 +4,8 @@ from django.utils.translation import ugettext_lazy as _ #from ldt.core.models import Document, Owner from ldt.core.models import Document +from guardian.core import ObjectPermissionChecker +from guardian.shortcuts import get_objects_for_user, assign import ldt.indexation from utils import (create_ldt, copy_ldt, create_empty_iri, update_iri, generate_uuid) @@ -111,6 +113,9 @@ class Meta: ordering = ["title"] + permissions = ( + ('view_content', 'View Content'), + ) def natural_key(self): return self.iri_id @@ -287,8 +292,30 @@ external_id = property(**external_id()) +class SafeManager(models.Manager): + + user = None + checker = None + + def check_perm_for(self, user): + self.user = user + self.checker = ObjectPermissionChecker(self.user) + def stop_checking(self): + self.user = None + self.checker = None + + def has_user(self): + return self.user != None + + def get_query_set(self): + if not self.has_user(): + raise AttributeError("A user has to be chosen to check permissions.") + res = get_objects_for_user(self.user, 'ldt_utils.view_project') + + return res + class Project(Document): STATE_CHOICES = ( (1, 'edition'), @@ -307,9 +334,14 @@ changed_by = models.CharField(_("changed by"), max_length=70) state = models.IntegerField(choices=STATE_CHOICES, default=1) description = models.TextField(null=True, blank=True) + objects = models.Manager() + objects_safe = SafeManager() class Meta: ordering = ["title"] + permissions = ( + ('view_project', 'View Project'), + ) def __unicode__(self): @@ -364,6 +396,7 @@ for content in contents: project.contents.add(content) project.save() + assign(['view_project', 'change_project'], user, project) return create_ldt(project, user) def copy_project(self, user, title, description=''): @@ -372,6 +405,7 @@ project = Project(title=title, owner=owner, description=description) project = copy_ldt(self, project, user) project.save() + assign(['view_project', 'change_project'], user, project) for content in self.contents.all(): project.contents.add(content) project.save() diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/security.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ldt/ldt/ldt_utils/security.py Fri Oct 28 11:01:40 2011 +0200 @@ -0,0 +1,24 @@ +from django.conf import settings +from ldt.ldt_utils.models import Project + + +def group_security(func): + def wrapper(request, *args, **kwargs): + if settings.USE_GROUP_PERMISSIONS: + if not request.user: + raise AttributeError("A user should be set in the request.") + + Project.objects_safe.check_perm_for(request.user) + old_project_manager = Project.objects + Project.objects = Project.objects_safe + + response = func(request, *args, **kwargs) + + Project.objects = old_project_manager + Project.objects_safe.stop_checking() + + else: + response = func(request, *args, **kwargs) + return response + return wrapper + \ No newline at end of file diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html Fri Oct 28 11:01:40 2011 +0200 @@ -0,0 +1,98 @@ +{% extends "ldt/ldt_raw_base.html" %} + +{% load i18n %} +{% load adminmedia %} + +{% block js_import %} + {{ block.super }} + + {{ content_form.media.js }} +{% endblock %} + +{% block css_import %} + {{ block.super }} + {{ content_form.media.css }} + + + +{% endblock %} + +{% block js_declaration %} + {{ block.super }} + + +{% endblock %} + +{% block body %} +
+
{% if group_id %}{% trans "Update a group" %}{% else %}{% trans "Create a group" %}{% endif %}
+
+ {% csrf_token %} + + + {{form.name}} + +
+
+ + + + + + + + + {% for user in user_list %} + + + + + {% endfor %} + + +
+ {% if user_list|length > 1 %} + + {% endif %} + {% trans "name" %}
{{ user.username }}
+
+ + +
+ +
+ + {% if group_id %} + + + {% else %} + + {% endif %} +
+
+
+ +{% endblock %} + diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Fri Oct 28 11:01:40 2011 +0200 @@ -1,6 +1,6 @@ {% extends "ldt/ldt_utils/workspace.html" %} {% load i18n %} - +{% load guardian_tags %} {% block js_declaration %} {{block.super}} @@ -12,25 +12,11 @@ var unpublish_project_url = "{% url ldt.ldt_utils.views.unpublish '__PROJECT_ID__' 'false' %}"; var get_group_projects_url = "{% url ldt.ldt_utils.views.get_group_projects %}"; - -function init_events(base_node) { - - init_events_all(base_node, "{% url ldt.ldt_utils.views.popup_embed %}", content_filter_url, project_filter_url, publish_project_url, unpublish_project_url, get_group_projects_url); - -} - var global_csrf_token = "{{ csrf_token }}"; $(document).ready(function(){ - input_list_init = [ - {'input_selector':"#searchcontentsinput", 'container_selector':"#contentslistcontainer", 'url':content_filter_url}, - {'input_selector':"#searchprojectsinput", 'container_selector':"#projectslistcontainer", 'url':project_filter_url} - ]; - - searchFieldInit(input_list_init); - init_events(document); $(".update_group_projects").click(function(){ @@ -69,13 +55,15 @@ {% block content %}
- {% if groups and groups.all|length > 0 %}
{% trans "My groups" %}
+
+ {% trans 'Create content' %} +
-
+
{% trans "Click on the line to see the group's projects" %}
@@ -83,7 +71,16 @@ {% for group in groups.all %} - {{ group.name }} + {% get_obj_perms request.user for group as "group_perms" %} + + {% if "change_group" in group_perms %} + c + {{ group.name }} + {% else %} + {{ group.name }} + {% endif %} + + {% endfor %} @@ -93,17 +90,11 @@
{% trans "The group's projects" %}
-
{% include "ldt/ldt_utils/partial/projectslist.html" %}
- {% else %} -

{% trans "You do not belong to any group." %}

- {% endif %}
{% endblock %} diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html Fri Oct 28 11:01:40 2011 +0200 @@ -25,9 +25,9 @@ {% ifequal project.state 2 %} - {% if show_username %}{{ project.owner.username }} : {% endif %} {{ project.title }} + {% if show_username %}{{ project.owner.username }} : {% endif %} {{ project.title }} {% else %} - {% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }} + {% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }} {% endifequal %} diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/urls.py --- a/src/ldt/ldt/ldt_utils/urls.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/urls.py Fri Oct 28 11:01:40 2011 +0200 @@ -35,6 +35,8 @@ url(r'^segmentInit/(?P.*)/(?P.*)/(?P.*)/(?P.*)/(?P.*)/$', 'views.init_segment'), url(r'^segmentLdt/(?P.*)/(?P.*)/(?P.*)/(?P.*)/(?P.*)/$', 'views.ldt_segment'), url(r'^segmentHighlight/(?P.*)/(?P.*)/(?P.*)/(?P.*)/(?P.*)/$', 'views.highlight_segment'), + url(r'^createGroup/$', 'views.create_group'), + url(r'^updateGroup/(?P.*)$', 'views.update_group'), ) urlpatterns += patterns('', diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/ldt_utils/views.py --- a/src/ldt/ldt/ldt_utils/views.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/ldt_utils/views.py Fri Oct 28 11:01:40 2011 +0200 @@ -17,9 +17,11 @@ from django.utils.html import escape from django.utils.translation import ugettext as _, ungettext from forms import (LdtAddForm, SearchForm, AddProjectForm, CopyProjectForm, - ContentForm, MediaForm) + ContentForm, MediaForm, GroupAddForm) +from guardian.shortcuts import assign, remove_perm from ldt.ldt_utils.models import Content from ldt.ldt_utils.utils import boolean_convert, LdtUtils, LdtSearch +from ldt.ldt_utils.security import group_security from lxml.html import fragment_fromstring from models import Media, Project from projectserializer import ProjectSerializer @@ -41,6 +43,7 @@ @login_required +@group_security def workspace(request): # list of contents @@ -59,6 +62,7 @@ @login_required +@group_security def groups(request): # get list of all published projects @@ -74,6 +78,7 @@ @login_required +@group_security def published_project(request): # get list of all published projects @@ -363,7 +368,6 @@ return HttpResponse(lxml.etree.tostring(doc, pretty_print=True), mimetype="text/xml;charset=utf-8") - @login_required def list_ldt(request): contents = Content.objects.all() #@UndefinedVariable @@ -1145,3 +1149,78 @@ {'projects': project_list, 'show_username':True, 'is_gecko': is_gecko}, context_instance=RequestContext(request)) + +@login_required +def create_group(request): + user_list = User.objects.exclude(username='AnonymousUser').exclude(id=request.user.id) + form_status = '' + + if request.method == 'POST': + form = GroupAddForm(request.POST) + + if form.is_valid(): + name = form.cleaned_data['name'] + members_list = form.cleaned_data['members_list'] + + group = Group.objects.create(name=name) + group.save() + assign('change_group', request.user, group) + user_list = User.objects.filter(id__in=members_list) + + for user in user_list: + user.groups.add(group) + request.user.groups.add(group) + form_status = 'saved' + + else: + form = GroupAddForm() + + return render_to_response("ldt/ldt_utils/create_group.html", {'form' : form, 'form_status' : form_status, 'user_list' : user_list}, context_instance=RequestContext(request)) + +@login_required +def update_group(request, group_id): + + group = get_object_or_404(Group, id=group_id) + + user_list = User.objects.exclude(username='AnonymousUser').exclude(id=request.user.id) + members_list = User.objects.filter(groups__id=group_id) + form_status = '' + + if not request.user.has_perm('change_group', group): + user_list = [] + form_status = 'saved' + form = GroupAddForm() + return render_to_response("ldt/ldt_utils/create_group.html", {'group_id' : group_id, 'form' : form, 'form_status' : form_status, 'user_list' : user_list}, context_instance=RequestContext(request)) + + for u in user_list: + if u in members_list: + u.member = True + + if request.method == "POST": + form = GroupAddForm(request.POST) + submit_action = request.REQUEST.get("submit_button", False) + + if submit_action == 'delete': + remove_perm('change_group', request.user, group) + group.delete() + form_status = 'deleted' + else: + if form.is_valid(): + name = form.cleaned_data['name'] + members_list = form.cleaned_data['members_list'] + group.name = name + + for user in User.objects.all(): + if user in members_list: + + group.user_set.add(user) + else: + group.user_set.remove(user) + group.user_set.add(user) + group.save() + form_status = 'saved' + + else: + form = GroupAddForm({'name':unicode(group.name), 'members_list':members_list}) + + return render_to_response("ldt/ldt_utils/create_group.html", {'group_id' : group_id, 'form' : form, 'form_status' : form_status, 'user_list' : user_list}, context_instance=RequestContext(request)) diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/locale/en/LC_MESSAGES/django.mo Binary file src/ldt/ldt/locale/en/LC_MESSAGES/django.mo has changed diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/locale/en/LC_MESSAGES/django.po --- a/src/ldt/ldt/locale/en/LC_MESSAGES/django.po Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/locale/en/LC_MESSAGES/django.po Fri Oct 28 11:01:40 2011 +0200 @@ -1,1221 +1,1269 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-10-27 14:54+0200\n" +"PO-Revision-Date: 2010-02-17 03:53+0100\n" +"Last-Translator: Yves-Marie Haussonne \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: \n" + +#: .\forms\widgets.py:17 +msgid "Date" +msgstr "Date" + +#: .\forms\widgets.py:17 +msgid "Time" +msgstr "Time" + +#: .\ldt_utils\forms.py:27 +#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:53 +msgid "Search" +msgstr "search" + +#: .\ldt_utils\forms.py:28 +msgid "all" +msgstr "all" + +#: .\ldt_utils\forms.py:28 +#: .\ldt_utils\models.py:41 +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:69 +msgid "title" +msgstr "title" + +#: .\ldt_utils\forms.py:28 +msgid "resume" +msgstr "resume" + +#: .\ldt_utils\forms.py:28 +#, fuzzy +msgid "tags" +msgstr "Pages" + +#: .\ldt_utils\forms.py:28 +msgid "Fields" +msgstr "Fields" + +#: .\ldt_utils\forms.py:29 +msgid "Display the results in Lignes De Temps" +msgstr "Display the results in Lignes De Temps" + +#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\models.py:110 +msgid "content.content_creation_date" +msgstr "content creation date" + +#: .\ldt_utils\forms.py:44 +msgid "content.media_input_type" +msgstr "Media source type" + +#: .\ldt_utils\forms.py:44 +msgid "file_upload" +msgstr "file upload" + +#: .\ldt_utils\forms.py:44 +msgid "url" +msgstr "url" + +#: .\ldt_utils\forms.py:44 +msgid "existing_media" +msgstr "existing media" + +#: .\ldt_utils\forms.py:44 +msgid "create_media" +msgstr "create media" + +#: .\ldt_utils\forms.py:44 +msgid "none_media" +msgstr "no media" + +#: .\ldt_utils\models.py:30 +msgid "media.external_id" +msgstr "external id" + +#: .\ldt_utils\models.py:31 +msgid "media.external_permalink" +msgstr "media permalink" + +#: .\ldt_utils\models.py:32 +msgid "media.external_publication_url" +msgstr "media publication url" + +#: .\ldt_utils\models.py:33 +msgid "media.external_src_url" +msgstr "media external source url" + +#: .\ldt_utils\models.py:34 +msgid "media.creation_date" +msgstr "media object creation date" + +#: .\ldt_utils\models.py:35 +msgid "media.media_creation_date" +msgstr "media creation date" + +#: .\ldt_utils\models.py:36 +msgid "media.update_date" +msgstr "update date" + +#: .\ldt_utils\models.py:37 +msgid "media.videopath" +msgstr "videopath" + +#: .\ldt_utils\models.py:38 +msgid "media.duration" +msgstr "duration (ms)" + +#: .\ldt_utils\models.py:39 +msgid "media.creator" +msgstr "media creator" + +#: .\ldt_utils\models.py:40 +msgid "description" +msgstr "description" + +#: .\ldt_utils\models.py:42 +msgid "media.src" +msgstr "media source" + +#: .\ldt_utils\models.py:43 +msgid "media.mimetype" +msgstr "mimetype" + +#: .\ldt_utils\models.py:102 +msgid "content.iri_id" +msgstr "iri id" + +#: .\ldt_utils\models.py:103 +msgid "content.iriurl" +msgstr "iri url" + +#: .\ldt_utils\models.py:104 +msgid "content.creation_date" +msgstr "content creation date" + +#: .\ldt_utils\models.py:105 +msgid "content.update_date" +msgstr "content update date" + +#: .\ldt_utils\models.py:106 +msgid "content.title" +msgstr "title" + +#: .\ldt_utils\models.py:107 +msgid "content.description" +msgstr "description" + +#: .\ldt_utils\models.py:108 +msgid "content.authors" +msgstr "authors" + +#: .\ldt_utils\models.py:109 +msgid "content.duration" +msgstr "duration (ms)" + +#: .\ldt_utils\models.py:333 +msgid "created by" +msgstr "created by" + +#: .\ldt_utils\models.py:334 +msgid "changed by" +msgstr "changed by" + +#: .\ldt_utils\utils.py:198 +msgid "Personal cutting" +msgstr "Personal cutting" + +#: .\ldt_utils\views.py:118 +#: .\ldt_utils\views.py:568 +#: .\ldt_utils\views.py:614 +msgid "You can not access this project" +msgstr "You can not access this project" + +#: .\ldt_utils\views.py:262 +msgid "Please enter valid keywords." +msgstr "Please enter valid keywords." + +#: .\ldt_utils\views.py:780 +#, python-format +msgid "the project %(title)s is published. please unpublish before deleting." +msgstr "the project %(title)s is published. please unpublish before deleting." + +#: .\ldt_utils\views.py:781 +msgid "can not delete the project. Please correct the following error" +msgstr "can not delete the project. Please correct the following error" + +#: .\ldt_utils\views.py:782 +msgid "title error deleting project" +msgstr "Error when deleting project" + +#: .\ldt_utils\views.py:784 +#, python-format +msgid "please confirm deleting project %(title)s" +msgstr "Please confirm deleting project %(title)s" + +#: .\ldt_utils\views.py:785 +msgid "confirm deletion" +msgstr "Confirm deletion" + +#: .\ldt_utils\views.py:961 +msgid "Problem when downloading file from url : " +msgstr "Problem when downloading file from url: " + +#: .\ldt_utils\views.py:964 +msgid "Problem when uploading file : " +msgstr "Problem when uploading file: " + +#: .\ldt_utils\views.py:1033 +#, python-format +msgid "There is %(count)d error when deleting content" +msgid_plural "There are %(count)d errors when deleting content" +msgstr[0] "There is %(count)d error when deleting content" +msgstr[1] "There are %(count)d errors when deleting content" + +#: .\ldt_utils\views.py:1034 +msgid "title error deleting content" +msgstr "Error when deleting content" + +#: .\ldt_utils\views.py:1036 +#, python-format +msgid "Confirm delete content %(titles)s" +msgstr "Confirm delete content %(titles)s" + +#: .\ldt_utils\views.py:1037 +msgid "confirm delete content" +msgstr "Confirm delete content" + +#: .\ldt_utils\views.py:1071 +#, python-format msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-10-07 12:22+0200\n" -"PO-Revision-Date: 2010-02-17 03:53+0100\n" -"Last-Translator: Yves-Marie Haussonne \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: \n" - -#: .\forms\widgets.py:17 -msgid "Date" -msgstr "Date" - -#: .\forms\widgets.py:17 -msgid "Time" -msgstr "Time" - -#: .\ldt_utils\forms.py:26 -#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:53 -msgid "Search" -msgstr "search" - -#: .\ldt_utils\forms.py:27 -msgid "all" -msgstr "all" - -#: .\ldt_utils\forms.py:27 .\ldt_utils\models.py:39 -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:69 -msgid "title" -msgstr "title" - -#: .\ldt_utils\forms.py:27 -msgid "resume" -msgstr "resume" - -#: .\ldt_utils\forms.py:27 -#, fuzzy -msgid "tags" -msgstr "Pages" - -#: .\ldt_utils\forms.py:27 -msgid "Fields" -msgstr "Fields" - -#: .\ldt_utils\forms.py:28 -msgid "Display the results in Lignes De Temps" -msgstr "Display the results in Lignes De Temps" - -#: .\ldt_utils\forms.py:42 .\ldt_utils\models.py:108 -msgid "content.content_creation_date" -msgstr "content creation date" - -#: .\ldt_utils\forms.py:43 -msgid "content.media_input_type" -msgstr "Media source type" - -#: .\ldt_utils\forms.py:43 -msgid "file_upload" -msgstr "file upload" - -#: .\ldt_utils\forms.py:43 -msgid "url" -msgstr "url" - -#: .\ldt_utils\forms.py:43 -msgid "existing_media" -msgstr "existing media" - -#: .\ldt_utils\forms.py:43 -msgid "create_media" -msgstr "create media" - -#: .\ldt_utils\forms.py:43 -msgid "none_media" -msgstr "no media" - -#: .\ldt_utils\models.py:28 -msgid "media.external_id" -msgstr "external id" - -#: .\ldt_utils\models.py:29 -msgid "media.external_permalink" -msgstr "media permalink" - -#: .\ldt_utils\models.py:30 -msgid "media.external_publication_url" -msgstr "media publication url" - -#: .\ldt_utils\models.py:31 -msgid "media.external_src_url" -msgstr "media external source url" - -#: .\ldt_utils\models.py:32 -msgid "media.creation_date" -msgstr "media object creation date" - -#: .\ldt_utils\models.py:33 -msgid "media.media_creation_date" -msgstr "media creation date" - -#: .\ldt_utils\models.py:34 -msgid "media.update_date" -msgstr "update date" - -#: .\ldt_utils\models.py:35 -msgid "media.videopath" -msgstr "videopath" - -#: .\ldt_utils\models.py:36 -msgid "media.duration" -msgstr "duration (ms)" - -#: .\ldt_utils\models.py:37 -msgid "media.creator" -msgstr "media creator" - -#: .\ldt_utils\models.py:38 -msgid "description" -msgstr "description" - -#: .\ldt_utils\models.py:40 -msgid "media.src" -msgstr "media source" - -#: .\ldt_utils\models.py:41 -msgid "media.mimetype" -msgstr "mimetype" - -#: .\ldt_utils\models.py:100 -msgid "content.iri_id" -msgstr "iri id" - -#: .\ldt_utils\models.py:101 -msgid "content.iriurl" -msgstr "iri url" - -#: .\ldt_utils\models.py:102 -msgid "content.creation_date" -msgstr "content creation date" - -#: .\ldt_utils\models.py:103 -msgid "content.update_date" -msgstr "content update date" - -#: .\ldt_utils\models.py:104 -msgid "content.title" -msgstr "title" - -#: .\ldt_utils\models.py:105 -msgid "content.description" -msgstr "description" - -#: .\ldt_utils\models.py:106 -msgid "content.authors" -msgstr "authors" - -#: .\ldt_utils\models.py:107 -msgid "content.duration" -msgstr "duration (ms)" - -#: .\ldt_utils\models.py:306 -msgid "created by" -msgstr "created by" - -#: .\ldt_utils\models.py:307 -msgid "changed by" -msgstr "changed by" - -#: .\ldt_utils\utils.py:195 -msgid "Personal cutting" -msgstr "Personal cutting" - -#: .\ldt_utils\views.py:151 .\ldt_utils\views.py:612 .\ldt_utils\views.py:658 -msgid "You can not access this project" -msgstr "You can not access this project" - -#: .\ldt_utils\views.py:286 .\ldt_utils\views.py:304 -msgid "Please enter valid keywords." -msgstr "Please enter valid keywords." - -#: .\ldt_utils\views.py:824 -#, python-format -msgid "the project %(title)s is published. please unpublish before deleting." -msgstr "the project %(title)s is published. please unpublish before deleting." - -#: .\ldt_utils\views.py:825 -msgid "can not delete the project. Please correct the following error" -msgstr "can not delete the project. Please correct the following error" - -#: .\ldt_utils\views.py:826 -msgid "title error deleting project" -msgstr "Error when deleting project" - -#: .\ldt_utils\views.py:828 -#, python-format -msgid "please confirm deleting project %(title)s" -msgstr "Please confirm deleting project %(title)s" - -#: .\ldt_utils\views.py:829 -msgid "confirm deletion" -msgstr "Confirm deletion" - -#: .\ldt_utils\views.py:1006 -msgid "Problem when downloading file from url : " -msgstr "Problem when downloading file from url: " - -#: .\ldt_utils\views.py:1009 -msgid "Problem when uploading file : " -msgstr "Problem when uploading file: " - -#: .\ldt_utils\views.py:1078 -#, python-format -msgid "There is %(count)d error when deleting content" -msgid_plural "There are %(count)d errors when deleting content" -msgstr[0] "There is %(count)d error when deleting content" -msgstr[1] "There are %(count)d errors when deleting content" - -#: .\ldt_utils\views.py:1079 -msgid "title error deleting content" -msgstr "Error when deleting content" - -#: .\ldt_utils\views.py:1081 -#, python-format -msgid "Confirm delete content %(titles)s" -msgstr "Confirm delete content %(titles)s" - -#: .\ldt_utils\views.py:1082 -msgid "confirm delete content" -msgstr "Confirm delete content" - -#: .\ldt_utils\views.py:1116 -#, python-format +"Content '%(title)s' is referenced by this project : %(project_titles)s. " +"Please delete it beforehand." +msgid_plural "" +"Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s." +"Please delete them beforehand." +msgstr[0] "" +"Content '%(title)s' is referenced by this project : %(project_titles)s. " + "Please delete it beforehand." +msgstr[1] "" +"Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s. " +"Please delete them beforehand." + +#: .\ldt_utils\templates\admin\ldt_utils\app_action.html.py:4 +#: .\templates\admin\cms_change_list.html.py:7 +#: .\templates\admin\page_app_index.html.py:8 +#: .\templates\admin\page_change_form.html.py:17 +#: .\templates\admin\page_change_list.html.py:25 +#: .\user\templates\registration\logged_out.html.py:4 +msgid "Home" +msgstr "Home" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:55 +#: .\templates\admin\page_base.html.py:19 +#: .\user\templates\ldt\user\login_form.html.py:33 +msgid "Space" +msgstr "Space" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:56 +msgid "Ldt Project" +msgstr "Ldt Project" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:59 +msgid "Contents" +msgstr "Contents" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:63 +msgid "Create new content" +msgstr "Create new content" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:66 +msgid "Content" +msgstr "Content" + +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:70 +#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:77 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:10 +msgid "create project" +msgstr "Create new project" + +#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:12 +msgid "Copy your project" +msgstr "Copy your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:16 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:80 +msgid "Title" +msgstr "Title" + +#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:20 +msgid "Copy" +msgstr "Copy" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:41 +msgid "Browse" +msgstr "Browse" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:42 +msgid "File uploaded" +msgstr "File uploaded" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:43 +msgid "Please wait, the upload is not finished yet" +msgstr "Please wait, the upload is not finished yet" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:44 +#, fuzzy +msgid "Cancel upload" +msgstr "Cancel upload" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:56 +msgid "" +"The operation could not be performed because one or more error(s) occurred." +"
Please resubmit the content form after making the following changes:" +msgstr "The operation could not be performed because one or more error(s) occurred." +"
Please resubmit the content form after making the following changes:" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:66 msgid "" -"Content '%(title)s' is referenced by this project : %(project_titles)s. " -"Please delete it beforehand." -msgid_plural "" -"Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s. " -"Please delete them beforehand." -msgstr[0] "" -"Content '%(title)s' is referenced by this project : %(project_titles)s. " -"Please delete it beforehand." -msgstr[1] "" -"Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s. " -"Please delete them beforehand." - -#: .\ldt_utils\templates\admin\ldt_utils\app_action.html.py:4 -#: .\templates\admin\cms_change_list.html.py:7 -#: .\templates\admin\page_app_index.html.py:8 -#: .\templates\admin\page_change_form.html.py:17 -#: .\templates\admin\page_change_list.html.py:25 -#: .\user\templates\registration\logged_out.html.py:4 -msgid "Home" -msgstr "Home" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:55 -#: .\templates\admin\page_base.html.py:19 -#: .\user\templates\ldt\user\login_form.html.py:33 -msgid "Space" -msgstr "Space" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:56 -msgid "Ldt Project" -msgstr "Ldt Project" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:59 -msgid "Contents" -msgstr "Contents" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:63 -msgid "Create new content" -msgstr "Create new content" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:66 -msgid "Content" -msgstr "Content" - -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:70 -#: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:77 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:10 -msgid "create project" -msgstr "Create new project" - -#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:12 -msgid "Copy your project" -msgstr "Copy your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:16 -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:80 -msgid "Title" -msgstr "Title" - -#: .\ldt_utils\templates\ldt\ldt_utils\copy_ldt.html.py:20 -msgid "Copy" -msgstr "Copy" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:41 -msgid "Browse" -msgstr "Browse" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:42 -msgid "File uploaded" -msgstr "File uploaded" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:43 -msgid "Please wait, the upload is not finished yet" -msgstr "Please wait, the upload is not finished yet" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:44 -#, fuzzy -msgid "Cancel upload" -msgstr "Cancel upload" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:56 -msgid "" -"The operation could not be performed because one or more error(s) occurred." -"
Please resubmit the content form after making the following changes:" -msgstr "" -"The operation could not be performed because one or more error(s) occurred." -"
Please resubmit the content form after making the following changes:" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:66 -msgid "" -"The operation could not be performed because one or more error(s) occurred." -"
Please resubmit the media form after making the following changes:" -msgstr "" -"The operation could not be performed because one or more error(s) occurred." -"
Please resubmit the media form after making the following changes:" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:76 -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:54 -msgid "Create content" -msgstr "Create content" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:120 -msgid "media file is being processed please wait." -msgstr "media file is being processed please wait." - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:124 -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:115 -#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:52 -msgid "close_cancel" -msgstr "Close" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:125 -msgid "delete" -msgstr "Approve delete" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:126 -msgid "write" -msgstr "Write" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:37 -msgid "check all" -msgstr "check all" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:38 -msgid "uncheck all" -msgstr "uncheck all" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:76 -msgid "Update your project" -msgstr "Create your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:76 -msgid "Create your project" -msgstr "Create your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:82 -#, fuzzy -msgid "Description :" -msgstr "description" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:84 -msgid "List of contents" -msgstr "List of contents" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:97 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:3 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:3 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:3 -msgid "name" -msgstr "name" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:117 -msgid "delete_project" -msgstr "delete project" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:118 -msgid "update_project" -msgstr "update project" - -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:120 -msgid "create_project" -msgstr "Create new project" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:56 -msgid "project id" -msgstr "project id" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:57 -msgid "copy to clipboard" -msgstr "copy to clipboard" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 -msgid "popup_player" -msgstr "player" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 -msgid "popup_seo_body" -msgstr "seo" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 -msgid "popup_seo_meta" -msgstr "meta" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 -msgid "popup_links" -msgstr "links" - -#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:80 -msgid "clik here to see the project content" -msgstr "clik here to see the project content" - -#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:33 -msgid "error" -msgstr "Error" - -#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:33 -msgid "confirm" -msgstr "Confirm deletion" - -#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:48 -msgid "close_error" -msgstr "Close" - -#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:53 -msgid "do_delete" -msgstr "Approve delete" - -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:75 -#: .\templates\ldt\ldt_base.html.py:112 -#, fuzzy -msgid "My groups" -msgstr "Groups" - -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:79 -#, fuzzy -msgid "Click on the line to see the group's projects" -msgstr "clik here to see the project content" - -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:95 -#, fuzzy -msgid "The group's projects" -msgstr "Copy your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:97 -#: .\ldt_utils\templates\ldt\ldt_utils\ldt_list.html.py:79 -#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:71 -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:56 -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:68 -#: .\templates\ldt\ldt_base.html.py:123 -msgid "search" -msgstr "search" - -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:105 -msgid "You do not belong to any group." -msgstr "You do not belong to any group." - -#: .\ldt_utils\templates\ldt\ldt_utils\init_ldt_full.html.py:16 +"The operation could not be performed because one or more error(s) occurred." +"
Please resubmit the media form after making the following changes:" +msgstr "The operation could not be performed because one or more error(s) occurred." +"
Please resubmit the media form after making the following changes:" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:76 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:77 +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:54 +msgid "Create content" +msgstr "Create content" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:120 +msgid "media file is being processed please wait." +msgstr "media file is being processed please wait." + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:124 +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:87 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:115 +#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:52 +msgid "close_cancel" +msgstr "Close" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:125 +msgid "delete" +msgstr "Approve delete" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:126 +msgid "write" +msgstr "Write" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:29 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:37 +msgid "check all" +msgstr "check all" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:30 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:38 +msgid "uncheck all" +msgstr "uncheck all" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:50 +msgid "Update a group" +msgstr "Update a group" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:50 +msgid "Create a group" +msgstr "Create a group" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:53 +#: .\user\templates\ldt\user\change_profile.html.py:52 +msgid "Name" +msgstr "Name" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:55 +#, fuzzy +msgid "List of members" +msgstr "Members list" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:68 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:97 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:3 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:3 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:3 +msgid "name" +msgstr "name" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:89 +#, fuzzy +msgid "delete_group" +msgstr "delete project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:90 +#, fuzzy +msgid "update_group" +msgstr "update project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:92 +#, fuzzy +msgid "create_group" +msgstr "Create a group" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:76 +msgid "Update your project" +msgstr "Create your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:76 +msgid "Create your project" +msgstr "Create your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:82 +#, fuzzy +msgid "Description :" +msgstr "description" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:84 +msgid "List of contents" +msgstr "List of contents" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:117 +msgid "delete_project" +msgstr "delete project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:118 +msgid "update_project" +msgstr "update project" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:120 +msgid "create_project" +msgstr "Create new project" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:56 +msgid "project id" +msgstr "project id" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:57 +msgid "copy to clipboard" +msgstr "copy to clipboard" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 +msgid "popup_player" +msgstr "player" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 +msgid "popup_seo_body" +msgstr "seo" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 +msgid "popup_seo_meta" +msgstr "meta" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:66 +msgid "popup_links" +msgstr "links" + +#: .\ldt_utils\templates\ldt\ldt_utils\embed_popup.html.py:80 +msgid "clik here to see the project content" +msgstr "clik here to see the project content" + +#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:33 +msgid "error" +msgstr "Error" + +#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:33 +msgid "confirm" +msgstr "Confirm deletion" + +#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:48 +msgid "close_error" +msgstr "Close" + +#: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:53 +msgid "do_delete" +msgstr "Approve delete" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:75 +#: .\templates\ldt\ldt_base.html.py:112 +#, fuzzy +msgid "My groups" +msgstr "Groups" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:77 +#, fuzzy +msgid "Create group" +msgstr "Create new project" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:82 +#, fuzzy +msgid "Click on the line to see the group's projects" +msgstr "clik here to see the project content" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:98 +#, fuzzy +msgid "The group's projects" +msgstr "Copy your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:100 +#: .\ldt_utils\templates\ldt\ldt_utils\ldt_list.html.py:79 +#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:71 +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:56 +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:68 +#: .\templates\ldt\ldt_base.html.py:123 +msgid "search" +msgstr "search" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:108 +msgid "You do not belong to any group." +msgstr "You do not belong to any group." + +#: .\ldt_utils\templates\ldt\ldt_utils\init_ldt_full.html.py:16 msgid "" -"Your current work is modified. Click Cancel and save it one last time before " -"leaving. Click OK to leave without saving." -msgstr "" -"Your current work is modified. Click Cancel and save it one last time before " -"leaving. Click OK to leave without saving." - -#: .\ldt_utils\templates\ldt\ldt_utils\ldt_list.html.py:77 -msgid "project list" -msgstr "Projects" - -#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:63 -msgid "Submit" -msgstr "Submit" - -#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:68 -#: .\templates\ldt\ldt_base.html.py:113 -msgid "Published projects" -msgstr "Published projects" - -#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:69 -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:66 -msgid "Create project" -msgstr "Create new project" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_form.html.py:10 -msgid "The search field can not be empty." -msgstr "The search field can not be empty." - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:59 -#, python-format -msgid " No results for %(search)s." -msgstr "No results for %(search)s." - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 -msgid "Results for " -msgstr "Results for" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 -msgid "Result" -msgstr "Result" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:76 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:12 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:14 -msgid "open ldt" -msgstr "open ldt" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:80 -msgid "No title" -msgstr "No title" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:86 -#, fuzzy -msgid "Tags" -msgstr "Pages" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:100 -msgid "previous" -msgstr "Previous" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:105 -#, python-format -msgid "Page %(number)s of %(num_pages)s" -msgstr "Page %(number)s of %(num_pages)s" - -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:110 -msgid "next" -msgstr "Next" - -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:53 -msgid "content list" -msgstr "Contents" - -#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:65 -msgid "My projects" -msgstr "My projects" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:11 -msgid "preview media" -msgstr "preview media" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:17 -msgid "copy project" -msgstr "Copy your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:18 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:12 -msgid "link json by id" -msgstr "link json by id" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:21 -msgid "Project published, click to unpublish" -msgstr "Project published, click to unpublish" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:23 -msgid "Project not published, click to publish" -msgstr "Project not published, click to publish" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:11 -msgid "copy the project" -msgstr "Copy your project" - -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:14 -msgid "Project published" -msgstr " published" - -#: .\templates\admin\cms_change_form.html.py:30 -msgid "Approve page deletion" -msgstr "Approve page deletion" - -#: .\templates\admin\cms_change_form.html.py:36 -#, python-format -msgid "(requires approvement at %(moderation_level)s level)" -msgstr "(requires approvement at %(moderation_level)s level)" - -#: .\templates\admin\cms_change_form.html.py:37 -msgid "(you can perform actions on this page directly)" -msgstr "(you can perform actions on this page directly)" - -#: .\templates\admin\cms_change_form.html.py:50 -msgid "Remove delete request" -msgstr "Remove delete request" - -#: .\templates\admin\cms_change_form.html.py:52 -msgid "Approve delete" -msgstr "Approve delete" - -#: .\templates\admin\cms_change_form.html.py:52 -msgid "Approve" -msgstr "Approve" - -#: .\templates\admin\cms_change_form.html.py:52 -#: .\templates\admin\cms_change_form.html.py:53 -msgid "draft" -msgstr "draft" - -#: .\templates\admin\cms_change_form.html.py:53 -msgid "Preview" -msgstr "Preview" - -#: .\templates\admin\cms_change_form.html.py:56 -#: .\templates\admin\page_change_form.html.py:27 -msgid "History" -msgstr "History" - -#: .\templates\admin\cms_change_form.html.py:57 -#: .\templates\admin\page_change_form.html.py:28 -msgid "View on site" -msgstr "View on site" - -#: .\templates\admin\cms_change_form.html.py:87 -#: .\templates\admin\page_change_form.html.py:38 -#: .\templates\admin\page_change_list.html.py:54 -#: .\templates\cms\admin\cms\page\change_form.html.py:24 -msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "Please correct the error below." -msgstr[1] "Please correct the errors below." - -#: .\templates\admin\cms_change_form.html.py:107 -msgid "All permissions" -msgstr "All permissions" - -#: .\templates\admin\cms_change_form.html.py:108 -#: .\templates\admin\cms_change_form.html.py:120 -msgid "Loading..." -msgstr "Loading..." - -#: .\templates\admin\cms_change_form.html.py:119 -msgid "Page states" -msgstr "Page states" - -#: .\templates\admin\cms_change_form.html.py:142 -#, python-format +"Your current work is modified. Click Cancel and save it one last time before " +"leaving. Click OK to leave without saving." +msgstr "Your current work is modified. Click Cancel and save it one last time before " +"leaving. Click OK to leave without saving." + +#: .\ldt_utils\templates\ldt\ldt_utils\ldt_list.html.py:77 +msgid "project list" +msgstr "Projects" + +#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:63 +msgid "Submit" +msgstr "Submit" + +#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:68 +#: .\templates\ldt\ldt_base.html.py:113 +msgid "Published projects" +msgstr "Published projects" + +#: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:69 +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:66 +msgid "Create project" +msgstr "Create new project" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_form.html.py:10 +msgid "The search field can not be empty." +msgstr "The search field can not be empty." + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:59 +#, python-format +msgid " No results for %(search)s." +msgstr "No results for %(search)s." + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 +msgid "Results for " +msgstr "Results for" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 +msgid "Result" +msgstr "Result" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:76 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:12 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:14 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:12 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:14 +msgid "open ldt" +msgstr "open ldt" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:80 +msgid "No title" +msgstr "No title" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:87 +#, fuzzy +msgid "Tags" +msgstr "Pages" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:101 +msgid "previous" +msgstr "Previous" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:106 +#, python-format +msgid "Page %(number)s of %(num_pages)s" +msgstr "Page %(number)s of %(num_pages)s" + +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:111 +msgid "next" +msgstr "Next" + +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:53 +msgid "content list" +msgstr "Contents" + +#: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:65 +msgid "My projects" +msgstr "My projects" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:11 +msgid "preview media" +msgstr "preview media" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:17 +msgid "copy project" +msgstr "Copy your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:18 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:17 +msgid "link json by id" +msgstr "link json by id" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:21 +msgid "Project published, click to unpublish" +msgstr "Project published, click to unpublish" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:23 +msgid "Project not published, click to publish" +msgstr "Project not published, click to publish" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:16 +msgid "copy the project" +msgstr "Copy your project" + +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:19 +msgid "Project published" +msgstr " published" + +#: .\templates\admin\cms_change_form.html.py:30 +msgid "Approve page deletion" +msgstr "Approve page deletion" + +#: .\templates\admin\cms_change_form.html.py:36 +#, python-format +msgid "(requires approvement at %(moderation_level)s level)" +msgstr "(requires approvement at %(moderation_level)s level)" + +#: .\templates\admin\cms_change_form.html.py:37 +msgid "(you can perform actions on this page directly)" +msgstr "(you can perform actions on this page directly)" + +#: .\templates\admin\cms_change_form.html.py:50 +msgid "Remove delete request" +msgstr "Remove delete request" + +#: .\templates\admin\cms_change_form.html.py:52 +msgid "Approve delete" +msgstr "Approve delete" + +#: .\templates\admin\cms_change_form.html.py:52 +msgid "Approve" +msgstr "Approve" + +#: .\templates\admin\cms_change_form.html.py:52 +#: .\templates\admin\cms_change_form.html.py:53 +msgid "draft" +msgstr "draft" + +#: .\templates\admin\cms_change_form.html.py:53 +msgid "Preview" +msgstr "Preview" + +#: .\templates\admin\cms_change_form.html.py:56 +#: .\templates\admin\page_change_form.html.py:27 +msgid "History" +msgstr "History" + +#: .\templates\admin\cms_change_form.html.py:57 +#: .\templates\admin\page_change_form.html.py:28 +msgid "View on site" +msgstr "View on site" + +#: .\templates\admin\cms_change_form.html.py:87 +#: .\templates\admin\page_change_form.html.py:38 +#: .\templates\admin\page_change_list.html.py:54 +#: .\templates\cms\admin\cms\page\change_form.html.py:24 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "Please correct the error below." +msgstr[1] "Please correct the errors below." + +#: .\templates\admin\cms_change_form.html.py:107 +msgid "All permissions" +msgstr "All permissions" + +#: .\templates\admin\cms_change_form.html.py:108 +#: .\templates\admin\cms_change_form.html.py:120 +msgid "Loading..." +msgstr "Loading..." + +#: .\templates\admin\cms_change_form.html.py:119 +msgid "Page states" +msgstr "Page states" + +#: .\templates\admin\cms_change_form.html.py:142 +#, python-format msgid "" -"This page must be moderated at level %(moderation_level)s, post a message " -"for moderator." -msgstr "" -"This page must be moderated at level %(moderation_level)s, post a message " -"for moderator." - -#: .\templates\admin\cms_change_form.html.py:144 -msgid "Request approvemet" -msgstr "Request approvemet" - -#: .\templates\admin\cms_change_form.html.py:234 -#: .\user\templates\registration\registration_form.html.py:16 -msgid "Save" -msgstr "Save" - -#: .\templates\admin\cms_change_form.html.py:235 -msgid "Save and continue editing" -msgstr "Save and continue editing" - -#: .\templates\admin\cms_change_list.html.py:51 -msgid "Successfully moved" -msgstr "Successfully moved" - -#: .\templates\admin\cms_change_list.html.py:76 -#, python-format -msgid "Recover deleted %(name)s" -msgstr "Recover deleted %(name)s" - -#: .\templates\admin\cms_change_list.html.py:79 -#: .\templates\admin\page_change_list.html.py:46 -#, python-format -msgid "Add %(name)s" -msgstr "Add %(name)s" - -#: .\templates\admin\cms_change_list.html.py:91 -msgid "Pages on:" -msgstr "Pages on:" - -#: .\templates\admin\cms_change_list.html.py:108 -msgid "on" -msgstr "on" - -#: .\templates\admin\cms_change_list.html.py:108 -msgid "off" -msgstr "off" - -#: .\templates\admin\cms_change_list.html.py:110 -#: .\templates\admin\page_change_list.html.py:65 -msgid "Filter" -msgstr "Filter" - -#: .\templates\admin\index.html.py:18 .\templates\admin\page_index.html.py:18 -#, python-format -msgid "Models available in the %(name)s application." -msgstr "Models available in the %(name)s application." - -#: .\templates\admin\index.html.py:19 -#: .\templates\admin\page_app_index.html.py:10 -#: .\templates\admin\page_index.html.py:19 -#, python-format -msgid "%(name)s" -msgstr "%(name)s" - -#: .\templates\admin\index.html.py:29 -#: .\templates\admin\page_change_form.html.py:20 -#: .\templates\admin\page_index.html.py:29 -msgid "Add" -msgstr "Add" - -#: .\templates\admin\index.html.py:35 .\templates\admin\page_index.html.py:35 -msgid "Change" -msgstr "changed by" - -#: .\templates\admin\index.html.py:64 .\templates\admin\page_index.html.py:45 -msgid "You don't have permission to edit anything." -msgstr "You don't have permission to edit anything." - -#: .\templates\admin\index.html.py:72 .\templates\admin\page_index.html.py:53 -msgid "Recent Actions" -msgstr "Recent Actions" - -#: .\templates\admin\index.html.py:73 .\templates\admin\page_index.html.py:54 -msgid "My Actions" -msgstr "My Actions" - -#: .\templates\admin\index.html.py:77 .\templates\admin\page_index.html.py:58 -msgid "None available" -msgstr "None available" - -#: .\templates\admin\index.html.py:91 .\templates\admin\page_index.html.py:72 -msgid "Unknown content" -msgstr "Unknown content" - -#: .\templates\admin\page_base.html.py:20 -#: .\templates\admin\page_index.html.py:11 -msgid "Pages" -msgstr "Pages" - -#: .\templates\admin\page_base_site.html.py:7 -msgid "Django administration" -msgstr "Django administration" - -#: .\templates\admin\page_login.html.py:8 -msgid "Connexion" -msgstr "Login" - -#: .\templates\admin\page_login.html.py:20 -msgid "Username:" -msgstr "Username:" - -#: .\templates\admin\page_login.html.py:24 -msgid "Password:" -msgstr "Password:" - -#: .\templates\admin\page_login.html.py:29 -#: .\user\templates\registration\login.html.py:39 -msgid "Create an account" -msgstr "Create an account" - -#: .\templates\admin\page_login.html.py:30 -#: .\user\templates\registration\login.html.py:40 -msgid "Forget password?" -msgstr "Forget password?" - -#: .\templates\admin\page_login.html.py:32 -#: .\user\templates\ldt\user\login_form.html.py:37 -#: .\user\templates\ldt\user\login_form.html.py:45 -#: .\user\templates\registration\login.html.py:21 -#: .\user\templates\registration\password_reset_complete.html.py:14 -msgid "Log in" -msgstr "Log in" - -#: .\templates\cms\admin\cms\page\change_form.html.py:11 -msgid "Documentation" -msgstr "Documentation" - -#: .\templates\cms\admin\cms\page\change_form.html.py:11 -msgid "Change password" -msgstr "Change password" - -#: .\templates\cms\admin\cms\page\change_form.html.py:11 -#: .\templates\ldt\ldt_base.html.py:92 -#: .\user\templates\ldt\user\login_form.html.py:34 -msgid "Log out" -msgstr "Log out" - -#: .\templates\cms\admin\cms\page\change_form.html.py:42 -msgid "Ordering" -msgstr "Ordering" - -#: .\templates\cms\admin\cms\page\change_form.html.py:45 -msgid "Order:" -msgstr "Order:" - -#: .\templates\ldt\ldt_base.html.py:85 -msgid "header_title" -msgstr "Ldt Platform" - -#: .\templates\ldt\ldt_base.html.py:89 -#, fuzzy -msgid "Link to admin" -msgstr "link to administration" - -#: .\templates\ldt\ldt_base.html.py:89 -msgid "Staff" -msgstr "admin" - -#: .\templates\ldt\ldt_base.html.py:92 -#: .\user\templates\ldt\user\change_profile.html.py:85 -#, fuzzy -msgid "Profile change" -msgstr "Mail change" - -#: .\templates\ldt\ldt_base.html.py:111 .\templates\ldt\ldt_base.html.py:112 -msgid "home" -msgstr "home" - -#: .\templates\ldt\ldt_base.html.py:114 -msgid "contents" -msgstr "Contents" - -#: .\templates\ldt\ldt_base.html.py:115 -msgid "indexation projects" -msgstr "indexation projects" - -#: .\templates\ldt\ldt_base.html.py:116 -msgid "accounts" -msgstr "accounts" - -#: .\templates\ldt\ldt_base.html.py:117 -#: .\user\templates\ldt\user\login_form.html.py:32 -#: .\user\templates\registration\password_change_done.html.py:7 -#: .\user\templates\registration\password_change_form.html.py:13 -msgid "Profiles" -msgstr "Profiles" - -#: .\templates\ldt\ldt_base.html.py:145 -msgid "Version number" -msgstr "Version number" - -#: .\templates\ldt\ldt_base.html.py:145 -#, python-format -msgid " web %(WEB_VERSION)s | platform %(VERSION)s" -msgstr "web v%(WEB_VERSION)s | platform v%(VERSION)s" - -#: .\templates\ldt\ldt_raw_base.html.py:13 -msgid "page_title" -msgstr "Ldt Platform" - -#: .\text\models.py:17 -msgid "annotation.external_id" -msgstr "external id" - -#: .\text\models.py:18 -msgid "annotation.uri" -msgstr "uri" - -#: .\text\models.py:19 -msgid "annotation.tags" -msgstr "tags" - -#: .\text\models.py:20 -msgid "annotation.title" -msgstr "title" - -#: .\text\models.py:21 -msgid "annotation.description" -msgstr "description" - -#: .\text\models.py:22 -msgid "annotation.text" -msgstr "text" - -#: .\text\models.py:23 -msgid "annotation.color" -msgstr "color" - -#: .\text\models.py:24 -msgid "creator.title" -msgstr "title" - -#: .\text\models.py:25 -msgid "contributor.title" -msgstr "title" - -#: .\text\models.py:26 -msgid "annotation.creation_date" -msgstr "creation date" - -#: .\text\models.py:27 -msgid "annotation.update_date" -msgstr "update date" - -#: .\user\admin.py:13 -msgid "User details" -msgstr "User details" - -#: .\user\admin.py:14 -msgid "Groups" -msgstr "Groups" - -#: .\user\admin.py:15 -msgid "Permissions" -msgstr "Permissions" - -#: .\user\admin.py:25 .\user\templates\ldt\user\change_profile.html.py:95 -#: .\user\templates\ldt\user\login_form.html.py:61 -msgid "Password" -msgstr "Password" - -#: .\user\forms.py:27 .\user\templates\ldt\user\change_password.html.py:40 -#: .\user\templates\ldt\user\change_profile.html.py:108 -msgid "New password" -msgstr "New password" - -#: .\user\forms.py:29 .\user\templates\ldt\user\change_password.html.py:50 -#: .\user\templates\ldt\user\change_profile.html.py:121 -msgid "New password confirmation" -msgstr "New password confirmation" - -#: .\user\forms.py:58 .\user\forms.py:59 -msgid "E-mail" -msgstr "E-mail" - -#: .\user\forms.py:70 -msgid "The two emails didn't match." -msgstr "The two emails didn't match." - -#: .\user\forms.py:81 .\user\templates\ldt\user\change_profile.html.py:44 -msgid "First name" -msgstr "First name" - -#: .\user\forms.py:82 -msgid "Last name" -msgstr "Last name" - -#: .\user\forms.py:109 .\user\templates\ldt\user\change_profile.html.py:73 -msgid "Language" -msgstr "Language" - -#: .\user\views.py:29 -msgid "Your profile has been updated." -msgstr "Your profile has been changed." - -#: .\user\views.py:53 -msgid "Your password has been updated." -msgstr "Your password has been updated." - -#: .\user\views.py:73 .\user\templates\registration\login.html.py:24 -msgid "Sorry, that's not a valid username or password." -msgstr "Sorry, that's not a valid username or password." - -#: .\user\templates\ldt\user\change_password.html.py:31 -msgid "Old password" -msgstr "Old password:" - -#: .\user\templates\ldt\user\change_password.html.py:44 -msgid "passwords don't match" -msgstr "passwords don't match" - -#: .\user\templates\ldt\user\change_password.html.py:57 -#: .\user\templates\ldt\user\change_profile.html.py:134 -#: .\user\templates\registration\password_change_form.html.py:14 -#: .\user\templates\registration\password_change_form.html.py:17 -msgid "Password change" -msgstr "Password change" - -#: .\user\templates\ldt\user\change_password.html.py:61 -msgid "Your new password has been saved." -msgstr "Your password has been changed." - -#: .\user\templates\ldt\user\change_profile.html.py:33 -msgid "Username" -msgstr "Username:" - -#: .\user\templates\ldt\user\change_profile.html.py:52 -msgid "Name" -msgstr "Name" - -#: .\user\templates\ldt\user\change_profile.html.py:60 -msgid "Email" -msgstr "E-mail" - -#: .\user\templates\ldt\user\login_form.html.py:50 -msgid "create account" -msgstr "create account" - -#: .\user\templates\ldt\user\login_form.html.py:54 -msgid "Pseudo" -msgstr "Username" - -#: .\user\templates\ldt\user\login_form.html.py:57 -#: .\user\templates\ldt\user\login_form.html.py:64 -msgid "this field is compulsory" -msgstr "this field is compulsory" - -#: .\user\templates\ldt\user\login_form.html.py:68 -msgid "reset password" -msgstr "reset password" - -#: .\user\templates\ldt\user\login_form.html.py:71 -msgid "Connection" -msgstr "Login" - -#: .\user\templates\registration\activate.html.py:6 -#: .\user\templates\registration\activate.html.py:9 -msgid "Activate account" -msgstr "Activate account" - -#: .\user\templates\registration\activate.html.py:12 -msgid "You have activated your account" -msgstr "You have activated your account" - -#: .\user\templates\registration\activate.html.py:13 -msgid "Go back to login page" -msgstr "Go back to login page" - -#: .\user\templates\registration\activation_complete.html.py:4 -#: .\user\templates\registration\registration_complete.html.py:8 -msgid "Sign up successfully" -msgstr "Sign up successfully" - -#: .\user\templates\registration\activation_complete.html.py:6 -msgid "activation completed" -msgstr "activation completed" - -#: .\user\templates\registration\logged_out.html.py:8 -msgid "Thanks for spending some quality time with the Web site today." -msgstr "Thanks for spending some quality time with the Web site today." - -#: .\user\templates\registration\logged_out.html.py:10 -msgid "Log in again" -msgstr "Log in again" - -#: .\user\templates\registration\login.html.py:46 -msgid "login" -msgstr "login" - -#: .\user\templates\registration\password_change_done.html.py:3 -#: .\user\templates\registration\password_change_done.html.py:11 -msgid "password change successful" -msgstr "password change successful" - -#: .\user\templates\registration\password_change_done.html.py:8 -msgid "password change" -msgstr "password change" - -#: .\user\templates\registration\password_change_done.html.py:14 -msgid "Your password has been changed." -msgstr "Your password has been changed." - -#: .\user\templates\registration\password_change_done.html.py:15 -msgid "Go back to profiles" -msgstr "Go back to profiles" - -#: .\user\templates\registration\password_change_form.html.py:20 +"This page must be moderated at level %(moderation_level)s, post a message " +"for moderator." +msgstr "This page must be moderated at level %(moderation_level)s, post a message " +"for moderator." + +#: .\templates\admin\cms_change_form.html.py:144 +msgid "Request approvemet" +msgstr "Request approvemet" + +#: .\templates\admin\cms_change_form.html.py:234 +#: .\user\templates\registration\registration_form.html.py:16 +msgid "Save" +msgstr "Save" + +#: .\templates\admin\cms_change_form.html.py:235 +msgid "Save and continue editing" +msgstr "Save and continue editing" + +#: .\templates\admin\cms_change_list.html.py:51 +msgid "Successfully moved" +msgstr "Successfully moved" + +#: .\templates\admin\cms_change_list.html.py:76 +#, python-format +msgid "Recover deleted %(name)s" +msgstr "Recover deleted %(name)s" + +#: .\templates\admin\cms_change_list.html.py:79 +#: .\templates\admin\page_change_list.html.py:46 +#, python-format +msgid "Add %(name)s" +msgstr "Add %(name)s" + +#: .\templates\admin\cms_change_list.html.py:91 +msgid "Pages on:" +msgstr "Pages on:" + +#: .\templates\admin\cms_change_list.html.py:108 +msgid "on" +msgstr "on" + +#: .\templates\admin\cms_change_list.html.py:108 +msgid "off" +msgstr "off" + +#: .\templates\admin\cms_change_list.html.py:110 +#: .\templates\admin\page_change_list.html.py:65 +msgid "Filter" +msgstr "Filter" + +#: .\templates\admin\index.html.py:18 +#: .\templates\admin\page_index.html.py:18 +#, python-format +msgid "Models available in the %(name)s application." +msgstr "Models available in the %(name)s application." + +#: .\templates\admin\index.html.py:19 +#: .\templates\admin\page_app_index.html.py:10 +#: .\templates\admin\page_index.html.py:19 +#, python-format +msgid "%(name)s" +msgstr "%(name)s" + +#: .\templates\admin\index.html.py:29 +#: .\templates\admin\page_change_form.html.py:20 +#: .\templates\admin\page_index.html.py:29 +msgid "Add" +msgstr "Add" + +#: .\templates\admin\index.html.py:35 +#: .\templates\admin\page_index.html.py:35 +msgid "Change" +msgstr "changed by" + +#: .\templates\admin\index.html.py:64 +#: .\templates\admin\page_index.html.py:45 +msgid "You don't have permission to edit anything." +msgstr "You don't have permission to edit anything." + +#: .\templates\admin\index.html.py:72 +#: .\templates\admin\page_index.html.py:53 +msgid "Recent Actions" +msgstr "Recent Actions" + +#: .\templates\admin\index.html.py:73 +#: .\templates\admin\page_index.html.py:54 +msgid "My Actions" +msgstr "My Actions" + +#: .\templates\admin\index.html.py:77 +#: .\templates\admin\page_index.html.py:58 +msgid "None available" +msgstr "None available" + +#: .\templates\admin\index.html.py:91 +#: .\templates\admin\page_index.html.py:72 +msgid "Unknown content" +msgstr "Unknown content" + +#: .\templates\admin\page_base.html.py:20 +#: .\templates\admin\page_index.html.py:11 +msgid "Pages" +msgstr "Pages" + +#: .\templates\admin\page_base_site.html.py:7 +msgid "Django administration" +msgstr "Django administration" + +#: .\templates\admin\page_login.html.py:8 +msgid "Connexion" +msgstr "Login" + +#: .\templates\admin\page_login.html.py:20 +msgid "Username:" +msgstr "Username:" + +#: .\templates\admin\page_login.html.py:24 +msgid "Password:" +msgstr "Password:" + +#: .\templates\admin\page_login.html.py:29 +#: .\user\templates\registration\login.html.py:39 +msgid "Create an account" +msgstr "Create an account" + +#: .\templates\admin\page_login.html.py:30 +#: .\user\templates\registration\login.html.py:40 +msgid "Forget password?" +msgstr "Forget password?" + +#: .\templates\admin\page_login.html.py:32 +#: .\user\templates\ldt\user\login_form.html.py:37 +#: .\user\templates\ldt\user\login_form.html.py:45 +#: .\user\templates\registration\login.html.py:21 +#: .\user\templates\registration\password_reset_complete.html.py:14 +msgid "Log in" +msgstr "Log in" + +#: .\templates\cms\admin\cms\page\change_form.html.py:11 +msgid "Documentation" +msgstr "Documentation" + +#: .\templates\cms\admin\cms\page\change_form.html.py:11 +msgid "Change password" +msgstr "Change password" + +#: .\templates\cms\admin\cms\page\change_form.html.py:11 +#: .\templates\ldt\ldt_base.html.py:92 +#: .\user\templates\ldt\user\login_form.html.py:34 +msgid "Log out" +msgstr "Log out" + +#: .\templates\cms\admin\cms\page\change_form.html.py:42 +msgid "Ordering" +msgstr "Ordering" + +#: .\templates\cms\admin\cms\page\change_form.html.py:45 +msgid "Order:" +msgstr "Order:" + +#: .\templates\ldt\ldt_base.html.py:85 +msgid "header_title" +msgstr "Ldt Platform" + +#: .\templates\ldt\ldt_base.html.py:89 +#, fuzzy +msgid "Link to admin" +msgstr "link to administration" + +#: .\templates\ldt\ldt_base.html.py:89 +msgid "Staff" +msgstr "admin" + +#: .\templates\ldt\ldt_base.html.py:92 +#: .\user\templates\ldt\user\change_profile.html.py:85 +#, fuzzy +msgid "Profile change" +msgstr "Mail change" + +#: .\templates\ldt\ldt_base.html.py:111 +#: .\templates\ldt\ldt_base.html.py:112 +msgid "home" +msgstr "home" + +#: .\templates\ldt\ldt_base.html.py:114 +msgid "contents" +msgstr "Contents" + +#: .\templates\ldt\ldt_base.html.py:115 +msgid "indexation projects" +msgstr "indexation projects" + +#: .\templates\ldt\ldt_base.html.py:116 +msgid "accounts" +msgstr "accounts" + +#: .\templates\ldt\ldt_base.html.py:117 +#: .\user\templates\ldt\user\login_form.html.py:32 +#: .\user\templates\registration\password_change_done.html.py:7 +#: .\user\templates\registration\password_change_form.html.py:13 +msgid "Profiles" +msgstr "Profiles" + +#: .\templates\ldt\ldt_base.html.py:145 +msgid "Version number" +msgstr "Version number" + +#: .\templates\ldt\ldt_base.html.py:145 +#, python-format +msgid " web %(WEB_VERSION)s | platform %(VERSION)s" +msgstr "web v%(WEB_VERSION)s | platform v%(VERSION)s" + +#: .\templates\ldt\ldt_raw_base.html.py:13 +msgid "page_title" +msgstr "Ldt Platform" + +#: .\text\models.py:17 +msgid "annotation.external_id" +msgstr "external id" + +#: .\text\models.py:18 +msgid "annotation.uri" +msgstr "uri" + +#: .\text\models.py:19 +msgid "annotation.tags" +msgstr "tags" + +#: .\text\models.py:20 +msgid "annotation.title" +msgstr "title" + +#: .\text\models.py:21 +msgid "annotation.description" +msgstr "description" + +#: .\text\models.py:22 +msgid "annotation.text" +msgstr "text" + +#: .\text\models.py:23 +msgid "annotation.color" +msgstr "color" + +#: .\text\models.py:24 +msgid "creator.title" +msgstr "title" + +#: .\text\models.py:25 +msgid "contributor.title" +msgstr "title" + +#: .\text\models.py:26 +msgid "annotation.creation_date" +msgstr "creation date" + +#: .\text\models.py:27 +msgid "annotation.update_date" +msgstr "update date" + +#: .\user\admin.py:13 +msgid "User details" +msgstr "User details" + +#: .\user\admin.py:14 +msgid "Groups" +msgstr "Groups" + +#: .\user\admin.py:15 +msgid "Permissions" +msgstr "Permissions" + +#: .\user\admin.py:25 +#: .\user\templates\ldt\user\change_profile.html.py:95 +#: .\user\templates\ldt\user\login_form.html.py:61 +msgid "Password" +msgstr "Password" + +#: .\user\forms.py:27 +#: .\user\templates\ldt\user\change_password.html.py:40 +#: .\user\templates\ldt\user\change_profile.html.py:108 +msgid "New password" +msgstr "New password" + +#: .\user\forms.py:29 +#: .\user\templates\ldt\user\change_password.html.py:50 +#: .\user\templates\ldt\user\change_profile.html.py:121 +msgid "New password confirmation" +msgstr "New password confirmation" + +#: .\user\forms.py:58 +#: .\user\forms.py:59 +msgid "E-mail" +msgstr "E-mail" + +#: .\user\forms.py:70 +msgid "The two emails didn't match." +msgstr "The two emails didn't match." + +#: .\user\forms.py:81 +#: .\user\templates\ldt\user\change_profile.html.py:44 +msgid "First name" +msgstr "First name" + +#: .\user\forms.py:82 +msgid "Last name" +msgstr "Last name" + +#: .\user\forms.py:109 +#: .\user\templates\ldt\user\change_profile.html.py:73 +msgid "Language" +msgstr "Language" + +#: .\user\views.py:29 +msgid "Your profile has been updated." +msgstr "Your profile has been changed." + +#: .\user\views.py:53 +msgid "Your password has been updated." +msgstr "Your password has been updated." + +#: .\user\views.py:73 +#: .\user\templates\registration\login.html.py:24 +msgid "Sorry, that's not a valid username or password." +msgstr "Sorry, that's not a valid username or password." + +#: .\user\templates\ldt\user\change_password.html.py:31 +msgid "Old password" +msgstr "Old password:" + +#: .\user\templates\ldt\user\change_password.html.py:44 +msgid "passwords don't match" +msgstr "passwords don't match" + +#: .\user\templates\ldt\user\change_password.html.py:57 +#: .\user\templates\ldt\user\change_profile.html.py:134 +#: .\user\templates\registration\password_change_form.html.py:14 +#: .\user\templates\registration\password_change_form.html.py:17 +msgid "Password change" +msgstr "Password change" + +#: .\user\templates\ldt\user\change_password.html.py:61 +msgid "Your new password has been saved." +msgstr "Your password has been changed." + +#: .\user\templates\ldt\user\change_profile.html.py:33 +msgid "Username" +msgstr "Username:" + +#: .\user\templates\ldt\user\change_profile.html.py:60 +msgid "Email" +msgstr "E-mail" + +#: .\user\templates\ldt\user\login_form.html.py:50 +msgid "create account" +msgstr "create account" + +#: .\user\templates\ldt\user\login_form.html.py:54 +msgid "Pseudo" +msgstr "Username" + +#: .\user\templates\ldt\user\login_form.html.py:57 +#: .\user\templates\ldt\user\login_form.html.py:64 +msgid "this field is compulsory" +msgstr "this field is compulsory" + +#: .\user\templates\ldt\user\login_form.html.py:68 +msgid "reset password" +msgstr "reset password" + +#: .\user\templates\ldt\user\login_form.html.py:71 +msgid "Connection" +msgstr "Login" + +#: .\user\templates\registration\activate.html.py:6 +#: .\user\templates\registration\activate.html.py:9 +msgid "Activate account" +msgstr "Activate account" + +#: .\user\templates\registration\activate.html.py:12 +msgid "You have activated your account" +msgstr "You have activated your account" + +#: .\user\templates\registration\activate.html.py:13 +msgid "Go back to login page" +msgstr "Go back to login page" + +#: .\user\templates\registration\activation_complete.html.py:4 +#: .\user\templates\registration\registration_complete.html.py:8 +msgid "Sign up successfully" +msgstr "Sign up successfully" + +#: .\user\templates\registration\activation_complete.html.py:6 +msgid "activation completed" +msgstr "activation completed" + +#: .\user\templates\registration\logged_out.html.py:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "Thanks for spending some quality time with the Web site today." + +#: .\user\templates\registration\logged_out.html.py:10 +msgid "Log in again" +msgstr "Log in again" + +#: .\user\templates\registration\login.html.py:46 +msgid "login" +msgstr "login" + +#: .\user\templates\registration\password_change_done.html.py:3 +#: .\user\templates\registration\password_change_done.html.py:11 +msgid "password change successful" +msgstr "password change successful" + +#: .\user\templates\registration\password_change_done.html.py:8 +msgid "password change" +msgstr "password change" + +#: .\user\templates\registration\password_change_done.html.py:14 +msgid "Your password has been changed." +msgstr "Your password has been changed." + +#: .\user\templates\registration\password_change_done.html.py:15 +msgid "Go back to profiles" +msgstr "Go back to profiles" + +#: .\user\templates\registration\password_change_form.html.py:20 msgid "" -"Please enter your old password, for security's sake, and then enter your new " -"password twice so we can verify you typed it in correctly." -msgstr "" -"Please enter your old password, for security's sake, and then enter your new " -"password twice so we can verify you typed it in correctly." - -#: .\user\templates\registration\password_change_form.html.py:26 -msgid "Old password:" -msgstr "Old password:" - -#: .\user\templates\registration\password_change_form.html.py:32 -#: .\user\templates\registration\password_reset_confirm.html.py:19 -msgid "New password:" -msgstr "New password:" - -#: .\user\templates\registration\password_change_form.html.py:38 -#: .\user\templates\registration\password_reset_confirm.html.py:21 -msgid "Confirm password:" -msgstr "Confirm password:" - -#: .\user\templates\registration\password_change_form.html.py:44 -#: .\user\templates\registration\password_reset_confirm.html.py:22 -msgid "Change my password" -msgstr "Change my password" - -#: .\user\templates\registration\password_reset_complete.html.py:6 -#: .\user\templates\registration\password_reset_confirm.html.py:6 -#: .\user\templates\registration\password_reset_confirm.html.py:9 -#: .\user\templates\registration\password_reset_done.html.py:6 -#: .\user\templates\registration\password_reset_form.html.py:13 -#: .\user\templates\registration\password_reset_form.html.py:15 -#: .\user\templates\registration\password_reset_form.html.py:18 -msgid "Password reset" -msgstr "Password reset" - -#: .\user\templates\registration\password_reset_complete.html.py:9 -msgid "Password reset complete" -msgstr "Password reset complete" - -#: .\user\templates\registration\password_reset_complete.html.py:12 -msgid "Your password has been set. You may go ahead and log in now." -msgstr "Your password has been set. You may go ahead and log in now." - -#: .\user\templates\registration\password_reset_confirm.html.py:15 +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." + +#: .\user\templates\registration\password_change_form.html.py:26 +msgid "Old password:" +msgstr "Old password:" + +#: .\user\templates\registration\password_change_form.html.py:32 +#: .\user\templates\registration\password_reset_confirm.html.py:19 +msgid "New password:" +msgstr "New password:" + +#: .\user\templates\registration\password_change_form.html.py:38 +#: .\user\templates\registration\password_reset_confirm.html.py:21 +msgid "Confirm password:" +msgstr "Confirm password:" + +#: .\user\templates\registration\password_change_form.html.py:44 +#: .\user\templates\registration\password_reset_confirm.html.py:22 +msgid "Change my password" +msgstr "Change my password" + +#: .\user\templates\registration\password_reset_complete.html.py:6 +#: .\user\templates\registration\password_reset_confirm.html.py:6 +#: .\user\templates\registration\password_reset_confirm.html.py:9 +#: .\user\templates\registration\password_reset_done.html.py:6 +#: .\user\templates\registration\password_reset_form.html.py:13 +#: .\user\templates\registration\password_reset_form.html.py:15 +#: .\user\templates\registration\password_reset_form.html.py:18 +msgid "Password reset" +msgstr "Password reset" + +#: .\user\templates\registration\password_reset_complete.html.py:9 +msgid "Password reset complete" +msgstr "Password reset complete" + +#: .\user\templates\registration\password_reset_complete.html.py:12 +msgid "Your password has been set. You may go ahead and log in now." +msgstr "Your password has been set. You may go ahead and log in now." + +#: .\user\templates\registration\password_reset_confirm.html.py:15 msgid "" -"Please enter your new password twice so we can verify you typed it in " -"correctly." -msgstr "" -"Please enter your new password twice so we can verify you typed it in " -"correctly." - -#: .\user\templates\registration\password_reset_confirm.html.py:27 -msgid "Password reset unsuccessful" -msgstr "Password reset unsuccessful" - -#: .\user\templates\registration\password_reset_confirm.html.py:29 +"Please enter your new password twice so we can verify you typed it in " +"correctly." +msgstr "Please enter your new password twice so we can verify you typed it in " +"correctly." + +#: .\user\templates\registration\password_reset_confirm.html.py:27 +msgid "Password reset unsuccessful" +msgstr "Password reset unsuccessful" + +#: .\user\templates\registration\password_reset_confirm.html.py:29 msgid "" -"The password reset link was invalid, possibly because it has already been " -"used. Please request a new password reset." -msgstr "" -"The password reset link was invalid, possibly because it has already been " -"used. Please request a new password reset." - -#: .\user\templates\registration\password_reset_done.html.py:8 -msgid "Password reset successful" -msgstr "Password reset successful" - -#: .\user\templates\registration\password_reset_done.html.py:12 +"The password reset link was invalid, possibly because it has already been " +"used. Please request a new password reset." +msgstr "The password reset link was invalid, possibly because it has already been " +"used. Please request a new password reset." + +#: .\user\templates\registration\password_reset_done.html.py:8 +msgid "Password reset successful" +msgstr "Password reset successful" + +#: .\user\templates\registration\password_reset_done.html.py:12 msgid "" -"We've e-mailed you instructions for setting your password to the e-mail " -"address you submitted. You should be receiving it shortly." -msgstr "" -"We've e-mailed you instructions for setting your password to the e-mail " -"address you submitted. You should be receiving it shortly." - -#: .\user\templates\registration\password_reset_email.html.py:2 -msgid "You're receiving this e-mail because you requested a password reset" -msgstr "You're receiving this e-mail because you requested a password reset" - -#: .\user\templates\registration\password_reset_email.html.py:3 -#, python-format -msgid "for your user account at %(site_name)s" -msgstr "for your user account at %(site_name)s" - -#: .\user\templates\registration\password_reset_email.html.py:5 -msgid "Please go to the following page and choose a new password:" -msgstr "Please go to the following page and choose a new password:" - -#: .\user\templates\registration\password_reset_email.html.py:9 -msgid "Your username, in case you've forgotten:" -msgstr "Your username, in case you've forgotten:" - -#: .\user\templates\registration\password_reset_email.html.py:11 -msgid "Thanks for using our site!" -msgstr "Thanks for using our site!" - -#: .\user\templates\registration\password_reset_email.html.py:13 -#, python-format -msgid "The %(site_name)s team" -msgstr "The %(site_name)s team" - -#: .\user\templates\registration\password_reset_form.html.py:22 +"We've e-mailed you instructions for setting your password to the e-mail " +"address you submitted. You should be receiving it shortly." +msgstr "We've e-mailed you instructions for setting your password to the e-mail " +"address you submitted. You should be receiving it shortly." + +#: .\user\templates\registration\password_reset_email.html.py:2 +msgid "You're receiving this e-mail because you requested a password reset" +msgstr "You're receiving this e-mail because you requested a password reset" + +#: .\user\templates\registration\password_reset_email.html.py:3 +#, python-format +msgid "for your user account at %(site_name)s" +msgstr "for your user account at %(site_name)s" + +#: .\user\templates\registration\password_reset_email.html.py:5 +msgid "Please go to the following page and choose a new password:" +msgstr "Please go to the following page and choose a new password:" + +#: .\user\templates\registration\password_reset_email.html.py:9 +msgid "Your username, in case you've forgotten:" +msgstr "Your username, in case you've forgotten:" + +#: .\user\templates\registration\password_reset_email.html.py:11 +msgid "Thanks for using our site!" +msgstr "Thanks for using our site!" + +#: .\user\templates\registration\password_reset_email.html.py:13 +#, python-format +msgid "The %(site_name)s team" +msgstr "The %(site_name)s team" + +#: .\user\templates\registration\password_reset_form.html.py:22 msgid "" -"Forgotten your password? Enter your e-mail address below, and we'll e-mail " -"instructions for setting a new one." -msgstr "" -"Forgotten your password? Enter your e-mail address below, and we'll e-mail " -"instructions for setting a new one." - -#: .\user\templates\registration\password_reset_form.html.py:27 -#, fuzzy -msgid "Adresse émail" -msgstr "E-mail" - -#: .\user\templates\registration\password_reset_form.html.py:32 -msgid "Reset my password" -msgstr "Reset my password" - -#: .\user\templates\registration\registration_active.html.py:5 -#: .\user\templates\registration\registration_active.html.py:7 -msgid "Activate the account" -msgstr "Activate the account" - -#: .\user\templates\registration\registration_active.html.py:9 -#, fuzzy +"Forgotten your password? Enter your e-mail address below, and we'll e-mail " +"instructions for setting a new one." +msgstr "Forgotten your password? Enter your e-mail address below, and we'll e-mail " +"instructions for setting a new one." + +#: .\user\templates\registration\password_reset_form.html.py:27 +#, fuzzy +msgid "Adresse émail" +msgstr "E-mail" + +#: .\user\templates\registration\password_reset_form.html.py:32 +msgid "Reset my password" +msgstr "Reset my password" + +#: .\user\templates\registration\registration_active.html.py:5 +#: .\user\templates\registration\registration_active.html.py:7 +msgid "Activate the account" +msgstr "Activate the account" + +#: .\user\templates\registration\registration_active.html.py:9 +#, fuzzy msgid "" -"Vous avez bien activé votre compte, vous pouvez accedez à votre espace " -"personnel." -msgstr "Your account is now activated. You can now access your profile." - -#: .\user\templates\registration\registration_active.html.py:10 -#, fuzzy -msgid "retourner à la page de connexion" -msgstr "go back to login page" - -#: .\user\templates\registration\registration_complete.html.py:6 -#: .\user\templates\registration\registration_form.html.py:11 -msgid "Sign up" -msgstr "Sign up" - -#: .\user\templates\registration\registration_complete.html.py:10 +"Vous avez bien activé votre compte, vous pouvez accedez à votre espace " +"personnel." +msgstr "Your account is now activated. You can now access your profile." + +#: .\user\templates\registration\registration_active.html.py:10 +#, fuzzy +msgid "retourner à la page de connexion" +msgstr "go back to login page" + +#: .\user\templates\registration\registration_complete.html.py:6 +#: .\user\templates\registration\registration_form.html.py:11 +msgid "Sign up" +msgstr "Sign up" + +#: .\user\templates\registration\registration_complete.html.py:10 msgid "" -"We've e-mailed you instructions for activate your account to the e-mail " -"address you submitted. You should be receiving it shortly." -msgstr "" -"We've e-mailed you instructions for activate your account to the e-mail " -"address you submitted. You should be receiving it shortly." - -#~ msgid "Django site admin" -#~ msgstr "Django administration" +"We've e-mailed you instructions for activate your account to the e-mail " +"address you submitted. You should be receiving it shortly." +msgstr "We've e-mailed you instructions for activate your account to the e-mail " +"address you submitted. You should be receiving it shortly." + diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/locale/fr/LC_MESSAGES/django.mo Binary file src/ldt/ldt/locale/fr/LC_MESSAGES/django.mo has changed diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/locale/fr/LC_MESSAGES/django.po --- a/src/ldt/ldt/locale/fr/LC_MESSAGES/django.po Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/locale/fr/LC_MESSAGES/django.po Fri Oct 28 11:01:40 2011 +0200 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-10-07 12:22+0200\n" +"POT-Creation-Date: 2011-10-27 14:53+0200\n" "PO-Revision-Date: 2010-03-09 15:52+0100\n" "Last-Translator: Yves-Marie Haussonne \n" "Language-Team: LANGUAGE \n" @@ -24,220 +24,220 @@ msgid "Time" msgstr "Heure" -#: .\ldt_utils\forms.py:26 +#: .\ldt_utils\forms.py:27 #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:53 msgid "Search" msgstr "Recherche" -#: .\ldt_utils\forms.py:27 +#: .\ldt_utils\forms.py:28 msgid "all" msgstr "tous" -#: .\ldt_utils\forms.py:27 .\ldt_utils\models.py:39 +#: .\ldt_utils\forms.py:28 .\ldt_utils\models.py:41 #: .\ldt_utils\templates\ldt\ldt_utils\content_list.html.py:69 msgid "title" msgstr "titre" -#: .\ldt_utils\forms.py:27 +#: .\ldt_utils\forms.py:28 msgid "resume" msgstr "description" -#: .\ldt_utils\forms.py:27 +#: .\ldt_utils\forms.py:28 msgid "tags" msgstr "tags" -#: .\ldt_utils\forms.py:27 +#: .\ldt_utils\forms.py:28 msgid "Fields" msgstr "Champs" -#: .\ldt_utils\forms.py:28 +#: .\ldt_utils\forms.py:29 msgid "Display the results in Lignes De Temps" msgstr "Afficher les résultats dans Lignes De Temps" -#: .\ldt_utils\forms.py:42 .\ldt_utils\models.py:108 +#: .\ldt_utils\forms.py:43 .\ldt_utils\models.py:110 msgid "content.content_creation_date" msgstr "Date de création du contenu" -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "content.media_input_type" msgstr "Source du média" -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "file_upload" msgstr "upload fichier" -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "url" msgstr "url" -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "existing_media" msgstr "média existant" -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "create_media" msgstr "source externe : fichier streamé, statique, url youtube..." -#: .\ldt_utils\forms.py:43 +#: .\ldt_utils\forms.py:44 msgid "none_media" msgstr "Aucun" -#: .\ldt_utils\models.py:28 +#: .\ldt_utils\models.py:30 msgid "media.external_id" msgstr "id externe" -#: .\ldt_utils\models.py:29 +#: .\ldt_utils\models.py:31 msgid "media.external_permalink" msgstr "permalien externe" -#: .\ldt_utils\models.py:30 +#: .\ldt_utils\models.py:32 msgid "media.external_publication_url" msgstr "url de publication externe" -#: .\ldt_utils\models.py:31 +#: .\ldt_utils\models.py:33 msgid "media.external_src_url" msgstr "url source" -#: .\ldt_utils\models.py:32 +#: .\ldt_utils\models.py:34 msgid "media.creation_date" msgstr "Date de création" -#: .\ldt_utils\models.py:33 +#: .\ldt_utils\models.py:35 msgid "media.media_creation_date" msgstr "Date de création du média" -#: .\ldt_utils\models.py:34 +#: .\ldt_utils\models.py:36 msgid "media.update_date" msgstr "Date de maj" -#: .\ldt_utils\models.py:35 +#: .\ldt_utils\models.py:37 msgid "media.videopath" msgstr "videopath" -#: .\ldt_utils\models.py:36 +#: .\ldt_utils\models.py:38 msgid "media.duration" msgstr "Durée du contenu (ms)" -#: .\ldt_utils\models.py:37 +#: .\ldt_utils\models.py:39 msgid "media.creator" msgstr "Créateur" -#: .\ldt_utils\models.py:38 +#: .\ldt_utils\models.py:40 msgid "description" msgstr "description" -#: .\ldt_utils\models.py:40 +#: .\ldt_utils\models.py:42 msgid "media.src" msgstr "Sources" -#: .\ldt_utils\models.py:41 +#: .\ldt_utils\models.py:43 msgid "media.mimetype" msgstr "mimetype" -#: .\ldt_utils\models.py:100 +#: .\ldt_utils\models.py:102 msgid "content.iri_id" msgstr "iri id" -#: .\ldt_utils\models.py:101 +#: .\ldt_utils\models.py:103 msgid "content.iriurl" msgstr "iri url" -#: .\ldt_utils\models.py:102 +#: .\ldt_utils\models.py:104 msgid "content.creation_date" msgstr "date de création" -#: .\ldt_utils\models.py:103 +#: .\ldt_utils\models.py:105 msgid "content.update_date" msgstr "Date de maj" -#: .\ldt_utils\models.py:104 +#: .\ldt_utils\models.py:106 msgid "content.title" msgstr "titre" -#: .\ldt_utils\models.py:105 +#: .\ldt_utils\models.py:107 msgid "content.description" msgstr "Description" -#: .\ldt_utils\models.py:106 +#: .\ldt_utils\models.py:108 msgid "content.authors" msgstr "Auteurs" -#: .\ldt_utils\models.py:107 +#: .\ldt_utils\models.py:109 msgid "content.duration" msgstr "Durée (ms)" -#: .\ldt_utils\models.py:306 +#: .\ldt_utils\models.py:333 msgid "created by" msgstr "créé par" -#: .\ldt_utils\models.py:307 +#: .\ldt_utils\models.py:334 msgid "changed by" msgstr "modifié par" -#: .\ldt_utils\utils.py:195 +#: .\ldt_utils\utils.py:198 msgid "Personal cutting" msgstr "Découpages personnels" -#: .\ldt_utils\views.py:151 .\ldt_utils\views.py:612 .\ldt_utils\views.py:658 +#: .\ldt_utils\views.py:118 .\ldt_utils\views.py:568 .\ldt_utils\views.py:614 msgid "You can not access this project" msgstr "vous n'avez pas l'autorisation d'accéder à ce projet" -#: .\ldt_utils\views.py:286 .\ldt_utils\views.py:304 +#: .\ldt_utils\views.py:262 msgid "Please enter valid keywords." msgstr "Veuillez entrer des mots-clés valides." -#: .\ldt_utils\views.py:824 +#: .\ldt_utils\views.py:780 #, python-format msgid "the project %(title)s is published. please unpublish before deleting." msgstr "Le projet %(title)s est publié. Déplublier le avant de l'effacer." -#: .\ldt_utils\views.py:825 +#: .\ldt_utils\views.py:781 msgid "can not delete the project. Please correct the following error" msgstr "" "Le projet ne peut pas être effacé. Veuillez corriger les erreurs suivantes." -#: .\ldt_utils\views.py:826 +#: .\ldt_utils\views.py:782 msgid "title error deleting project" msgstr "Erreur lors de l'effacement du projet" -#: .\ldt_utils\views.py:828 +#: .\ldt_utils\views.py:784 #, python-format msgid "please confirm deleting project %(title)s" msgstr "Confirmer l'effacement du projet intitulé %(title)s" -#: .\ldt_utils\views.py:829 +#: .\ldt_utils\views.py:785 msgid "confirm deletion" msgstr "Confirmation d'effacement" -#: .\ldt_utils\views.py:1006 +#: .\ldt_utils\views.py:961 msgid "Problem when downloading file from url : " msgstr "Problème lors du téléchargement du fichier : " -#: .\ldt_utils\views.py:1009 +#: .\ldt_utils\views.py:964 msgid "Problem when uploading file : " msgstr "Problème lors de l'upload du fichier : " -#: .\ldt_utils\views.py:1078 +#: .\ldt_utils\views.py:1033 #, python-format msgid "There is %(count)d error when deleting content" msgid_plural "There are %(count)d errors when deleting content" msgstr[0] "Il y a %(count)d erreur lors de l'effacement du contenu" msgstr[1] "Il y a %(count)d erreurs lors de l'effacement du contenu" -#: .\ldt_utils\views.py:1079 +#: .\ldt_utils\views.py:1034 msgid "title error deleting content" msgstr "Erreur lors de l'effacement du contenu" -#: .\ldt_utils\views.py:1081 +#: .\ldt_utils\views.py:1036 #, python-format msgid "Confirm delete content %(titles)s" msgstr "Veuillez confirmer l'effacement du contenu %(titles)s" -#: .\ldt_utils\views.py:1082 +#: .\ldt_utils\views.py:1037 msgid "confirm delete content" msgstr "Confirmation effacement contenu" -#: .\ldt_utils\views.py:1116 +#: .\ldt_utils\views.py:1071 #, python-format msgid "" "Content '%(title)s' is referenced by this project : %(project_titles)s. " @@ -335,6 +335,7 @@ "resoumettre le formulaire media après avoir fait les changements suivants:" #: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:76 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:77 #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:54 msgid "Create content" msgstr "Créer un contenu" @@ -344,6 +345,7 @@ msgstr "Le fichier média est en cours de traitement. Veuillez patienter." #: .\ldt_utils\templates\ldt\ldt_utils\create_content.html.py:124 +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:87 #: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:115 #: .\ldt_utils\templates\ldt\ldt_utils\error_confirm.html.py:52 msgid "close_cancel" @@ -357,14 +359,53 @@ msgid "write" msgstr "Enregistrer" +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:29 #: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:37 msgid "check all" msgstr "Tout cocher" +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:30 #: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:38 msgid "uncheck all" msgstr "Tout décocher" +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:50 +msgid "Update a group" +msgstr "Mettre à jour votre groupe" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:50 +msgid "Create a group" +msgstr "Créer un groupe" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:53 +#: .\user\templates\ldt\user\change_profile.html.py:52 +msgid "Name" +msgstr "Nom" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:55 +msgid "List of members" +msgstr "Liste des membres" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:68 +#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:97 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:3 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:3 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:3 +msgid "name" +msgstr "Nom" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:89 +msgid "delete_group" +msgstr "Effacer le groupe" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:90 +msgid "update_group" +msgstr "Mettre à jour le groupe" + +#: .\ldt_utils\templates\ldt\ldt_utils\create_group.html.py:92 +msgid "create_group" +msgstr "Créer un nouveau groupe" + #: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:76 msgid "Update your project" msgstr "Mettre à jour votre projet Lignes de Temps" @@ -382,13 +423,6 @@ msgid "List of contents" msgstr "Liste de contenus" -#: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:97 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\contentslist.html.py:3 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:3 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:3 -msgid "name" -msgstr "Nom" - #: .\ldt_utils\templates\ldt\ldt_utils\create_ldt.html.py:117 msgid "delete_project" msgstr "Effacer" @@ -450,15 +484,19 @@ msgid "My groups" msgstr "Groupes" -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:79 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:77 +msgid "Create group" +msgstr "Créer un nouveau groupe" + +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:82 msgid "Click on the line to see the group's projects" msgstr "cliquer ici pour voir les projets du groupe" -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:95 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:98 msgid "The group's projects" msgstr "projets du groupe" -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:97 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:100 #: .\ldt_utils\templates\ldt\ldt_utils\ldt_list.html.py:79 #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:71 #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:56 @@ -467,7 +505,7 @@ msgid "search" msgstr "Recherche" -#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:105 +#: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:108 msgid "You do not belong to any group." msgstr "Vous ne faites partie d'aucun groupe." @@ -517,6 +555,8 @@ #: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:76 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:12 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:14 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:12 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:14 msgid "open ldt" msgstr "Ouvrir sous Lignes de Temps" @@ -524,21 +564,21 @@ msgid "No title" msgstr "Sans titre" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:86 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:87 #, fuzzy msgid "Tags" msgstr "tags" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:100 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:101 msgid "previous" msgstr "Précedent" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:105 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:106 #, python-format msgid "Page %(number)s of %(num_pages)s" msgstr "Page %(number)s de %(num_pages)s" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:110 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:111 msgid "next" msgstr "Suivant" @@ -559,7 +599,7 @@ msgstr "Copier votre projet" #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:18 -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:12 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:17 msgid "link json by id" msgstr "Ouvrir le lecteur de métadata" @@ -571,11 +611,11 @@ msgid "Project not published, click to publish" msgstr "Projet non publié, cliquer pour publier" -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:11 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:16 msgid "copy the project" msgstr "Copier le projet" -#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:14 +#: .\ldt_utils\templates\ldt\ldt_utils\partial\publishedprojectslist.html.py:19 msgid "Project published" msgstr "Projet publié" @@ -981,11 +1021,6 @@ msgid "Username" msgstr "Nom d'utilisateur :" -#: .\user\templates\ldt\user\change_profile.html.py:52 -#, fuzzy -msgid "Name" -msgstr "Nom" - #: .\user\templates\ldt\user\change_profile.html.py:60 #, fuzzy msgid "Email" diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/settings.py --- a/src/ldt/ldt/settings.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/settings.py Fri Oct 28 11:01:40 2011 +0200 @@ -31,6 +31,7 @@ 'piston', 'social_auth', 'south', + 'guardian', ) MIDDLEWARE_CLASSES = ( @@ -80,5 +81,7 @@ AUTO_INDEX_AFTER_SAVE = getattr(settings, 'AUTO_INDEX_AFTER_SAVE', True) WEB_VERSION = getattr(settings, 'WEB_VERSION', '') +ANONYOUS_USER_ID = -1 +USE_GROUP_PERMISSIONS=False diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/static/ldt/js/projectscontents.js --- a/src/ldt/ldt/static/ldt/js/projectscontents.js Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/static/ldt/js/projectscontents.js Fri Oct 28 11:01:40 2011 +0200 @@ -284,7 +284,7 @@ init_modal_window ('.ldt_link_open_ldt', 1035, 670, 1025, 660, base_node, searchprojectfilterurl); init_modal_window ('.ldt_link_create_project', 520, 660, 510, 650, base_node, searchprojectfilterurl); init_modal_window ('.ldt_link_copy_project', 500, 150, 500, 150, base_node, searchprojectfilterurl); - + init_modal_window('.create_group', 520, 530, 510, 520, base_node, searchprojectfilterurl); $('.publishedproject', base_node).click(function(e) { e.preventDefault(); diff -r 3dcd742acc13 -r 94fdb72b7d56 src/ldt/ldt/user/models.py --- a/src/ldt/ldt/user/models.py Wed Oct 26 11:05:43 2011 +0200 +++ b/src/ldt/ldt/user/models.py Fri Oct 28 11:01:40 2011 +0200 @@ -1,6 +1,6 @@ from django.conf import settings from django.contrib import admin -from django.contrib.auth.models import User, UserManager +from django.contrib.auth.models import User, UserManager, Group from django.db import models from django.db.models.signals import post_save import datetime @@ -38,7 +38,7 @@ def create_user_profile(sender, instance, created, **kwargs): if created: UserProfile.objects.create(user=instance) - + post_save.connect(UserProfile.create_user_profile, sender=User) diff -r 3dcd742acc13 -r 94fdb72b7d56 web/ldtplatform/settings.py --- a/web/ldtplatform/settings.py Wed Oct 26 11:05:43 2011 +0200 +++ b/web/ldtplatform/settings.py Fri Oct 28 11:01:40 2011 +0200 @@ -138,6 +138,7 @@ 'piston', 'social_auth', 'south', + 'guardian', ) AUTH_PROFILE_MODULE = 'user.UserProfile' @@ -162,6 +163,7 @@ # 'social_auth.backends.contrib.orkut.OrkutBackend', 'social_auth.backends.OpenIDBackend', 'django.contrib.auth.backends.ModelBackend', + 'guardian.backends.ObjectPermissionBackend', ) SOCIAL_AUTH_IMPORT_BACKENDS = ( 'myproy.social_auth_extra_services', @@ -202,6 +204,8 @@ AUTO_INDEX_AFTER_SAVE = True +ANONYMOUS_USER_ID = -1 + WEB_VERSION = ldtplatform.get_version() from config import *