# HG changeset patch # User hamidouk # Date 1328193347 -3600 # Node ID 13ed4a934a72b825ef8ddf13f7ea0549c12d69d4 # Parent cebc62a9356383df61c7653732573069a8711cd2# Parent 9b3ad1aa186875be859f61868694c8745d61d5e7 Merge with upstream diff -r cebc62a93563 -r 13ed4a934a72 .DS_Store Binary file .DS_Store has changed diff -r cebc62a93563 -r 13ed4a934a72 .settings/org.eclipse.core.resources.prefs --- a/.settings/org.eclipse.core.resources.prefs Thu Feb 02 15:35:19 2012 +0100 +++ b/.settings/org.eclipse.core.resources.prefs Thu Feb 02 15:35:47 2012 +0100 @@ -1,4 +1,4 @@ -#Wed Jan 25 12:23:22 CET 2012 +#Wed Feb 01 17:37:13 CET 2012 eclipse.preferences.version=1 encoding//src/ldt/ldt/core/migrations/0001_initial.py=utf-8 encoding//src/ldt/ldt/core/migrations/0002_auto__del_owner.py=utf-8 @@ -11,6 +11,7 @@ encoding//src/ldt/ldt/ldt_utils/migrations/0009_auto__chg_field_content_image__chg_field_project_image.py=utf-8 encoding//src/ldt/ldt/ldt_utils/migrations/0010_auto__add_annotationstat.py=utf-8 encoding//src/ldt/ldt/ldt_utils/migrations/0011_gen_stat_annotation.py=utf-8 +encoding//src/ldt/ldt/management/utils.py=utf-8 encoding//src/ldt/ldt/text/migrations/0001_initial.py=utf-8 encoding//src/ldt/ldt/user/migrations/0001_initial.py=utf-8 encoding//src/ldt/ldt/user/migrations/0002_auto__del_irigroup.py=utf-8 diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/models.py --- a/src/ldt/ldt/ldt_utils/models.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/models.py Thu Feb 02 15:35:47 2012 +0100 @@ -224,9 +224,7 @@ create_front_project = True if not self.nb_annotation: - self.nb_annotation = 0 - if not self.stat_annotation: - self.stat_annotation = ('0,' * settings.DIVISIONS_FOR_STAT_ANNOTATION)[:-1] + self.nb_annotation = 0 super(Content, self).save(*args, **kwargs) @@ -403,12 +401,16 @@ def __make_getter(self, i): def inner_getter(self): + if not self.stat_annotation: + self.stat_annotation = self.__list2str([0] * (settings.DIVISIONS_FOR_STAT_ANNOTATION + len(settings.SYNTAX.keys()))) l = self.__str2list(self.stat_annotation) return l[Content.__pol_indices[i]] return inner_getter def __make_setter(self, i): def inner_setter(self, value): + if not self.stat_annotation: + self.stat_annotation = self.__list2str([0] * (settings.DIVISIONS_FOR_STAT_ANNOTATION + len(settings.SYNTAX.keys()))) l = self.__str2list(self.stat_annotation) l[Content.__pol_indices[i]] = value self.stat_annotation = self.__list2str(l) @@ -607,7 +609,7 @@ polemics = models.IntegerField(null=True, blank=True, default=0) - # Mask is 0000, representing OK|KO|Q|REF + # Mask is 0000, representing OK|KO|Q|REF, 1 if the syntax is in the segment, 0 else mask = { 'OK': set([8,9,10,11,12,13,14,15]), 'KO': set([4,5,6,7,12,13,14,15]), diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/stat.py --- a/src/ldt/ldt/ldt_utils/stat.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/stat.py Thu Feb 02 15:35:47 2012 +0100 @@ -53,7 +53,7 @@ return True -def add_annotation_to_stat(content, begin, end, polemics=[]): +def add_annotation_to_stat(content, begin, end): nb_division = settings.DIVISIONS_FOR_STAT_ANNOTATION if not content.nb_annotation or not content.stat_annotation: @@ -66,10 +66,7 @@ buckets = find_buckets(content.annotation_volume, limits, begin, end) content.annotation_volume = buckets content.last_annotated = datetime.datetime.now() - - for polemic in polemics: - update_polemic_stat(content, polemic) - + content.save() def get_string_from_buckets(buckets): @@ -106,16 +103,3 @@ buckets[i] += 1 return buckets - -def update_polemic_stat(content, polemic_hashtag): - if polemic_hashtag == "OK": - content.pol_positive += 1 - if polemic_hashtag == "KO": - content.pol_negative += 1 - if polemic_hashtag == "Q": - content.pol_question += 1 - if polemic_hashtag == "REF": - content.pol_reference += 1 - - return content - diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/templates/front/front_all_contents.html --- a/src/ldt/ldt/ldt_utils/templates/front/front_all_contents.html Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/templates/front/front_all_contents.html Thu Feb 02 15:35:47 2012 +0100 @@ -3,7 +3,16 @@ {% load thumbnail %} {% load front_tags %} -{% block title %}Lignes de temps : groupe "{{group.name}}"{% endblock %} +{% block title %} + +{% if tag_label %} +{% blocktrans %}Lignes de temps : {{tag_label}}{% endblocktrans %} +{% else %} +{% trans "Lignes de temps : all medias" %} +{% endif %} + + +{% endblock %} {% block js_import %} {{block.super}} diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/templates/front/front_base.html --- a/src/ldt/ldt/ldt_utils/templates/front/front_base.html Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/templates/front/front_base.html Thu Feb 02 15:35:47 2012 +0100 @@ -36,14 +36,18 @@
  • - IRI + {% trans "back" %}
  • - {% trans "Log out" %} + {% if user.is_authenticated %} + {% trans "Log out" %} + {% else %} + {% trans "Log in" %} + {% endif %}
  • {% block body %} diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_player.html --- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_player.html Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_player.html Thu Feb 02 15:35:47 2012 +0100 @@ -1,5 +1,6 @@ {% spaceless %} {% load i18n %} +{% load thumbnail %}
    @@ -17,7 +18,10 @@ IriSP.widgetsDefaults["AnnotationsListWidget"] = {}; IriSP.widgetsDefaults["AnnotationsListWidget"].platform_url = "{{WEB_URL}}{% url segment_api iri_id='{content}' begin='{begin}' end='{end}' %}"; - IriSP.platform_url = "{{WEB_URL}}{{BASE_URL}}"; + IriSP.platform_url = "{{WEB_URL}}{{BASE_URL}}"; + IriSP.user = {name: '{{request.user.username}}', + avatar: '{% thumbnail request.user.get_profile.image "48x48" format="PNG" crop="center" as im %}{{WEB_URL}}{{ im.url }}{% endthumbnail %}', + }; var config = { diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/urls.py --- a/src/ldt/ldt/ldt_utils/urls.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/urls.py Thu Feb 02 15:35:47 2012 +0100 @@ -28,7 +28,7 @@ url(r'^cljson/externalid/(?P.*)$', 'views.json.project_json_externalid'), url(r'cljson/idcutting/(?P.*)/(?P.*)$', 'views.json.project_json_cutting_id'), url(r'^rdf/id/(?P.*)$', 'views.rdf.project_annotations_rdf'), - url(r'^/?$', "views.workspace.home", name="root-view"), + url(r'^workspace/?$', "views.workspace.home", name="root-view"), url(r'^filterprojects/_(?P[\w\%\_\-\+]*?)/(?Ptrue|false)/(?P\d)$', "views.project.projects_filter",), url(r'^filterprojects/_(?P[\w\%\_\-\+]*?)/(?Ptrue|false)/(?P\d)/(?P.*)$', "views.project.projects_filter",), url(r'^filtercontents/_(?P[\w\%\_\-\+]*?)/$', "views.content.contents_filter",), @@ -41,7 +41,7 @@ url(r'^segmentHighlight/(?P.*)/(?P.*)/(?P.*)/(?P.*)/(?P.*)/$', 'views.lignesdetemps.highlight_segment'), url(r'^createGroup/$', 'views.group.create_group'), url(r'^updateGroup/(?P.*)$', 'views.group.update_group'), - url(r'^front/$', 'views.front.front_home'), + url(r'^$', 'views.front.front_home', name='front_home'), url(r'^front/group/(?P.*)$', 'views.front.group_info'), url(r'^front/player/(?P.*)/$', 'views.front.annot_content'), url(r'^front/player/(?P.*)/(?P.*)/(?P.*)$', 'views.front.annot_content'), diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/utils.py --- a/src/ldt/ldt/ldt_utils/utils.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/utils.py Thu Feb 02 15:35:47 2012 +0100 @@ -289,15 +289,11 @@ def get_polemic_syntax(self, text): polemics = [] - if '++' in text: - polemics.append('OK') - if '--' in text: - polemics.append('KO') - if '==' in text: - polemics.append('REF') - if '??' in text: - polemics.append('Q') - return polemics + for key in settings.SYNTAX.keys(): + if key in text: + polemics.append(settings.SYNTAX[key]) + + return polemics def __del__(self): self.save() diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/views/content.py --- a/src/ldt/ldt/ldt_utils/views/content.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/views/content.py Thu Feb 02 15:35:47 2012 +0100 @@ -211,15 +211,19 @@ if not created: content.save() # Check if user is allowed to change object before assigning permissions. + cached_assign('change_content', request.user, content) cached_assign('view_content', request.user, content) everyone = Group.objects.get(name=settings.PUBLIC_GROUP_NAME) + print content_form.cleaned_data + if content_form.cleaned_data['is_public']: cached_assign('view_content', everyone, content) if media: cached_assign('view_media', everyone, media) - elif content_form.cleaned_data["share"]: + else: remove_perm('view_content', everyone, content) + remove_perm('view_media', everyone, media) assign_perm_to_obj(content, content_form.cleaned_data['read_list'], content_form.cleaned_data['write_list'], request.user) if media: assign_perm_to_obj(media, content_form.cleaned_data['read_list'], content_form.cleaned_data['write_list'], request.user) @@ -230,7 +234,6 @@ if request.user.is_staff and content_defaults.has_key('front_project'): content.front_project = content_defaults['front_project'] content.save() - picture_form.model = content picture_form.save() diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/views/front.py --- a/src/ldt/ldt/ldt_utils/views/front.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/views/front.py Thu Feb 02 15:35:47 2012 +0100 @@ -10,7 +10,6 @@ from tagging.models import Tag, TaggedItem -@login_required def front_home(request): # Get the 3 last annotated contents last_contents = Content.objects.order_by('-last_annotated')[:3] @@ -30,7 +29,6 @@ context_instance=RequestContext(request)) -@login_required def group_info(request, group_id): # Get the active group group = Group.objects.get(id=group_id) @@ -48,15 +46,15 @@ context_instance=RequestContext(request)) -@login_required + def all_contents(request): # Get the tag parameter if possible tag_label = request.GET.get("tag") # Get all the public contents group if tag_label is None : - content_list = Content.safe_objects.all() + content_list = Content.objects.all() else : - content_list = TaggedItem.objects.get_by_model(Content.safe_objects.all(), '"'+tag_label+'"') + content_list = TaggedItem.objects.get_by_model(Content.objects.all(), '"'+tag_label+'"') # Get the main tag list front_tags = settings.FRONT_TAG_LIST # Get the all tags list @@ -70,7 +68,6 @@ context_instance=RequestContext(request)) -@login_required def annot_content(request, content_iri_id, project_id=None, cutting_id=None): # Get the wanted content content = Content.objects.get(iri_id=content_iri_id) @@ -94,7 +91,12 @@ proj = proj[0] else: proj = Project.safe_objects.get(ldt_id=project_id) - + + if not proj.state == 2: # If the original front project is unpublished + content.create_front_project() + proj = content.front_project + + # Vars for player player_id = "player_project_" + proj.ldt_id diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/ldt_utils/views/json.py --- a/src/ldt/ldt/ldt_utils/views/json.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/views/json.py Thu Feb 02 15:35:47 2012 +0100 @@ -1,10 +1,11 @@ from django.conf import settings -from django.http import HttpResponse +from django.http import HttpResponse, HttpResponseForbidden from django.shortcuts import get_object_or_404, get_list_or_404 from django.utils import simplejson from django.utils.html import escape from ldt.ldt_utils.models import Project from ldt.ldt_utils.projectserializer import ProjectSerializer +import ldt.auth as ldt_auth def project_json_id(request, id): @@ -29,10 +30,8 @@ def project_json(request, project, serialize_contents=True, first_cutting=None): -# TODO : the following lines have been commented for tests only -# they should not be commented for production -# if not ldt_auth.check_access(request.user, project): -# return HttpResponseForbidden(_("You can not access this project")) + if not ldt_auth.check_access(request.user, project): + return HttpResponseForbidden(_("You can not access this project")) mimetype = request.REQUEST.get("mimetype") if mimetype is None: diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/locale/en/LC_MESSAGES/django.mo Binary file src/ldt/ldt/locale/en/LC_MESSAGES/django.mo has changed diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/locale/en/LC_MESSAGES/django.po --- a/src/ldt/ldt/locale/en/LC_MESSAGES/django.po Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/locale/en/LC_MESSAGES/django.po Thu Feb 02 15:35:47 2012 +0100 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-01-20 17:24+0100\n" +"POT-Creation-Date: 2012-02-02 14:07+0100\n" "PO-Revision-Date: 2010-02-17 03:53+0100\n" "Last-Translator: Yves-Marie Haussonne \n" "Language-Team: LANGUAGE \n" @@ -24,7 +24,7 @@ msgid "Time" msgstr "Time" -#: .\ldt_utils\forms.py:32 .\ldt_utils\templates\front\front_base.html.py:33 +#: .\ldt_utils\forms.py:32 .\ldt_utils\templates\front\front_base.html.py:34 #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:52 msgid "Search" msgstr "search" @@ -170,11 +170,11 @@ msgid "content.duration" msgstr "duration (ms)" -#: .\ldt_utils\models.py:134 .\ldt_utils\models.py:530 +#: .\ldt_utils\models.py:134 msgid "content.stat_annotation" msgstr "annotation distribution" -#: .\ldt_utils\models.py:135 .\ldt_utils\models.py:531 +#: .\ldt_utils\models.py:135 msgid "content.nb_annotation" msgstr "annotation number" @@ -182,15 +182,15 @@ msgid "content.last_annotated" msgstr "last updated" -#: .\ldt_utils\models.py:395 +#: .\ldt_utils\models.py:461 msgid "created by" msgstr "created by" -#: .\ldt_utils\models.py:396 +#: .\ldt_utils\models.py:462 msgid "changed by" msgstr "changed by" -#: .\ldt_utils\utils.py:208 +#: .\ldt_utils\utils.py:208 .\ldt_utils\utils.py:391 msgid "Personal cutting" msgstr "Personal cutting" @@ -203,77 +203,98 @@ msgid "Home" msgstr "Home" -#: .\ldt_utils\templates\front\front_all_contents.html.py:66 -#: .\ldt_utils\templates\front\front_home.html.py:17 +#: .\ldt_utils\templates\front\front_all_contents.html.py:9 +#, python-format +msgid "Lignes de temps : %(tag_label)s" +msgstr "Lignes de temps : %(tag_label)s" + +#: .\ldt_utils\templates\front\front_all_contents.html.py:11 +msgid "Lignes de temps : all medias" +msgstr "Lignes de temps : all medias" + +#: .\ldt_utils\templates\front\front_all_contents.html.py:32 +#: .\ldt_utils\templates\front\front_home.html.py:24 msgid "Filter the medias" msgstr "Filter the medias" -#: .\ldt_utils\templates\front\front_all_contents.html.py:69 -#: .\ldt_utils\templates\front\front_all_contents.html.py:70 -#: .\ldt_utils\templates\front\front_home.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:43 +#: .\ldt_utils\templates\front\front_all_contents.html.py:35 +#: .\ldt_utils\templates\front\front_all_contents.html.py:36 +#: .\ldt_utils\templates\front\front_home.html.py:30 +#: .\ldt_utils\templates\front\front_home.html.py:61 msgid "All medias" msgstr "All medias" -#: .\ldt_utils\templates\front\front_all_contents.html.py:74 +#: .\ldt_utils\templates\front\front_all_contents.html.py:42 #: .\ldt_utils\templates\front\front_group.html.py:22 #: .\ldt_utils\templates\front\front_group.html.py:24 -#: .\ldt_utils\templates\front\front_home.html.py:29 -#: .\ldt_utils\templates\front\front_home.html.py:31 +#: .\ldt_utils\templates\front\front_home.html.py:38 #: .\ldt_utils\templates\front\front_home.html.py:49 -#: .\ldt_utils\templates\front\front_home.html.py:51 +#: .\ldt_utils\templates\front\front_home.html.py:69 +#: .\ldt_utils\templates\front\front_home.html.py:78 msgid "open this media" msgstr "Play this media" -#: .\ldt_utils\templates\front\front_all_contents.html.py:76 +#: .\ldt_utils\templates\front\front_all_contents.html.py:54 #: .\ldt_utils\templates\front\front_group.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:30 -#: .\ldt_utils\templates\front\front_home.html.py:50 +#: .\ldt_utils\templates\front\front_home.html.py:48 +#: .\ldt_utils\templates\front\front_home.html.py:77 #, python-format msgid "%(nb)s annotation on this media" msgid_plural "%(nb)s annotations on this media" msgstr[0] "%(nb)s annotation on this media" msgstr[1] "%(nb)s annotations on this media" -#: .\ldt_utils\templates\front\front_all_contents.html.py:78 +#: .\ldt_utils\templates\front\front_all_contents.html.py:56 #: .\ldt_utils\templates\front\front_group.html.py:25 -#: .\ldt_utils\templates\front\front_home.html.py:32 -#: .\ldt_utils\templates\front\front_home.html.py:52 +#: .\ldt_utils\templates\front\front_home.html.py:50 +#: .\ldt_utils\templates\front\front_home.html.py:79 msgid "by" msgstr "by" -#: .\ldt_utils\templates\front\front_all_contents.html.py:82 +#: .\ldt_utils\templates\front\front_all_contents.html.py:60 msgid "All tags" msgstr "All tags" -#: .\ldt_utils\templates\front\front_base.html.py:25 +#: .\ldt_utils\templates\front\front_base.html.py:26 msgid "homepage" msgstr "Home page" -#: .\ldt_utils\templates\front\front_base.html.py:25 +#: .\ldt_utils\templates\front\front_base.html.py:26 msgid "Lignes de temps" msgstr "Lignes de temps" -#: .\ldt_utils\templates\front\front_base.html.py:38 -#: .\ldt_utils\templates\front\front_base.html.py:56 +#: .\ldt_utils\templates\front\front_base.html.py:39 +#: .\ldt_utils\templates\front\front_base.html.py:61 msgid "link IRI" msgstr "IRI's website" -#: .\ldt_utils\templates\front\front_base.html.py:41 +#: .\ldt_utils\templates\front\front_base.html.py:42 #: .\ldt_utils\templates\front\front_player.html.py:5 msgid "Annotate" msgstr "Annotate" -#: .\ldt_utils\templates\front\front_base.html.py:45 -msgid "connection" -msgstr "Login" +#: .\ldt_utils\templates\front\front_base.html.py:47 +#: .\templates\cms\admin\cms\page\change_form.html.py:11 +#: .\templates\ldt\ldt_base.html.py:97 +#: .\user\templates\ldt\user\login_form.html.py:34 +msgid "Log out" +msgstr "Log out" -#: .\ldt_utils\templates\front\front_base.html.py:53 +#: .\ldt_utils\templates\front\front_base.html.py:49 +#: .\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" + +#: .\ldt_utils\templates\front\front_base.html.py:58 #, python-format msgid "%(WEB_VERSION)s | %(VERSION)s" msgstr "v%(WEB_VERSION)s | v%(VERSION)s" -#: .\ldt_utils\templates\front\front_base.html.py:56 +#: .\ldt_utils\templates\front\front_base.html.py:61 msgid "about" msgstr "about" @@ -297,38 +318,38 @@ msgid "front.home" msgstr "" -#: .\ldt_utils\templates\front\front_home.html.py:21 +#: .\ldt_utils\templates\front\front_home.html.py:28 msgid "Last annotated medias" msgstr "Last annotated medias" -#: .\ldt_utils\templates\front\front_home.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:43 +#: .\ldt_utils\templates\front\front_home.html.py:30 +#: .\ldt_utils\templates\front\front_home.html.py:61 msgid "view all medias" msgstr "view all medias" -#: .\ldt_utils\templates\front\front_home.html.py:41 +#: .\ldt_utils\templates\front\front_home.html.py:59 msgid "Most annotated medias" msgstr "Most annotated medias" -#: .\ldt_utils\templates\front\front_home.html.py:59 +#: .\ldt_utils\templates\front\front_home.html.py:86 msgid "Active groups" msgstr "Active groups" -#: .\ldt_utils\templates\front\front_home.html.py:64 +#: .\ldt_utils\templates\front\front_home.html.py:91 msgid "group picture" msgstr "group picture" -#: .\ldt_utils\templates\front\front_home.html.py:64 -#: .\ldt_utils\templates\front\front_home.html.py:68 +#: .\ldt_utils\templates\front\front_home.html.py:91 +#: .\ldt_utils\templates\front\front_home.html.py:95 msgid "view more infos on this group" msgstr "View more information on this group" -#: .\ldt_utils\templates\front\front_home.html.py:67 -#, fuzzy, python-format +#: .\ldt_utils\templates\front\front_home.html.py:94 +#, python-format msgid "%(nb)s user in this group" msgid_plural "%(nb)s users in this group" -msgstr[0] "%(count)s user in this group" -msgstr[1] "%(count)s users in this group" +msgstr[0] "%(nb)s user in this group" +msgstr[1] "%(nb)s users in this group" #: .\ldt_utils\templates\front\front_player.html.py:87 msgid "All annotations on the media" @@ -342,53 +363,55 @@ #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:56 #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:68 #: .\ldt_utils\templates\ldt\ldt_utils\partial\permissions.html.py:121 -#: .\templates\ldt\ldt_base.html.py:126 +#: .\templates\ldt\ldt_base.html.py:127 msgid "search" msgstr "search" -#: .\ldt_utils\templates\front\front_search_results.html.py:99 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:59 +#: .\ldt_utils\templates\front\front_search_results.html.py:50 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:58 #, python-format msgid " No results for %(search)s." msgstr "No results for %(search)s." -#: .\ldt_utils\templates\front\front_search_results.html.py:111 +#: .\ldt_utils\templates\front\front_search_results.html.py:62 msgid "Search results for " msgstr "Search results for" -#: .\ldt_utils\templates\front\front_search_results.html.py:114 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 +#: .\ldt_utils\templates\front\front_search_results.html.py:65 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:61 msgid "Result" msgstr "Result" -#: .\ldt_utils\templates\front\front_search_results.html.py:133 +#: .\ldt_utils\templates\front\front_search_results.html.py:84 msgid "annotation distribution" msgstr "annotation distribution" -#: .\ldt_utils\templates\front\front_search_results.html.py:148 +#: .\ldt_utils\templates\front\front_search_results.html.py:98 +#: .\ldt_utils\templates\front\front_search_results.html.py:103 msgid "view this annotation in the player" msgstr "view this annotation in the player" -#: .\ldt_utils\templates\front\front_search_results.html.py:149 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:80 +#: .\ldt_utils\templates\front\front_search_results.html.py:99 +#: .\ldt_utils\templates\front\front_search_results.html.py:104 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:79 msgid "No title" msgstr "No title" -#: .\ldt_utils\templates\front\front_search_results.html.py:150 +#: .\ldt_utils\templates\front\front_search_results.html.py:100 msgid "Begin" msgstr "Begin" -#: .\ldt_utils\templates\front\front_search_results.html.py:150 +#: .\ldt_utils\templates\front\front_search_results.html.py:100 msgid "duration" msgstr "duration" -#: .\ldt_utils\templates\front\front_search_results.html.py:162 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:101 +#: .\ldt_utils\templates\front\front_search_results.html.py:122 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:100 msgid "previous" msgstr "Previous" -#: .\ldt_utils\templates\front\front_search_results.html.py:183 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:111 +#: .\ldt_utils\templates\front\front_search_results.html.py:142 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:110 msgid "next" msgstr "Next" @@ -613,7 +636,7 @@ msgstr "Do you want to leave this group ?" #: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:92 -#: .\templates\ldt\ldt_base.html.py:114 +#: .\templates\ldt\ldt_base.html.py:115 msgid "My groups" msgstr "My groups" @@ -642,7 +665,7 @@ msgstr "Submit" #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:67 -#: .\templates\ldt\ldt_base.html.py:115 +#: .\templates\ldt\ldt_base.html.py:116 msgid "Published projects" msgstr "Published projects" @@ -655,11 +678,11 @@ 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:62 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:61 msgid "Results for " msgstr "Results for" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:76 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:75 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:16 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:18 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:24 @@ -669,11 +692,11 @@ msgid "open ldt" msgstr "open ldt" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:87 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:86 msgid "Tags" msgstr "Tags" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:106 +#: .\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" @@ -852,6 +875,11 @@ "Content '%(title)s' is referenced by %(count)d projects: %(project_titles)s. " "Please delete them beforehand." +#: .\ldt_utils\views\json.py:34 .\ldt_utils\views\rdf.py:15 +#: .\ldt_utils\views\workspace.py:109 +msgid "You can not access this project" +msgstr "You can not access this project" + #: .\ldt_utils\views\project.py:110 #, python-format msgid "the project %(title)s is published. please unpublish before deleting." @@ -883,10 +911,6 @@ msgid "confirm deletion" msgstr "Confirm deletion" -#: .\ldt_utils\views\rdf.py:15 .\ldt_utils\views\workspace.py:109 -msgid "You can not access this project" -msgstr "You can not access this project" - #: .\templates\admin\cms_change_form.html.py:30 msgid "Approve page deletion" msgstr "Approve page deletion" @@ -1080,14 +1104,6 @@ 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" @@ -1096,12 +1112,6 @@ msgid "Change password" msgstr "Change password" -#: .\templates\cms\admin\cms\page\change_form.html.py:11 -#: .\templates\ldt\ldt_base.html.py:96 -#: .\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" @@ -1123,19 +1133,23 @@ msgstr "admin" #: .\templates\ldt\ldt_base.html.py:93 +msgid "front link" +msgstr "front" + +#: .\templates\ldt\ldt_base.html.py:94 #: .\user\templates\ldt\user\change_profile.html.py:95 msgid "Profile change" msgstr "Profile change" -#: .\templates\ldt\ldt_base.html.py:113 .\templates\ldt\ldt_base.html.py:114 +#: .\templates\ldt\ldt_base.html.py:114 .\templates\ldt\ldt_base.html.py:115 msgid "home" msgstr "home" -#: .\templates\ldt\ldt_base.html.py:148 +#: .\templates\ldt\ldt_base.html.py:149 msgid "Version number" msgstr "Version number" -#: .\templates\ldt\ldt_base.html.py:148 +#: .\templates\ldt\ldt_base.html.py:149 #, python-format msgid " web %(WEB_VERSION)s | platform %(VERSION)s" msgstr "web v%(WEB_VERSION)s | platform v%(VERSION)s" @@ -1530,3 +1544,9 @@ 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 "back link" +#~ msgstr "platform" + +#~ msgid "connection" +#~ msgstr "Login" diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/locale/fr/LC_MESSAGES/django.mo Binary file src/ldt/ldt/locale/fr/LC_MESSAGES/django.mo has changed diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/locale/fr/LC_MESSAGES/django.po --- a/src/ldt/ldt/locale/fr/LC_MESSAGES/django.po Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/locale/fr/LC_MESSAGES/django.po Thu Feb 02 15:35:47 2012 +0100 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-01-20 17:24+0100\n" +"POT-Creation-Date: 2012-02-02 14:07+0100\n" "PO-Revision-Date: 2010-03-09 15:52+0100\n" "Last-Translator: Yves-Marie Haussonne \n" "Language-Team: LANGUAGE \n" @@ -24,7 +24,7 @@ msgid "Time" msgstr "Heure" -#: .\ldt_utils\forms.py:32 .\ldt_utils\templates\front\front_base.html.py:33 +#: .\ldt_utils\forms.py:32 .\ldt_utils\templates\front\front_base.html.py:34 #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:52 msgid "Search" msgstr "Recherche" @@ -170,11 +170,11 @@ msgid "content.duration" msgstr "Durée (ms)" -#: .\ldt_utils\models.py:134 .\ldt_utils\models.py:530 +#: .\ldt_utils\models.py:134 msgid "content.stat_annotation" msgstr "statistiques d'annotation" -#: .\ldt_utils\models.py:135 .\ldt_utils\models.py:531 +#: .\ldt_utils\models.py:135 msgid "content.nb_annotation" msgstr "nombre d'annotations" @@ -182,15 +182,15 @@ msgid "content.last_annotated" msgstr "annoté pour la dernière foiss" -#: .\ldt_utils\models.py:395 +#: .\ldt_utils\models.py:461 msgid "created by" msgstr "créé par" -#: .\ldt_utils\models.py:396 +#: .\ldt_utils\models.py:462 msgid "changed by" msgstr "modifié par" -#: .\ldt_utils\utils.py:208 +#: .\ldt_utils\utils.py:208 .\ldt_utils\utils.py:391 msgid "Personal cutting" msgstr "Découpages personnels" @@ -203,77 +203,98 @@ msgid "Home" msgstr "Accueil" -#: .\ldt_utils\templates\front\front_all_contents.html.py:66 -#: .\ldt_utils\templates\front\front_home.html.py:17 +#: .\ldt_utils\templates\front\front_all_contents.html.py:9 +#, python-format +msgid "Lignes de temps : %(tag_label)s" +msgstr "Lignes de temps : %(tag_label)s" + +#: .\ldt_utils\templates\front\front_all_contents.html.py:11 +msgid "Lignes de temps : all medias" +msgstr "Lignes de temps : tous les médias" + +#: .\ldt_utils\templates\front\front_all_contents.html.py:32 +#: .\ldt_utils\templates\front\front_home.html.py:24 msgid "Filter the medias" msgstr "Filtrer les médias" -#: .\ldt_utils\templates\front\front_all_contents.html.py:69 -#: .\ldt_utils\templates\front\front_all_contents.html.py:70 -#: .\ldt_utils\templates\front\front_home.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:43 +#: .\ldt_utils\templates\front\front_all_contents.html.py:35 +#: .\ldt_utils\templates\front\front_all_contents.html.py:36 +#: .\ldt_utils\templates\front\front_home.html.py:30 +#: .\ldt_utils\templates\front\front_home.html.py:61 msgid "All medias" msgstr "Tous les médias" -#: .\ldt_utils\templates\front\front_all_contents.html.py:74 +#: .\ldt_utils\templates\front\front_all_contents.html.py:42 #: .\ldt_utils\templates\front\front_group.html.py:22 #: .\ldt_utils\templates\front\front_group.html.py:24 -#: .\ldt_utils\templates\front\front_home.html.py:29 -#: .\ldt_utils\templates\front\front_home.html.py:31 +#: .\ldt_utils\templates\front\front_home.html.py:38 #: .\ldt_utils\templates\front\front_home.html.py:49 -#: .\ldt_utils\templates\front\front_home.html.py:51 +#: .\ldt_utils\templates\front\front_home.html.py:69 +#: .\ldt_utils\templates\front\front_home.html.py:78 msgid "open this media" msgstr "voir ce média" -#: .\ldt_utils\templates\front\front_all_contents.html.py:76 +#: .\ldt_utils\templates\front\front_all_contents.html.py:54 #: .\ldt_utils\templates\front\front_group.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:30 -#: .\ldt_utils\templates\front\front_home.html.py:50 +#: .\ldt_utils\templates\front\front_home.html.py:48 +#: .\ldt_utils\templates\front\front_home.html.py:77 #, python-format msgid "%(nb)s annotation on this media" msgid_plural "%(nb)s annotations on this media" msgstr[0] "%(nb)s annotation sur ce média" msgstr[1] "%(nb)s annotations sur ce média" -#: .\ldt_utils\templates\front\front_all_contents.html.py:78 +#: .\ldt_utils\templates\front\front_all_contents.html.py:56 #: .\ldt_utils\templates\front\front_group.html.py:25 -#: .\ldt_utils\templates\front\front_home.html.py:32 -#: .\ldt_utils\templates\front\front_home.html.py:52 +#: .\ldt_utils\templates\front\front_home.html.py:50 +#: .\ldt_utils\templates\front\front_home.html.py:79 msgid "by" msgstr "par" -#: .\ldt_utils\templates\front\front_all_contents.html.py:82 +#: .\ldt_utils\templates\front\front_all_contents.html.py:60 msgid "All tags" msgstr "Tous les tags" -#: .\ldt_utils\templates\front\front_base.html.py:25 +#: .\ldt_utils\templates\front\front_base.html.py:26 msgid "homepage" msgstr "Accueil" -#: .\ldt_utils\templates\front\front_base.html.py:25 +#: .\ldt_utils\templates\front\front_base.html.py:26 msgid "Lignes de temps" msgstr "Lignes de temps" -#: .\ldt_utils\templates\front\front_base.html.py:38 -#: .\ldt_utils\templates\front\front_base.html.py:56 +#: .\ldt_utils\templates\front\front_base.html.py:39 +#: .\ldt_utils\templates\front\front_base.html.py:61 msgid "link IRI" msgstr "Site de l'IRI" -#: .\ldt_utils\templates\front\front_base.html.py:41 +#: .\ldt_utils\templates\front\front_base.html.py:42 #: .\ldt_utils\templates\front\front_player.html.py:5 msgid "Annotate" msgstr "Annoter" -#: .\ldt_utils\templates\front\front_base.html.py:45 -msgid "connection" -msgstr "connexion" +#: .\ldt_utils\templates\front\front_base.html.py:47 +#: .\templates\cms\admin\cms\page\change_form.html.py:11 +#: .\templates\ldt\ldt_base.html.py:97 +#: .\user\templates\ldt\user\login_form.html.py:34 +msgid "Log out" +msgstr "Déconnexion" -#: .\ldt_utils\templates\front\front_base.html.py:53 +#: .\ldt_utils\templates\front\front_base.html.py:49 +#: .\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 "Connexion" + +#: .\ldt_utils\templates\front\front_base.html.py:58 #, python-format msgid "%(WEB_VERSION)s | %(VERSION)s" msgstr "v%(WEB_VERSION)s | v%(VERSION)s " -#: .\ldt_utils\templates\front\front_base.html.py:56 +#: .\ldt_utils\templates\front\front_base.html.py:61 msgid "about" msgstr "A propos" @@ -297,33 +318,33 @@ msgid "front.home" msgstr "Plateforme ligne de temps" -#: .\ldt_utils\templates\front\front_home.html.py:21 +#: .\ldt_utils\templates\front\front_home.html.py:28 msgid "Last annotated medias" msgstr "Derniers médias annotés" -#: .\ldt_utils\templates\front\front_home.html.py:23 -#: .\ldt_utils\templates\front\front_home.html.py:43 +#: .\ldt_utils\templates\front\front_home.html.py:30 +#: .\ldt_utils\templates\front\front_home.html.py:61 msgid "view all medias" msgstr "Voir tous les médias" -#: .\ldt_utils\templates\front\front_home.html.py:41 +#: .\ldt_utils\templates\front\front_home.html.py:59 msgid "Most annotated medias" msgstr "Médias les plus annotés" -#: .\ldt_utils\templates\front\front_home.html.py:59 +#: .\ldt_utils\templates\front\front_home.html.py:86 msgid "Active groups" msgstr "Groupes actifs" -#: .\ldt_utils\templates\front\front_home.html.py:64 +#: .\ldt_utils\templates\front\front_home.html.py:91 msgid "group picture" msgstr "image du groupe" -#: .\ldt_utils\templates\front\front_home.html.py:64 -#: .\ldt_utils\templates\front\front_home.html.py:68 +#: .\ldt_utils\templates\front\front_home.html.py:91 +#: .\ldt_utils\templates\front\front_home.html.py:95 msgid "view more infos on this group" msgstr "Voir plus d'informations sur ce groupe" -#: .\ldt_utils\templates\front\front_home.html.py:67 +#: .\ldt_utils\templates\front\front_home.html.py:94 #, python-format msgid "%(nb)s user in this group" msgid_plural "%(nb)s users in this group" @@ -342,53 +363,55 @@ #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:56 #: .\ldt_utils\templates\ldt\ldt_utils\workspace_base.html.py:68 #: .\ldt_utils\templates\ldt\ldt_utils\partial\permissions.html.py:121 -#: .\templates\ldt\ldt_base.html.py:126 +#: .\templates\ldt\ldt_base.html.py:127 msgid "search" msgstr "Recherche" -#: .\ldt_utils\templates\front\front_search_results.html.py:99 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:59 +#: .\ldt_utils\templates\front\front_search_results.html.py:50 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:58 #, python-format msgid " No results for %(search)s." msgstr "Aucun résultat pour %(search)s." -#: .\ldt_utils\templates\front\front_search_results.html.py:111 +#: .\ldt_utils\templates\front\front_search_results.html.py:62 msgid "Search results for " msgstr "Résultats de recherche pour " -#: .\ldt_utils\templates\front\front_search_results.html.py:114 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 +#: .\ldt_utils\templates\front\front_search_results.html.py:65 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:61 msgid "Result" msgstr "Résultat" -#: .\ldt_utils\templates\front\front_search_results.html.py:133 +#: .\ldt_utils\templates\front\front_search_results.html.py:84 msgid "annotation distribution" msgstr "Répartition des annotations" -#: .\ldt_utils\templates\front\front_search_results.html.py:148 +#: .\ldt_utils\templates\front\front_search_results.html.py:98 +#: .\ldt_utils\templates\front\front_search_results.html.py:103 msgid "view this annotation in the player" msgstr "Visionner cette annotation" -#: .\ldt_utils\templates\front\front_search_results.html.py:149 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:80 +#: .\ldt_utils\templates\front\front_search_results.html.py:99 +#: .\ldt_utils\templates\front\front_search_results.html.py:104 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:79 msgid "No title" msgstr "Sans titre" -#: .\ldt_utils\templates\front\front_search_results.html.py:150 +#: .\ldt_utils\templates\front\front_search_results.html.py:100 msgid "Begin" msgstr "Début" -#: .\ldt_utils\templates\front\front_search_results.html.py:150 +#: .\ldt_utils\templates\front\front_search_results.html.py:100 msgid "duration" msgstr "durée" -#: .\ldt_utils\templates\front\front_search_results.html.py:162 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:101 +#: .\ldt_utils\templates\front\front_search_results.html.py:122 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:100 msgid "previous" msgstr "Précedent" -#: .\ldt_utils\templates\front\front_search_results.html.py:183 -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:111 +#: .\ldt_utils\templates\front\front_search_results.html.py:142 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:110 msgid "next" msgstr "Suivant" @@ -614,7 +637,7 @@ msgstr "Voulez-vous quitter ce groupe ?" #: .\ldt_utils\templates\ldt\ldt_utils\groups.html.py:92 -#: .\templates\ldt\ldt_base.html.py:114 +#: .\templates\ldt\ldt_base.html.py:115 msgid "My groups" msgstr "Groupes" @@ -643,7 +666,7 @@ msgstr "Chercher" #: .\ldt_utils\templates\ldt\ldt_utils\published_projects.html.py:67 -#: .\templates\ldt\ldt_base.html.py:115 +#: .\templates\ldt\ldt_base.html.py:116 msgid "Published projects" msgstr "Projets publiés" @@ -656,11 +679,11 @@ msgid "The search field can not be empty." msgstr "Le champ de recherche ne peut pas être vide." -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:62 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:61 msgid "Results for " msgstr "Résultats pour " -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:76 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:75 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:16 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:18 #: .\ldt_utils\templates\ldt\ldt_utils\partial\projectslist.html.py:24 @@ -670,12 +693,12 @@ msgid "open ldt" msgstr "Ouvrir sous Lignes de Temps" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:87 +#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:86 #, fuzzy msgid "Tags" msgstr "tags" -#: .\ldt_utils\templates\ldt\ldt_utils\search_results.html.py:106 +#: .\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 de %(num_pages)s" @@ -854,6 +877,11 @@ "Le contenu '%(title)s' est référencé par les projets suivants : '%" "(project_titles)s'.Veuillez les effacer préalablement." +#: .\ldt_utils\views\json.py:34 .\ldt_utils\views\rdf.py:15 +#: .\ldt_utils\views\workspace.py:109 +msgid "You can not access this project" +msgstr "vous n'avez pas l'autorisation d'accéder à ce projet" + #: .\ldt_utils\views\project.py:110 #, python-format msgid "the project %(title)s is published. please unpublish before deleting." @@ -886,10 +914,6 @@ msgid "confirm deletion" msgstr "Confirmation d'effacement" -#: .\ldt_utils\views\rdf.py:15 .\ldt_utils\views\workspace.py:109 -msgid "You can not access this project" -msgstr "vous n'avez pas l'autorisation d'accéder à ce projet" - #: .\templates\admin\cms_change_form.html.py:30 msgid "Approve page deletion" msgstr "Accepter l'effacement de la page" @@ -1083,14 +1107,6 @@ msgid "Forget password?" msgstr "Oubliez le mot de passe?" -#: .\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 "Connexion" - #: .\templates\cms\admin\cms\page\change_form.html.py:11 msgid "Documentation" msgstr "Documentation" @@ -1099,12 +1115,6 @@ msgid "Change password" msgstr "Modifier le mot de passe" -#: .\templates\cms\admin\cms\page\change_form.html.py:11 -#: .\templates\ldt\ldt_base.html.py:96 -#: .\user\templates\ldt\user\login_form.html.py:34 -msgid "Log out" -msgstr "Déconnexion" - #: .\templates\cms\admin\cms\page\change_form.html.py:42 msgid "Ordering" msgstr "Ordre" @@ -1126,19 +1136,23 @@ msgstr "admin" #: .\templates\ldt\ldt_base.html.py:93 +msgid "front link" +msgstr "front" + +#: .\templates\ldt\ldt_base.html.py:94 #: .\user\templates\ldt\user\change_profile.html.py:95 msgid "Profile change" msgstr "Modification du profil" -#: .\templates\ldt\ldt_base.html.py:113 .\templates\ldt\ldt_base.html.py:114 +#: .\templates\ldt\ldt_base.html.py:114 .\templates\ldt\ldt_base.html.py:115 msgid "home" msgstr "accueil" -#: .\templates\ldt\ldt_base.html.py:148 +#: .\templates\ldt\ldt_base.html.py:149 msgid "Version number" msgstr "Numéro de version" -#: .\templates\ldt\ldt_base.html.py:148 +#: .\templates\ldt\ldt_base.html.py:149 #, python-format msgid " web %(WEB_VERSION)s | platform %(VERSION)s" msgstr "web v%(WEB_VERSION)s | platform v%(VERSION)s " @@ -1539,3 +1553,9 @@ msgstr "" "Nous vous avons envoyé par courriel les instructions pour activer le compte " "à l'adresse que vous avez indiquée. Vous devriez le recevoir rapidement." + +#~ msgid "back link" +#~ msgstr "plateforme" + +#~ msgid "connection" +#~ msgstr "connexion" diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/management/utils.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ldt/ldt/management/utils.py Thu Feb 02 15:35:47 2012 +0100 @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +''' +Created on Feb 1, 2012 + +@author: ymh +''' +import sys +import codecs #@UnresolvedImport +import math + +def show_progress(current_line, total_line, label, width, writer=None): + + if writer is None: + writer = sys.stdout + if sys.stdout.encoding is not None: + writer = codecs.getwriter(sys.stdout.encoding)(sys.stdout) + + percent = (float(current_line) / float(total_line)) * 100.0 + + marks = math.floor(width * (percent / 100.0)) #@UndefinedVariable + spaces = math.floor(width - marks) #@UndefinedVariable + + loader = u'[' + (u'=' * int(marks)) + (u' ' * int(spaces)) + u']' + + s = u"%s %3d%% %*d/%d - %*s\r" % (loader, percent, len(str(total_line)), current_line, total_line, width, label[:width]) + + writer.write(s) #takes the header into account + if percent >= 100: + writer.write("\n") + writer.flush() + + return writer diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/security/__init__.py --- a/src/ldt/ldt/security/__init__.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/security/__init__.py Thu Feb 02 15:35:47 2012 +0100 @@ -47,13 +47,13 @@ cls_list = get_models_to_protect() if cls_list: for cls in get_models_to_protect(): - protect_model(cls) + protect_model(cls) _models_are_protected = True def unprotect_models(): for cls in get_models_to_protect(): - unprotect_model(cls) + unprotect_model(cls) _models_are_protected = False @@ -75,7 +75,8 @@ cls.unsafe_delete = cls.delete class_name = cls.__name__.lower() cls.save = change_security(class_name)(cls.save) - cls.delete = change_security(class_name)(cls.delete) + cls.delete = change_security(class_name)(cls.delete) + cls.safe_objects.check_perm = True def unprotect_model(cls): if hasattr(cls, 'unsafe_save'): @@ -83,7 +84,6 @@ cls.delete = cls.unsafe_delete del cls.unsafe_save del cls.unsafe_delete - cls.safe_objects.user = None cls.safe_objects.check_perm = False def change_security(cls_name): diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/security/command.py --- a/src/ldt/ldt/security/command.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/security/command.py Thu Feb 02 15:35:47 2012 +0100 @@ -44,11 +44,7 @@ if user.has_perm('view_content', content): assign('ldt_utils.view_media', user, content.media_obj) - if verbose: - print "Set content permissions..." - for c in list_model['Content'].objects.all(): - c.is_public = True - + for admin in list_model['User'].objects.filter(is_superuser=True): for g in list_model['Group'].objects.all(): g.user_set.add(admin) \ No newline at end of file diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/security/manager.py --- a/src/ldt/ldt/security/manager.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/security/manager.py Thu Feb 02 15:35:47 2012 +0100 @@ -5,9 +5,8 @@ class SafeManager(Manager): use_for_related_fields = True - def __init__(self, user=None, check_perm=False): + def __init__(self, check_perm=False): super(SafeManager, self).__init__() - self.user = user self.check_perm = check_perm def get_query_set(self): @@ -15,17 +14,16 @@ if not self.check_perm: return super(SafeManager, self).get_query_set() - if not self.user: - self.user = get_current_user() + user = get_current_user() - if not self.user: + if not user: raise AttributeError("No user is attached to the current thread.") - if not self.user.is_authenticated(): - self.user = get_anonymous_user() + if not user.is_authenticated(): + user = get_anonymous_user() perm_name = '%s.view_%s' % (self.model._meta.app_label, self.model.__name__.lower()) - user_objects = get_objects_for_user(self.user, perm_name, klass=self.model.objects) + user_objects = get_objects_for_user(user, perm_name, klass=self.model.objects) return user_objects \ No newline at end of file diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/security/utils.py --- a/src/ldt/ldt/security/utils.py Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/security/utils.py Thu Feb 02 15:35:47 2012 +0100 @@ -27,23 +27,19 @@ cls = cls.model_class() for elem in xml.xpath('/iri/medias/media'): - if not user.is_authenticated(): + content = cls.safe_objects.filter(iri_id=elem.get('id')) + if not content: elem.set('video', settings.FORBIDDEN_STREAM_URL) - else: - content = cls.safe_objects.filter(iri_id=elem.get('id')) - if not content: - elem.set('video', settings.FORBIDDEN_STREAM_URL) return xml def use_forbidden_url(content): - user = get_current_user() + cls = ContentType.objects.get(model='content') + cls = cls.model_class() - if not user.is_authenticated(): - return True - elif "Content" in settings.USE_GROUP_PERMISSIONS and user.has_perm('ldt_utils.view_content', content): + new_content = cls.safe_objects.filter(iri_id=content.iri_id) + if new_content: return False - return True def add_change_attr(user, obj_list): diff -r cebc62a93563 -r 13ed4a934a72 src/ldt/ldt/templates/ldt/ldt_base.html --- a/src/ldt/ldt/templates/ldt/ldt_base.html Thu Feb 02 15:35:19 2012 +0100 +++ b/src/ldt/ldt/templates/ldt/ldt_base.html Thu Feb 02 15:35:47 2012 +0100 @@ -90,6 +90,7 @@ {% trans "Staff" %}| {% endif %} {% if user.is_authenticated %} + {% trans "front link" %} | {% thumbnail user.get_profile.image "20x20" crop="center" format="PNG" as im %}{% empty %} {% endthumbnail %} {{user.username}} diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/res/lib/lib_create_env.py --- a/virtualenv/res/lib/lib_create_env.py Thu Feb 02 15:35:19 2012 +0100 +++ b/virtualenv/res/lib/lib_create_env.py Thu Feb 02 15:35:47 2012 +0100 @@ -31,6 +31,9 @@ 'SOCIAL_AUTH': {'setup':'social_auth', 'url':'https://github.com/omab/django-social-auth/tarball/v0.3.10', 'local':"omab-django-social-auth-v0.3.10-modified.tar.gz"}, 'SOUTH': { 'setup': 'South', 'url':'http://www.aeracode.org/releases/south/south-0.7.3.tar.gz', 'local':"south-0.7.3.tar.gz"}, 'DJANGO_GUARDIAN' : { 'setup': 'django-guardian', 'url':'http://pypi.python.org/packages/source/d/django-guardian/django-guardian-1.0.3.tar.gz', 'local':"django-guardian-1.0.3.tar.gz"}, + 'SORL_THUMBNAIL' : { 'setup': 'sorl-thumbnail', 'url':'http://pypi.python.org/packages/source/s/sorl-thumbnail/sorl-thumbnail-11.12.tar.gz', 'local':"sorl-thumbnail-v10.12.1.tar.gz"}, + 'LIBJPEG': {'setup': None, 'url':'jpegsrc.v8d.tar.gz', 'local':'jpegsrc.v8d.tar.gz'}, + 'ZLIB': {'setup': None, 'url':'zlib-1.2.6.tar.gz', 'local':'zlib-1.2.6.tar.gz'}, } if system_str == 'Windows': @@ -207,7 +210,102 @@ shutil.copytree(os.path.join(psycopg2_src_path, 'psycopg2'), os.path.abspath(os.path.join(home_dir, 'Lib/site-packages', 'psycopg2'))) shutil.copy(os.path.join(psycopg2_src_path, 'psycopg2-2.0.14-py2.6.egg-info'), os.path.abspath(os.path.join(home_dir, 'Lib/site-packages', 'site-packages'))) +def gen_install_comp_lib(lib_name, lib_key, configure_options=[]): + + def install_lib(option_str, extra_env, res_source_key, home_dir, lib_dir, tmp_dir, src_dir, res_env, logger, call_subprocess, filter_python_develop): + lib_src = os.path.join(src_dir,lib_name+".tar.gz") + shutil.copy(res_env.URLS[lib_key][res_source_key], lib_src) + tf = tarfile.open(lib_src,'r:gz') + lib_base_path = os.path.join(src_dir, lib_name) + logger.notify("Extract %s to %s " % (lib_name,lib_base_path)) + tf.extractall(lib_base_path) + tf.close() + + lib_src_path = os.path.join(lib_base_path, os.listdir(lib_base_path)[0]) + + logger.notify("libjpeg configure") + call_subprocess(['configure', '--prefix='+os.path.abspath(home_dir)] + configure_options, + cwd=os.path.abspath(lib_src_path), + filter_stdout=filter_python_develop, + show_stdout=True) + + logger.notify("libjpeg make") + call_subprocess(['make'], + cwd=os.path.abspath(lib_src_path), + filter_stdout=filter_python_develop, + show_stdout=True) + + logger.notify("zlib make install") + call_subprocess(['make', 'install'], + cwd=os.path.abspath(lib_src_path), + filter_stdout=filter_python_develop, + show_stdout=True) + return install_lib +install_libjpeg = gen_install_comp_lib("libjpeg", "LIBJPEG", ['--enable-shared']) +install_zlib = gen_install_comp_lib("zlib", "ZLIB", []) + +#def install_libjpeg(option_str, extra_env, res_source_key, home_dir, lib_dir, tmp_dir, src_dir, res_env, logger, call_subprocess, filter_python_develop): +# libjpeg_src = os.path.join(src_dir,"jpegsrc.tar.gz") +# shutil.copy(res_env.URLS['LIBJPEG'][res_source_key], libjpeg_src) +# tf = tarfile.open(pylucene_src,'r:gz') +# libjpeg_base_path = os.path.join(src_dir,"libjpeg") +# logger.notify("Extract libjpeg to %s " % libjpeg_base_path) +# tf.extractall(libjpeg_base_path) +# tf.close() +# +# libjpeg_src_path = os.path.join(libjpeg_base_path, os.listdir(libjpeg_base_path)[0]) +# +# logger.notify("libjpeg configure") +# call_subprocess(['configure', '--enable-shared', '--prefix='+os.path.abspath(home_dir)], +# cwd=os.path.abspath(libjpeg_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) +# +# logger.notify("libjpeg make") +# call_subprocess(['make'], +# cwd=os.path.abspath(libjpeg_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) +# +# logger.notify("zlib make install") +# call_subprocess(['make', 'install'], +# cwd=os.path.abspath(libjpeg_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) +# +# +#def install_zlib(option_str, extra_env, res_source_key, home_dir, lib_dir, tmp_dir, src_dir, res_env, logger, call_subprocess, filter_python_develop): +# zlib_src = os.path.join(src_dir,"zlib.tar.gz") +# shutil.copy(res_env.URLS['ZLIB'][res_source_key], libjpeg_src) +# tf = tarfile.open(pylucene_src,'r:gz') +# zlib_base_path = os.path.join(src_dir,"zlib") +# logger.notify("Extract libjpeg to %s " % zlib_base_path) +# tf.extractall(zlib_base_path) +# tf.close() +# +# zlib_src_path = os.path.join(zlib_base_path, os.listdir(zlib_base_path)[0]) +# +# logger.notify("zlib configure") +# call_subprocess(['configure', '--enable-shared', '--prefix='+os.path.abspath(home_dir)], +# cwd=os.path.abspath(zlib_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) +# +# logger.notify("zlib make") +# call_subprocess(['make'], +# cwd=os.path.abspath(zlib_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) +# +# logger.notify("zlib make install") +# call_subprocess(['make', 'install'], +# cwd=os.path.abspath(zlib_src_path), +# filter_stdout=filter_python_develop, +# show_stdout=True) + + + def lib_generate_install_methods(path_locations, src_base, Logger, call_subprocess, normal_installs, urls=None): diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/res/src/jpegsrc.v8d.tar.gz Binary file virtualenv/res/src/jpegsrc.v8d.tar.gz has changed diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/res/src/sorl-sorl-thumbnail-v10.12.1-65-g2285451.tar.gz Binary file virtualenv/res/src/sorl-sorl-thumbnail-v10.12.1-65-g2285451.tar.gz has changed diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/res/src/sorl-thumbnail-v10.12.1.tar.gz Binary file virtualenv/res/src/sorl-thumbnail-v10.12.1.tar.gz has changed diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/res/src/zlib-1.2.6.tar.gz Binary file virtualenv/res/src/zlib-1.2.6.tar.gz has changed diff -r cebc62a93563 -r 13ed4a934a72 virtualenv/web/res/res_create_env.py --- a/virtualenv/web/res/res_create_env.py Thu Feb 02 15:35:19 2012 +0100 +++ b/virtualenv/web/res/res_create_env.py Thu Feb 02 15:35:47 2012 +0100 @@ -38,6 +38,7 @@ ('DJANGO_OPENID_CONSUMER', 'pip', None, None), ('SOCIAL_AUTH', 'easy_install', None, None), ('DJANGO_GUARDIAN', 'pip', None, None), + ('SOLR_THUMBNAIL', 'pip', None, None), ]) if system_str == "Darwin": diff -r cebc62a93563 -r 13ed4a934a72 web/ldtplatform/config.py.tmpl --- a/web/ldtplatform/config.py.tmpl Thu Feb 02 15:35:19 2012 +0100 +++ b/web/ldtplatform/config.py.tmpl Thu Feb 02 15:35:47 2012 +0100 @@ -90,15 +90,14 @@ AUTO_INDEX_AFTER_SAVE = True -USE_GROUP_PERMISSIONS = ['Project', 'Content', 'Media'] FORBIDDEN_STREAM_URL = "rtmp://media.iri.centrepompidou.fr/ddc_player/mp4:video/forbidden_stream.mp4?old_path=" -PUBLIC_GROUP_NAME = 'everyone' -MAX_USERS_SEARCH = 20 - -DEFAULT_CONTENT_ICON = "thumbnails/contents/content_default_icon.png" -DEFAULT_PROJECT_ICON = "thumbnails/projects/project_default_icon.png" -DEFAULT_USER_ICON = "thumbnails/users/user_default_icon.png" -DEFAULT_GROUP_ICON = "thumbnails/groups/group_default_icon.png" -PROFILE_IMG_MAX_SIZE = 1000000 FRONT_TAG_LIST = [u"Enmi 2011", u"film", u"conférence"] + +SYNTAX = { + '++' : 'OK', + '--' : 'KO', + '==' : 'REF', + '??' : 'Q' + } + diff -r cebc62a93563 -r 13ed4a934a72 web/ldtplatform/settings.py --- a/web/ldtplatform/settings.py Thu Feb 02 15:35:19 2012 +0100 +++ b/web/ldtplatform/settings.py Thu Feb 02 15:35:47 2012 +0100 @@ -216,7 +216,19 @@ DIVISIONS_FOR_STAT_ANNOTATION = 64 -FRONT_TAG_LIST = [u"Enmi 2011",u"film"] +FRONT_TAG_LIST = [] + +DEFAULT_CONTENT_ICON = "thumbnails/contents/content_default_icon.png" +DEFAULT_PROJECT_ICON = "thumbnails/projects/project_default_icon.png" +DEFAULT_USER_ICON = "thumbnails/users/user_default_icon.png" +DEFAULT_GROUP_ICON = "thumbnails/groups/group_default_icon.png" +PROFILE_IMG_MAX_SIZE = 1000000 + +USE_GROUP_PERMISSIONS = ['Project', 'Content', 'Media'] +FORBIDDEN_STREAM_URL = "rtmp://media.iri.centrepompidou.fr/ddc_player/mp4:video/forbidden_stream.mp4?old_path=" +PUBLIC_GROUP_NAME = 'everyone' +MAX_USERS_SEARCH = 20 + from config import *