--- a/.settings/org.eclipse.core.resources.prefs Wed May 15 12:18:43 2013 +0200
+++ b/.settings/org.eclipse.core.resources.prefs Fri May 24 21:55:08 2013 +0200
@@ -35,13 +35,21 @@
encoding//src/ldt/ldt/ldt_utils/migrations/0024_auto__chg_field_tag_name.py=utf-8
encoding//src/ldt/ldt/ldt_utils/migrations/0025_chg_site_domain.py=utf-8
encoding//src/ldt/ldt/ldt_utils/migrations/0026_set_relative_ldtproject.py=utf-8
+encoding//src/ldt/ldt/ldt_utils/migrations/0027_auto__chg_field_project_owner__chg_field_media_creator.py=utf-8
encoding//src/ldt/ldt/ldt_utils/views/json.py=utf-8
encoding//src/ldt/ldt/management/commands/synciri.py=utf-8
encoding//src/ldt/ldt/management/commands/updateiriurlinprojects.py=utf-8
encoding//src/ldt/ldt/management/utils.py=utf-8
encoding//src/ldt/ldt/test/test_runner.py=utf-8
encoding//src/ldt/ldt/text/migrations/0001_initial.py=utf-8
+encoding//src/ldt/ldt/text/migrations/0002_auto__chg_field_annotation_external_id.py=utf-8
encoding//src/ldt/ldt/user/migrations/0001_initial.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0005_add_permission_owner_group.py=utf-8
encoding//src/ldt/ldt/user/migrations/0008_auto__chg_field_groupprofile_image__chg_field_groupprofile_group__chg_.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0009_rename_auth_user_to_user_ldt_user.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0010_auto__add_field_ldtuser_language__add_field_ldtuser_image.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0011_copy_image_language_ldt_user.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0012_auto__del_userprofile.py=utf-8
+encoding//src/ldt/ldt/user/migrations/0013_auto__del_ldt.py=utf-8
encoding//virtualenv/web/env/guardianenv/Lib/site-packages/guardian/migrations/0001_initial.py=utf-8
encoding/<project>=UTF-8
--- a/src/ldt/ldt/__init__.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/__init__.py Fri May 24 21:55:08 2013 +0200
@@ -1,3 +1,5 @@
+__all__ = ["VERSION", "get_version", "__version__"]
+
VERSION = (1, 49, 2, "final", 0)
@@ -15,3 +17,12 @@
__version__ = get_version()
+# solve initialization pb
+# The pb comes from the initialization of the middlewares
+# The is a potential circular reference pb between the following modules : security, indexation model.
+# the cause comes from the fact that at one moment, the User model is referenced, using the new django 1.5 django.contrib.auth.get_user_model method
+# This method cause the load of all installed apps, causing the circular dependency problem.
+# the following code force a "pre-load" of all installed app, solving the dependecy pb.
+# TODO: remove this by reworking ldt dependencies
+from django.db.models.loading import get_models
+_ = get_models()
--- a/src/ldt/ldt/api/ldt/authentication.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/authentication.py Fri May 24 21:55:08 2013 +0200
@@ -197,5 +197,5 @@
This implementation returns the user's username.
"""
- username, api_key = self.extract_credentials(request)
+ username, _ = self.extract_credentials(request)
return username or 'nouser'
\ No newline at end of file
--- a/src/ldt/ldt/api/ldt/resources/annotation.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/annotation.py Fri May 24 21:55:08 2013 +0200
@@ -1,17 +1,15 @@
+from ldt.ldt_utils.contentindexer import add_segment
from ldt.ldt_utils.models import Project, Content
-from ldt.ldt_utils.stat import add_annotation_to_stat
from ldt.ldt_utils.utils import LdtAnnotation
from ldt.security import protect_models, unprotect_models
from tastypie import fields
from tastypie.authorization import Authorization
from tastypie.exceptions import NotFound, BadRequest
from tastypie.resources import Resource
-import logging #@UnresolvedImport
-from ldt.ldt_utils.contentindexer import add_segment
class AnnotationObject(object):
- def __init__(self, id="", project = "", type = "", type_title = "", ensemble="", media = "", begin = 0, end = 0, content = {"title":"", "description":""}, tags = [], meta = {"creator":"","created":""}):
+ def __init__(self, id="", project = "", type = "", type_title = "", ensemble="", media = "", begin = 0, end = 0, content = {"title":"", "description":""}, tags = [], meta = {"creator":"","created":""}): # @ReservedAssignment
self.id = id
self.project = project
self.type = type
@@ -46,11 +44,10 @@
always_return_data = True
include_resource_uri = False
- def obj_delete_list(self, request=None, **kwargs):
+ def obj_delete_list(self, bundle, **kwargs):
return True
- def obj_create(self, bundle, request=None, **kwargs):
- #logging.debug("ICI 0-1 bundle.data = " + repr(bundle.data))
+ def obj_create(self, bundle, **kwargs):
# Here the a has the datas for only one annotation. Tastypie's post allows only one resource addition
a = bundle.data
project_id = ""
@@ -128,7 +125,7 @@
bundle.obj = AnnotationObject(id = a["id"], project = a["project"], type = a["type"], type_title = a["type_title"], ensemble=a['ensemble'], media = a["media"], begin = a["begin"], end = a["end"], content = a['content'], tags = a['tags'], meta = a['meta'])
return bundle
- def get_resource_uri(self, bundle_or_obj):
+ def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
return ''
\ No newline at end of file
--- a/src/ldt/ldt/api/ldt/resources/content.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/content.py Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,9 @@
-from django.conf.urls.defaults import url
+from django.conf.urls import url
+from itertools import groupby
+from ldt.indexation import get_results_list
from ldt.ldt_utils.models import Content, Media
+from tastypie import fields
from tastypie.resources import Bundle, ModelResource, ALL_WITH_RELATIONS, ALL
-from tastypie import fields
-from ldt.indexation import get_results_list
-from itertools import groupby
class MediaResource(ModelResource):
@@ -12,8 +12,10 @@
resource_name = 'medias'
queryset = Media.objects.all()
- def get_resource_uri(self, bundle_or_obj):
- if isinstance(bundle_or_obj, Bundle):
+ def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
+ if not bundle_or_obj:
+ return super(MediaResource, self).get_resource_uri(bundle_or_obj,url_name)
+ elif isinstance(bundle_or_obj, Bundle):
return bundle_or_obj.obj.videopath + bundle_or_obj.obj.stream_src
else:
return bundle_or_obj.videopath + bundle_or_obj.stream_src
@@ -36,13 +38,15 @@
def get_object_list(self, request):
return Content.safe_objects.select_related('front_project', 'media_obj').all()
- def override_urls(self):
- # WARNING : in tastypie <= 1.0, override_urls is used instead of prepend_urls. From 1.0.0, prepend_urls will be prefered and override_urls deprecated
+ def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/recommended/$" % self._meta.resource_name, self.wrap_view('get_recommended'), name="api_contents_recommended"),
url(r"^(?P<resource_name>%s)/(?P<iri_id>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
]
- def get_resource_uri(self, bundle_or_obj):
+
+ def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
+ if bundle_or_obj is None:
+ return super(ContentResource, self).get_resource_uri(bundle_or_obj, url_name)
kwargs = {
'resource_name': self._meta.resource_name,
'api_name': self._meta.api_name
--- a/src/ldt/ldt/api/ldt/resources/project.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/project.py Fri May 24 21:55:08 2013 +0200
@@ -1,12 +1,13 @@
from django.conf import settings
-from django.conf.urls.defaults import url
+from django.conf.urls import url
from django.contrib.auth.models import Group
from guardian.shortcuts import assign
-from ldt.ldt_utils.models import Project
-from ldt.api.ldt.authentication import SessionAuthentication, MultiAuthentication, ApiKeyAuthentication
-from ldt.api.ldt.serializers.cinelabserializer import CinelabSerializer
+from ldt.api.ldt.authentication import (SessionAuthentication,
+ MultiAuthentication, ApiKeyAuthentication)
from ldt.api.ldt.resources import ContentResource
from ldt.api.ldt.resources.user import UserResource
+from ldt.api.ldt.serializers.cinelabserializer import CinelabSerializer
+from ldt.ldt_utils.models import Project
from ldt.security import protect_models, unprotect_models
from ldt.security.permissionchecker import check_object_perm_for_user
from tastypie import fields, http
@@ -38,13 +39,14 @@
def get_object_list(self, request):
return Project.safe_objects.all()
- def override_urls(self):
- # WARNING : in tastypie <= 1.0, override_urls is used instead of prepend_urls. From 1.0.0, prepend_urls will be prefered and override_urls deprecated
+ def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/(?P<ldt_id>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
]
- def get_resource_uri(self, bundle_or_obj):
+ def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
+ if bundle_or_obj is None:
+ return super(ProjectResource, self).get_resource_uri(bundle_or_obj,url_name)
kwargs = {
'resource_name': self._meta.resource_name,
'api_name': self._meta.api_name
@@ -56,9 +58,12 @@
return self._build_reverse_url("api_dispatch_detail", kwargs=kwargs)
# Create a new project. Used with post_detail and with no ldt_id in the url
- def obj_create(self, bundle, request=None, **kwargs):
+ def obj_create(self, bundle, **kwargs):
+ request = bundle.request
+ if request is None:
+ raise BadRequest("Request object must be passed as an argument")
unprotect_models()
- bundle = super(ProjectResource, self).obj_create(bundle, request)
+ bundle = super(ProjectResource, self).obj_create(bundle, **kwargs)
# Assign permission for the owner
assign('view_project', request.user, bundle.obj)
assign('change_project', request.user, bundle.obj)
@@ -70,7 +75,7 @@
# Prevent for put_list and delete all objects.
- def obj_delete_list(self, request=None, **kwargs):
+ def obj_delete_list(self, bundle, **kwargs):
raise BadRequest("PUT with a list of projects is forbidden.")
--- a/src/ldt/ldt/api/ldt/resources/segment.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/segment.py Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,5 @@
from django.conf import settings
-from django.conf.urls.defaults import url
+from django.conf.urls import url
from django.core.paginator import Paginator, InvalidPage
from django.db.models import F, Q
from ldt.indexation import get_results_list
@@ -28,8 +28,7 @@
# def determine_format(self, request):
# return "application/json"
- def override_urls(self):
- # WARNING : in tastypie <= 0.9.11, override_urls is used instead of prepend_urls. From 0.9.12, prepend_urls will be prefered and override_urls deprecated
+ def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/search%s$" % (self._meta.resource_name, trailing_slash()), self.wrap_view('get_search'), name="api_get_search"),
url(r"^(?P<resource_name>%s)/bytimecode%s$" % (self._meta.resource_name, trailing_slash()), self.wrap_view('get_segments_by_timecode'), name='segment_api_empty'),
--- a/src/ldt/ldt/api/ldt/resources/tag.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/tag.py Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,5 @@
from django.conf import settings
-from django.conf.urls.defaults import url
+from django.conf.urls import url
from django.core.paginator import Paginator, InvalidPage
from ldt.ldt_utils.models import Segment
from tagging.models import Tag
@@ -14,8 +14,7 @@
resource_name = 'tags'
queryset = Tag.objects.all()
- def override_urls(self):
- # WARNING : in tastypie <= 0.9.11, override_urls is used instead of prepend_urls. From 0.9.12, prepend_urls will be prefered and override_urls deprecated
+ def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/search%s$" % (self._meta.resource_name, trailing_slash()), self.wrap_view('get_search'), name="api_get_search"),
]
--- a/src/ldt/ldt/api/ldt/resources/user.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/resources/user.py Fri May 24 21:55:08 2013 +0200
@@ -1,20 +1,23 @@
-from django.contrib.auth.models import User
-from django.conf.urls.defaults import url
+from django.conf.urls import url
+from django.contrib.auth import get_user_model
from tastypie.resources import Bundle, ModelResource
+User = get_user_model()
+
class UserResource(ModelResource):
class Meta:
allowed_methods = ['get']
queryset = User.objects.all()
resource_name = 'users'
- def override_urls(self):
- # WARNING : in tastypie <= 1.0, override_urls is used instead of prepend_urls. From 1.0.0, prepend_urls will be prefered and override_urls deprecated
+ def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/(?P<username>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
]
- def get_resource_uri(self, bundle_or_obj):
+ def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
+ if bundle_or_obj is None:
+ return super(UserResource, self).get_resource_uri(bundle_or_obj, url_name)
kwargs = {
'resource_name': self._meta.resource_name,
'api_name': self._meta.api_name
--- a/src/ldt/ldt/api/ldt/serializers/cinelabserializer.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/serializers/cinelabserializer.py Fri May 24 21:55:08 2013 +0200
@@ -1,17 +1,15 @@
from django.conf import settings
from django.core.serializers import json
-from django.core.urlresolvers import reverse
from django.utils import simplejson
from ldt.ldt_utils.models import Content, Project
from ldt.ldt_utils.projectserializer import ProjectJsonSerializer
from ldt.ldt_utils.utils import generate_uuid
-from tastypie.serializers import Serializer
+from ldt.utils.url import reverse_prefix
from tastypie.exceptions import NotFound, BadRequest
-import math
+from tastypie.serializers import Serializer
import lxml.etree
-import logging
-import tastypie
-
+import math
+
class CinelabSerializer(Serializer):
# Thanks to the this serializer, the api will be able to serialize and deserialize a project in cinelab json format
@@ -69,8 +67,9 @@
ldt_id = generate_uuid()
# default state = (1, 'edition') OR (2, 'published')
state = 2
- contents = [reverse("api_dispatch_detail", kwargs={"api_name":"1.0", "resource_name":"contents", "iri_id":c["id"]}) for c in cinelab["medias"]]
- owner_uri = reverse("api_dispatch_detail", kwargs={"api_name":"1.0", "resource_name":"users", "username":meta["dc:creator"]})
+
+ contents = [reverse_prefix("api_dispatch_detail", kwargs={"api_name":"1.0", "resource_name":"contents", "iri_id":c["id"]}) for c in cinelab["medias"]]
+ owner_uri = reverse_prefix("api_dispatch_detail", kwargs={"api_name":"1.0", "resource_name":"users", "username":meta["dc:creator"]})
ldt = lxml.etree.tostring(self.cinelab_to_ldt(cinelab), pretty_print=True)
--- a/src/ldt/ldt/api/ldt/urls.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/ldt/urls.py Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-from django.conf.urls.defaults import patterns, include
+from django.conf.urls import patterns, include
from ldt.api.ldt.resources import ProjectResource, ContentResource, SegmentResource, AnnotationResource, UserResource, TagResource
from tastypie.api import Api
--- a/src/ldt/ldt/api/middleware/pistonput.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/middleware/pistonput.py Fri May 24 21:55:08 2013 +0200
@@ -3,8 +3,6 @@
piston does not like 'charset=UTF-8" in PUT request
"""
-from django.conf import settings
-
class PistonPutMiddleware(object):
def process_request(self, request):
--- a/src/ldt/ldt/api/urls.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/api/urls.py Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-from django.conf.urls.defaults import patterns, include
+from django.conf.urls import patterns, include
urlpatterns = patterns('',
# all my other url mappings
--- a/src/ldt/ldt/auth/__init__.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/auth/__init__.py Fri May 24 21:55:08 2013 +0200
@@ -1,3 +1,6 @@
+from django.conf import settings
+from social_auth.backends import get_backends
+
def check_access(user, obj):
check_meth = getattr(obj, 'check_access', False)
@@ -5,3 +8,13 @@
return check_meth(user)
else:
return user.is_staff
+
+def social_list():
+ """Start list process"""
+ l = []
+ # We list all wanted backends among all availables
+ for backend in get_backends():
+ for backend_str in settings.AUTHENTICATION_BACKENDS:
+ if backend in backend_str:
+ l.append(backend)
+ return l
\ No newline at end of file
--- a/src/ldt/ldt/auth/views.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/auth/views.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,7 @@
from django.contrib.auth import REDIRECT_FIELD_NAME
from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth.views import login as django_login
-from social_auth.views import list as social_list
-
+from ldt.auth import social_list
def login(request, template_name='registration/login.html',
redirect_field_name=REDIRECT_FIELD_NAME,
--- a/src/ldt/ldt/core/handlers/modpython.py Wed May 15 12:18:43 2013 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-
-def handler(req):
- activate_this = req.get_options().get("virtualenv.activate_path")
- execfile(activate_this, dict(__file__=activate_this))
-
- import django.core.handlers.modpython
-
- return django.core.handlers.modpython.handler(req)
--- a/src/ldt/ldt/core/models.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/core/models.py Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,8 @@
-from django.contrib.auth.models import User
from django.db import models
-
+from django.conf import settings
class Document(models.Model):
- owner = models.ForeignKey(User, blank=True, null=True)
+ owner = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True)
class Meta:
abstract = True
--- a/src/ldt/ldt/forms/fields.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/forms/fields.py Fri May 24 21:55:08 2013 +0200
@@ -3,11 +3,9 @@
"""
from django import forms
+from django.core.exceptions import ValidationError
from django.utils.translation import ugettext_lazy as _
-from django.core.exceptions import ValidationError
-import logging
import time
-import math
__all__ = (
'LdtDurationField'
@@ -29,9 +27,9 @@
def to_python(self, value):
dur = value
- for format in self.formats:
+ for f in self.formats:
try:
- dur = time.strptime(dur, format)
+ dur = time.strptime(dur, f)
dur = dur.tm_hour*3600 + dur.tm_min*60 + dur.tm_sec
dur = dur*1000
break
--- a/src/ldt/ldt/forms/widgets.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/forms/widgets.py Fri May 24 21:55:08 2013 +0200
@@ -3,12 +3,8 @@
"""
from django.contrib.admin.widgets import AdminSplitDateTime
-from django.forms.widgets import TimeInput
from django.utils.safestring import mark_safe
from django.utils.translation import ugettext as _
-import time
-import math
-import logging
class LdtSplitDateTime(AdminSplitDateTime):
--- a/src/ldt/ldt/indexation/__init__.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/indexation/__init__.py Fri May 24 21:55:08 2013 +0200
@@ -5,8 +5,6 @@
from haystack.query import SearchQuerySet
from ldt.indexation.highlighter import LdtHighlighter as Highlighter
from ldt.indexation.query_parser import QueryParser
-from ldt.ldt_utils.models import Segment
-from ldt.text.models import Annotation
import re
import sys
@@ -33,6 +31,9 @@
def get_results_list(field, query, highlight=True):
+ #put import here to avoid a circular dependency
+ from ldt.ldt_utils.models import Segment
+
if field == 'all':
field = 'text'
@@ -47,6 +48,9 @@
def get_result_text(field, query):
+ #put import here to avoid a circular dependency
+ from ldt.text.models import Annotation
+
if field == 'all':
field = 'text'
elif field == 'text':
--- a/src/ldt/ldt/indexation/backends/elasticsearch_backend.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/indexation/backends/elasticsearch_backend.py Fri May 24 21:55:08 2013 +0200
@@ -4,14 +4,11 @@
@author: ymh
'''
-from django.db.models.loading import get_model
-from haystack.backends import BaseEngine, SearchResult, elasticsearch_backend
-from haystack.constants import DJANGO_CT, DJANGO_ID
+from haystack.backends import BaseEngine, elasticsearch_backend
from haystack.exceptions import MissingDependency
from haystack.utils import get_identifier
-from ldt.ldt_utils.models import Segment
+#from ldt.ldt_utils.models import Segment
import collections
-import datetime
try:
import requests
except ImportError:
@@ -46,7 +43,7 @@
if highlight:
fields_def = { }
- if models is None or len(models) == 0 or Segment in models:
+ if models is None or len(models) == 0 :#or Segment in models:
fields_def['tags'] = {}
fields_def['title'] = {}
fields_def['abstract'] = {}
--- a/src/ldt/ldt/indexation/signals.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/indexation/signals.py Fri May 24 21:55:08 2013 +0200
@@ -6,8 +6,6 @@
'''
from django.db import models
from haystack import signals
-from ldt.ldt_utils.models import Segment
-from ldt.text.models import Annotation
class LdtSignalProcessor(signals.BaseSignalProcessor):
@@ -20,13 +18,20 @@
models.signals.post_delete.disconnect(self.handle_delete, sender=klass)
- def setup(self):
+ def setup(self):
+ #put import here to avoid circular
+ from ldt.ldt_utils.models import Segment
+ from ldt.text.models import Annotation
+
self.__connect_signals(Segment)
self.__connect_signals(Annotation)
def teardown(self):
+ from ldt.ldt_utils.models import Segment
+ from ldt.text.models import Annotation
+
self.__disconnect_signals(Annotation)
self.__disconnect_signals(Segment)
\ No newline at end of file
--- a/src/ldt/ldt/ldt_utils/admin.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/admin.py Fri May 24 21:55:08 2013 +0200
@@ -1,17 +1,16 @@
-from django.conf.urls.defaults import patterns, url
+from StringIO import StringIO
+from django.conf.urls import patterns, url
from django.contrib import admin
+from django.core.management import call_command
+from django.http import HttpResponse
from django.shortcuts import render_to_response
from django.template import RequestContext
+from guardian.admin import GuardedModelAdmin
from ldt.ldt_utils.contentindexer import ContentIndexer, ProjectIndexer
from ldt.ldt_utils.fileimport import FileImport, FileImportError
from ldt.ldt_utils.forms import LdtImportForm, ReindexForm, StatAnnotationForm
from ldt.ldt_utils.models import Content, Project, Media, Author
from ldt.ldt_utils.stat import update_stat_content
-from guardian.admin import GuardedModelAdmin
-from django.http import HttpResponse
-from StringIO import StringIO
-from django.core.management import call_command
-import logging
class ProjectAdmin(GuardedModelAdmin):
--- a/src/ldt/ldt/ldt_utils/middleware/userprofile.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/middleware/userprofile.py Fri May 24 21:55:08 2013 +0200
@@ -6,8 +6,7 @@
def process_request(self, request):
if request.user.is_authenticated():
- profile = request.user.get_profile()
- language = profile.language
+ language = request.user.language
else:
language = settings.LANGUAGE_CODE[:2]
request.user.is_regular = False
--- a/src/ldt/ldt/ldt_utils/migrations/0006_auto__add_field_media_image.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0006_auto__add_field_media_image.py Fri May 24 21:55:08 2013 +0200
@@ -1,21 +1,19 @@
# encoding: utf-8
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding field 'Media.image'
- db.add_column('ldt_utils_media', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/contents/drive.jpg', max_length=100), keep_default=False)
+ db.add_column('ldt_utils_media', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/contents/drive.jpg', max_length=100), keep_default=False) # @UndefinedVariable
def backwards(self, orm):
# Deleting field 'Media.image'
- db.delete_column('ldt_utils_media', 'image')
+ db.delete_column('ldt_utils_media', 'image') # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0007_auto__add_field_content_image__del_field_media_image.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0007_auto__add_field_content_image__del_field_media_image.py Fri May 24 21:55:08 2013 +0200
@@ -1,28 +1,26 @@
# encoding: utf-8
-import datetime
from django.conf import settings
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding field 'Content.image'
- db.add_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default=settings.DEFAULT_CONTENT_ICON, max_length=100), keep_default=False)
+ db.add_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default=settings.DEFAULT_CONTENT_ICON, max_length=100), keep_default=False) # @UndefinedVariable
# Deleting field 'Media.image'
- db.delete_column('ldt_utils_media', 'image')
+ db.delete_column('ldt_utils_media', 'image') # @UndefinedVariable
def backwards(self, orm):
# Deleting field 'Content.image'
- db.delete_column('ldt_utils_content', 'image')
+ db.delete_column('ldt_utils_content', 'image') # @UndefinedVariable
# Adding field 'Media.image'
- db.add_column('ldt_utils_media', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/media/drive.jpg', max_length=100), keep_default=False)
+ db.add_column('ldt_utils_media', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/media/drive.jpg', max_length=100), keep_default=False) # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0008_auto__add_field_project_image.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0008_auto__add_field_project_image.py Fri May 24 21:55:08 2013 +0200
@@ -1,21 +1,19 @@
# encoding: utf-8
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding field 'Project.image'
- db.add_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/projects/project_default_icon.png', max_length=100), keep_default=False)
+ db.add_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/projects/project_default_icon.png', max_length=100), keep_default=False) # @UndefinedVariable
def backwards(self, orm):
# Deleting field 'Project.image'
- db.delete_column('ldt_utils_project', 'image')
+ db.delete_column('ldt_utils_project', 'image') # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0009_auto__chg_field_content_image__chg_field_project_image.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0009_auto__chg_field_content_image__chg_field_project_image.py Fri May 24 21:55:08 2013 +0200
@@ -1,27 +1,25 @@
# encoding: utf-8
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Changing field 'Content.image'
- db.alter_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=200))
+ db.alter_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=200)) # @UndefinedVariable
# Changing field 'Project.image'
- db.alter_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=200))
+ db.alter_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=200)) # @UndefinedVariable
def backwards(self, orm):
# Changing field 'Content.image'
- db.alter_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=100))
+ db.alter_column('ldt_utils_content', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=100)) # @UndefinedVariable
# Changing field 'Project.image'
- db.alter_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=100))
+ db.alter_column('ldt_utils_project', 'image', self.gf('sorl.thumbnail.fields.ImageField')(max_length=100)) # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0015_auto__add_contentstat__del_field_content_last_annotated__del_field_con.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0015_auto__add_contentstat__del_field_content_last_annotated__del_field_con.py Fri May 24 21:55:08 2013 +0200
@@ -1,15 +1,14 @@
# encoding: utf-8
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
+import datetime
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding model 'ContentStat'
- db.create_table('ldt_utils_contentstat', (
+ db.create_table('ldt_utils_contentstat', ( # @UndefinedVariable
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('content', self.gf('django.db.models.fields.related.ForeignKey')(related_name='stat_annotation', unique=True, to=orm['ldt_utils.Content'])),
('annotation_volume_str', self.gf('django.db.models.fields.CommaSeparatedIntegerField')(max_length=1024, null=True, blank=True)),
@@ -17,31 +16,31 @@
('nb_annotations', self.gf('django.db.models.fields.IntegerField')(default=0, db_index=True)),
('last_annotated', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now, null=True, blank=True)),
))
- db.send_create_signal('ldt_utils', ['ContentStat'])
+ db.send_create_signal('ldt_utils', ['ContentStat']) # @UndefinedVariable
# Deleting field 'Content.last_annotated'
- db.delete_column('ldt_utils_content', 'last_annotated')
+ db.delete_column('ldt_utils_content', 'last_annotated') # @UndefinedVariable
# Deleting field 'Content.nb_annotation'
- db.delete_column('ldt_utils_content', 'nb_annotation')
+ db.delete_column('ldt_utils_content', 'nb_annotation') # @UndefinedVariable
# Deleting field 'Content.stat_annotation'
- db.delete_column('ldt_utils_content', 'stat_annotation')
+ db.delete_column('ldt_utils_content', 'stat_annotation') # @UndefinedVariable
def backwards(self, orm):
# Deleting model 'ContentStat'
- db.delete_table('ldt_utils_contentstat')
+ db.delete_table('ldt_utils_contentstat') # @UndefinedVariable
# Adding field 'Content.last_annotated'
- db.add_column('ldt_utils_content', 'last_annotated', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now, null=True, blank=True), keep_default=False)
+ db.add_column('ldt_utils_content', 'last_annotated', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime.now, null=True, blank=True), keep_default=False) # @UndefinedVariable
# Adding field 'Content.nb_annotation'
- db.add_column('ldt_utils_content', 'nb_annotation', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True), keep_default=False)
+ db.add_column('ldt_utils_content', 'nb_annotation', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True), keep_default=False) # @UndefinedVariable
# Adding field 'Content.stat_annotation'
- db.add_column('ldt_utils_content', 'stat_annotation', self.gf('django.db.models.fields.CommaSeparatedIntegerField')(max_length=1024, null=True, blank=True), keep_default=False)
+ db.add_column('ldt_utils_content', 'stat_annotation', self.gf('django.db.models.fields.CommaSeparatedIntegerField')(max_length=1024, null=True, blank=True), keep_default=False) # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0016_one_to_one_stat_annotation.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0016_one_to_one_stat_annotation.py Fri May 24 21:55:08 2013 +0200
@@ -1,19 +1,19 @@
# encoding: utf-8
-from south.db import db #@UnresolvedImport
-from south.v2 import SchemaMigration #@UnresolvedImport
+from south.db import db
+from south.v2 import SchemaMigration
class Migration(SchemaMigration):
def forwards(self, orm):
# Changing field 'ContentStat.content'
- db.alter_column('ldt_utils_contentstat', 'content_id', self.gf('django.db.models.fields.related.OneToOneField')(unique=True, to=orm['ldt_utils.Content']))
+ db.alter_column('ldt_utils_contentstat', 'content_id', self.gf('django.db.models.fields.related.OneToOneField')(unique=True, to=orm['ldt_utils.Content'])) # @UndefinedVariable
def backwards(self, orm):
# Changing field 'ContentStat.content'
- db.alter_column('ldt_utils_contentstat', 'content_id', self.gf('django.db.models.fields.related.ForeignKey')(unique=True, to=orm['ldt_utils.Content']))
+ db.alter_column('ldt_utils_contentstat', 'content_id', self.gf('django.db.models.fields.related.ForeignKey')(unique=True, to=orm['ldt_utils.Content'])) # @UndefinedVariable
models = {
--- a/src/ldt/ldt/ldt_utils/migrations/0018_auto__chg_field_content_iri_id__chg_field_project_ldt_id__chg_field_au.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0018_auto__chg_field_content_iri_id__chg_field_project_ldt_id__chg_field_au.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,6 @@
# -*- coding: utf-8 -*-
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
import hashlib
import uuid
@@ -15,15 +13,15 @@
# Changing field 'Content.iri_id'
- db.alter_column('ldt_utils_content', 'iri_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255))
+ db.alter_column('ldt_utils_content', 'iri_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)) # @UndefinedVariable
# Changing field 'Project.ldt_id'
- db.alter_column('ldt_utils_project', 'ldt_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255))
+ db.alter_column('ldt_utils_project', 'ldt_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)) # @UndefinedVariable
# Changing field 'Author.handle'
- db.alter_column('ldt_utils_author', 'handle', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True, null=True))
+ db.alter_column('ldt_utils_author', 'handle', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True, null=True)) # @UndefinedVariable
# Adding field 'Media.src_hash'
- db.add_column('ldt_utils_media', 'src_hash',
+ db.add_column('ldt_utils_media', 'src_hash', # @UndefinedVariable
self.gf('django.db.models.fields.CharField')(default=lambda : hashlib.sha512(str(uuid.uuid1())).hexdigest(), unique=False, max_length=128),
keep_default=False)
@@ -31,15 +29,15 @@
def backwards(self, orm):
# Changing field 'Content.iri_id'
- db.alter_column('ldt_utils_content', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True))
+ db.alter_column('ldt_utils_content', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True)) # @UndefinedVariable
# Changing field 'Project.ldt_id'
- db.alter_column('ldt_utils_project', 'ldt_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True))
+ db.alter_column('ldt_utils_project', 'ldt_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True)) # @UndefinedVariable
# Changing field 'Author.handle'
- db.alter_column('ldt_utils_author', 'handle', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255, null=True))
+ db.alter_column('ldt_utils_author', 'handle', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255, null=True)) # @UndefinedVariable
# Deleting field 'Media.src_hash'
- db.delete_column('ldt_utils_media', 'src_hash')
+ db.delete_column('ldt_utils_media', 'src_hash') # @UndefinedVariable
# Adding unique constraint on 'Media', fields ['src']
#db.create_unique('ldt_utils_media', ['src'])
--- a/src/ldt/ldt/ldt_utils/migrations/0020_auto__add_field_segment_id_hash__chg_field_segment_iri_id__chg_field_s.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0020_auto__add_field_segment_id_hash__chg_field_segment_iri_id__chg_field_s.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,6 @@
# -*- coding: utf-8 -*-
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
import hashlib
import uuid
@@ -14,73 +12,73 @@
#db.delete_unique('ldt_utils_segment', ['ensemble_id', 'element_id', 'project_id', 'iri_id', 'cutting_id'])
# Changing field 'Segment.iri_id'
- db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255))
+ db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255)) # @UndefinedVariable
# Changing field 'Segment.project_id'
- db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=255, null=True))
+ db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=255, null=True)) # @UndefinedVariable
# Adding field 'Segment.id_hash'
- db.add_column('ldt_utils_segment', 'id_hash',
+ db.add_column('ldt_utils_segment', 'id_hash', # @UndefinedVariable
self.gf('django.db.models.fields.CharField')(default=lambda : hashlib.sha512(str(uuid.uuid1())).hexdigest(), max_length=128),
keep_default=False)
# Changing field 'Segment.iri_id'
- db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255))
+ db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=255)) # @UndefinedVariable
# Adding index on 'Segment', fields ['iri_id']
- db.create_index('ldt_utils_segment', ['iri_id'])
+ db.create_index('ldt_utils_segment', ['iri_id']) # @UndefinedVariable
# Changing field 'Segment.project_id'
- db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=255, null=True))
+ db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=255, null=True)) # @UndefinedVariable
# Adding index on 'Segment', fields ['project_id']
- db.create_index('ldt_utils_segment', ['project_id'])
+ db.create_index('ldt_utils_segment', ['project_id']) # @UndefinedVariable
# Changing field 'Segment.cutting_id'
- db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
# Changing field 'Segment.ensemble_id'
- db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
# Changing field 'Segment.element_id'
- db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
def backwards(self, orm):
# Removing index on 'Segment', fields ['project_id']
- db.delete_index('ldt_utils_segment', ['project_id'])
+ db.delete_index('ldt_utils_segment', ['project_id']) # @UndefinedVariable
# Removing index on 'Segment', fields ['iri_id']
- db.delete_index('ldt_utils_segment', ['iri_id'])
+ db.delete_index('ldt_utils_segment', ['iri_id']) # @UndefinedVariable
# Deleting field 'Segment.id_hash'
- db.delete_column('ldt_utils_segment', 'id_hash')
+ db.delete_column('ldt_utils_segment', 'id_hash') # @UndefinedVariable
# Changing field 'Segment.iri_id'
- db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.project_id'
- db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=1024, null=True))
+ db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=1024, null=True)) # @UndefinedVariable
# Adding unique constraint on 'Segment', fields ['ensemble_id', 'element_id', 'project_id', 'iri_id', 'cutting_id']
#db.create_unique('ldt_utils_segment', ['ensemble_id', 'element_id', 'project_id', 'iri_id', 'cutting_id'])
# Changing field 'Segment.iri_id'
- db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'iri_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.project_id'
- db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=1024, null=True))
+ db.alter_column('ldt_utils_segment', 'project_id', self.gf('django.db.models.fields.CharField')(max_length=1024, null=True)) # @UndefinedVariable
# Changing field 'Segment.cutting_id'
- db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.ensemble_id'
- db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.element_id'
- db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
--- a/src/ldt/ldt/ldt_utils/migrations/0022_auto__add_unique_media_src_hash__chg_field_segment_cutting_id__chg_fie.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0022_auto__add_unique_media_src_hash__chg_field_segment_cutting_id__chg_fie.py Fri May 24 21:55:08 2013 +0200
@@ -1,45 +1,43 @@
# -*- coding: utf-8 -*-
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding unique constraint on 'Media', fields ['src_hash']
- db.create_unique('ldt_utils_media', ['src_hash'])
+ db.create_unique('ldt_utils_media', ['src_hash']) # @UndefinedVariable
# Changing field 'Segment.cutting_id'
- db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
# Changing field 'Segment.ensemble_id'
- db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
# Adding unique constraint on 'Segment', fields ['id_hash']
- db.create_unique('ldt_utils_segment', ['id_hash'])
+ db.create_unique('ldt_utils_segment', ['id_hash']) # @UndefinedVariable
# Changing field 'Segment.element_id'
- db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=512))
+ db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=512)) # @UndefinedVariable
def backwards(self, orm):
# Removing unique constraint on 'Segment', fields ['id_hash']
- db.delete_unique('ldt_utils_segment', ['id_hash'])
+ db.delete_unique('ldt_utils_segment', ['id_hash']) # @UndefinedVariable
# Removing unique constraint on 'Media', fields ['src_hash']
- db.delete_unique('ldt_utils_media', ['src_hash'])
+ db.delete_unique('ldt_utils_media', ['src_hash']) # @UndefinedVariable
# Changing field 'Segment.cutting_id'
- db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'cutting_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.ensemble_id'
- db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'ensemble_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
# Changing field 'Segment.element_id'
- db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=1024))
+ db.alter_column('ldt_utils_segment', 'element_id', self.gf('django.db.models.fields.CharField')(max_length=1024)) # @UndefinedVariable
models = {
'auth.group': {
--- a/src/ldt/ldt/ldt_utils/migrations/0023_auto__add_field_segment_audio_src__add_field_segment_audio_href.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0023_auto__add_field_segment_audio_src__add_field_segment_audio_href.py Fri May 24 21:55:08 2013 +0200
@@ -1,21 +1,19 @@
# -*- coding: utf-8 -*-
-import datetime
+from django.core.management import call_command
from south.db import db
from south.v2 import SchemaMigration
-from django.core.management import call_command
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding field 'Segment.audio_src'
- db.add_column('ldt_utils_segment', 'audio_src',
+ db.add_column('ldt_utils_segment', 'audio_src', # @UndefinedVariable
self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True),
keep_default=False)
# Adding field 'Segment.audio_href'
- db.add_column('ldt_utils_segment', 'audio_href',
+ db.add_column('ldt_utils_segment', 'audio_href', # @UndefinedVariable
self.gf('django.db.models.fields.CharField')(max_length=512, null=True, blank=True),
keep_default=False)
@@ -25,10 +23,10 @@
def backwards(self, orm):
# Deleting field 'Segment.audio_src'
- db.delete_column('ldt_utils_segment', 'audio_src')
+ db.delete_column('ldt_utils_segment', 'audio_src') # @UndefinedVariable
# Deleting field 'Segment.audio_href'
- db.delete_column('ldt_utils_segment', 'audio_href')
+ db.delete_column('ldt_utils_segment', 'audio_href') # @UndefinedVariable
--- a/src/ldt/ldt/ldt_utils/migrations/0025_chg_site_domain.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/migrations/0025_chg_site_domain.py Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,6 @@
# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
+from django.conf import settings
from south.v2 import DataMigration
-from django.conf import settings
-from django.db import models
class Migration(DataMigration):
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/ldt_utils/migrations/0027_auto__chg_field_project_owner__chg_field_media_creator.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,160 @@
+# -*- coding: utf-8 -*-
+from south.db import db
+from south.v2 import SchemaMigration
+
+
+class Migration(SchemaMigration):
+
+ depends_on = (
+ ("user", "0009_rename_auth_user_to_user_ldt_user"),
+ )
+
+ def forwards(self, orm):
+
+ # Changing field 'Project.owner'
+ db.alter_column(u'ldt_utils_project', 'owner_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['user.LdtUser'], null=True)) # @UndefinedVariable
+
+ # Changing field 'Media.creator'
+ db.alter_column(u'ldt_utils_media', 'creator_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['user.LdtUser'], null=True)) # @UndefinedVariable
+
+ def backwards(self, orm):
+
+ # Changing field 'Project.owner'
+ db.alter_column(u'ldt_utils_project', 'owner_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True)) # @UndefinedVariable
+
+ # Changing field 'Media.creator'
+ db.alter_column(u'ldt_utils_media', 'creator_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True)) # @UndefinedVariable
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'ldt_utils.author': {
+ 'Meta': {'object_name': 'Author'},
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}),
+ 'firstname': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}),
+ 'handle': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True', 'null': 'True', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'lastname': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'})
+ },
+ u'ldt_utils.content': {
+ 'Meta': {'ordering': "['title']", 'object_name': 'Content'},
+ 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['ldt_utils.Author']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'content_creation_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
+ 'creation_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duration': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'front_project': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['ldt_utils.Project']", 'null': 'True', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/contents/content_default_icon.png'", 'max_length': '200'}),
+ 'iri_id': ('django.db.models.fields.CharField', [], {'default': "u'ed941038-be29-11e2-8b76-58b035f6b93d'", 'unique': 'True', 'max_length': '255'}),
+ 'iriurl': ('django.db.models.fields.CharField', [], {'max_length': '1024'}),
+ 'media_obj': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['ldt_utils.Media']", 'null': 'True', 'blank': 'True'}),
+ 'tags': ('tagging.fields.TagField', [], {'max_length': '2048', 'null': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'update_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'})
+ },
+ u'ldt_utils.contentstat': {
+ 'Meta': {'object_name': 'ContentStat'},
+ 'annotation_volume_str': ('django.db.models.fields.CommaSeparatedIntegerField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'content': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'stat_annotation'", 'unique': 'True', 'to': u"orm['ldt_utils.Content']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'last_annotated': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'null': 'True', 'blank': 'True'}),
+ 'nb_annotations': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_index': 'True'}),
+ 'polemics_volume_str': ('django.db.models.fields.CommaSeparatedIntegerField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'})
+ },
+ u'ldt_utils.media': {
+ 'Meta': {'object_name': 'Media'},
+ 'creation_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'creator': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['user.LdtUser']", 'null': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'duration': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'external_id': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'external_permalink': ('django.db.models.fields.URLField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'external_publication_url': ('django.db.models.fields.URLField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'external_src_url': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'media_creation_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
+ 'mimetype_field': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}),
+ 'src': ('django.db.models.fields.CharField', [], {'max_length': '1024'}),
+ 'src_hash': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128', 'blank': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'update_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'videopath': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'})
+ },
+ u'ldt_utils.project': {
+ 'Meta': {'ordering': "['title']", 'object_name': 'Project'},
+ 'changed_by': ('django.db.models.fields.CharField', [], {'max_length': '70'}),
+ 'contents': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['ldt_utils.Content']", 'symmetrical': 'False'}),
+ 'created_by': ('django.db.models.fields.CharField', [], {'max_length': '70'}),
+ 'creation_date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/projects/project_default_icon.png'", 'max_length': '200'}),
+ 'ldt': ('django.db.models.fields.TextField', [], {'null': 'True'}),
+ 'ldt_id': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
+ 'modification_date': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'owner': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['user.LdtUser']", 'null': 'True', 'blank': 'True'}),
+ 'state': ('django.db.models.fields.IntegerField', [], {'default': '1'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '1024'})
+ },
+ u'ldt_utils.segment': {
+ 'Meta': {'object_name': 'Segment'},
+ 'abstract': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'audio_href': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}),
+ 'audio_src': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'author': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
+ 'content': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['ldt_utils.Content']"}),
+ 'cutting_id': ('django.db.models.fields.CharField', [], {'max_length': '512', 'db_index': 'True'}),
+ 'date': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True', 'blank': 'True'}),
+ 'duration': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'element_id': ('django.db.models.fields.CharField', [], {'max_length': '512', 'db_index': 'True'}),
+ 'ensemble_id': ('django.db.models.fields.CharField', [], {'max_length': '512', 'db_index': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'id_hash': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128', 'blank': 'True'}),
+ 'iri_id': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}),
+ 'polemics': ('django.db.models.fields.IntegerField', [], {'default': '0', 'null': 'True', 'blank': 'True'}),
+ 'project_id': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'project_obj': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['ldt_utils.Project']", 'null': 'True'}),
+ 'start_ts': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'tags': ('tagging.fields.TagField', [], {'max_length': '2048', 'null': 'True'}),
+ 'title': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ }
+ }
+
+ complete_apps = ['ldt_utils']
\ No newline at end of file
--- a/src/ldt/ldt/ldt_utils/models.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/models.py Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,8 @@
+from .events import post_project_save
from django.conf import settings
-from django.contrib.auth.models import User, Group
+from django.contrib.auth import get_user_model
+from django.contrib.auth.models import Group
+from django.core.files.storage import default_storage
from django.db import models
from django.utils.translation import ugettext_lazy as _
from guardian.shortcuts import assign, remove_perm, get_perms
@@ -8,13 +11,13 @@
get_current_user)
from ldt.security.manager import SafeManager
from ldt.security.models import SafeModel
-from ldt.utils import url as url_utils
+from ldt.utils import generate_hash, url as url_utils
+from ldt.utils.web_url_management import get_web_url
+from shutil import move
from sorl.thumbnail import ImageField
from tagging.models import Tag
from utils import (create_ldt, copy_ldt, create_empty_iri, update_iri,
generate_uuid)
-from ldt.utils import generate_hash
-from ldt.utils.web_url_management import get_web_url
import datetime
import lxml.etree #@UnresolvedImport
import mimetypes
@@ -22,10 +25,8 @@
import re
import tagging.fields
import uuid
-from shutil import move
-from django.core.files.storage import default_storage
-from .events import post_project_save
+User = get_user_model()
class Author(SafeModel):
@@ -63,7 +64,7 @@
update_date = models.DateTimeField(auto_now=True, verbose_name=_('media.update_date'))
videopath = models.CharField(max_length=1024, null=True, blank=True, verbose_name=_('media.videopath'))
duration = models.IntegerField(null=True, blank=True, verbose_name=_('media.duration'))
- creator = models.ForeignKey(User, blank=True, null=True, verbose_name=_('media.creator'))
+ creator = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, verbose_name=_('media.creator'))
description = models.TextField(null=True, blank=True, verbose_name=_('description'))
title = models.CharField(max_length=1024, null=True, blank=True, verbose_name=_('title'))
src = models.CharField(max_length=1024, verbose_name=_('media.src'))
--- a/src/ldt/ldt/ldt_utils/projectserializer.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/projectserializer.py Fri May 24 21:55:08 2013 +0200
@@ -1,14 +1,17 @@
from datetime import datetime
from django.conf import settings
+from django.contrib.auth import get_user_model
from django.contrib.contenttypes.models import ContentType
from django.utils.datastructures import SortedDict
-from ldt.ldt_utils.models import Content, User, Project
+from ldt.ldt_utils.models import Content, Project
from ldt.ldt_utils.stat import get_string_from_buckets
from ldt.ldt_utils.utils import reduce_text_node
import logging
import lxml.etree
import uuid
+User = get_user_model()
+
DATE_FORMATS = ["%d/%m/%Y", "%Y-%m-%d"]
logger = logging.getLogger(__name__)
--- a/src/ldt/ldt/ldt_utils/segmentserializer.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/segmentserializer.py Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,4 @@
from django.conf import settings
-from ldt.ldt_utils.models import Project
from ldt.ldt_utils.stat import get_string_from_buckets
from ldt.security.utils import use_forbidden_url
from tagging.utils import parse_tag_input
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/app_action.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/app_action.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% extends "admin/base_site.html" %}
{% load i18n %}
{% block breadcrumbs %}
-<div class="breadcrumbs"><a href="{% url admin:index %}"> {% trans "Home" %}</a> › <a href="{% url admin:app_list 'ldt_utils' %}">ldt_utils</a> › {{ current_action }}</div>
+<div class="breadcrumbs"><a href="{% url 'admin:index' %}"> {% trans "Home" %}</a> › <a href="{% url 'admin:app_list' 'ldt_utils' %}">ldt_utils</a> › {{ current_action }}</div>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/app_index.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/app_index.html Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,8 @@
{% extends "admin/app_index.html" %}
-{% load absurl %}
-{% load absstatic %}
+{% load static %}
{% block extrastyle %}
{{ block.super }}
- <link rel="stylesheet" type="text/css" href='{% absstatic "ldt/css/dashboard.css" %}' />
+ <link rel="stylesheet" type="text/css" href='{% static "ldt/css/dashboard.css" %}' />
{% endblock %}
{% load i18n %}
{% block content %}
@@ -13,18 +12,18 @@
<table summary="Import">
<caption>Import</caption>
<tr>
- <th><a href="{% absurl admin:ldt_content_import_file %}">Import
+ <th><a href="{% url 'admin:ldt_content_import_file' %}">Import
an ldt</a>
</th>
<td> </td>
</tr>
<tr>
- <th><a href="{% absurl admin:ldt_content_reindex %}">Reindex</a>
+ <th><a href="{% url 'admin:ldt_content_reindex' %}">Reindex</a>
</th>
<td> </td>
</tr>
<tr>
- <th><a href="{% absurl admin:ldt_project_compute_stats %}">Compute stats</a>
+ <th><a href="{% url 'admin:ldt_project_compute_stats' %}">Compute stats</a>
</th>
<td> </td>
</tr>
@@ -34,7 +33,7 @@
<table summary="Data">
<caption>Data</caption>
<tr>
- <th><a href="{% absurl admin:ldt_admin_dump_data %}">Dump data</a>
+ <th><a href="{% url 'admin:ldt_admin_dump_data' %}">Dump data</a>
</th>
<td> </td>
</tr>
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/dumpdata.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/dumpdata.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,5 @@
{% extends "admin/ldt_utils/app_action.html" %}
{% load i18n %}
-{% load absurl %}
{# DUMP DATA #}
{% block content %}
{% if message %}
@@ -9,8 +8,8 @@
</div>
{% endif %}
<div>
-<p>Click <a href="{% absurl admin:ldt_admin_dump_data %}?dump=1">HERE</a> if you want to download the dumpdata's json. It can be long to load. The dumpdata is full and raw, without natural keys.</p>
+<p>Click <a href="{% url 'admin:ldt_admin_dump_data' %}?dump=1">HERE</a> if you want to download the dumpdata's json. It can be long to load. The dumpdata is full and raw, without natural keys.</p>
</div>
-<a href="{% absurl admin:app_list 'ldt_utils' %}">Back to administration page</a>
+<a href="{% url 'admin:app_list' app_label='ldt_utils' %}">Back to administration page</a>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/reindex_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/reindex_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,5 @@
{% extends "admin/ldt_utils/app_action.html" %}
{% load i18n %}
-{% load absurl %}
{# reindex contents #}
{% block content %}
{% if message %}
@@ -12,13 +11,13 @@
{% endif %}
<div>
<form method="post"
- action="{% absurl admin:ldt_content_reindex %}">{% csrf_token %}
+ action="{% url 'admin:ldt_content_reindex' %}">{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type="submit" /></form>
</div>
-<a href="{% absurl admin:app_list 'ldt_utils' %}">Back to administration page</a>
+<a href="{% url 'admin:app_list' app_label='ldt_utils' %}">Back to administration page</a>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/stats_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/stats_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,5 @@
{% extends "admin/ldt_utils/app_action.html" %}
{% load i18n %}
-{% load absurl %}
{# reindex contents #}
{% block content %}
{% if message %}
@@ -12,13 +11,13 @@
{% endif %}
<div>
<form method="post"
- action="{% absurl admin:ldt_project_compute_stats %}">{% csrf_token %}
+ action="{% url 'admin:ldt_project_compute_stats' %}">{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type="submit" /></form>
</div>
-<a href="{% absurl admin:app_list 'ldt_utils' %}">Back to administration page</a>
+<a href="{% url 'admin:app_list' app_label='ldt_utils' %}">Back to administration page</a>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/upload_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/admin/ldt_utils/content/upload_form.html Fri May 24 21:55:08 2013 +0200
@@ -22,6 +22,6 @@
<input type="submit" /></form>
{% endif %}
-<a href="{% url admin:app_list 'ldt_utils' %}">Back to administration page</a>
+<a href="{% url 'admin:app_list' 'ldt_utils' %}">Back to administration page</a>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/front/front_all_contents.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_all_contents.html Fri May 24 21:55:08 2013 +0200
@@ -2,7 +2,7 @@
{% load i18n %}
{% load thumbnail %}
{% load front_tags %}
-{% load absstatic %}
+{% load static %}
{% block title %}
{% if tag_label %}
@@ -14,13 +14,13 @@
{% block js_import %}
{{block.super}}
-<script src='{% absstatic "ldt/js/raphael.js" %}' type="text/javascript"></script>
-<script src='{% absstatic "ldt/js/Ldt_front_sparkline.js" %}' type="text/javascript"></script>
+<script src='{% static "ldt/js/raphael.js" %}' type="text/javascript"></script>
+<script src='{% static "ldt/js/Ldt_front_sparkline.js" %}' type="text/javascript"></script>
{% endblock %}
{% block css_import %}
{{block.super}}
-<link rel="stylesheet" href='{% absstatic "ldt/css/front_home.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/front_home.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
@@ -42,17 +42,17 @@
{% block body %}
{{block.super}}
<!-- Last annotated contents -->
-{% if front_tags|length > 0 %}<p class="tag_link">{% trans 'Filter the medias by category' %} : {% for t in front_tags %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}?tag={{t}}">{{t}}</a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>{% endif %}
+{% if front_tags|length > 0 %}<p class="tag_link">{% trans 'Filter the medias by category' %} : {% for t in front_tags %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?tag={{t}}">{{t}}</a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>{% endif %}
<ul class="floatlist full_width" id="derniers_medias">
<li class="li_h2">
<ul class="title_ul">
<li><h2>
- {% if tag_label %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}">{% trans 'All medias' %}</a>{% if tag_label %}<span class="pink"> > {{tag_label}}</span>{% endif %}
- {% elif media_title %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}">{% trans 'All medias' %}</a>{% if media_title %}<span class="pink"> > "{{media_title}}"</span>{% endif %}
+ {% if tag_label %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}">{% trans 'All medias' %}</a>{% if tag_label %}<span class="pink"> > {{tag_label}}</span>{% endif %}
+ {% elif media_title %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}">{% trans 'All medias' %}</a>{% if media_title %}<span class="pink"> > "{{media_title}}"</span>{% endif %}
{% else %}{% trans 'All medias' %}{% endif %}</h2>
</li>
<li class="li_right">
- <span class="tag_link"><a href="#" id="tag_cloud_link" title="{% trans 'Filter the medias' %}"><img id="hide_tag_cloud" src='{% absstatic "ldt/img/little_minus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /><img id="show_tag_cloud" src='{% absstatic "ldt/img/little_plus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /> {% trans 'Filter the medias' %}</a></span>
+ <span class="tag_link"><a href="#" id="tag_cloud_link" title="{% trans 'Filter the medias' %}"><img id="hide_tag_cloud" src='{% static "ldt/img/little_minus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /><img id="show_tag_cloud" src='{% static "ldt/img/little_plus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /> {% trans 'Filter the medias' %}</a></span>
</li>
</ul>
</li>
@@ -61,7 +61,7 @@
{% trans 'Search in the medias title' %} :
<input id="input_media_title" type="text" name="title"> <input id="search_media_title" type="submit" value=""/>
</form>
- {% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}?tag={{t.name}}">
+ {% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?tag={{t.name}}">
<span style="font-size:{{t.font_size|add:"12"}}px;">{{t.name}}</span></a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>
{% endif %}
</li>
@@ -69,7 +69,7 @@
<li id="result_pagination" class="li_h2">
<p>
{% if results.has_previous %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.all_contents %}?page={{ results.previous_page_number }}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}" title="{% trans 'previous' %}">{% trans "previous" %}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?page={{ results.previous_page_number }}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}" title="{% trans 'previous' %}">{% trans "previous" %}</a>
{% endif %}
{% if results.paginator.num_pages > 1 %}
<span class="current">
@@ -78,7 +78,7 @@
{% if i|add:'1' == results.number %}
<span class="pink">{{i|add:'1'}}</span>
{% else %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.all_contents %}?page={{i|add:'1'}}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}">{{i|add:'1'}}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?page={{i|add:'1'}}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}">{{i|add:'1'}}</a>
{% endif %}
{% if i|add:'1' < results.paginator.num_pages and 1 < results.paginator.num_pages %}
{% endif %}
@@ -87,10 +87,10 @@
</span>
{% endif %}
{% if results.has_next %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.all_contents %}?page={{ results.next_page_number }}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}" title="{% trans 'next' %}">{% trans "next" %}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?page={{ results.next_page_number }}{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}" title="{% trans 'next' %}">{% trans "next" %}</a>
{% endif %}
{% if results.paginator.num_pages > 1 %}
- . <a class="blue under" href="{% url ldt.ldt_utils.views.front.all_contents %}?page=x{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}"">({% trans 'All' %})</a>
+ . <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?page=x{% if tag_label %}&tag={{tag_label}}{% endif %}{% if media_title %}&title={{media_title}}{% endif %}"">({% trans 'All' %})</a>
{% endif %}
</p>
</li>
@@ -98,7 +98,7 @@
{% for content in results.object_list %}
<li class="li_media">
<div class="img_and_overlay">
- <a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}">
+ <a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}">
{% thumbnail content.image "294x165" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'open this media' %}" title="{% trans 'open this media' %}">{% endthumbnail %}
</a>
<div class="overlay">
@@ -112,12 +112,12 @@
</div>
</div>
<div class="bulle_annot" title="{% blocktrans count nb=content.nb_annotations %}{{nb}} annotation on this media{% plural %}{{nb}} annotations on this media{% endblocktrans %}">{{ content.nb_annotations }}</div>
- <p><a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}" title="{% trans 'open this media' %}" ><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}" title="{% trans 'open this media' %}" ><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
<p>{% trans 'by' %} IRI | {{content.duration|str_duration:"h"}}</p>
</li>
{% endfor %}
</ul>
-{% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}?tag={{t.name}}">
+{% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?tag={{t.name}}">
<span style="font-size:{{t.font_size|add:"12"}}px;">{{t.name}}</span>
</a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>
{% endif %}
--- a/src/ldt/ldt/ldt_utils/templates/front/front_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_base.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% load i18n %}
{% load logintag %}
{% load navigation %}
-{% load absstatic %}
+{% load static %}
{% load analytics %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
@@ -10,15 +10,15 @@
{% block head %}
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<meta http-equiv="content-language" content="{{LANGUAGE_CODE}}" />
- <link rel="SHORTCUT ICON" href='{% absstatic "ldt/img/favicon.ico" %}' />
+ <link rel="SHORTCUT ICON" href='{% static "ldt/img/favicon.ico" %}' />
<title>{% block title %}Lignes de temps{% endblock %}</title>
{% block js_import %}
- <script src='{% absstatic "ldt/js/jquery.min.js" %}' type="text/javascript"></script>
- <script src='{% absstatic "ldt/js/jquery.textchange.min.js" %}' type="text/javascript"></script>
+ <script src='{% static "ldt/js/jquery.min.js" %}' type="text/javascript"></script>
+ <script src='{% static "ldt/js/jquery.textchange.min.js" %}' type="text/javascript"></script>
{% endblock %}
{% block css_declaration %}{% endblock %}
{% block css_import %}
- <link rel="stylesheet" href='{% absstatic "ldt/css/front_common.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/front_common.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
<script type="text/javascript">
@@ -42,10 +42,10 @@
<div id="general_container">
<ul class="floatlist" id="title_bar">
<li id="li_h1">
- <h1><a href="{% url ldt.ldt_utils.views.front.front_home %}" title="{% trans 'homepage' %}">{% trans '<b>Lignes</b> de temps' %}</a></h1>
+ <h1><a href="{% url 'ldt.ldt_utils.views.front.front_home' %}" title="{% trans 'homepage' %}">{% trans '<b>Lignes</b> de temps' %}</a></h1>
</li>
<li id="li_search">
- <form id="form_search" action="{% url ldt.ldt_utils.views.front.search_index %}" method="GET">
+ <form id="form_search" action="{% url 'ldt.ldt_utils.views.front.search_index' %}" method="GET">
<!--input id="search_text" name="q" value="" /-->
<input id="id_search" type="text" name="search">
<input type="hidden" value="all" name="field">
@@ -56,20 +56,20 @@
{% if user.is_authenticated %}
<li id="li_annotation">
<div class="fl">
- <!-- a href="#"><img src='{% absstatic "ldt/img/annot_icon.png" %}' id="annot_icon" /></a -->
- <a href="{% url root-view %}" title="{% trans "My projects" %}">{% trans "My projects" %}</a>
+ <!-- a href="#"><img src='{% static "ldt/img/annot_icon.png" %}' id="annot_icon" /></a -->
+ <a href="{% url 'root-view' %}" title="{% trans "My projects" %}">{% trans "My projects" %}</a>
</div>
<div class="fl">
- <!-- a href="{% url root-view %}">{% trans 'Annotate' %}</a -->
+ <!-- a href="{% url 'root-view' %}">{% trans 'Annotate' %}</a -->
</div>
</li>
{% endif %}
<li id="li_connexion">
{% if user.is_authenticated %}
- <a href="{% url ldt.user.views.logout_view %}" title="{% trans "Log out" %}">{% trans "Log out" %}</a>
+ <a href="{% url 'ldt.user.views.logout_view' %}" title="{% trans "Log out" %}">{% trans "Log out" %}</a>
{% else %}
- <a href="{% url auth_login %}" title="{% trans "Log in" %}">{% trans "Log in" %}</a>
+ <a href="{% url 'auth_login' %}" title="{% trans "Log in" %}">{% trans "Log in" %}</a>
{% endif %}
</li>
</ul>
--- a/src/ldt/ldt/ldt_utils/templates/front/front_group.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_group.html Fri May 24 21:55:08 2013 +0200
@@ -2,13 +2,13 @@
{% load i18n %}
{% load thumbnail %}
{% load front_tags %}
-{% load absstatic %}
+{% load static %}
{% block title %}Lignes de temps : groupe "{{group.name}}"{% endblock %}
{% block css_import %}
{{block.super}}
-<link rel="stylesheet" href='{% absstatic "ldt/css/front_group.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/front_group.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
@@ -91,9 +91,9 @@
</li>
{% for content in content_list %}
<li class="li_media">
- <a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}">{% thumbnail content.image "134x75" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'open this media' %}" title="{% trans 'open this media' %}">{% endthumbnail %}</a>
+ <a href="{% url 'ldt.ldt_utils.views.front.annot_content' content.iri_id %}">{% thumbnail content.image "134x75" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'open this media' %}" title="{% trans 'open this media' %}">{% endthumbnail %}</a>
<div class="bulle_annot" title="{% blocktrans count nb=content.nb_annotations %}{{nb}} annotation on this media{% plural %}{{nb}} annotations on this media{% endblocktrans %}">{{content.nb_annotations}}</div>
- <p><a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}" title="{% trans 'open this media' %}"><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.front.annot_content' content.iri_id %}" title="{% trans 'open this media' %}"><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
<p class="font_11">{% trans 'by' %} IRI | {{content.duration|str_duration:"h"}}</p>
</li>
{% endfor %}
@@ -118,7 +118,7 @@
<ul class="floatlist" id="membres_groupes">
{% for user in users %}
<li class="li_membre_groupe">
- {% thumbnail user.get_profile.image "36x36" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" title="{{user.username}}" alt="{{user.username}}">{% endthumbnail %}
+ {% thumbnail user.image "36x36" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" title="{{user.username}}" alt="{{user.username}}">{% endthumbnail %}
<p><b>{{user.username}}</b></p>
<p class="font_11">{% trans 'active since' %} {{user.date_joined|date:"Y/m/d"}}</p>
</li>
--- a/src/ldt/ldt/ldt_utils/templates/front/front_home.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_home.html Fri May 24 21:55:08 2013 +0200
@@ -2,19 +2,19 @@
{% load i18n %}
{% load thumbnail %}
{% load front_tags %}
-{% load absstatic %}
+{% load static %}
{% block title %}{% trans "front.home" %}{% endblock %}
{% block js_import %}
{{block.super}}
-<script src='{% absstatic "ldt/js/raphael.js" %}' type="text/javascript"/></script>
-<script src='{% absstatic "ldt/js/Ldt_front_sparkline.js" %}' type="text/javascript"/></script>
+<script src='{% static "ldt/js/raphael.js" %}' type="text/javascript"/></script>
+<script src='{% static "ldt/js/Ldt_front_sparkline.js" %}' type="text/javascript"/></script>
{% endblock %}
{% block css_import %}
{{block.super}}
-<link rel="stylesheet" href='{% absstatic "ldt/css/front_home.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/front_home.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
@@ -36,29 +36,29 @@
{% block body %}
{{block.super}}
<!-- Last annotated contents -->
-{% if front_tags|length > 0 %}<p class="tag_link">{% trans 'Filter the medias by category' %} : {% for t in front_tags %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}?tag={{t}}">{{t}}</a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>{% endif %}
+{% if front_tags|length > 0 %}<p class="tag_link">{% trans 'Filter the medias by category' %} : {% for t in front_tags %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?tag={{t}}">{{t}}</a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>{% endif %}
<ul class="floatlist full_width" id="derniers_medias">
<li class="li_h2">
<ul class="title_ul">
<li><h2>{% trans 'Last annotated medias' %}</h2></li>
<li class="li_right">
- <a class="blue" href="{% url ldt.ldt_utils.views.front.all_contents %}" title="{% trans 'view all medias' %}">{% trans 'All medias' %}</a> <span class="tag_link"><a href="#" id="tag_cloud_link" title="{% trans 'Filter the medias' %}"><img id="hide_tag_cloud" src='{% absstatic "ldt/img/little_minus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /><img id="show_tag_cloud" src='{% absstatic "ldt/img/little_plus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /> {% trans 'Filter the medias' %}</a></span>
+ <a class="blue" href="{% url 'ldt.ldt_utils.views.front.all_contents' %}" title="{% trans 'view all medias' %}">{% trans 'All medias' %}</a> <span class="tag_link"><a href="#" id="tag_cloud_link" title="{% trans 'Filter the medias' %}"><img id="hide_tag_cloud" src='{% static "ldt/img/little_minus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /><img id="show_tag_cloud" src='{% static "ldt/img/little_plus_pink.png" %}' alt="{% trans 'Filter the medias' %}" /> {% trans 'Filter the medias' %}</a></span>
</li>
</ul>
</li>
<li class="li_h2" id="home_tag_cloud">
- <form id="media_search" method="GET" action="{% url ldt.ldt_utils.views.front.all_contents %}">
+ <form id="media_search" method="GET" action="{% url 'ldt.ldt_utils.views.front.all_contents' %}">
{% trans 'Search in the medias title' %} :
<input id="input_media_title" type="text" name="title"/><input id="search_media_title" type="submit" value=""/>
</form>
- {% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url ldt.ldt_utils.views.front.all_contents %}?tag={{t.name}}">
+ {% if tag_cloud|length > 0 %}<p class="left tag_link">{% trans 'All categories of medias' %} : {% for t in tag_cloud %}<a href="{% url 'ldt.ldt_utils.views.front.all_contents' %}?tag={{t.name}}">
<span style="font-size:{{t.font_size|add:"12"}}px;">{{t.name}}</span></a>{% if not forloop.last %}, {% endif %}{% endfor %}</p>
{% endif %}
</li>
{% for content in last_contents %}
<li class="li_media">
<div class="img_and_overlay">
- <a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}">
+ <a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}">
{% thumbnail content.image "294x165" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'open this media' %}" title="{% trans 'open this media' %}">{% endthumbnail %}
</a>
<div class="overlay">
@@ -70,7 +70,7 @@
</div>
</div>
<div class="bulle_annot" title="{% blocktrans count nb=content.nb_annotations %}{{nb}} annotation on this media{% plural %}{{nb}} annotations on this media{% endblocktrans %}">{{ content.nb_annotations }}</div>
- <p><a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}" title="{% trans 'open this media' %}"><b>{{content.title}}</b></a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}" title="{% trans 'open this media' %}"><b>{{content.title}}</b></a></p>
<p>{% trans 'by' %} IRI | {{content.duration|str_duration:"h"}}</p>
</li>
@@ -86,7 +86,7 @@
{% for content in most_contents %}
<li class="li_media">
<div class="img_and_overlay">
- <a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}">
+ <a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}">
{% thumbnail content.image "134x75" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'open this media' %}" title="{% trans 'open this media' %}">{% endthumbnail %}</a>
<div class="overlay">
<ul class="polemics">
@@ -96,7 +96,7 @@
</div>
</div>
<div class="bulle_annot" title="{% blocktrans count nb=content.nb_annotations %}{{nb}} annotation on this media{% plural %}{{nb}} annotations on this media{% endblocktrans %}">{{ content.nb_annotations }}</div>
- <p><a href="{% url ldt.ldt_utils.views.front.annot_content content.iri_id %}" title="{% trans 'open this media' %}"><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=content.iri_id %}" title="{% trans 'open this media' %}"><b>{% if content.title|length > 69 %}{{content.title|slice:":69"}}...{% else %}{{content.title}}{% endif %}</b></a></p>
<p class="font_11">{% trans 'by' %} IRI | {{content.duration|str_duration:"h"}}</p>
</li>
{% endfor %}
@@ -104,16 +104,16 @@
<!-- Active groups -->
<ul class="floatlist" id="groupes_actifs">
<li class="li_h2">
- <h2><a href="{% url ldt.ldt_utils.views.front.group_list %}">{% trans 'Active groups' %}</a></h2>
+ <h2><a href="{% url 'ldt.ldt_utils.views.front.group_list' %}">{% trans 'Active groups' %}</a></h2>
</li>
{% for group in active_groups %}
<li class="li_media">
<div class="img_groupes_actifs">
- <a href="{% url ldt.ldt_utils.views.front.group_info group.id %}">{% thumbnail group.get_profile.image "54x40" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'group picture' %}" title="{% trans 'view more infos on this group'%}">{% endthumbnail %}</a>
+ <a href="{% url 'ldt.ldt_utils.views.front.group_info' group_id=group.id %}">{% thumbnail group.get_profile.image "54x40" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" alt="{% trans 'group picture' %}" title="{% trans 'view more infos on this group'%}">{% endthumbnail %}</a>
</div>
<div class="txt_groupes_actifs">
<div class="bulle_people" title="{% blocktrans count nb=group.nb_users %}{{nb}} user in this group{% plural %}{{nb}} users in this group{% endblocktrans %}">{{ group.nb_users }}</div>
- <p><a href="{% url ldt.ldt_utils.views.front.group_info group.id %}" class="under" title="{% trans 'view more infos on this group'%}"><b>{{group.name}}</b></a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.front.group_info' group_id=group.id %}" class="under" title="{% trans 'view more infos on this group'%}"><b>{{group.name}}</b></a></p>
<p>{% if group.get_profile.description|striptags|length > 69 %}{{group.get_profile.description|striptags|slice:":69"}}...{% else %}{{group.get_profile.description|striptags}}{% endif %}</p>
</div>
</li>
--- a/src/ldt/ldt/ldt_utils/templates/front/front_player.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_player.html Fri May 24 21:55:08 2013 +0200
@@ -1,15 +1,15 @@
{% extends "front/front_base.html" %}
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
{% block title %}Lignes de temps : {% trans 'Annotate' %} "{{content.title}}"{% endblock %}
{% block css_import %}
{{block.super}}
-<link rel="stylesheet" href='{% absstatic "ldt/css/front_player.css" %}' type="text/css"/>
-<link rel="stylesheet" href='{% absstatic "ldt/css/embed_popup.css" %}' type="text/css"/>
-<link rel="stylesheet" href='{% absstatic "ldt/css/jq-css/jquery.qtip.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/front_player.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/embed_popup.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/jq-css/jquery.qtip.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
--- a/src/ldt/ldt/ldt_utils/templates/front/front_search_results.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/front/front_search_results.html Fri May 24 21:55:08 2013 +0200
@@ -1,19 +1,19 @@
{% extends "front/front_base.html" %}
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
{% load front_tags %}
{% block title %}Lignes de temps : {% trans 'search' %} "{{search}}" {% endblock %}
{% block js_import %}
{{block.super}}
-<script src='{% absstatic "ldt/js/raphael.js" %}' type="text/javascript"/></script>
+<script src='{% static "ldt/js/raphael.js" %}' type="text/javascript"/></script>
{% endblock %}
{% block css_import %}
{{block.super}}
-<link rel="stylesheet" href='{% absstatic "ldt/css/front_search.css" %}' type="text/css"/>
+<link rel="stylesheet" href='{% static "ldt/css/front_search.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
@@ -41,7 +41,7 @@
var global_csrf_token = "{{ csrf_token }}";
</script>
-<script src='{% absstatic "ldt/js/Ldt_front_search_results.js" %}' type="text/javascript"></script>
+<script src='{% static "ldt/js/Ldt_front_search_results.js" %}' type="text/javascript"></script>
{% endblock %}
{% block body %}
@@ -53,7 +53,7 @@
{% ifequal nb_results 0 %}
{% if tag_label %}
{% blocktrans %} No results for <b>{{ search }}</b> with the medias tagged <span class="pink">{{tag_label}}</span>{% endblocktrans %}
- <br/><a href="{% url ldt.ldt_utils.views.front.search_index %}?search={{search}}&field={{field}}">{% trans "See for all medias" %}</a>
+ <br/><a href="{% url 'ldt.ldt_utils.views.front.search_index' %}?search={{search}}&field={{field}}">{% trans "See for all medias" %}</a>
{% else %}
{% blocktrans %} No results for <b>{{ search }}</b>.{% endblocktrans %}
{% endif %}
@@ -70,7 +70,7 @@
<li id="title_resultats">
<h2>
{% if tag_label %}
- <a href="{% url ldt.ldt_utils.views.front.search_index %}?search={{search}}&field={{field}}">{% trans "Search results for " %} <b> {{ search }}</b></a><span class="pink"> > {{tag_label}}</span>
+ <a href="{% url 'ldt.ldt_utils.views.front.search_index' %}?search={{search}}&field={{field}}">{% trans "Search results for " %} <b> {{ search }}</b></a><span class="pink"> > {{tag_label}}</span>
{% else %}
{% trans "Search results for " %} <b> {{ search }}</b>
{% endif %}
@@ -108,15 +108,15 @@
<li class="li_segment" id="li_{{segment.project_id}}_{{segment.iri_id}}_{{segment.ensemble_id}}_{{segment.cutting_id}}_{{segment.element_id}}">
<div class="left_segment">
<div class="color_zone"></div>
- <a href="{% url ldt.ldt_utils.views.front.annot_content segment.iri_id segment.project_id segment.cutting_id %}#id={{segment.element_id}}"><img src='{% absstatic "ldt/img/annot_icon_80x45.png" %}' width="80" height="45" alt="" /></a>
+ <a href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=segment.iri_id project_id=segment.project_id cutting_id=segment.cutting_id %}#id={{segment.element_id}}"><img src='{% static "ldt/img/annot_icon_80x45.png" %}' width="80" height="45" alt="" /></a>
<!--p class="duree_segment">{{ segment.duration|str_duration:"::" }}</p-->
</div>
- <h4 class="title_segment"><a class="blue under" href="{% url ldt.ldt_utils.views.front.annot_content segment.iri_id segment.project_id segment.cutting_id %}#id={{segment.element_id}}" title="{% trans 'view this annotation in the player' %}">
+ <h4 class="title_segment"><a class="blue under" href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=segment.iri_id project_id=segment.project_id cutting_id=segment.cutting_id %}#id={{segment.element_id}}" title="{% trans 'view this annotation in the player' %}">
{% if segment.title %}{{ segment.title }}{% else %}{% trans "No title" %}{% endif %}</a></h4>
<p class="text_segment">{% if segment.context %}{{ segment.context }}{% endif %}<br/>{% trans "Begin" %} : {{ segment.start_ts|str_duration:"::" }} - {% trans "duration" %} : {{ segment.duration|str_duration:"::" }}</p>
<div class="hidden_preview">
{% thumbnail res.content.image "300x200" format="PNG" crop="center" as im %}<img src="{{ im.url }}" class="img_media" width="{{ im.width }}" height="{{ im.height }}" %}">{% endthumbnail %}
- <h4><a class="pink under b" href="{% url ldt.ldt_utils.views.front.annot_content segment.iri_id segment.project_id segment.cutting_id %}#id={{segment.element_id}}" title="{% trans 'view this annotation in the player' %}">
+ <h4><a class="pink under b" href="{% url 'ldt.ldt_utils.views.front.annot_content' content_iri_id=segment.iri_id project_id=segment.project_id cutting_id=segment.cutting_id %}#id={{segment.element_id}}" title="{% trans 'view this annotation in the player' %}">
{% if segment.title %}{{ segment.title }}{% else %}{% trans "No title" %}{% endif %}</a></h4>
<p class="bigmargin">{% if segment.context %}{{ segment.context }}{% else %}{{ segment.abstract }}{% endif %}</p>
{% if segment.context_tags or segment.tags %}
@@ -135,7 +135,7 @@
<li id="result_pagination">
<p>
{% if results.has_previous %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.search_index %}?page={{ results.previous_page_number }}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}" title="{% trans 'previous' %}">{% trans "previous" %}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.search_index' %}?page={{ results.previous_page_number }}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}" title="{% trans 'previous' %}">{% trans "previous" %}</a>
.
{% endif %}
{% if results.paginator.num_pages > 1 %}
@@ -145,7 +145,7 @@
{% if i|add:'1' == results.number %}
<span class="pink">{{i|add:'1'}}</span>
{% else %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.search_index %}?page={{i|add:'1'}}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}">{{i|add:'1'}}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.search_index' %}?page={{i|add:'1'}}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}">{{i|add:'1'}}</a>
{% endif %}
{% if i|add:'1' < results.paginator.num_pages and 1 < results.paginator.num_pages %}
{% endif %}
@@ -155,7 +155,7 @@
{% endif %}
{% if results.has_next %}
- <a class="blue under" href="{% url ldt.ldt_utils.views.front.search_index %}?page={{ results.next_page_number }}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}" title="{% trans 'next' %}">{% trans "next" %}</a>
+ <a class="blue under" href="{% url 'ldt.ldt_utils.views.front.search_index' %}?page={{ results.next_page_number }}&search={{search}}&field={{field}}{% if tag_label %}&content_tag={{tag_label}}{% endif %}" title="{% trans 'next' %}">{% trans "next" %}</a>
{% endif %}
</p>
</li>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/content_list.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/content_list.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% extends "ldt/user/user_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_declaration %}
{{block.super}}
@@ -48,12 +48,12 @@
{% block css_import %}
{{block.super}}
- <link rel="stylesheet" type="text/css" href='{% absstatic "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" type="text/css" href='{% static "ldt/css/ldt.css" %}' />
{% endblock %}
{% block breadcrumb %}
<li></li>
-<li><a href="{% url ldt.userpanel.views.space %}">{% trans "Space" %}</a></li>
+<li><a href="{% url 'ldt.userpanel.views.space' %}">{% trans "Space" %}</a></li>
<li>{% trans "Ldt Project" %}</li>
{% endblock %}
@@ -74,8 +74,8 @@
<tbody>
{% for content in contents %}
<tr>
- <td><a href="{% url ldt.ldt_utils.views.lignesdetemps.index content.iri_id %}" class="ldt_link">{{ content.title }}</a></td>
- <td><a href="{% url ldt.ldt_utils.views.project.create_project content.iri_id %}" class="ldt_link_create">{% trans "create project" %}</a></td>
+ <td><a href="{% url 'ldt.ldt_utils.views.lignesdetemps.index' content.iri_id %}" class="ldt_link">{{ content.title }}</a></td>
+ <td><a href="{% url 'ldt.ldt_utils.views.project.create_project' content.iri_id %}" class="ldt_link_create">{% trans "create project" %}</a></td>
</tr>
{% endfor %}
</tbody>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/copy_ldt.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/copy_ldt.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,11 @@
{% extends "ldt/ldt_raw_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of copy of project ldt #}
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' />
{% endblock %}
{% block body %}
<div id="add_contribution" class="span-12 last">
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_content.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_content.html Fri May 24 21:55:08 2013 +0200
@@ -1,41 +1,39 @@
{% extends "ldt/ldt_utils/workspace_base.html" %}
{% load i18n %}
-{% load absstatic %}
-{% load absurl %}
+{% load static %}
- {# form of creation of content #}
-{% load adminmedia %}
+{# form of creation of content #}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{{ADMIN_MEDIA_PREFIX}}js/core.js" ></script>
- <script type="text/javascript" src="{{ADMIN_MEDIA_PREFIX}}js/jquery.init.js"></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.min.js" %}'></script>
- <script type="text/javascript" src="{% absurl ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.textchange.min.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery-ui.min.js" %}'></script>
+ <script type="text/javascript" src="{% static 'admin/js/core.js' %}"></script>
+ <script type="text/javascript" src="{% static 'admin/js/jquery.init.js' %}"></script>
+ <script type="text/javascript" src="{% static 'ldt/js/jquery.min.js' %}"></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src="{% static 'ldt/js/projectscontents.js' %}"></script>
+ <script type="text/javascript" src="{% static 'ldt/js/jquery.textchange.min.js' %}"></script>
+ <script type="text/javascript" src="{% static 'ldt/js/jquery-ui.min.js' %}"></script>
{{ content_form.media.js }}
{% endblock %}
{% block js_declaration %}
<script type="text/javascript">
- window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}";
+ window.__admin_media_prefix__ = "{% filter escapejs %}{% get_static_prefix %}/admin/{% endfilter %}";
$(document).ready(function() {
// url_upload, media_prefix, post_added_params, btn_label, success_label, wait_label, cancel_label, remove_url, get_dur_url
post_added_params = {"csrfmiddlewaretoken" : "{{csrf_token}}",
"{{cookie_name}}" : "{{session_key}}"};
- onCreateContentReady("{% url ldt.ldt_utils.views.content.upload %}",
- "{% absstatic 'ldt' %}",
+ onCreateContentReady("{% url 'ldt.ldt_utils.views.content.upload' %}",
+ "{% static 'ldt' %}",
post_added_params,
"{% trans 'Browse' %}",
"{% trans 'File uploaded' %}",
"{% trans 'Please wait, the upload is not finished yet' %}",
"{% trans 'Cancel upload' %",
- "{% url ldt.ldt_utils.views.content.remove_temp_file %}",
- "{% url ldt.ldt_utils.views.content.get_duration %}");
+ "{% url 'ldt.ldt_utils.views.content.remove_temp_file' %}",
+ "{% url 'ldt.ldt_utils.views.content.get_duration' %}");
});
// the function stopRKey prevents from the validation of the form if the user tape enter button while entering a field
function stopRKey(evt) {
@@ -47,8 +45,8 @@
document.onkeypress = stopRKey;
chunked_uploads_endpoints = {
- upload_url: '{{WEB_URL}}{% url upload %}',
- done_url: '{{WEB_URL}}{% url upload_done uuid='00000000-0000-0000-0000-000000000000' %}',
+ upload_url: '{{WEB_URL}}{% url 'upload' %}',
+ done_url: '{{WEB_URL}}{% url 'upload_done' uuid='00000000-0000-0000-0000-000000000000' %}',
};
$(function() {
@@ -85,7 +83,7 @@
{% block css_import %}
{{ content_form.media.css }}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}'/>
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}'/>
{% endblock %}
{% block content %}
@@ -161,7 +159,7 @@
<div id="submitcontent" class="span-18 last">
<div id="submitcontent-loader" class="span-10">
- <div id="submitcontent-loader-img" class="submitcontent-loader-content span-10 last"><img alt="loader" src='{% absstatic "ldt/img/ajax-loader-220x19.gif" %}'/></div>
+ <div id="submitcontent-loader-img" class="submitcontent-loader-content span-10 last"><img alt="loader" src='{% static "ldt/img/ajax-loader-220x19.gif" %}'/></div>
<div id="submitcontent-loader-msg" class="submitcontent-loader-content span-10 last">{% trans "media file is being processed please wait." %}</div>
<span> </span>
</div>
@@ -174,8 +172,8 @@
</form>
</div>
- <script type="text/javascript" src='{% absstatic "chunked_uploads/js/jquery.ui.widget.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "chunked_uploads/js/jquery.iframe-transport.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "chunked_uploads/js/jquery.fileupload.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "chunked_uploads/js/jquery.chunked_uploads.js" %}'></script>
+ <script type="text/javascript" src='{% static "chunked_uploads/js/jquery.ui.widget.js" %}'></script>
+ <script type="text/javascript" src='{% static "chunked_uploads/js/jquery.iframe-transport.js" %}'></script>
+ <script type="text/javascript" src='{% static "chunked_uploads/js/jquery.fileupload.js" %}'></script>
+ <script type="text/javascript" src='{% static "chunked_uploads/js/jquery.chunked_uploads.js" %}'></script>
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_group.html Fri May 24 21:55:08 2013 +0200
@@ -1,25 +1,23 @@
{% extends "ldt/ldt_utils/workspace_base.html" %}
{% load i18n %}
-{% load absstatic %}
-{% load absurl %}
+{% load static %}
-{% load adminmedia %}
{% load thumbnail %}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% absurl ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}' ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/tiny_mce/tiny_mce.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src="{% static 'ldt/js/projectscontents.js' %}" ></script>
+ <script type="text/javascript" src="{% static 'ldt/js/tiny_mce/tiny_mce.js' %}"></script>
{{ content_form.media.js }}
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' />
{% endblock %}
@@ -44,7 +42,7 @@
$( this ).find("button[type=submit]").removeClass("e-clicked");
});
- var search_url = "{% absurl ldt.ldt_utils.views.workspace.share_filter filter='__FILTER__' use_groups='false' %}";
+ var search_url = "{% url 'ldt.ldt_utils.views.workspace.share_filter' filter='__FILTER__' use_groups='false' %}";
});
</script>
@@ -55,7 +53,7 @@
<div id="add_group" class="span-18 last">
<div class="projectscontentstitle span-18 last">{% if group_id %}{% trans "Update a group" %}{% else %}{% trans "Create a group" %}{% endif %}</div>
- <form action="{% if group_id %}{% absurl ldt.ldt_utils.views.group.update_group group_id %} {% else %}{% absurl ldt.ldt_utils.views.group.create_group %}{% endif %}" method="POST" enctype="multipart/form-data" {% if target_parent %}target="_parent"{% endif %}>
+ <form action="{% if group_id %}{% url 'ldt.ldt_utils.views.group.update_group' group_id=group_id %} {% else %}{% url 'ldt.ldt_utils.views.group.create_group' %}{% endif %}" method="POST" enctype="multipart/form-data" {% if target_parent %}target="_parent"{% endif %}>
{% csrf_token %}
<input type="hidden" name="form_status" value="{{form_status}}" id="project_form_status" />
<input type="hidden" name="id_group" value="" id="id_group"/>
@@ -67,9 +65,7 @@
{% endfor %}
<label for="description">{% trans "Description" %}</label>
- <textarea id="description" name="description">
- {{ img_container.description }}
- </textarea>
+ <textarea id="description" name="description">{{ img_container.description }}</textarea>
</div>
{% include "ldt/ldt_utils/partial/permissions.html" %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_ldt.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/create_ldt.html Fri May 24 21:55:08 2013 +0200
@@ -1,23 +1,22 @@
{% extends "ldt/ldt_raw_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of creation of content #}
-{% load adminmedia %}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.nyroModal.min.js" %}'></script>
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/tiny_mce/tiny_mce.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.nyroModal.min.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/tiny_mce/tiny_mce.js" %}'></script>
{{ content_form.media.js }}
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' />
{% endblock %}
{% block js_declaration %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_iframe.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_iframe.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
{% load absurl %}
{% load analytics %}
<?xml version="1.0" encoding="UTF-8"?>
@@ -26,7 +26,7 @@
<div>
<div id="{{ player_id }}_embed" class="iri_player_embed"></div>
- <script type="text/javascript" src='{% absstatic "ldt/metadataplayer/LdtPlayer-core.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/metadataplayer/LdtPlayer-core.js" %}'></script>
<script type="text/javascript">
if (typeof jQuery == "undefined") {
@@ -35,14 +35,14 @@
var metadatas = {metadata: {url: '{{json_url}}'}};
var metadata_key = "metadata";
- IriSP.libFiles.defaultDir = '{% absstatic "ldt/js/" %}';
- IriSP.libFiles.locations.jwPlayerSWF = '{% absstatic "ldt/swf/player.swf" %}';
- IriSP.libFiles.locations.recordMicSwf = '{% absstatic "ldt/swf/record_mic.swf" %}';
- IriSP.libFiles.locations.zeroClipboardSwf = '{% absstatic "ldt/swf/ZeroClipboard10.swf" %}';
- IriSP.libFiles.locations.cssjQueryUI = '{% absstatic "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
+ IriSP.libFiles.defaultDir = '{% static "ldt/js/" %}';
+ IriSP.libFiles.locations.jwPlayerSWF = '{% static "ldt/swf/player.swf" %}';
+ IriSP.libFiles.locations.recordMicSwf = '{% static "ldt/swf/record_mic.swf" %}';
+ IriSP.libFiles.locations.zeroClipboardSwf = '{% static "ldt/swf/ZeroClipboard10.swf" %}';
+ IriSP.libFiles.locations.cssjQueryUI = '{% static "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
IriSP.language = '{{LANGUAGE_CODE}}';
- IriSP.widgetsDir = '{% absstatic "ldt/metadataplayer" %}';
+ IriSP.widgetsDir = '{% static "ldt/metadataplayer" %}';
var _metadata = {
url: metadatas[metadata_key].url + '?callback=?',
format: 'ldt'
@@ -50,7 +50,7 @@
var _config = {
width: '{{ player_width }}',
container: '{{ player_id }}_embed',
- css: '{% absstatic "ldt/metadataplayer/LdtPlayer-core.css" %}',
+ css: '{% static "ldt/metadataplayer/LdtPlayer-core.css" %}',
default_options: {
metadata: _metadata
},
@@ -121,9 +121,9 @@
{% if annotations_list %},{
type: "AnnotationsList",
container: "AnnotationsList_ext",
- ajax_url: "{% absurl segment_api_empty resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}",
+ ajax_url: "{% absurl 'segment_api_empty' resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}",
ajax_granularity : 300000,
- default_thumbnail : '{% absstatic "ldt/css/imgs/video_sequence.png" %}',
+ default_thumbnail : '{% static "ldt/css/imgs/video_sequence.png" %}',
show_audio: true,
rtmp_streamer: "rtmp://media.iri.centrepompidou.fr/ddc_micro_record/"
}{% endif %},{
@@ -149,7 +149,7 @@
{% if createannotation %},{
type: "CreateAnnotation",
- api_endpoint_template: "{% absurl api_dispatch_list resource_name='annotations' api_name='1.0' %}",
+ api_endpoint_template: "{% absurl 'api_dispatch_list' resource_name='annotations' api_name='1.0' %}",
api_method: "PUT",
after_send_timeout: 8000,
{% if tag_titles %}
@@ -161,7 +161,7 @@
close_after_send: false,
slice_annotation_type: ["chap","découpage"],
creator_name: '{{request.user.username}}',
- creator_avatar: '{% thumbnail request.user.get_profile.image "48x48" format="PNG" crop="center" as im %}{{WEB_URL}}{{ im.url }}{% endthumbnail %}' || "https://si0.twimg.com/sticky/default_profile_images/default_profile_1_normal.png"
+ creator_avatar: '{% thumbnail request.user.image "48x48" format="PNG" crop="center" as im %}{{WEB_URL}}{{ im.url }}{% endthumbnail %}' || "https://si0.twimg.com/sticky/default_profile_images/default_profile_1_normal.png"
}{% endif %}
{% if slideshare %},{
type: "Slideshare",
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_popup.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/embed_popup.html Fri May 24 21:55:08 2013 +0200
@@ -3,14 +3,14 @@
{% load front_tags %}
{% load absurl %}
{% load static %}
-{% load absstatic %}
+{% load static %}
{% load analytics %}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.min.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldtjs/jquery.qtip.min.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/embed_popup.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jscolor/jscolor.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldtjs/jquery.qtip.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/embed_popup.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jscolor/jscolor.js" %}'></script>
{{ content_form.media.js }}
{% endblock %}
@@ -28,16 +28,16 @@
var LANGUAGE_CODE='{{LANGUAGE_CODE}}';
var json_url='{{json_url}}';
var player_id='{{player_id}}';
- var defaultDir='{% absstatic "ldt/js/" %}';
- var jwPlayerSWF='{% absstatic "ldt/swf/player.swf" %}';
- var recordMicSwf='{% absstatic "ldt/swf/record_mic.swf" %}';
- var zeroClipboardSwf='{% absstatic "ldt/swf/ZeroClipboard10.swf" %}';
- var cssjQueryUI='{% absstatic "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
- var widgetsDir='{% absstatic "ldt/metadataplayer" %}';
- var configCss='{% absstatic "ldt/metadataplayer/LdtPlayer-core.css" %}';
- var default_thumbnail='{% absstatic "ldt/css/imgs/video_sequence.png" %}';
- var segment_api="{% absurl segment_api_empty resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}";
- var LdtPlayer_core='{% absstatic "ldt/metadataplayer/LdtPlayer-core.js" %}';
+ var defaultDir='{% static "ldt/js/" %}';
+ var jwPlayerSWF='{% static "ldt/swf/player.swf" %}';
+ var recordMicSwf='{% static "ldt/swf/record_mic.swf" %}';
+ var zeroClipboardSwf='{% static "ldt/swf/ZeroClipboard10.swf" %}';
+ var cssjQueryUI='{% static "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
+ var widgetsDir='{% static "ldt/metadataplayer" %}';
+ var configCss='{% static "ldt/metadataplayer/LdtPlayer-core.css" %}';
+ var default_thumbnail='{% static "ldt/css/imgs/video_sequence.png" %}';
+ var segment_api="{% absurl 'segment_api_empty' resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}";
+ var LdtPlayer_core='{% static "ldt/metadataplayer/LdtPlayer-core.js" %}';
var creator_name='{{request.user.username}}';
$j(document).ready(function(){
@@ -49,10 +49,10 @@
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/style.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}'/>
- <link rel="stylesheet" href='{% absstatic "ldt/css/embed_popup.css" %}'/>
- <link rel="stylesheet" href='{% absstatic "ldt/css/jq-css/jquery.qtip.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/style.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}'/>
+ <link rel="stylesheet" href='{% static "ldt/css/embed_popup.css" %}'/>
+ <link rel="stylesheet" href='{% static "ldt/css/jq-css/jquery.qtip.css" %}' type="text/css"/>
{% endblock %}
@@ -234,7 +234,7 @@
</div>
<div id="player_div" style="display:none">
<button type="button" class="refresh_button" id="refresh_player_button" title="Rafraichir le player" >
- <img src='{% absstatic "ldt/img/arrow_refresh.png" %}' id="refresh_player" ></img>
+ <img src='{% static "ldt/img/arrow_refresh.png" %}' id="refresh_player" ></img>
</button>
<div class="ldt_player" id="wrapper_{{player_id}}"></div>
</div>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/error_confirm.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/error_confirm.html Fri May 24 21:55:08 2013 +0200
@@ -1,17 +1,17 @@
{% extends "ldt/ldt_utils/workspace_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of creation of content #}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/error_confirm_popup.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/error_confirm_popup.html Fri May 24 21:55:08 2013 +0200
@@ -1,18 +1,18 @@
{% extends "ldt/ldt_raw_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of creation of content #}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}' ></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}' ></script>
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/groups.html Fri May 24 21:55:08 2013 +0200
@@ -1,26 +1,26 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{block.super}}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}' ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.history.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}' ></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.history.js" %}'></script>
{% endblock %}
{% block js_declaration %}
{{block.super}}
<script type="text/javascript">
-var groups_filter_url = "{% url ldt.ldt_utils.views.group.groups_filter filter='__FILTER__' %}";
-var content_filter_url = "{% url ldt.ldt_utils.views.content.contents_filter filter_c='__FILTER__' %}";
-var project_filter_url = "{% url ldt.ldt_utils.views.project.projects_filter filter='__FILTER__' is_owner='false' status='0' id_group='__ID_GROUP__' %}";
-var publish_project_url = "{% url ldt.ldt_utils.views.project.publish '__PROJECT_ID__' %}";
-var unpublish_project_url = "{% url ldt.ldt_utils.views.project.unpublish '__PROJECT_ID__' %}";
-var get_group_projects_url = "{% url ldt.ldt_utils.views.group.get_group_projects_view %}";
+var groups_filter_url = "{% url 'ldt.ldt_utils.views.group.groups_filter' filter='__FILTER__' %}";
+var content_filter_url = "{% url 'ldt.ldt_utils.views.content.contents_filter' filter_c='__FILTER__' %}";
+var project_filter_url = "{% url 'ldt.ldt_utils.views.project.projects_filter' filter='__FILTER__' is_owner='false' status='0' id_group='__ID_GROUP__' %}";
+var publish_project_url = "{% url 'ldt.ldt_utils.views.project.publish' id='__PROJECT_ID__' %}";
+var unpublish_project_url = "{% url 'ldt.ldt_utils.views.project.unpublish' id='__PROJECT_ID__' %}";
+var get_group_projects_url = "{% url 'ldt.ldt_utils.views.group.get_group_projects_view' %}";
function init_events(base_node) {
- init_events_projects(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", project_filter_url, publish_project_url, unpublish_project_url);
+ init_events_projects(base_node, "{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}", project_filter_url, publish_project_url, unpublish_project_url);
}
var global_csrf_token = "{{ csrf_token }}";
@@ -111,7 +111,7 @@
{% block css_import %}
{{block.super}}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' type="text/css"/>
{% endblock %}
{% block content %}
@@ -120,13 +120,13 @@
<div class="span-12 last titlediv" >
<div class="span-8 projectscontentstitle">{% trans "My groups" %}
{% if can_add_group %}
- <a class="create_group" href="{% url ldt.ldt_utils.views.group.create_group %}"><img class='icon_title' src='{% absstatic "ldt/img/group_add.png" %}' alt="{% trans 'Create group' %}" title="{% trans 'Create group' %}" /></a>
+ <a class="create_group" href="{% url 'ldt.ldt_utils.views.group.create_group' %}"><img class='icon_title' src='{% static "ldt/img/group_add.png" %}' alt="{% trans 'Create group' %}" title="{% trans 'Create group' %}" /></a>
{% endif %}
</div>
<div class="span-4 last searchfielddiv" >
<div class="span-4 last searchfielddiv" >
- <div class="searchfield rounded"><input id="searchgroupsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% absstatic "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}'/></div>
+ <div class="searchfield rounded"><input id="searchgroupsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% static "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}'/></div>
</div>
</div>
</div>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/init_ldt.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/init_ldt.html Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-{% load absstatic %}
+{% load static %}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -7,10 +7,10 @@
<meta http-equiv="Cache" content="no store" />
<meta http-equiv="Expires" content="-1" />
<title>Ligne de Temps - IRI</title>
-<script type="text/javascript" src='{% absstatic "ldt/js/jquery.min.js" %}'></script>
-<script type="text/javascript" src='{% absstatic "ldt/js/jquery.nyroModal.min.js" %}'></script>
-<script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
-<script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
+<script type="text/javascript" src='{% static "ldt/js/jquery.min.js" %}'></script>
+<script type="text/javascript" src='{% static "ldt/js/jquery.nyroModal.min.js" %}'></script>
+<script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+<script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
<script type="text/javascript">
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/ldt_list.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/ldt_list.html Fri May 24 21:55:08 2013 +0200
@@ -1,10 +1,10 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{block.super}}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}' ></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}' ></script>
{% endblock %}
@@ -12,13 +12,13 @@
{{block.super}}
<script type="text/javascript">
-searchprojectfilterurl = "{% url ldt.ldt_utils.views.project.projects_filter filter='__FILTER__' is_owner='true' status='0' %}";
-publishprojecturl = "{% url ldt.ldt_utils.views.project.publish '__PROJECT_ID__' 'false' %}";
-unpublishprojecturl = "{% url ldt.ldt_utils.views.project.unpublish '__PROJECT_ID__' 'false' %}";
+searchprojectfilterurl = "{% url 'ldt.ldt_utils.views.project.projects_filter' filter='__FILTER__' is_owner='true' status='0' %}";
+publishprojecturl = "{% url 'ldt.ldt_utils.views.project.publish' '__PROJECT_ID__' 'false' %}";
+unpublishprojecturl = "{% url 'ldt.ldt_utils.views.project.unpublish' '__PROJECT_ID__' 'false' %}";
function init_events(base_node) {
- init_events_base(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}");
+ init_events_base(base_node, "{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}");
$('.publishedproject', base_node).click(function(e) {
e.preventDefault();
@@ -68,7 +68,7 @@
{% block css_import %}
{{block.super}}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' type="text/css"/>
{% endblock %}
{% block content %}
@@ -77,7 +77,7 @@
<div class="span-12 last titlediv" >
<div class="span-8 projectscontentstitle" >{% trans "project list" %}</div>
<div class="span-4 last searchfielddiv" >
- <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" value="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% absstatic "ldt/img/ajax-loader-16x16.gif" %}'/><img id="projectsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}'/></div>
+ <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" value="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% static "ldt/img/ajax-loader-16x16.gif" %}'/><img id="projectsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}'/></div>
</div>
</div>
<div class="span-12 last projectscontentsdiv" id="projectslistcontainer">
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/loading.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/loading.html Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-{% load absstatic %}
+{% load static %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?xml version="1.0" encoding="UTF-8"?>
@@ -21,7 +21,7 @@
<body>
<div class="center">
<div><img alt="loading"
- src='{% absstatic "ldt/img/loadingAnimation.gif" %}' /></div>
+ src='{% static "ldt/img/loadingAnimation.gif" %}' /></div>
</div>
</body>
</html>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/contentslist.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/contentslist.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% load i18n %}
{% load thumbnail %}
{% load front_tags %}
-{% load absstatic %}
+{% load static %}
<ul class="prev_next_cont_proj" >
<li id="content_tags_li"><span id="content_tags" class="clickable">{% if tag_cloud|length > 0 %}{% trans 'All categories' %}{% endif %}</span>{% if current_content_tag %}{% if current_content_tag != "" %} > {{current_content_tag}} <span id="no_content_tag" class="clickable">[x]</span>{% endif %}{% endif %}</li>
@@ -26,10 +26,10 @@
<tbody class="projectscontentsbody">
{% for content in contents %}
<tr class="imageline {% cycle 'projectscontentsoddline' 'projectscontentsevenline'%}">
- <td class="cellimg"><div class="cellimgdiv"><img src='{% absstatic "ldt/img/page_add.png" %}' title="{% trans 'create project' %}" alt="{% trans 'create project' %}" href="{% url ldt.ldt_utils.views.project.create_project content.iri_id %}" class="ldt_link_create_project"/></div></td>
- <td class="cellimg"><div class="cellimgdiv"><img alt="{% trans 'preview media'%}" title="{% trans 'preview media'%}" src='{% absstatic "ldt/img/control_play.png" %}' href="{% url ldt.ldt_utils.views.lignesdetemps.index content.iri_id %}" class="ldt_link_open_ldt"/></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><img src='{% static "ldt/img/page_add.png" %}' title="{% trans 'create project' %}" alt="{% trans 'create project' %}" href="{% url 'ldt.ldt_utils.views.project.create_project' iri_id=content.iri_id %}" class="ldt_link_create_project"/></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><img alt="{% trans 'preview media'%}" title="{% trans 'preview media'%}" src='{% static "ldt/img/control_play.png" %}' href="{% url 'ldt.ldt_utils.views.lignesdetemps.index' url=content.iri_id %}" class="ldt_link_open_ldt"/></div></td>
<td>{% thumbnail content.image "50x50" format="PNG" crop="top" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">{% endthumbnail %}</td>
- <td class="contenttitle"><a {% if content.change %} class="contenttitlelink infostooltip" href="{% url ldt.ldt_utils.views.content.write_content iri_id=content.iri_id %}" data-title="{{ content.title}}" data-desc="{{ content.description }}" {% else %} class="contenttitlelink qtiplink" title="{% trans "You can't edit this content" %}" {% endif %}>{{ content.title|default:"_" }}</a></td>
+ <td class="contenttitle"><a {% if content.change %} class="contenttitlelink infostooltip" href="{% url 'ldt.ldt_utils.views.content.write_content' iri_id=content.iri_id %}" data-title="{{ content.title}}" data-desc="{{ content.description }}" {% else %} class="contenttitlelink qtiplink" title="{% trans "You can't edit this content" %}" {% endif %}>{{ content.title|default:"_" }}</a></td>
</tr>
{% endfor %}
</tbody>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_player.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_player.html Fri May 24 21:55:08 2013 +0200
@@ -1,12 +1,12 @@
{% spaceless %}
{% load i18n %}
{% load absurl %}
-{% load absstatic %}
+{% load static %}
{% load thumbnail %}
<div>
<div id="{{ player_id }}_embed" class="iri_player_embed">
</div>
-<script type="text/javascript" src='{% absstatic "ldt/metadataplayer/LdtPlayer-core.js" %}'></script>
+<script type="text/javascript" src='{% static "ldt/metadataplayer/LdtPlayer-core.js" %}'></script>
<script type="text/javascript">
if (typeof jQuery == "undefined") {
@@ -15,14 +15,14 @@
var metadatas = {metadata: {url: '{{json_url}}'}};
var metadata_key = "metadata";
-IriSP.libFiles.defaultDir = '{% absstatic "ldt/js/" %}';
-IriSP.libFiles.locations.jwPlayerSWF = '{% absstatic "ldt/swf/player.swf" %}';
-IriSP.libFiles.locations.recordMicSwf = '{% absstatic "ldt/swf/record_mic.swf" %}';
-IriSP.libFiles.locations.zeroClipboardSwf = '{% absstatic "ldt/swf/ZeroClipboard10.swf" %}';
-IriSP.libFiles.locations.cssjQueryUI = '{% absstatic "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
+IriSP.libFiles.defaultDir = '{% static "ldt/js/" %}';
+IriSP.libFiles.locations.jwPlayerSWF = '{% static "ldt/swf/player.swf" %}';
+IriSP.libFiles.locations.recordMicSwf = '{% static "ldt/swf/record_mic.swf" %}';
+IriSP.libFiles.locations.zeroClipboardSwf = '{% static "ldt/swf/ZeroClipboard10.swf" %}';
+IriSP.libFiles.locations.cssjQueryUI = '{% static "ldt/css/jq-css/themes/base/jquery-ui.css" %}';
IriSP.language = '{{LANGUAGE_CODE}}';
-IriSP.widgetsDir = '{% absstatic "ldt/metadataplayer" %}';
+IriSP.widgetsDir = '{% static "ldt/metadataplayer" %}';
var _metadata = {
url: metadatas[metadata_key].url,
format: 'ldt'
@@ -30,7 +30,7 @@
var _config = {
width: '{{ player_width }}',
container: '{{ player_id }}_embed',
- css: '{% absstatic "ldt/metadataplayer/LdtPlayer-core.css" %}',
+ css: '{% static "ldt/metadataplayer/LdtPlayer-core.css" %}',
default_options: {
metadata: _metadata
},
@@ -59,9 +59,9 @@
},{
type: "AnnotationsList",
container: "AnnotationsList_ext",
- ajax_url: "{% absurl segment_api_empty resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}",
+ ajax_url: "{% absurl 'segment_api_empty' resource_name='segments' api_name='1.0' %}{% templatetag openvariable %}media{% templatetag closevariable %}/{% templatetag openvariable %}begin{% templatetag closevariable %}/{% templatetag openvariable %}end{% templatetag closevariable %}",
ajax_granularity : 300000,
- default_thumbnail : '{% absstatic "ldt/css/imgs/video_sequence.png" %}',
+ default_thumbnail : '{% static "ldt/css/imgs/video_sequence.png" %}',
show_audio: true,
rtmp_streamer: "rtmp://media.iri.centrepompidou.fr/ddc_micro_record/"
},{
@@ -73,13 +73,13 @@
hide_timeout: 5000
},{
type: "CreateAnnotation",
- api_endpoint_template: "{% absurl api_dispatch_list resource_name='annotations' api_name='1.0' %}",
+ api_endpoint_template: "{% absurl 'api_dispatch_list' resource_name='annotations' api_name='1.0' %}",
after_send_timeout: 8000,
show_mic_record: {% if show_mic_record %}true{% else %}false{% endif %},
close_after_send: false,
slice_annotation_type: ["chap","découpage"],
creator_name: '{{request.user.username}}',
- creator_avatar: '{% thumbnail request.user.get_profile.image "48x48" format="PNG" crop="center" as im %}{{WEB_URL}}{{ im.url }}{% endthumbnail %}' || "https://si0.twimg.com/sticky/default_profile_images/default_profile_1_normal.png"
+ creator_avatar: '{% thumbnail request.user.image "48x48" format="PNG" crop="center" as im %}{{WEB_URL}}{{ im.url }}{% endthumbnail %}' || "https://si0.twimg.com/sticky/default_profile_images/default_profile_1_normal.png"
},{
type: "Slideshare",
container: "Slideshare_ext",
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_seo_meta.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/embed_seo_meta.html Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
{% load absurl %}
{% spaceless %}
-<link rel="meta" href="{% absurl ldt.ldt_utils.views.rdf.project_annotations_rdf ldt_id=ldt_id %}"/>
+<link rel="meta" href="{% absurl 'ldt.ldt_utils.views.rdf.project_annotations_rdf' ldt_id=ldt_id %}"/>
{% endspaceless %}
\ No newline at end of file
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/groupslist.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/groupslist.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
{% load static %}
<script type="text/javascript">
@@ -8,7 +8,7 @@
$(document).ready(function () {
var icon_size = 16;
$(".editable").each(function () {
- var src='{% absstatic "ldt/img/pencil.png" %}';
+ var src='{% static "ldt/img/pencil.png" %}';
var img = $('<img src='+src+' id="pencil_img" >');
var top = $(this).offset().top + $(this).height() - icon_size;
var left = $(this).offset().left + $(this).width() - icon_size;
@@ -45,7 +45,7 @@
{% if group.change %}
<td class="groupimg" >
- <a class="grouplink create_group" title="{% trans 'Change this group'%}" href="{% url ldt.ldt_utils.views.group.update_group group.id %}">
+ <a class="grouplink create_group" title="{% trans 'Change this group'%}" href="{% url 'ldt.ldt_utils.views.group.update_group' group_id=group.id %}">
{% thumbnail group.profile.image "50x50" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" class="editable"/>{% empty %} {% endthumbnail %}
</a>
</td>
@@ -57,7 +57,7 @@
<td>{{ group.name }}</td>
{% endif %}
- <td class="align_right"><img src='{% absstatic "ldt/img/control_play.png" %}' class="next_icon"/></td>
+ <td class="align_right"><img src='{% static "ldt/img/control_play.png" %}' class="next_icon"/></td>
</tr>
{% endfor %}
@@ -65,11 +65,11 @@
{% if not user.is_superuser and not search_active %}
<tr class="clickable imageline {% cycle color_cycle %} update_group_projects" id="-1">
<td class="groupimg">
- {% thumbnail user.get_profile.image "50x50" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
+ {% thumbnail user.image "50x50" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
</td>
<td>{% trans "Projects shared with me only" %}</td>
- <td class="align_right"><img src='{% absstatic "ldt/img/control_play.png" %}' class="next_icon"/></td>
+ <td class="align_right"><img src='{% static "ldt/img/control_play.png" %}' class="next_icon"/></td>
</tr>
{% endif %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/ldt_div.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/ldt_div.html Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,9 @@
{% load absurl %}
-{% load absstatic %}
+{% load static %}
{% comment %}
Yes we include swfobject.js in the middle of the page...
{% endcomment %}
-<script type="text/javascript" src='{% absstatic "ldt/js/swfobject.js" %}'></script>
+<script type="text/javascript" src='{% static "ldt/js/swfobject.js" %}'></script>
<div id="ldtInit" name="ldtInit" style="background-color: #00FF00; width: 1201px; height: 831px; left: 100px; top: 100px; z-index: 99999999; margin: 0; padding: 0;"> </div>
<script language="JavaScript" type="text/javascript">
@@ -32,14 +32,14 @@
{% else %}
readOnly:'true',
{% endifequal %}
- segmentPassMask:"{% absurl ldt.ldt_utils.views.lignesdetemps.index_segment '{4}' '{0}' '{1}' '{2}' '{3}' %}",
- simplePlayerPassMask:"{% absurl ldt.ldt_utils.views.front.annot_content '{0}' '{4}' '{2}' %}#id={3}"
+ segmentPassMask:"{% absurl 'ldt.ldt_utils.views.lignesdetemps.index_segment' project_id='{4}' content_id='{0}' cutting_id='{1}' ensemble_id='{2}' segment_id='{3}' %}",
+ simplePlayerPassMask:"{% absurl 'ldt.ldt_utils.views.front.annot_content' content_iri_id='{0}' project_id='{4}' cutting_id='{2}' %}#id={3}"
};
var attributes = { id: "ldtInitSwf", name: "ldtInitSwf"};
- swfobject.embedSWF('{% absstatic "ldt/swf/ldt/LignesDeTempsFlex.swf" %}', "ldtInit", "1000", "630", "10.2.0", '{% absstatic "ldt/swf/expressInstall.swf" %}', flashvars, params, attributes);
+ swfobject.embedSWF('{% static "ldt/swf/ldt/LignesDeTempsFlex.swf" %}', "ldtInit", "1000", "630", "10.2.0", '{% static "ldt/swf/expressInstall.swf" %}', flashvars, params, attributes);
</script>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/permissions.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/permissions.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% load i18n %}
-{% load absstatic %}
+{% load static %}
-<script type="text/javascript" src='{% absstatic "ldt/js/jquery-ui.min.js" %}'></script>
+<script type="text/javascript" src='{% static "ldt/js/jquery-ui.min.js" %}'></script>
<script type="text/javascript">
function init_events() {
@@ -18,13 +18,13 @@
}
$(document).ready(function() {
- var can_edit = '{% absstatic "ldt/img/pencil.png" %}';
- var can_view = '{% absstatic "ldt/img/eye.png" %}';
+ var can_edit = '{% static "ldt/img/pencil.png" %}';
+ var can_view = '{% static "ldt/img/eye.png" %}';
{% if group_edition %}
- var search_url = "{% url ldt.ldt_utils.views.workspace.share_filter filter='__FILTER__' use_groups='false' %}";
+ var search_url = "{% url 'ldt.ldt_utils.views.workspace.share_filter' filter='__FILTER__' use_groups='false' %}";
{% else %}
- var search_url = "{% url ldt.ldt_utils.views.workspace.share_filter filter='__FILTER__' use_groups='true' %}";
+ var search_url = "{% url 'ldt.ldt_utils.views.workspace.share_filter' filter='__FILTER__' use_groups='true' %}";
{% endif %}
input_list_init = [
@@ -76,7 +76,7 @@
selection.each(function () {
var id_item = $("input",$(this)).val();
- var eye_img = '{% absstatic "ldt/img/eye.png" %}';
+ var eye_img = '{% static "ldt/img/eye.png" %}';
$("#read").append('<input type="hidden" name="read_list" value="' + id_item + '"/>');
$("td:last",$(this)).append('<img class="can_view" src="'+eye_img+'" title="{% trans "share.eye" %}" alt="{% trans "share.eye" %}"/>');
});
@@ -109,7 +109,7 @@
{% if not group_edition %}
<div id="shareproject" class="clear dropdownlist">
-<img class="shareicon" src='{% absstatic "ldt/img/user_add.png" %}' />{% trans "share" %}
+<img class="shareicon" src='{% static "ldt/img/user_add.png" %}' />{% trans "share" %}
</div>
{% endif %}
@@ -131,8 +131,8 @@
{% trans "User and group list" %}<br />
<div class="searchfield span-4">
<input type="text" name="search" id="searchuserinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}"/>
- <img id="projectsajaxloader" class="searchajaxloader" src='{% absstatic "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/>
- <img id="projecsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}'/>
+ <img id="projectsajaxloader" class="searchajaxloader" src='{% static "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/>
+ <img id="projecsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}'/>
</div>
</div><br /><br />
@@ -143,13 +143,13 @@
</div>
<div id="elemslistfooter">
- <a href="#" id="selectallitems" title="{% trans "select all displayed elements" %}"><img class="shareicon" src='{% absstatic "ldt/img/user_go.png" %}' title="{% trans "select all displayed elements" %}"/>{% trans "select all displayed elements" %}</a>
+ <a href="#" id="selectallitems" title="{% trans "select all displayed elements" %}"><img class="shareicon" src='{% static "ldt/img/user_go.png" %}' title="{% trans "select all displayed elements" %}"/>{% trans "select all displayed elements" %}</a>
</div>
</div>
<div id="selectors">
- <a href="#" id="selectelems"><img src='{% absstatic "ldt/img/to-right.gif" %}' title="{% trans "select users" %}"></a><br />
- <a href="#" id="removeelems"><img src='{% absstatic "ldt/img/to-left.gif" %}' title="{% trans "remove users" %}"></a>
+ <a href="#" id="selectelems"><img src='{% static "ldt/img/to-right.gif" %}' title="{% trans "select users" %}"></a><br />
+ <a href="#" id="removeelems"><img src='{% static "ldt/img/to-left.gif" %}' title="{% trans "remove users" %}"></a>
</div>
{% if media_form %}
<br /> <br />
@@ -166,18 +166,18 @@
<tr class="shareline">
<td style="width: 5%;">
{% if elem.type == "user" %}
- <img src='{% absstatic "ldt/img/user.png" %}' alt="{% trans "user" %}"/>
+ <img src='{% static "ldt/img/user.png" %}' alt="{% trans "user" %}"/>
{% else %}
- <img src='{% absstatic "ldt/img/group.png" %}' alt="{% trans "group" %}"/>
+ <img src='{% static "ldt/img/group.png" %}' alt="{% trans "group" %}"/>
{% endif %}
</td>
<td style="width: 95%;">{{ elem.name }}</td>
<td>
{% if elem.change %}
- <img class="can_edit" src='{% absstatic "ldt/img/pencil.png" %}' alt="{% trans "share.pencil" %}" />
+ <img class="can_edit" src='{% static "ldt/img/pencil.png" %}' alt="{% trans "share.pencil" %}" />
{% else %}
- <img class="can_view" src='{% absstatic "ldt/img/eye.png" %}' alt="{% trans "share.eye" %}" />
+ <img class="can_view" src='{% static "ldt/img/eye.png" %}' alt="{% trans "share.eye" %}" />
{% endif %}
</td>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/picture.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/picture.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
<script type="text/javascript">
$(document).ready(function () {
@@ -13,7 +13,7 @@
</script>
<div class="clear dropdownlist">
-<img class="shareicon" title="{% trans "choose a profile image" %}" src='{% absstatic "ldt/img/zoom_in.png" %}'/>
+<img class="shareicon" title="{% trans "choose a profile image" %}" src='{% static "ldt/img/zoom_in.png" %}'/>
{% trans "choose a profile image" %}
</div>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/projectslist.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% load i18n %}
{% load thumbnail %}
-{% load absstatic %}
+{% load static %}
{% load front_tags %}
{% if nb_pj_pages %}
@@ -18,48 +18,48 @@
{% for project in projects %}
<tr class="imageline {% cycle 'projectscontentsoddline' 'projectscontentsevenline'%}" >
- {% url ldt.ldt_utils.views.json.project_json_id project.ldt_id as json_url_id %}
+ {% url 'ldt.ldt_utils.views.json.project_json_id' id=project.ldt_id as json_url_id %}
{% if is_gecko %}
- <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project_full project.ldt_id %}">
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url 'index_project_full' id=project.ldt_id %}">
{% if project.change or project.owner == user %}
{% if project.state != 2 %}
- <img src='{% absstatic "ldt/img/page_edit.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_edit.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% else %}
- <img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% endif %}
{% else %}
- <img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% endif %}
</a></div></td>
{% else %}
- <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project project.ldt_id %}" class="ldt_link_open_ldt">
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url 'index_project' id=project.ldt_id %}" class="ldt_link_open_ldt">
{% if project.change or project.owner == user %}
{% if project.state != 2 %}
- <img src='{% absstatic "ldt/img/page_edit.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_edit.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% else %}
- <img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% endif %}
{% else %}
- <img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
+ <img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/>
{% endif %}
</a></div></td>
{% endif %}
- <td class="cellimg"><div class="cellimgdiv"><img src='{% absstatic "ldt/img/page_copy.png" %}' href="{% url ldt.ldt_utils.views.project.copy_project project.ldt_id group_id %}" class="ldt_link_copy_project" alt="{% trans 'copy project' %}" title="{% trans 'copy project' %}"/></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><img src='{% static "ldt/img/page_copy.png" %}' href="{% url 'ldt.ldt_utils.views.project.copy_project' ldt_id=project.ldt_id group_id=group_id %}" class="ldt_link_copy_project" alt="{% trans 'copy project' %}" title="{% trans 'copy project' %}"/></div></td>
<td class="cellimg">
<div class="cellimgdiv">
{% if project.state == 2 %}
- <a href='{% url ldt.ldt_utils.views.workspace.popup_embed %}?json_url={{WEB_URL}}{{json_url_id}}&player_id=player_project_{{project.ldt_id}}&ldt_id={{project.ldt_id}}'>
- <img src='{% absstatic "ldt/img/plugin.png" %}' id="player_project_{{project.ldt_id}}" class="ldt_link_embed" alt="{% trans 'link json by id' %}" title="{% trans 'link json by id' %}"/>
+ <a href='{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}?json_url={{WEB_URL}}{{json_url_id}}&player_id=player_project_{{project.ldt_id}}&ldt_id={{project.ldt_id}}'>
+ <img src='{% static "ldt/img/plugin.png" %}' id="player_project_{{project.ldt_id}}" class="ldt_link_embed" alt="{% trans 'link json by id' %}" title="{% trans 'link json by id' %}"/>
</a>
{% endif %}
</div>
</td>
<td class="cellimg">
{% ifequal project.state 2 %}
- <img src='{% absstatic "ldt/img/icon-yes.gif" %}' {% if project.change or project.owner == user %} alt="{% trans 'Project published, click to unpublish' %}" title="{% trans 'Project published, click to unpublish' %}" class="publishedproject qtiplink" {% else %} class="qtiplink" title="{% trans "You are not allowed to change this project" %}"{% endif %} id="project_{{project.ldt_id}}" /></div>
+ <img src='{% static "ldt/img/icon-yes.gif" %}' {% if project.change or project.owner == user %} alt="{% trans 'Project published, click to unpublish' %}" title="{% trans 'Project published, click to unpublish' %}" class="publishedproject qtiplink" {% else %} class="qtiplink" title="{% trans "You are not allowed to change this project" %}"{% endif %} id="project_{{project.ldt_id}}" /></div>
{% else %}
- <img src='{% absstatic "ldt/img/icon-no.gif" %}' {% if project.change or project.owner == user %} alt="{% trans 'Project not published, click to publish' %}" title="{% trans 'Project not published, click to publish' %}" class="unpublishedproject qtiplink" {% else %} class="qtiplink" title="{% trans "You are not allowed to change this project" %}"{% endif %}id="project_{{project.ldt_id}}" />
+ <img src='{% static "ldt/img/icon-no.gif" %}' {% if project.change or project.owner == user %} alt="{% trans 'Project not published, click to publish' %}" title="{% trans 'Project not published, click to publish' %}" class="unpublishedproject qtiplink" {% else %} class="qtiplink" title="{% trans "You are not allowed to change this project" %}"{% endif %}id="project_{{project.ldt_id}}" />
{% endifequal %}
</td>
<td>{% thumbnail project.image "50x50" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}</td>
@@ -68,7 +68,7 @@
<span class="projecttitlelink infostooltip" data-title="{{ project.title }}" data-desc="{{ project.description|linebreaksbr }}" >{% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}</span>
{% else %}
{% if project.change or project.owner == user %}
- <a class="projecttitlelink" href="{% url ldt.ldt_utils.views.project.update_project ldt_id=project.ldt_id %}"><span class="infostooltip" data-title="{{ project.title }}" data-desc="{{ project.description|linebreaksbr }}" >{% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}</span></a>
+ <a class="projecttitlelink" href="{% url 'ldt.ldt_utils.views.project.update_project' ldt_id=project.ldt_id %}"><span class="infostooltip" data-title="{{ project.title }}" data-desc="{{ project.description|linebreaksbr }}" >{% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}</span></a>
{% else %}
<a class="projecttitlelink"><span class="qtiplink" title="{% trans "You are not allowed to change this project" %}">{% if show_username %}{{ project.owner.username }} : {% endif %}{{ project.title }}</span></a>
{% endif %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/publishedprojectslist.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/publishedprojectslist.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% load i18n %}
{% load thumbnail %}
{% load front_tags %}
-{% load absstatic %}
+{% load static %}
{% if nb_pj_pages %}
<ul class="prev_next_cont_proj" >
@@ -17,29 +17,29 @@
<tbody class="projectscontentsbody">
{% for project in projects %}
<tr class="imageline {% cycle 'projectscontentsoddline' 'projectscontentsevenline'%}" >
- {% url ldt.ldt_utils.views.json.project_json_id project.ldt_id as json_url_id %}
+ {% url 'ldt.ldt_utils.views.json.project_json_id' id=project.ldt_id as json_url_id %}
{% if is_gecko %}
- <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project_full project.ldt_id %}"><img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url 'index_project_full' id=project.ldt_id %}"><img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
{% else %}
- <td class="cellimg"><div class="cellimgdiv"><a href="{% url index_project project.ldt_id %}" class="ldt_link_open_ldt"><img src='{% absstatic "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><a href="{% url 'index_project' id=project.ldt_id %}" class="ldt_link_open_ldt"><img src='{% static "ldt/img/page_eye.png" %}' alt="{% trans 'open ldt' %}" title="{% trans 'open ldt' %}"/></a></div></td>
{% endif %}
- <td class="cellimg"><div class="cellimgdiv"><img src='{% absstatic "ldt/img/page_copy.png" %}' href="{% url ldt.ldt_utils.views.project.copy_project project.ldt_id %}" class="ldt_link_copy_project" alt="{% trans 'copy the project' %}" title="{% trans 'copy the project' %}"/></div></td>
+ <td class="cellimg"><div class="cellimgdiv"><img src='{% static "ldt/img/page_copy.png" %}' href="{% url 'ldt.ldt_utils.views.project.copy_project' ldt_id=project.ldt_id %}" class="ldt_link_copy_project" alt="{% trans 'copy the project' %}" title="{% trans 'copy the project' %}"/></div></td>
<td class="cellimg">
<div class="cellimgdiv">
- <a href='{% url ldt.ldt_utils.views.workspace.popup_embed %}?json_url={{WEB_URL}}{{json_url_id}}&player_id=player_project_{{project.ldt_id}}&ldt_id={{project.ldt_id}}'>
- <img src='{% absstatic "ldt/img/plugin.png" %}' id="player_project_{{project.ldt_id}}" class="ldt_link_embed" alt="{% trans 'link json by id' %}" title="{% trans 'link json by id' %}"/>
+ <a href='{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}?json_url={{WEB_URL}}{{json_url_id}}&player_id=player_project_{{project.ldt_id}}&ldt_id={{project.ldt_id}}'>
+ <img src='{% static "ldt/img/plugin.png" %}' id="player_project_{{project.ldt_id}}" class="ldt_link_embed" alt="{% trans 'link json by id' %}" title="{% trans 'link json by id' %}"/>
</a>
</div>
</td>
<td class="cellimg">
- <img src='{% absstatic "ldt/img/icon-yes.gif" %}' alt="{% trans 'Project published' %}" id="project_{{project.ldt_id}}" />
+ <img src='{% static "ldt/img/icon-yes.gif" %}' alt="{% trans 'Project published' %}" id="project_{{project.ldt_id}}" />
</td>
<td>{% thumbnail project.image "50x50" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}</td>
<td class="projecttitle">
{% ifequal project.state 2 %}
<span class="projectinfos" data-title="{{ project.title }}" data-desc="{{ project.description|linebreaksbr }}">{{ project.title }}</span>
{% else %}
- <a class="projecttitlelink" href="{% url ldt.ldt_utils.views.project.update_project ldt_id=project.ldt_id %} data-desc="{{ project.description|linebreaksbr }}">{{ project.title }}</a>
+ <a class="projecttitlelink" href="{% url 'ldt.ldt_utils.views.project.update_project' ldt_id=project.ldt_id %} data-desc="{{ project.description|linebreaksbr }}">{{ project.title }}</a>
{% endifequal %}
</td>
</tr>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/sharewith.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/partial/sharewith.html Fri May 24 21:55:08 2013 +0200
@@ -1,12 +1,12 @@
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% for res in elem_list %}
<tr class="shareline">
<td class="firstcolsharetable">
{% if res.type == "user" %}
- <img src='{% absstatic "ldt/img/user.png" %}' alt="{% trans "user" %}"/>
+ <img src='{% static "ldt/img/user.png" %}' alt="{% trans "user" %}"/>
{% else %}
- <img src='{% absstatic "ldt/img/group.png" %}' alt={% trans "group" %}"/>
+ <img src='{% static "ldt/img/group.png" %}' alt={% trans "group" %}"/>
{% endif %}
</td>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/published_projects.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/published_projects.html Fri May 24 21:55:08 2013 +0200
@@ -1,25 +1,25 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{block.super}}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}' ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.history.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}' ></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.history.js" %}'></script>
{% endblock %}
{% block js_declaration %}
{{block.super}}
<script type="text/javascript">
-var content_filter_url = "{% url ldt.ldt_utils.views.content.contents_filter filter_c='__FILTER__' %}";
-var project_filter_url = "{% url ldt.ldt_utils.views.project.projects_filter filter='__FILTER__' is_owner='false' status='2' %}";
-var publish_project_url = "{% url ldt.ldt_utils.views.project.publish '__PROJECT_ID__' %}";
-var unpublish_project_url = "{% url ldt.ldt_utils.views.project.unpublish '__PROJECT_ID__' %}";
+var content_filter_url = "{% url 'ldt.ldt_utils.views.content.contents_filter' filter_c='__FILTER__' %}";
+var project_filter_url = "{% url 'ldt.ldt_utils.views.project.projects_filter' filter='__FILTER__' is_owner='false' status='2' %}";
+var publish_project_url = "{% url 'ldt.ldt_utils.views.project.publish' id='__PROJECT_ID__' %}";
+var unpublish_project_url = "{% url 'ldt.ldt_utils.views.project.unpublish' id='__PROJECT_ID__' %}";
function init_events(base_node) {
- init_events_all(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", content_filter_url, project_filter_url, publish_project_url, unpublish_project_url);
+ init_events_all(base_node, "{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}", content_filter_url, project_filter_url, publish_project_url, unpublish_project_url);
}
var global_csrf_token = "{{ csrf_token }}";
@@ -69,7 +69,7 @@
{% block css_import %}
{{block.super}}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' type="text/css"/>
{% endblock %}
{% block content %}
@@ -80,7 +80,7 @@
</div>
<div class="span-12 last projectscontentsdiv" id="autre">
<form method="get" id="my_form"
- action="{% url ldt.ldt_utils.views.workspace.search_index %}"
+ action="{% url 'ldt.ldt_utils.views.workspace.search_index' %}"
accept-charset="utf-8">
<table>
{{ form.as_table }}
@@ -91,9 +91,9 @@
<div class="span-12 last" id="projectsdiv">
<div class="span-12 last titlediv" >
<div class="span-8 projectscontentstitle" >{% trans "Published projects" %}
- <a class='ldt_link_create_project' href="{% url ldt.ldt_utils.views.project.create_ldt_view %}" ><img class='icon_title' src='{% absstatic "ldt/img/page_add_large.png" %}' alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
+ <a class='ldt_link_create_project' href="{% url 'ldt.ldt_utils.views.project.create_ldt_view' %}" ><img class='icon_title' src='{% static "ldt/img/page_add_large.png" %}' alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
<div class="span-4 last searchfielddiv" >
- <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% absstatic "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}'/></div>
+ <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% static "ldt/img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}'/></div>
</div>
</div>
<div class="span-12 last projectscontentsdiv" id="projectslistcontainer">
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/reset_confirm.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/reset_confirm.html Fri May 24 21:55:08 2013 +0200
@@ -1,18 +1,18 @@
{% extends "ldt/ldt_utils/workspace_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of creation of content #}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/reset_confirm_popup.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/reset_confirm_popup.html Fri May 24 21:55:08 2013 +0200
@@ -1,18 +1,18 @@
{% extends "ldt/ldt_raw_base.html" %}
-{% load absstatic %}
+{% load static %}
{% load i18n %} {# form of creation of content #}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
{% endblock %}
{% block css_import %}
{{ block.super }}
{{ content_form.media.css }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
{% endblock %}
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,5 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absurl %}
{% block js_declaration %}
<script type="text/javascript">
@@ -21,8 +20,8 @@
{% block content %}
<form method="post" id="my_form"
- {% comment %}action="{% absurl ldt.ldt_utils.views.workspace.search_index %}"{% endcomment %}
- action="{% url ldt.ldt_utils.views.workspace.search_index %}"
+ {% comment %}action="{% url 'ldt.ldt_utils.views.workspace.search_index' %}"{% endcomment %}
+ action="{% url 'ldt.ldt_utils.views.workspace.search_index' %}"
accept-charset="utf-8">
{% csrf_token %}
<table>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_results.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/search_results.html Fri May 24 21:55:08 2013 +0200
@@ -1,15 +1,15 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{ block.super }}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
{% endblock %}
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' />
<style type="text/css">
.titleresults {
@@ -41,7 +41,7 @@
{{ block.super }}
<script type="text/javascript">
$(document).ready(function(){
- init_events_all(document, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", '', '', '', '');
+ init_events_all(document, "{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}", '', '', '', '');
});
</script>
{% endblock %}
@@ -75,9 +75,9 @@
{% for segment in res.list %}
<li class="segmentinfos" >
{% if user.is_staff %}
- <a style="float:right;" onclick="return confirm('{% trans "Are you sure you want to delete this annotation ? You cannot undo this action." %}');" href="{% url delete_segment segment.project_id segment.iri_id segment.ensemble_id segment.cutting_id segment.element_id %}" title='{% trans "Delete permantly the current annotation" %}'><img src='{% absstatic "ldt/img/close.png" %}'/></a>
+ <a style="float:right;" onclick="return confirm('{% trans "Are you sure you want to delete this annotation ? You cannot undo this action." %}');" href="{% url 'delete_segment' segment.project_id segment.iri_id segment.ensemble_id segment.cutting_id segment.element_id %}" title='{% trans "Delete permantly the current annotation" %}'><img src='{% static "ldt/img/close.png" %}'/></a>
{% endif %}
- <span class="" title="{% trans 'open ldt' %}"><a class="ldt_link_open_ldt" href="{% url ldt.ldt_utils.views.lignesdetemps.index_segment segment.project_id segment.iri_id segment.ensemble_id segment.cutting_id segment.element_id %}">
+ <span class="" title="{% trans 'open ldt' %}"><a class="ldt_link_open_ldt" href="{% url 'ldt.ldt_utils.views.lignesdetemps.index_segment' segment.project_id segment.iri_id segment.ensemble_id segment.cutting_id segment.element_id %}">
{% if segment.title %}
{{ segment.title }}
{% else %}
@@ -102,7 +102,7 @@
<div class="pagination">
<span class="step-links">
{% if results.has_previous %}
- <a href="{% url ldt.ldt_utils.views.workspace.search_index %}?page={{ results.previous_page_number }}&search={{search}}&field={{field}}">{% trans "previous" %}</a>
+ <a href="{% url 'ldt.ldt_utils.views.workspace.search_index' %}?page={{ results.previous_page_number }}&search={{search}}&field={{field}}">{% trans "previous" %}</a>
{% endif %}
{% if results.paginator.num_pages > 1 %}
@@ -112,7 +112,7 @@
{% endif %}
{% if results.has_next %}
- <a href="{% url ldt.ldt_utils.views.workspace.search_index %}?page={{ results.next_page_number }}&search={{search}}&field={{field}}">{% trans "next" %}</a>
+ <a href="{% url 'ldt.ldt_utils.views.workspace.search_index' %}?page={{ results.next_page_number }}&search={{search}}&field={{field}}">{% trans "next" %}</a>
{% endif %}
</span>
</div>
--- a/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/workspace_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/templates/ldt/ldt_utils/workspace_base.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,11 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{block.super}}
- <script type="text/javascript" src="{% url ldt.jsi18n packages='ldt' %}" ></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/projectscontents.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.history.js" %}'></script>
+ <script type="text/javascript" src="{% url 'ldt.jsi18n' packages='ldt' %}" ></script>
+ <script type="text/javascript" src='{% static "ldt/js/projectscontents.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.history.js" %}'></script>
{% endblock %}
@@ -13,13 +13,13 @@
{{block.super}}
<script type="text/javascript">
-var content_filter_url = "{% url ldt.ldt_utils.views.content.contents_filter filter_c='__FILTER__' %}";
-var project_filter_url = "{% url ldt.ldt_utils.views.project.projects_filter filter='__FILTER__' is_owner='true' status='0' %}";
-var publish_project_url = "{% url ldt.ldt_utils.views.project.publish '__PROJECT_ID__' %}";
-var unpublish_project_url = "{% url ldt.ldt_utils.views.project.unpublish '__PROJECT_ID__' %}";
+var content_filter_url = "{% url 'ldt.ldt_utils.views.content.contents_filter' filter_c='__FILTER__' %}";
+var project_filter_url = "{% url 'ldt.ldt_utils.views.project.projects_filter' filter='__FILTER__' is_owner='true' status='0' %}";
+var publish_project_url = "{% url 'ldt.ldt_utils.views.project.publish' id='__PROJECT_ID__' %}";
+var unpublish_project_url = "{% url 'ldt.ldt_utils.views.project.unpublish' id='__PROJECT_ID__' %}";
function init_events(base_node) {
- init_events_all(base_node, "{% url ldt.ldt_utils.views.workspace.popup_embed %}", content_filter_url, project_filter_url, publish_project_url, unpublish_project_url);
+ init_events_all(base_node, "{% url 'ldt.ldt_utils.views.workspace.popup_embed' %}", content_filter_url, project_filter_url, publish_project_url, unpublish_project_url);
}
var global_csrf_token = "{{ csrf_token }}";
@@ -89,7 +89,7 @@
{% block css_import %}
{{block.super}}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' type="text/css"/>
{% endblock %}
{% block content %}
@@ -97,12 +97,12 @@
<div class="span-12" id="contentsdiv">
<div class="span-12 last titlediv" >
<div class="span-8 projectscontentstitle">{% trans "content list" %}
- <a class='content_link_create' href="{% url ldt.ldt_utils.views.content.write_content %}" ><img class='icon_title' src='{% absstatic "ldt/img/film_add.png" %}' alt="{% trans 'Create content' %}" title="{% trans 'Create content' %}" /></a></div>
+ <a class='content_link_create' href="{% url 'ldt.ldt_utils.views.content.write_content' %}" ><img class='icon_title' src='{% static "ldt/img/film_add.png" %}' alt="{% trans 'Create content' %}" title="{% trans 'Create content' %}" /></a></div>
<div class="span-4 last searchfielddiv" >
<div class="searchfield rounded">
<input id="searchcontentsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" />
- <img id="contentsajaxloader" class="searchajaxloader" src='{% absstatic "ldt//img/ajax-loader-16x16.gif" %}' alt="loader"/>
- <img id="contentsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}' />
+ <img id="contentsajaxloader" class="searchajaxloader" src='{% static "ldt//img/ajax-loader-16x16.gif" %}' alt="loader"/>
+ <img id="contentsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}' />
</div>
</div>
</div>
@@ -113,9 +113,9 @@
<div class="span-12 last" id="projectsdiv">
<div class="span-12 last titlediv" >
<div class="span-8 projectscontentstitle" >{% trans "My projects" %}
- <a class='ldt_link_create_project' href="{% url ldt.ldt_utils.views.project.create_ldt_view %}" ><img class='icon_title' src='{% absstatic "ldt/img/page_add_large.png" %}' alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
+ <a class='ldt_link_create_project' href="{% url 'ldt.ldt_utils.views.project.create_ldt_view' %}" ><img class='icon_title' src='{% static "ldt/img/page_add_large.png" %}' alt="{% trans 'Create project' %}" title="{% trans 'Create project' %}" /></a></div>
<div class="span-4 last searchfielddiv" >
- <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% absstatic "ldt//img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% absstatic "ldt/img/clear-left.png" %}'/></div>
+ <div class="searchfield rounded"><input id="searchprojectsinput" class="searchfieldinput searchfieldinputbase" placeholder="{% trans 'search' %}" type="text" /><img id="projectsajaxloader" class="searchajaxloader" src='{% static "ldt//img/ajax-loader-16x16.gif" %}' alt="loader"/><img id="projecsclear" class="searchclear" src='{% static "ldt/img/clear-left.png" %}'/></div>
</div>
</div>
<div class="span-12 last projectscontentsdiv" id="projectslistcontainer">
--- a/src/ldt/ldt/ldt_utils/tests/content_tests.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/tests/content_tests.py Fri May 24 21:55:08 2013 +0200
@@ -6,20 +6,23 @@
"""
from django.conf import settings
+from django.contrib.auth import get_user_model, create_superuser
from django.utils._os import WindowsError
-from ldt.ldt_utils.models import User, Content, Media
+from ldt.ldt_utils.models import Content, Media
from ldt.test.client import Client
from ldt.test.testcases import TestCase
import logging
import os
+User = get_user_model()
+
class ContentTest(TestCase):
fixtures = ['base_data.json', 'user_data.json']
def setUp(self):
self.client = Client()
- User.objects.create_superuser('blop', 'blop@blop.com', 'blop')
+ create_superuser('blop', 'blop@blop.com', 'blop')
_ = self.client.login(username='blop', password='blop')
--- a/src/ldt/ldt/ldt_utils/tests/ldt_tests.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/tests/ldt_tests.py Fri May 24 21:55:08 2013 +0200
@@ -5,7 +5,8 @@
Replace these with more appropriate tests for your application.
"""
-from ldt.ldt_utils.models import User, Project, Content
+from django.contrib.auth import get_user_model
+from ldt.ldt_utils.models import Project, Content
from ldt.ldt_utils.utils import (LdtUtils, LdtAnnotation, create_ldt,
create_empty_iri, copy_ldt)
from ldt.test.client import Client
@@ -15,6 +16,8 @@
import tempfile
import uuid
+User = get_user_model()
+
class UtilsTest(TestCase):
fixtures = ['base_data.json', 'user_data.json']
@@ -80,7 +83,7 @@
query = base64.urlsafe_b64encode(search.encode('utf8'))
self.project.contents.add(self.cont3, self.cont4)
- ldoc = self.LU.generate_init([field, query], 'ldt.ldt_utils.views.lignesdetemps.search_ldt', 'ldt.ldt_utils.views.lignesdetemps.search_segments')
+ ldoc = self.LU.generate_init({'field':field, 'query':query}, 'ldt.ldt_utils.views.lignesdetemps.search_ldt', 'ldt.ldt_utils.views.lignesdetemps.search_segments')
self.assertEqual(ldoc.xpath("/iri/files/init")[0].tag, "init")
self.assertEqual(ldoc.xpath("/iri/files/library")[0].tag, "library")
def test_create_ldt(self):
--- a/src/ldt/ldt/ldt_utils/tests/media_tests.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/tests/media_tests.py Fri May 24 21:55:08 2013 +0200
@@ -5,10 +5,13 @@
Replace these with more appropriate tests for your application.
"""
-from ldt.ldt_utils.models import User, Media
+from django.contrib.auth import get_user_model
+from ldt.ldt_utils.models import Media
from ldt.test.client import Client
from ldt.test.testcases import TestCase
+User = get_user_model()
+
class MediaTest(TestCase):
fixtures = ['base_data.json', 'user_data.json']
--- a/src/ldt/ldt/ldt_utils/tests/project_tests.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/tests/project_tests.py Fri May 24 21:55:08 2013 +0200
@@ -5,14 +5,16 @@
Replace these with more appropriate tests for your application.
"""
+from django.contrib.auth import get_user_model
from django.core.management import call_command
-from ldt.ldt_utils.models import User, Project, Content
+from ldt.ldt_utils.models import Project, Content
from ldt.ldt_utils.utils import LdtUtils, LdtAnnotation, create_ldt
from ldt.test.client import Client
from ldt.test.testcases import TestCase
import lxml.etree
import uuid
+User = get_user_model()
class ProjectTest(TestCase):
--- a/src/ldt/ldt/ldt_utils/urls.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/urls.py Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-from django.conf.urls.defaults import patterns, url, include
+from django.conf.urls import patterns, url, include
from ldt.management import test_ldt
# Uncomment the next two lines to enable the admin:
--- a/src/ldt/ldt/ldt_utils/utils.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/utils.py Fri May 24 21:55:08 2013 +0200
@@ -3,7 +3,6 @@
from django.utils.translation import ugettext as _
from StringIO import StringIO
import datetime
-import django.core.urlresolvers
import lxml.etree #@UnresolvedImport
import uuid
from ldt.utils.url import request_with_auth
@@ -147,10 +146,9 @@
elementFiles = lxml.etree.SubElement(iri, 'files')
elementInit = lxml.etree.SubElement(elementFiles, 'init')
elementfile = lxml.etree.SubElement(elementInit, 'file')
- elementfile.set('src', absurl_norequest(method, args=url))
- elementfile.set('src', django.core.urlresolvers.reverse(method, args=url))
+ elementfile.set('src', absurl_norequest(method, kwargs=url))
if(search):
- elementfile.set("segsel", absurl_norequest(search, args=url))
+ elementfile.set("segsel", absurl_norequest(search, kwargs=url))
lxml.etree.SubElement(elementFiles, 'recent')
lxml.etree.SubElement(elementFiles, 'library')
--- a/src/ldt/ldt/ldt_utils/views/content.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/content.py Fri May 24 21:55:08 2013 +0200
@@ -230,7 +230,7 @@
img_temp.write(r.content)
img_temp.flush()
picture_form.cleaned_data["image"]=File(img_temp)
- except Exception as inst:
+ except Exception:
logging.debug("couldn't download video thumbnail from image_link : " + str(image_link))
if media_valid and content_valid and picture_valid:
@@ -443,7 +443,6 @@
@transaction.commit_manually
def delete_content(request, iri_id=None):
#Delete the project, the media if exists, and the content
- errors_transaction=[]
if not iri_id:
iri_id = request.REQUEST.get("iri_id", None)
if iri_id:
--- a/src/ldt/ldt/ldt_utils/views/front.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/front.py Fri May 24 21:55:08 2013 +0200
@@ -1,20 +1,22 @@
from django.conf import settings
+from django.contrib.auth import get_user_model
from django.contrib.auth.decorators import login_required
-from django.contrib.auth.models import Group, User
+from django.contrib.auth.models import Group
from django.core.paginator import Paginator, InvalidPage, EmptyPage
from django.core.urlresolvers import reverse
from django.db.models import Count
from django.shortcuts import render_to_response
from django.template import RequestContext
+from ldt.ldt_utils.forms import SearchForm
from ldt.ldt_utils.models import Content, Project
-from ldt.ldt_utils.forms import SearchForm
from ldt.ldt_utils.views.content import get_content_tags
from ldt.ldt_utils.views.group import get_group_projects
from ldt.ldt_utils.views.workspace import get_search_results
+from ldt.utils.url import static
from tagging.models import TaggedItem
-from ldt.utils.url import absstatic
+import logging
-import logging
+User = get_user_model()
logger = logging.getLogger(__name__)
@@ -24,7 +26,7 @@
# Get the most annotated contents
most_contents = Content.safe_objects.order_by('-stat_annotation__nb_annotations').select_related('stat_annotation')[:8]
# Get the active groups
- active_groups = Group.objects.select_related("profile").annotate(nb_users=Count("user")).exclude(name=settings.PUBLIC_GROUP_NAME)[:5]
+ active_groups = Group.objects.select_related("profile").annotate(nb_users=Count("ldtuser")).exclude(name=settings.PUBLIC_GROUP_NAME)[:5]
# Get the main tag list
front_tags = settings.FRONT_TAG_LIST
# Get the all tags list
@@ -149,9 +151,9 @@
player_id = "player_project_" + proj.ldt_id
if cutting_id is None :
- json_url = reverse("ldt.ldt_utils.views.json.project_json_id", args=[proj.ldt_id])
+ json_url = reverse("ldt.ldt_utils.views.json.project_json_id", kwargs={'id' : proj.ldt_id})
else:
- json_url = reverse("ldt.ldt_utils.views.json.project_json_cutting_id", args=[proj.ldt_id, cutting_id])
+ json_url = reverse("ldt.ldt_utils.views.json.project_json_cutting_id", kwargs={'id':proj.ldt_id, 'cutting_id':cutting_id})
player_width = 550
player_height = 380
stream_mode = proj.stream_mode
@@ -175,9 +177,9 @@
search = ''
field = 'all'
content_tag = None
- colorurl=absstatic(request, "ldt/swf/ldt/pkg/color.xml")
- i18nurl=absstatic(request, "ldt/swf/ldt/pkg/i18n")
- baseurl=absstatic(request, "ldt/swf/ldt/")
+ colorurl=static("ldt/swf/ldt/pkg/color.xml")
+ i18nurl=static("ldt/swf/ldt/pkg/i18n")
+ baseurl=static("ldt/swf/ldt/")
sform = SearchForm(request.GET)
if sform.is_valid():
search = sform.cleaned_data["search"]
--- a/src/ldt/ldt/ldt_utils/views/group.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/group.py Fri May 24 21:55:08 2013 +0200
@@ -1,13 +1,15 @@
from django.conf import settings
from django.contrib.auth.decorators import login_required
from django.contrib.auth.models import Group
+from django.db import transaction
from django.http import HttpResponseServerError
from django.shortcuts import render_to_response, get_object_or_404, redirect
from django.template import RequestContext
+from guardian.shortcuts import (remove_perm, get_objects_for_group,
+ get_objects_for_user)
from ldt.ldt_utils.forms import GroupAddForm
-from guardian.shortcuts import remove_perm, get_objects_for_group, get_objects_for_user
+from ldt.security.cache import get_cached_checker, cached_assign
from ldt.security.utils import add_change_attr, get_userlist, get_userlist_group
-from ldt.security.cache import get_cached_checker, cached_assign
from ldt.user.forms import PictureForm
@@ -45,6 +47,7 @@
@login_required
+@transaction.commit_on_success
def create_group(request):
if not request.user.has_perm('auth.add_group'):
return HttpResponseServerError('<h1>User %s can not create a group.</h1>' % request.user.username)
@@ -96,6 +99,7 @@
'elem_list' : get_userlist(request.user), 'profile_picture_form': picture_form}, context_instance=RequestContext(request))
@login_required
+@transaction.commit_on_success
def update_group(request, group_id):
group = get_object_or_404(Group, id=group_id)
checker = get_cached_checker(request.user)
@@ -164,12 +168,12 @@
@login_required
-def groups_filter(request, filter):
- if filter and len(filter) > 0 and filter[0] == '_':
- filter = filter[1:]
+def groups_filter(request, g_filter):
+ if g_filter and len(g_filter) > 0 and g_filter[0] == '_':
+ g_filter = g_filter[1:]
if filter:
- group_list = request.user.groups.filter(name__icontains=filter)
+ group_list = request.user.groups.filter(name__icontains=g_filter)
search_active = True
else:
group_list = request.user.groups.all()
--- a/src/ldt/ldt/ldt_utils/views/json.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/json.py Fri May 24 21:55:08 2013 +0200
@@ -17,21 +17,21 @@
logger = logging.getLogger(__name__)
-def project_json_id(request, id):
+def project_json_id(request, id): # @ReservedAssignment
project = get_object_or_404(Project.safe_objects, ldt_id=id)
return project_json(request, project, False)
-def project_json_cutting_id(request, id, cutting_id):
+def project_json_cutting_id(request, id, cutting_id): # @ReservedAssignment
project = get_object_or_404(Project.safe_objects, ldt_id=id)
return project_json(request, project, first_cutting=cutting_id)
-def project_json_externalid(request, id):
+def project_json_externalid(request, id): # @ReservedAssignment
- res_proj = get_list_or_404(Project.safe_objects.order_by('-modification_date'), contents__external_id=id) #@UndefinedVariable
+ res_proj = get_list_or_404(Project.safe_objects.order_by('-modification_date'), contents__external_id=id)
return project_json(request, res_proj[0], False)
--- a/src/ldt/ldt/ldt_utils/views/lignesdetemps.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/lignesdetemps.py Fri May 24 21:55:08 2013 +0200
@@ -12,7 +12,7 @@
from ldt.security.permissionchecker import check_object_perm_for_user
from ldt.security.utils import set_forbidden_stream
from ldt.utils.projectldt_parser import absolute_src_xml, relative_src_xml
-from ldt.utils.url import absstatic, absurl
+from ldt.utils.url import static, absurl, absstatic
from ldt.utils.web_url_management import get_web_url
import base64
import logging
@@ -24,17 +24,17 @@
language_code = request.LANGUAGE_CODE[:2]
- url = absurl(request, "ldt.ldt_utils.views.lignesdetemps.search_init", args=[field, query])
- colorurl=absstatic(request, "ldt/swf/ldt/pkg/color.xml")
- i18nurl=absstatic(request, "ldt/swf/ldt/pkg/i18n")
- baseurl=absstatic(request, "ldt/swf/ldt/")
+ url = absurl(request, "ldt.ldt_utils.views.lignesdetemps.search_init", kwargs={'field':field, 'query':query})
+ colorurl=static("ldt/swf/ldt/pkg/color.xml")
+ i18nurl=static("ldt/swf/ldt/pkg/i18n")
+ baseurl=static("ldt/swf/ldt/")
return render_to_response('ldt/ldt_utils/init_ldt.html', {'colorurl': colorurl, 'i18nurl': i18nurl, 'language': language_code, 'baseurl': baseurl, 'url': url}, context_instance=RequestContext(request))
def search_init(request, field, query):
ldtgen = LdtUtils()
- doc = ldtgen.generate_init([field, query], 'ldt.ldt_utils.views.lignesdetemps.search_ldt', 'ldt.ldt_utils.views.lignesdetemps.search_segments')
+ doc = ldtgen.generate_init({'field':field, 'query':query}, 'ldt.ldt_utils.views.lignesdetemps.search_ldt', 'ldt.ldt_utils.views.lignesdetemps.search_segments')
resp = HttpResponse(mimetype="text/xml;charset=utf-8")
resp.write(lxml.etree.tostring(doc, pretty_print=True, encoding="utf-8"))
@@ -86,14 +86,14 @@
def index_segment(request, project_id, content_id, cutting_id, ensemble_id, segment_id):
- url_str = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init_segment", args=[project_id, content_id, ensemble_id, cutting_id, segment_id])
+ url_str = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init_segment", kwargs={'project_id':project_id, 'content_id':content_id, 'ensemble_id':ensemble_id, 'cutting_id':cutting_id, 'segment_id':segment_id})
post_url = ""
language_code = request.LANGUAGE_CODE[:2]
readonly = 'true'
template_path = 'ldt/ldt_utils/init_ldt.html'
- colorurl=absstatic(request, "ldt/swf/ldt/pkg/color.xml")
- i18nurl=absstatic(request, "ldt/swf/ldt/pkg/i18n")
- baseurl=absstatic(request, "ldt/swf/ldt/")
+ colorurl=static("ldt/swf/ldt/pkg/color.xml")
+ i18nurl=static("ldt/swf/ldt/pkg/i18n")
+ baseurl=static("ldt/swf/ldt/")
return render_to_response(template_path, {'colorurl': colorurl, 'i18nurl': i18nurl, 'language': language_code, 'baseurl': baseurl, 'url': url_str, 'posturl': post_url, 'id': id, 'readonly': readonly}, context_instance=RequestContext(request))
def init_segment(request, project_id, content_id, ensemble_id, cutting_id, segment_id):
@@ -102,7 +102,7 @@
get_object_or_404(Project.safe_objects, ldt_id=project_id)
ldtgen = LdtUtils()
- doc = ldtgen.generate_init([project_id, content_id, ensemble_id, cutting_id, segment_id], 'ldt.ldt_utils.views.lignesdetemps.ldt_segment', 'ldt.ldt_utils.views.lignesdetemps.highlight_segment')
+ doc = ldtgen.generate_init({'project_id':project_id, 'content_id':content_id, 'ensemble_id':ensemble_id, 'cutting_id':cutting_id, 'segment_id':segment_id}, 'ldt.ldt_utils.views.lignesdetemps.ldt_segment', 'ldt.ldt_utils.views.lignesdetemps.highlight_segment')
return HttpResponse(lxml.etree.tostring(lxml.etree.ElementTree(doc), pretty_print=True), mimetype="text/xml;charset=utf-8")
def highlight_segment(request, project_id, content_id, ensemble_id, cutting_id, segment_id):
@@ -186,14 +186,14 @@
@login_required
-def index_project(request, id, full=False):
+def index_project(request, id, full=False): # @ReservedAssignment
- urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", args=['ldt_project', id])
+ urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", kwargs={'method':'ldt_project', 'url':id})
posturl = absurl(request, "ldt.ldt_utils.views.lignesdetemps.save_ldt_project")
language_code = request.LANGUAGE_CODE[:2]
- colorurl = absstatic(request, "ldt/swf/ldt/pkg/color.xml")
- i18nurl = absstatic(request, "ldt/swf/ldt/pkg/i18n")
- baseurl = absstatic(request, "ldt/swf/ldt/")
+ colorurl = static("ldt/swf/ldt/pkg/color.xml")
+ i18nurl = static("ldt/swf/ldt/pkg/i18n")
+ baseurl = static("ldt/swf/ldt/")
audio_record_url = None
try:
@@ -222,9 +222,9 @@
context_instance=RequestContext(request))
-def embed_ldt(request, id):
+def embed_ldt(request, id): # @ReservedAssignment
# Almost identical to index_project but without login_required and less parameters
- urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", args=['ldt_project', id])
+ urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", kwargs={'method':'ldt_project', 'url':id})
posturl = ""
language_code = request.LANGUAGE_CODE[:2]
colorurl = absstatic(request, "ldt/swf/ldt/pkg/color.xml")
@@ -235,7 +235,7 @@
template_path = 'ldt/ldt_utils/embed_ldt.html'
try:
- ldt = Project.safe_objects.get(ldt_id=id)
+ _ = Project.safe_objects.get(ldt_id=id)
except Project.DoesNotExist:
return HttpResponseRedirect(reverse("ldt.ldt_utils.views.workspace.home"))
@@ -245,7 +245,7 @@
def init(request, method, url):
ldtgen = LdtUtils()
- doc = ldtgen.generate_init([url], 'ldt.ldt_utils.views.lignesdetemps.' + method, None)
+ doc = ldtgen.generate_init({'id':url}, 'ldt.ldt_utils.views.lignesdetemps.' + method, None)
library = doc.xpath('/iri/files/library')[0]
for c in Content.safe_objects.all().select_related("media_obj"):
@@ -268,7 +268,7 @@
resp.write(lxml.etree.tostring(doc, pretty_print=True, xml_declaration=True, encoding="utf-8"))
return resp
-def ldt_project(request, id):
+def ldt_project(request, id): # @ReservedAssignment
resp = HttpResponse(mimetype="text/xml")
resp['Cache-Control'] = 'no-cache, must-revalidate'
resp['Pragma'] = 'no-cache'
@@ -359,7 +359,7 @@
def index(request, url):
- urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", args=['ldt', url])
+ urlStr = absurl(request, "ldt.ldt_utils.views.lignesdetemps.init", kwargs={'method':'ldt', 'url':url})
language_code = request.LANGUAGE_CODE[:2]
colorurl=absstatic(request, "ldt/swf/ldt/pkg/color.xml")
i18nurl=absstatic(request, "ldt/swf/ldt/pkg/i18n")
--- a/src/ldt/ldt/ldt_utils/views/project.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/project.py Fri May 24 21:55:08 2013 +0200
@@ -3,17 +3,18 @@
from django.contrib.auth.models import Group
from django.core.urlresolvers import reverse
from django.db.models import Q
-from django.http import HttpResponse, HttpResponseRedirect, HttpResponseServerError
+from django.http import (HttpResponse, HttpResponseRedirect,
+ HttpResponseServerError)
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
from django.utils import simplejson
from django.utils.translation import ugettext as _
+from guardian.shortcuts import get_objects_for_group, get_objects_for_user
from ldt.ldt_utils.forms import LdtAddForm, AddProjectForm, CopyProjectForm
-from guardian.shortcuts import get_objects_for_group, get_objects_for_user
from ldt.ldt_utils.models import Content, Project
from ldt.ldt_utils.utils import boolean_convert
-from ldt.security.utils import (assign_perm_to_obj, add_change_attr, get_userlist,
- get_userlist_model)
+from ldt.security.utils import (assign_perm_to_obj, add_change_attr, get_userlist,
+ get_userlist_model)
from ldt.user.forms import PictureForm
import lxml.etree
import math
@@ -44,9 +45,9 @@
form_status = "saved"
is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
if is_gecko :
- redirect_to = reverse('index_project_full', args=[project.ldt_id])
+ redirect_to = reverse('index_project_full', kwargs={'id':project.ldt_id})
else:
- return HttpResponseRedirect(reverse('index_project', args=[project.ldt_id]))
+ return HttpResponseRedirect(reverse('index_project', kwargs={'id':project.ldt_id}))
else:
form = LdtAddForm()
@@ -88,14 +89,14 @@
# Modal window is not used with firefox
is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
if is_gecko :
- redirect_to = reverse('index_project_full', args=[project.ldt_id])
+ redirect_to = reverse('index_project_full', kwargs={'id':project.ldt_id})
else:
- return HttpResponseRedirect(reverse('index_project', args=[project.ldt_id]))
+ return HttpResponseRedirect(reverse('index_project', kwargs={'id':project.ldt_id}))
else:
form = AddProjectForm()
return render_to_response('ldt/ldt_utils/create_ldt.html', {'form':form, 'form_status': form_status, 'contents':contents,'groups' : groups,
- 'redirect_to': redirect_to, 'elem_list': get_userlist(request.user), 'create_project_action':reverse("ldt.ldt_utils.views.project.create_project", args=[iri_id])}, context_instance=RequestContext(request))
+ 'redirect_to': redirect_to, 'elem_list': get_userlist(request.user), 'create_project_action':reverse("ldt.ldt_utils.views.project.create_project", kwargs={'iri_id':iri_id})}, context_instance=RequestContext(request))
@login_required
def update_project(request, ldt_id):
@@ -173,7 +174,7 @@
return render_to_response('ldt/ldt_utils/create_ldt.html', {'form':form, 'form_status':form_status, 'groups': groups, 'elem_list': get_userlist(request.user),
'ldt_id': ldt_id, 'contents':contents, 'display_reset':display_reset, 'member_list': member_list, 'admin_list': admin_list,
- 'create_project_action':reverse("ldt.ldt_utils.views.project.update_project", args=[ldt_id]),
+ 'create_project_action':reverse("ldt.ldt_utils.views.project.update_project", kwargs={'ldt_id':ldt_id}),
'profile_picture_form': picture_form}, context_instance=RequestContext(request))
@login_required
@@ -190,9 +191,9 @@
project = project.copy_project(title=form.cleaned_data['title'], user=user, group=group)
is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
if is_gecko:
- return HttpResponseRedirect(reverse('index_project_full', args=[project.ldt_id]))
+ return HttpResponseRedirect(reverse('index_project_full', kwargs={'id':project.ldt_id}))
else:
- return HttpResponseRedirect(reverse('index_project', args=[project.ldt_id]))
+ return HttpResponseRedirect(reverse('index_project', kwargs={'id':project.ldt_id}))
else:
form = CopyProjectForm()
# Modal window is not used with firefox, so we ask to submit the form in _parent in firefox case.
@@ -201,7 +202,7 @@
@login_required
-def projects_filter(request, filter, is_owner=False, status=0, id_group=0):
+def projects_filter(request, filter, is_owner=False, status=0, id_group=0): # @ReservedAssignment
is_owner = boolean_convert(is_owner)
status = int(status)
id_group = int(id_group)
@@ -220,7 +221,7 @@
if filter:
if len(filter) > 0 and filter[0] == '_':
- filter = filter[1:]
+ filter = filter[1:] # @ReservedAssignment
query &= Q(title__icontains=filter)
is_gecko = ((request.META['HTTP_USER_AGENT'].lower().find("firefox")) > -1);
@@ -262,13 +263,13 @@
context_instance=RequestContext(request))
@login_required
-def publish(request, id):
+def publish(request, id): # @ReservedAssignment
ldt = get_object_or_404(Project.safe_objects, ldt_id=id)
ldt.publish()
return HttpResponse(simplejson.dumps({'res':True, 'ldt': {'id': ldt.id, 'state':ldt.state, 'ldt_id': ldt.ldt_id}}, ensure_ascii=False), mimetype='application/json')
@login_required
-def unpublish(request, id):
+def unpublish(request, id): # @ReservedAssignment
ldt = get_object_or_404(Project.safe_objects, ldt_id=id)
ldt.unpublish()
return HttpResponse(simplejson.dumps({'res':True, 'ldt': {'id': ldt.id, 'state':ldt.state, 'ldt_id': ldt.ldt_id}}, ensure_ascii=False), mimetype='application/json')
--- a/src/ldt/ldt/ldt_utils/views/workspace.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/ldt_utils/views/workspace.py Fri May 24 21:55:08 2013 +0200
@@ -23,7 +23,7 @@
from ldt.ldt_utils.views.project import (get_projects_page,
get_published_projects_page)
from ldt.security.utils import add_change_attr, get_userlist
-from ldt.utils.url import absstatic, absurl
+from ldt.utils.url import static, absurl
from ldt.utils.web_url_management import get_web_url
from operator import itemgetter
import base64
@@ -122,7 +122,7 @@
if not project_id :
return HttpResponseForbidden(_("Parameters project_id or content_id must be given in the url"))
- json_url = reverse("projectjson_id", args=[project_id])
+ json_url = reverse("projectjson_id", kwargs={'id':project_id})
player_id = "player_project_" + project_id
ldt_id = project_id
rend_dict = get_datas_for_embed(request, json_url, player_id, ldt_id)
@@ -256,12 +256,12 @@
-def share_filter(request, filter, use_groups=False):
+def share_filter(request, filter, use_groups=False): # @ReservedAssignment
use_groups = boolean_convert(use_groups)
if not filter or len(filter) == 0:
raise AttributeError("filter should be a string")
- filter = filter[1:]
+ filter = filter[1:] # @ReservedAssignment
resp = get_userlist(request.user, filter=filter)
if use_groups:
@@ -288,9 +288,9 @@
results = []
search = ''
field = 'all'
- colorurl=absstatic(request, "ldt/swf/ldt/pkg/color.xml")
- i18nurl=absstatic(request, "ldt/swf/ldt/pkg/i18n")
- baseurl=absstatic(request, "ldt/swf/ldt/")
+ colorurl = static("ldt/swf/ldt/pkg/color.xml")
+ i18nurl = static("ldt/swf/ldt/pkg/i18n")
+ baseurl = static("ldt/swf/ldt/")
sform = SearchForm(request.GET)
if sform.is_valid():
search = sform.cleaned_data["search"]
@@ -299,7 +299,7 @@
page = sform.cleaned_data["page"] or 1
ldt_pres = sform.cleaned_data["ldt_pres"]
if ldt_pres:
- url = absurl(request, "ldt.ldt_utils.views.lignesdetemps.search_init", args=[field, queryStr])
+ url = absurl(request, "ldt.ldt_utils.views.lignesdetemps.search_init", kwargs={'field':field, 'query':queryStr})
return render_to_response('ldt/ldt_utils/init_ldt_full.html', {'colorurl': colorurl, 'i18nurl': i18nurl , 'language': language_code, 'baseurl': baseurl, 'url': url}, context_instance=RequestContext(request))
else:
results, nb, nb_segment = get_search_results(request, search, field, page)
--- a/src/ldt/ldt/management/__init__.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/management/__init__.py Fri May 24 21:55:08 2013 +0200
@@ -1,15 +1,11 @@
from django.conf import settings
-from django.contrib.auth.models import User, Group
+from django.contrib.auth import get_user_model
+from django.contrib.auth.models import Group
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import ObjectDoesNotExist
from django.db.models import signals
-from ldt.user.models import Ldt
-
-def post_save_ldt(instance, raw, created, **kwargs):
- signals.post_save.send(sender=User, instance=instance, raw=raw, created=created)
-
-signals.post_save.connect(post_save_ldt, Ldt)
+User = get_user_model()
def post_save_user(instance, raw, created, **kwargs):
if created:
--- a/src/ldt/ldt/management/commands/testrunserver.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/management/commands/testrunserver.py Fri May 24 21:55:08 2013 +0200
@@ -23,7 +23,8 @@
class Command(RunserverCommand):
def handle(self, addrport='', keep_running=None, ready_event=None, *args, **options):
import django
- from django.core.servers.basehttp import AdminMediaHandler, WSGIServerException
+ from django.core.servers.basehttp import WSGIServerException
+ from django.contrib.staticfiles.handlers import StaticFilesHandler
from django.core.handlers.wsgi import WSGIHandler
if args:
raise CommandError('Usage is testrunserver %s' % self.args)
@@ -56,7 +57,7 @@
translation.activate(settings.LANGUAGE_CODE)
try:
- handler = AdminMediaHandler(WSGIHandler(), admin_media_path)
+ handler = StaticFilesHandler(WSGIHandler(), admin_media_path)
run(addr, int(port), handler, keep_running, ready_event)
except WSGIServerException, e:
# Use helpful error messages instead of ugly tracebacks.
--- a/src/ldt/ldt/management/commands/updateiriurlinprojects.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/management/commands/updateiriurlinprojects.py Fri May 24 21:55:08 2013 +0200
@@ -6,13 +6,12 @@
'''
from ..utils import show_progress
-from django.core.management import call_command
-from django.core.management.base import BaseCommand, CommandError
+from django.core.management.base import BaseCommand
from django.db import transaction
from django.db.models import signals
from ldt.ldt_utils.contentindexer import index_project
-from ldt.ldt_utils.models import Content, Project
-import lxml.etree #@UnresolvedImport
+from ldt.ldt_utils.models import Project
+import lxml.etree
class Command(BaseCommand):
--- a/src/ldt/ldt/security/__init__.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/__init__.py Fri May 24 21:55:08 2013 +0200
@@ -1,14 +1,16 @@
from django.conf import settings
+from django.contrib.auth import get_user_model
from django.contrib.contenttypes.models import ContentType
-from django.contrib.auth.models import User
from django.core.signals import request_started
-from ldt.security.permissionchecker import check_object_perm_for_user
+from ldt.security.permissionchecker import check_object_perm_for_user
+
+User = get_user_model()
try:
from threading import local
except ImportError:
from django.utils._threading_local import local
-
+
_thread_locals = local()
# The function that protect models is called on the first
--- a/src/ldt/ldt/security/cache.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/cache.py Fri May 24 21:55:08 2013 +0200
@@ -1,13 +1,15 @@
from django.core.cache import cache
from django.conf import settings
from guardian.core import ObjectPermissionChecker
-from django.contrib.auth.models import User
+from django.contrib.auth import get_user_model
from django.db.models import Q
from guardian.shortcuts import assign
from django.utils.encoding import smart_str
import re
import hashlib
+User = get_user_model()
+
def get_cached_checker(user):
key_name = get_key(user.username)
--- a/src/ldt/ldt/security/command.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/command.py Fri May 24 21:55:08 2013 +0200
@@ -1,9 +1,12 @@
from django.conf import settings
-from django.contrib.auth.models import Group, User
+from django.contrib.auth import get_user_model
+from django.contrib.auth.models import Group
+from guardian.shortcuts import assign, remove_perm
from ldt.ldt_utils.models import Project, Content
-from guardian.shortcuts import assign, remove_perm
from ldt.management.utils import show_progress
+User = get_user_model()
+
def set_default_permissions(verbose=False, is_migration=False, orm=None):
writer = None
@@ -21,7 +24,7 @@
'Group': Group
}
- everyone, created = Group.objects.get_or_create(name=settings.PUBLIC_GROUP_NAME)
+ everyone, _ = Group.objects.get_or_create(name=settings.PUBLIC_GROUP_NAME)
if verbose:
total = list_model['Project'].objects.count()
--- a/src/ldt/ldt/security/forms.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/forms.py Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,10 @@
from django import forms
-from django.contrib.auth.models import User, Group
+from django.contrib.auth import get_user_model
+from django.contrib.auth.models import Group
from django.forms.widgets import HiddenInput, MultipleHiddenInput
+User = get_user_model()
+
class LazyMultipleChoiceField(forms.MultipleChoiceField):
def validate(self, value):
@@ -31,14 +34,14 @@
users = User.objects.filter(id__in=users)
groups = Group.objects.filter(id__in=groups)
- def create_real_lists(list, users, groups):
+ def create_real_lists(r_list, users, groups):
new_list = []
- for e in list:
- id, cls_name = e.split('-')
+ for e in r_list:
+ obj_id, cls_name = e.split('-')
if cls_name == 'user':
- new_list.append(users.get(id=id))
+ new_list.append(users.get(id=obj_id))
elif cls_name == 'group':
- new_list.append(groups.get(id=id))
+ new_list.append(groups.get(id=obj_id))
return new_list
new_read_list = create_real_lists(read_list, users, groups)
--- a/src/ldt/ldt/security/permissionchecker.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/permissionchecker.py Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,5 @@
+from django.contrib.auth.models import Permission
from django.contrib.contenttypes.models import ContentType
-from django.contrib.auth.models import Permission
from guardian.models import UserObjectPermission, GroupObjectPermission
--- a/src/ldt/ldt/security/utils.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/security/utils.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,9 @@
+from cache import get_cached_userlist, cached_assign
from django.conf import settings
from django.contrib.contenttypes.models import ContentType
from django.core.cache import cache
-from guardian.shortcuts import remove_perm, get_users_with_perms, get_groups_with_perms, get_objects_for_user
-from cache import get_cached_userlist, cached_assign
+from guardian.shortcuts import (remove_perm, get_users_with_perms,
+ get_groups_with_perms, get_objects_for_user)
from ldt.security import change_security
import types
@@ -79,38 +80,38 @@
return obj_list
-def assign_perm_to_obj(object, read_list, write_list, owner):
- name = object.__class__.__name__.lower()
+def assign_perm_to_obj(obj, read_list, write_list, owner):
+ name = obj.__class__.__name__.lower()
- old_users = get_users_with_perms(object).exclude(id=owner.id)
- old_groups = get_groups_with_perms(object)
+ old_users = get_users_with_perms(obj).exclude(id=owner.id)
+ old_groups = get_groups_with_perms(obj)
for elem in read_list:
- cached_assign('view_%s' % name, elem, object)
+ cached_assign('view_%s' % name, elem, obj)
if elem in write_list:
- cached_assign('change_%s' % name, elem, object)
+ cached_assign('change_%s' % name, elem, obj)
else:
- remove_perm('change_%s' % name, elem, object)
+ remove_perm('change_%s' % name, elem, obj)
- def remove_perms(new_list, old_list, obj, name):
+ def remove_perms(new_list, old_list, o, name):
for e in old_list:
if e not in new_list:
- remove_perm('view_%s' % name, e, obj)
- remove_perm('change_%s' % name, e, obj)
+ remove_perm('view_%s' % name, e, o)
+ remove_perm('change_%s' % name, e, o)
- remove_perms(read_list, old_users, object, name)
- remove_perms(read_list, old_groups, object, name)
+ remove_perms(read_list, old_users, obj, name)
+ remove_perms(read_list, old_groups, obj, name)
cache.delete('userlist')
-def get_userlist(user, filter=None):
+def get_userlist(user, filter=None): # @ReservedAssignment
user_list = get_cached_userlist().exclude(id=user.id)
if filter:
user_list = user_list.filter(username__icontains=filter)
elem_list = [{'name': u.username, 'id': u.id, 'type': 'user'} for u in user_list[0:settings.MAX_USERS_SEARCH]]
return elem_list
-def get_userlist_model(object, owner):
+def get_userlist_model(object, owner): # @ReservedAssignment
if hasattr(object, 'is_public') and object.is_public:
return [None, None]
@@ -146,7 +147,7 @@
return [users_list + groups_list, admin_users + admin_groups]
def get_userlist_group(group, user):
- members = group.user_set.all()
+ members = group.ldtuser_set.all()
admin = get_users_with_perms(group)
member_list = []
--- a/src/ldt/ldt/settings.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/settings.py Fri May 24 21:55:08 2013 +0200
@@ -52,7 +52,8 @@
'ldt.ldt_utils.middleware.userprofile.LanguageMiddleware',
))
-
+AUTH_USER_MODEL = getattr(settings, 'AUTH_USER_MODEL','user.LdtUser')
+INITIAL_CUSTOM_USER_MIGRATION = getattr(settings, 'INITIAL_CUSTOM_USER_MIGRATION','0009_rename_auth_user_to_user_ldt_user')
WEB_URL = getattr(settings, 'WEB_URL', '')
WEB_AUTH = getattr(settings, 'WEB_AUTH', [])
@@ -65,6 +66,7 @@
MANAGERS = settings.MANAGERS
INSTALLED_APPS = settings.INSTALLED_APPS
LANGUAGES = settings.LANGUAGES
+AUTH_USER_MODEL = getattr(settings, 'AUTH_USER_MODEL', 'user.LdtUser')
DECOUPAGE_BLACKLIST = getattr(settings, 'DECOUPAGE_BLACKLIST', 'de_PPP')
STREAM_URL = getattr(settings, 'STREAM_URL', '')
STREAM_PATH = getattr(settings, 'STREAM_PATH', '')
@@ -73,8 +75,6 @@
LOG_LEVEL = getattr(settings, 'LOG_LEVEL', logging.INFO)
EMPTY_MEDIA_EXTERNALID = getattr(settings, 'EMPTY_MEDIA_EXTERNALID', None)
-ADMIN_MEDIA_PREFIX = getattr(settings, 'ADMIN_MEDIA_PREFIX', None)
-
TEST_WEBSERVER_ADDRPORT = getattr(settings, 'TEST_WEBSERVER_ADDRPORT', '127.0.0.1:8000')
ACCOUNT_ACTIVATION_DAYS = getattr(settings, 'ACCOUNT_ACTIVATION_DAYS', 7)
--- a/src/ldt/ldt/templates/403.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/403.html Fri May 24 21:55:08 2013 +0200
@@ -1,10 +1,10 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block content %}
<div style="text-align:center;vertical-align:middle;">
<h1>{% trans '403 error' %}</h1>
- <img src='{% absstatic "ldt/img/403_gandalf.gif" %}'alt="Gif 404" style="display:block;margin:auto;vertical-align:middle;"/>
+ <img src='{% static "ldt/img/403_gandalf.gif" %}'alt="Gif 404" style="display:block;margin:auto;vertical-align:middle;"/>
<br>
<h1>{% trans "You don't have the right permission to access this page" %}</h1>
</div>
--- a/src/ldt/ldt/templates/404.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/404.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,11 @@
{% extends "ldt/ldt_base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block content %}
<div style="text-align:center;vertical-align:middle;">
<h1>{% trans '404 error' %}</h1>
- <img src='{% absstatic "ldt/img/404_gandalf.gif" %}' alt="Gif 404" style="display:block;margin:auto;vertical-align:middle;"/>
+ <img src='{% static "ldt/img/404_gandalf.gif" %}' alt="Gif 404" style="display:block;margin:auto;vertical-align:middle;"/>
<br>
<h1>{% trans "Sorry, we couldn't find your page" %}</h1>
</div>
--- a/src/ldt/ldt/templates/admin/cms_change_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/cms_change_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,5 @@
{% extends "admin/page_change_form.html" %}
-{% load i18n admin_modify adminmedia cms_tags cms_admin %}
+{% load i18n admin_modify static cms_tags cms_admin %}
{% block js_import %}
{% endblock %}
{% block extrahead %}
@@ -7,7 +7,7 @@
{% if not add %}
<script type="text/javascript" src="{{ CMS_MEDIA_URL }}js/change_form.js"></script>
{% endif %}
-<script type="text/javascript" src="{% admin_media_prefix %}js/urlify.js"></script>
+<script type="text/javascript" src="{% static 'admin/js/urlify.js' %}"></script>
{% if add %}
<script type="text/javascript">
--- a/src/ldt/ldt/templates/admin/cms_change_list.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/cms_change_list.html Fri May 24 21:55:08 2013 +0200
@@ -1,5 +1,5 @@
{% extends "admin/page_change_list.html" %}
-{% load adminmedia admin_list i18n cms_admin js %}
+{% load admin_list i18n cms_admin js %}
{% block bodyclass %}change-list{% endblock %}
{% if not is_popup %}{% block breadcrumbs %}
--- a/src/ldt/ldt/templates/admin/index.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/index.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% extends "admin/base_site.html" %}
{% load i18n %}
-{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% load adminmedia %}{% admin_media_prefix %}css/dashboard.css" />{% endblock %}
+{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% load static %}{% static 'admin/css/dashboard.css' %}" />{% endblock %}
{% block coltype %}colMS{% endblock %}
@@ -46,14 +46,14 @@
<caption>Import</caption>
<tr>
<th>
- <a href="{% url ldt.ldt_utils.views.importFile %}">Import an ldt</a>
+ <a href="{% url 'ldt.ldt_utils.views.importFile' %}">Import an ldt</a>
</th>
<td>
</td>
</tr>
<tr>
<th>
- <a href="{% url ldt.ldt_utils.views.reindex %}">Reindex</a>
+ <a href="{% url 'ldt.ldt_utils.views.reindex' %}">Reindex</a>
</th>
<td>
</td>
--- a/src/ldt/ldt/templates/admin/page_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/page_base.html Fri May 24 21:55:08 2013 +0200
@@ -3,8 +3,8 @@
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/page_base.css{% endblock %}" />
- {% if LANGUAGE_BIDI %}<link rel="stylesheet" type="text/css" href="{% block stylesheet_rtl %}{% admin_media_prefix %}css/rtl.css{% endblock %}" />{% endif %}
+ <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load static %}{% static 'admin/css/page_base.css' %}{% endblock %}" />
+ {% if LANGUAGE_BIDI %}<link rel="stylesheet" type="text/css" href="{% block stylesheet_rtl %}{% static 'admin/css/rtl.css' %}{% endblock %}" />{% endif %}
{% endblock %}
@@ -16,7 +16,7 @@
<!-- END Header -->
{% block breadcrumb %}
<li></li>
- <li><a href="{% url ldt.userpanel.views.space %}">{% trans "Space" %}</a></li>
+ <li><a href="{% url 'ldt.userpanel.views.space' %}">{% trans "Space" %}</a></li>
<li>{% trans "Pages" %}</li>
{% endblock %}
--- a/src/ldt/ldt/templates/admin/page_change_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/page_change_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,12 +1,12 @@
{% extends "admin/page_base_site.html" %}
-{% load i18n admin_modify adminmedia %}
+{% load i18n admin_modify static %}
{% block extrahead %}{{ block.super }}
<script type="text/javascript" src="../../../jsi18n/"></script>
{{ media }}
{% endblock %}
-{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}css/forms.css" />{% endblock %}
+{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static 'admin/css/forms.css' %}" />{% endblock %}
{% block coltype %}{% if ordered_objects %}colMS{% else %}colM{% endif %}{% endblock %}
--- a/src/ldt/ldt/templates/admin/page_change_list.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/page_change_list.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,11 @@
{% extends "admin/page_base_site.html" %}
-{% load adminmedia admin_list i18n %}
+{% load static admin_list i18n %}
{% block extrastyle %}
{{ block.super }}
- <link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}css/changelists.css" />
+ <link rel="stylesheet" type="text/css" href="{% static 'admin/css/changelists.css' %}" />
{% if cl.formset %}
- <link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}css/forms.css" />
+ <link rel="stylesheet" type="text/css" href="{% static 'admin/css/forms.css' %}" />
<script type="text/javascript" src="../../jsi18n/"></script>
{% endif %}
{{ media }}
--- a/src/ldt/ldt/templates/admin/page_index.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/page_index.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% extends "admin/page_base_site.html" %}
{% load i18n %}
-{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% load adminmedia %}{% admin_media_prefix %}css/dashboard.css" />{% endblock %}
+{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% load static %}{% static 'admin/css/dashboard.css' %}" />{% endblock %}
{% block coltype %}colMS{% endblock %}
--- a/src/ldt/ldt/templates/admin/page_login.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/admin/page_login.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% extends "admin/page_base_site.html" %}
{% load i18n %}
-{% block extrastyle %}{% load adminmedia %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}css/login.css" />{% endblock %}
+{% block extrastyle %}{% load static %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static 'admin/css/login.css' %}" />{% endblock %}
{% block bodyclass %}{% endblock %}
@@ -26,8 +26,8 @@
<td><input type="hidden" name="this_is_the_login_form" value="1" /></td>
</tr>
<tr>
- <td><a href="{% url registration.views.register %}" >{% trans "Create an account" %}</a>
- <a href="{% url django.contrib.auth.views.password_reset %}" >{% trans "Forget password?" %}</a>
+ <td><a href="{% url 'registration.views.register' %}" >{% trans "Create an account" %}</a>
+ <a href="{% url 'django.contrib.auth.views.password_reset' %}" >{% trans "Forget password?" %}</a>
</td>
<td><label> </label><input type="submit" value="{% trans 'Log in' %}" /></td>
</tr>
--- a/src/ldt/ldt/templates/base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/base.html Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-{% load absstatic %}
+{% load static %}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
{% block html_declare %}
<html lang="en">
@@ -6,7 +6,7 @@
<head>
<title>{% if user.is_authenticated %}Hello {{ user }}{% else %}Please login{% endif %}</title>
- <link rel="stylesheet" type="text/css" media="screen" href='{% absstatic "ldt/css/socialauth.css" %}' />
+ <link rel="stylesheet" type="text/css" media="screen" href='{% static "ldt/css/socialauth.css" %}' />
{% block extra_head %}
{% endblock %}
</head>
@@ -20,9 +20,9 @@
FB.init({appId: '{{ FACEBOOK_APP_ID }}', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('auth.sessionChange', function(response) {
if (response.session) {
- window.location = '{% url socialauth_facebook_login_done %}';
+ window.location = '{% url 'socialauth_facebook_login_done' %}';
} else {
- //window.location = '{% url socialauth_social_logout %}';
+ //window.location = '{% url 'socialauth_social_logout' %}';
}
});
};
--- a/src/ldt/ldt/templates/cms/admin/cms/page/change_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/cms/admin/cms/page/change_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,11 @@
{% extends "admin/base_site.html" %}
-{% load i18n admin_modify adminmedia cms_admin %}
+{% load i18n admin_modify static cms_admin %}
{% block extrahead %}{{ block.super }}
<script type="text/javascript" src="../../../../jsi18n/"></script>
{% for js in javascript_imports %}{% include_admin_script js %}{% endfor %}
{% endblock %}
-{% block stylesheet %}{% admin_media_prefix %}css/forms.css" />
-<link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}cms/admin.css{% endblock %}
+{% block stylesheet %}{% static 'admin/css/forms.css' %}" />
+<link rel="stylesheet" type="text/css" href="{% static 'admin/cms/admin.css' %}{% endblock %}
{% block coltype %}{% if ordered_objects %}colMS{% else %}colM{% endif %}{% endblock %}
{% block bodyclass %}{{ opts.app_label }}-{{ opts.object_name.lower }} change-form{% endblock %}
{% block userlinks %}<a href="../../../doc/">{% trans 'Documentation' %}</a> / <a href="../../../password_change/">{% trans 'Change password' %}</a> / <a href="../../../logout/">{% trans 'Log out' %}</a>{% endblock %}
--- a/src/ldt/ldt/templates/ldt/ldt_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/ldt/ldt_base.html Fri May 24 21:55:08 2013 +0200
@@ -1,22 +1,22 @@
{% extends "ldt/ldt_raw_base.html" %}
{% load i18n %}
{% load logintag %}
+{% load static %}
{% load navigation %}
-{% load absstatic %}
{% load thumbnail %}
{% block js_import %}
<script type="text/javascript">
- var project_load_src = '{% absstatic "ldt/img/ajax-loader-transp.gif" %}'; // Required for search bar icon in projectscontents.js
+ var project_load_src = '{% static "ldt/img/ajax-loader-transp.gif" %}'; // Required for search bar icon in projectscontents.js
</script>
{{ block.super }}
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.nyroModal.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.nyroModal.min.js" %}'></script>
<!--[if IE 6]>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.nyroModal-ie6.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.nyroModal-ie6.min.js" %}'></script>
<![endif]-->
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.qtip.min.js" %}'></script>
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.validate.js" %}' ></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.qtip.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.validate.js" %}' ></script>
{% endblock %}
{% block js_declaration %}
@@ -72,10 +72,10 @@
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/tabs.css" %}' type="text/css" media="screen, projection" />
- <link rel="stylesheet" href='{% absstatic "ldt/css/nyroModal.css" %}' type="text/css"/>
- <link rel="stylesheet" href='{% absstatic "ldt/js/login_ajax/login_ajax.css" %}' type="text/css"/>
- <link rel="stylesheet" href='{% absstatic "ldt/css/jquery.qtip.min.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/tabs.css" %}' type="text/css" media="screen, projection" />
+ <link rel="stylesheet" href='{% static "ldt/css/nyroModal.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/js/login_ajax/login_ajax.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/jquery.qtip.min.css" %}' type="text/css"/>
{% endblock %}
{% block body %}
@@ -84,18 +84,18 @@
<div id="header">
{% block header %}
<div id="header_left">
- <p><a href="{% url ldt.ldt_utils.views.workspace.home %}">{% block base_title %}{% trans "header_title" %}{% endblock %}</a></p>
+ <p><a href="{% url 'ldt.ldt_utils.views.workspace.home' %}">{% block base_title %}{% trans "header_title" %}{% endblock %}</a></p>
</div>
<div id="loginstate" >
{% if user.is_staff %}
- <a href="{% url admin:index %}" title="{% trans "Link to admin" %}">{% trans "Staff" %}</a>|
+ <a href="{% url 'admin:index' %}" title="{% trans "Link to admin" %}">{% trans "Staff" %}</a>|
{% endif %}
{% if user.is_authenticated %}
- <a href="{% url front_home %}" title="{% trans "front link" %}">{% trans "front link" %}</a> |
- <a href="{% url ldt.user.views.profile %}" title="{% trans "Profile change" %}">
- {% thumbnail user.get_profile.image "20x20" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
+ <a href="{% url 'front_home' %}" title="{% trans "front link" %}">{% trans "front link" %}</a> |
+ <a href="{% url 'ldt.user.views.profile' %}" title="{% trans "Profile change" %}">
+ {% thumbnail user.image "20x20" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
{{user.username}}</a>
- | <a href="{% url ldt.user.views.logout_view %}" title="{% trans "Log out" %}">{% trans "Log out" %}</a>
+ | <a href="{% url 'ldt.user.views.logout_view' %}" title="{% trans "Log out" %}">{% trans "Log out" %}</a>
{% endif %}
</div>
{% endblock %}
@@ -106,11 +106,11 @@
<div class="block span-24 last">
<div id="tabsdiv" class="block span-20">
{% if user.is_authenticated %}
- {% url ldt.ldt_utils.views.workspace.home as workspace_url %}
- {% url ldt.ldt_utils.views.workspace.groups as groups_url %}
- {% url ldt.ldt_utils.views.workspace.published_project as published_project_url %}
- {% url ldt.user.views.profile as profile_url %}
- {% url ldt.ldt_utils.views.workspace.search_form as search_url %}
+ {% url 'ldt.ldt_utils.views.workspace.home' as workspace_url %}
+ {% url 'ldt.ldt_utils.views.workspace.groups' as groups_url %}
+ {% url 'ldt.ldt_utils.views.workspace.published_project' as published_project_url %}
+ {% url 'ldt.user.views.profile' as profile_url %}
+ {% url 'ldt.ldt_utils.views.workspace.search_form' as search_url %}
<ul class="tabs">
<li class='{% active request "active" workspace_url %}'><a href="{{ workspace_url }}" title="{% trans "home" %}">{% trans "home" %}</a></li>
<li class='{% active request "active" groups_url %}'><a href="{{ groups_url }}" title="{% trans "home" %}">{% trans "My groups" %}</a></li>
@@ -124,7 +124,7 @@
</div>
{% if user.is_authenticated %}
<div class="block span-4 last">
- <form method="get" id="quick_search_form" action="{% url ldt.ldt_utils.views.workspace.search_index %}" title="{% trans "search"%}" accept-charset="utf-8">
+ <form method="get" id="quick_search_form" action="{% url 'ldt.ldt_utils.views.workspace.search_index' %}" title="{% trans "search"%}" accept-charset="utf-8">
<input type="text" name="search" id="id_search" size="16"/>
<input type='hidden' name='field' value='all' />
<input type="submit" class="quick_search_submit" value="" />
@@ -141,7 +141,7 @@
<div id="footer" class="span-24 last">
{% block footer %}
<div class="footer_img">
- <a href="http://www.iri.centrepompidou.fr"><img src='{% absstatic "ldt/img/logo_IRI_footer.png" %}' alt="Logo IRI" /></a>
+ <a href="http://www.iri.centrepompidou.fr"><img src='{% static "ldt/img/logo_IRI_footer.png" %}' alt="Logo IRI" /></a>
</div>
<div style="float: right; text-align: right;" class="small" id="copyright_version">
<div>©2011 <a style="text-decoration: none; color: #4F5155;" href="http://www.iri.centrepompidou.fr">IRI</a></div>
--- a/src/ldt/ldt/templates/ldt/ldt_raw_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/ldt/ldt_raw_base.html Fri May 24 21:55:08 2013 +0200
@@ -1,7 +1,7 @@
{% load i18n %}
{% load logintag %}
{% load navigation %}
-{% load absstatic %}
+{% load static %}
{% load analytics %}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
@@ -11,28 +11,28 @@
{% block head %}
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<meta http-equiv="content-language" content="{{LANGUAGE_CODE}}" />
- <link rel="SHORTCUT ICON" href='{% absstatic "ldt/img/favicon.ico" %}' />
+ <link rel="SHORTCUT ICON" href='{% static "ldt/img/favicon.ico" %}' />
<title>{% block title %}{% trans "page_title" %}{% endblock %}</title>
{% block js_import %}
- <script type="text/javascript" src='{% absstatic "ldt/js/jquery.min.js" %}'></script>
+ <script type="text/javascript" src='{% static "ldt/js/jquery.min.js" %}'></script>
{% endblock %}
{% block css_declaration %}
<style type="text/css">
.rounded {
- behavior:url('{% absstatic "ldt/css/border-radius.htc" %}');
+ behavior:url('{% static "ldt/css/border-radius.htc" %}');
}
</style>
{% endblock %}
{% block css_import %}
- <link rel="stylesheet" href='{% absstatic "ldt/css/blueprint/screen.css" %}' type="text/css" media="screen, projection" />
- <link rel="stylesheet" href='{% absstatic "ldt/css/blueprint/print.css" %}' type="text/css" media="print" />
+ <link rel="stylesheet" href='{% static "ldt/css/blueprint/screen.css" %}' type="text/css" media="screen, projection" />
+ <link rel="stylesheet" href='{% static "ldt/css/blueprint/print.css" %}' type="text/css" media="print" />
<!--[if lt IE 8]>
<link rel="stylesheet" href="{{BASE_URL}}static/css/blueprint/ie.css" type="text/css" media="screen, projection" />
<![endif]-->
- <link rel="stylesheet" href='{% absstatic "ldt/css/style.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/style.css" %}' type="text/css"/>
{% endblock %}
{% block js_declaration %}
--- a/src/ldt/ldt/templates/openid/index.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/openid/index.html Fri May 24 21:55:08 2013 +0200
@@ -30,7 +30,7 @@
<br/>
<!-- Simple OpenID Selector -->
-<form action="{% url socialauth_openid_login %}" method="get" id="openid_form">
+<form action="{% url 'socialauth_openid_login' %}" method="get" id="openid_form">
<input type="hidden" name="action" value="verify" />
<fieldset>
--- a/src/ldt/ldt/templates/socialauth/login_page.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/socialauth/login_page.html Fri May 24 21:55:08 2013 +0200
@@ -15,7 +15,7 @@
openid.init('openid_identifier');
});
//function facebook_onlogin(){
- // window.location = "{% url socialauth_facebook_login_done %}"
+ // window.location = "{% url 'socialauth_facebook_login_done' %}"
//}
</script>
<!-- /Simple OpenID Selector -->
@@ -28,11 +28,11 @@
{% block main_content %}
{% if user.is_authenticated %}
- <p>You are already logged in. <a href="{% url socialauth_social_logout %}">Logout</a>?</p>
+ <p>You are already logged in. <a href="{% url 'socialauth_social_logout' %}">Logout</a>?</p>
{% else %}
<div id="login">
-<form action="{% url socialauth_openid_login %}" method="get" id="openid_form">
+<form action="{% url 'socialauth_openid_login' %}" method="get" id="openid_form">
<input type="hidden" name="action" value="verify" />
<fieldset>
@@ -49,15 +49,15 @@
{% endif %}
<div id="linkedin">
- <a href="{% url socialauth_linkedin_login %}?next={{ next }}" id="linkedin_login_link" class="openid_large_btn linkedin"></a>
+ <a href="{% url 'socialauth_linkedin_login' %}?next={{ next }}" id="linkedin_login_link" class="openid_large_btn linkedin"></a>
</div>
<div id="twitter">
- <a href="{% url socialauth_twitter_login %}?next={{ next }}" id="twitter_login_link" class="openid_large_btn twitter"></a>
+ <a href="{% url 'socialauth_twitter_login' %}?next={{ next }}" id="twitter_login_link" class="openid_large_btn twitter"></a>
</div>
<!--<div id="yahoo">
- <a href="{% url socialauth_yahoo_login %}" id="yahoo_login_link" class="openid_large_btn yahoo"></a>
+ <a href="{% url 'socialauth_yahoo_login' %}" id="yahoo_login_link" class="openid_large_btn yahoo"></a>
</div>-->
</div>
--- a/src/ldt/ldt/templates/socialauth/signin_complete.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templates/socialauth/signin_complete.html Fri May 24 21:55:08 2013 +0200
@@ -3,6 +3,6 @@
{% block main_content %}
You have signed in.<br/>
-<a onclick="FB.logout(); window.location='{% url socialauth_social_logout %}';" href="#">Logout</a>
+<a onclick="FB.logout(); window.location='{% url 'socialauth_social_logout' %}';" href="#">Logout</a>
{% endblock %}
--- a/src/ldt/ldt/templatetags/absstatic.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templatetags/absstatic.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,6 @@
from django import template
-from django.contrib.staticfiles.storage import staticfiles_storage
from django.contrib.sites.models import Site
-from django.template import Library
-import logging
+from django.contrib.staticfiles.storage import staticfiles_storage
import urlparse
register = template.Library()
--- a/src/ldt/ldt/templatetags/absurl.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templatetags/absurl.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,7 @@
-import urlparse
+from django.contrib.sites.models import Site
from django.template import Library
from django.template.defaulttags import URLNode, url
-from django.contrib.sites.models import Site
-import logging
+import urlparse
register = Library()
--- a/src/ldt/ldt/templatetags/analytics.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templatetags/analytics.py Fri May 24 21:55:08 2013 +0200
@@ -11,10 +11,10 @@
register = template.Library()
-def __clean_token(str, tag_name):
- if not (str[0] == str[-1] and str[0] in ('"', "'")):
+def __clean_token(str_t, tag_name):
+ if not (str_t[0] == str_t[-1] and str_t[0] in ('"', "'")):
raise template.TemplateSyntaxError, "%r tag's argument should be in quotes" % tag_name
- return str[1:-1]
+ return str_t[1:-1]
def do_get_analytics(parser, token):
code = None
--- a/src/ldt/ldt/templatetags/front_tags.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/templatetags/front_tags.py Fri May 24 21:55:08 2013 +0200
@@ -22,18 +22,18 @@
arg = "::"
if arg=="::" or arg=="h" or arg==":" :
hours = sec//3600
- min = (sec - (hours * 3600))//60
- if min<10:
- min_str = "0" + str(min)
+ minute = (sec - (hours * 3600))//60
+ if minute<10:
+ min_str = "0" + str(minute)
else:
- min_str = str(min)
+ min_str = str(minute)
if (arg=="::" or arg==":") and hours<10 :
hours_str = "0" + str(hours)
else :
hours_str = str(hours)
if arg=="h" or arg==":" :
return hours_str + arg + min_str
- sec = (sec - (hours * 3600) - (min*60))
+ sec = (sec - (hours * 3600) - (minute*60))
if sec<10:
sec_str = "0" + str(sec)
else:
--- a/src/ldt/ldt/text/migrations/0001_initial.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/migrations/0001_initial.py Fri May 24 21:55:08 2013 +0200
@@ -1,15 +1,13 @@
# encoding: utf-8
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding model 'Annotation'
- db.create_table('text_annotation', (
+ db.create_table('text_annotation', ( # @UndefinedVariable
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('external_id', self.gf('django.db.models.fields.CharField')(default=u'5393f930-c975-11e0-bf36-58b035f6b93d', unique=True, max_length=255)),
('uri', self.gf('django.db.models.fields.CharField')(max_length=1024)),
@@ -23,13 +21,13 @@
('creation_date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
('update_date', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)),
))
- db.send_create_signal('text', ['Annotation'])
+ db.send_create_signal('text', ['Annotation']) # @UndefinedVariable
def backwards(self, orm):
# Deleting model 'Annotation'
- db.delete_table('text_annotation')
+ db.delete_table('text_annotation') # @UndefinedVariable
models = {
--- a/src/ldt/ldt/text/migrations/0002_auto__chg_field_annotation_external_id.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/migrations/0002_auto__chg_field_annotation_external_id.py Fri May 24 21:55:08 2013 +0200
@@ -1,8 +1,6 @@
# -*- coding: utf-8 -*-
-import datetime
from south.db import db
from south.v2 import SchemaMigration
-from django.db import models
class Migration(SchemaMigration):
@@ -10,12 +8,12 @@
def forwards(self, orm):
# Changing field 'Annotation.external_id'
- db.alter_column('text_annotation', 'external_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255))
+ db.alter_column('text_annotation', 'external_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)) # @UndefinedVariable
def backwards(self, orm):
# Changing field 'Annotation.external_id'
- db.alter_column('text_annotation', 'external_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True))
+ db.alter_column('text_annotation', 'external_id', self.gf('django.db.models.fields.CharField')(max_length=255, unique=True)) # @UndefinedVariable
models = {
'text.annotation': {
--- a/src/ldt/ldt/text/models.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/models.py Fri May 24 21:55:08 2013 +0200
@@ -2,7 +2,7 @@
from django.utils.translation import ugettext_lazy as _
from tagging.models import Tag
from utils import generate_uuid
-import lxml
+import lxml.etree
import tagging.fields
#from django.core.management.validation import max_length
@@ -74,8 +74,8 @@
textannotation = lxml.etree.SubElement(iri, 'text-annotation')
- id = lxml.etree.SubElement(textannotation, 'id')
- id.text = self.external_id
+ id_node = lxml.etree.SubElement(textannotation, 'id')
+ id_node.text = self.external_id
uri = lxml.etree.SubElement(textannotation, 'uri')
uri.text = self.uri
--- a/src/ldt/ldt/text/tests/oauth_tests.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/tests/oauth_tests.py Fri May 24 21:55:08 2013 +0200
@@ -8,7 +8,7 @@
from oauth_provider.consts import OUT_OF_BAND
from oauth_provider.models import Consumer, Token
import datetime
-import lxml
+import lxml.etree
import time
import urlparse
--- a/src/ldt/ldt/text/urls.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/urls.py Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-from django.conf.urls.defaults import patterns, url
+from django.conf.urls import patterns, url
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
--- a/src/ldt/ldt/text/utils.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/utils.py Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,5 @@
-from django.conf import settings
+import ldt.indexation
import uuid
-import ldt.indexation
__BOOLEAN_DICT = {
'false':False,
@@ -11,12 +10,12 @@
'f':False
}
-def boolean_convert(bool):
- if bool is None:
+def boolean_convert(b):
+ if b is None:
return False
- if bool is True or bool is False:
- return bool
- key = str(bool).lower()
+ if b is True or b is False:
+ return b
+ key = str(b).lower()
return __BOOLEAN_DICT.get(key, False)
--- a/src/ldt/ldt/text/views.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/text/views.py Fri May 24 21:55:08 2013 +0200
@@ -6,12 +6,12 @@
from ldt.text.utils import TextSearch, generate_uuid
from oauth_provider.decorators import oauth_required
from urllib2 import urlparse
-import lxml
+import lxml.etree
## Filters the annotation depending on the request parameters
## Returns an xml containing the resulting annotations
-def filter_annotation(request, uri=None, filter=None, limit=None, creator=None):
+def filter_annotation(request, uri=None, filter=None, limit=None, creator=None): # @ReservedAssignment
query = Q()
if request.GET.get('uri'):
@@ -53,9 +53,9 @@
id_nodes = doc.xpath("/iri/text-annotation/id/text()")
if id_nodes:
- id = unicode(id_nodes[0])
+ id_n = unicode(id_nodes[0])
else:
- id = generate_uuid()
+ id_n = generate_uuid()
uri = unicode(doc.xpath("/iri/text-annotation/uri/text()")[0])
@@ -98,7 +98,7 @@
contributor = None
try:
- annotation = Annotation.create_annotation(external_id=id, uri=uri, tags=tags, title=title, description=desc, text=text, color=color, creator=creator, contributor=contributor)
+ annotation = Annotation.create_annotation(external_id=id_n, uri=uri, tags=tags, title=title, description=desc, text=text, color=color, creator=creator, contributor=contributor)
annotation.save()
return HttpResponse(lxml.etree.tostring(annotation.serialize(), pretty_print=True), mimetype="text/xml;charset=utf-8")
except IntegrityError:
@@ -108,7 +108,7 @@
## Gets an annotation from its id
## Returns the xml-structured annotation
-def get_annotation(request, id):
+def get_annotation(request, id): # @ReservedAssignment
try:
annot = Annotation.objects.get(external_id=id)
except Annotation.DoesNotExist:
@@ -123,7 +123,7 @@
## Returns an empty xml-structured annotation
@oauth_required
@csrf_exempt
-def delete_annotation(request, id):
+def delete_annotation(request, id): # @ReservedAssignment
try:
annot = Annotation.objects.get(external_id=id)
annot.delete()
@@ -137,7 +137,7 @@
## Returns the xml-structured updated annotation
@oauth_required
@csrf_exempt
-def update_annotation(request, id):
+def update_annotation(request, id): # @ReservedAssignment
put_data = {}
if request.GET != {}:
--- a/src/ldt/ldt/user/admin.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/admin.py Fri May 24 21:55:08 2013 +0200
@@ -1,14 +1,8 @@
-from copy import deepcopy #@UnresolvedImport
from django.contrib import admin
-from django.contrib.auth.admin import UserAdmin
-from django.contrib.auth.models import Group, User
-from django.utils.translation import ugettext as _
-from forms import LdtForm
+from django.contrib.auth.models import Group
from guardian.admin import GuardedModelAdmin
-from models import Ldt, UserProfile, GroupProfile
-from tastypie.admin import ApiKeyInline
-from tastypie.models import ApiAccess, ApiKey
-
+from ldt.user.models import LdtUser
+from models import GroupProfile
class GroupProfileInline(admin.StackedInline):
model = GroupProfile
@@ -16,53 +10,11 @@
class GroupAdmin(GuardedModelAdmin):
inlines = [GroupProfileInline, ]
-class UserProfileInline(admin.StackedInline):
- model = UserProfile
-
-class UserProfileAdmin(UserAdmin):
- def add_view(self, *args, **kwargs):
- self.inlines = []
- return super(UserProfileAdmin, self).add_view(*args, **kwargs)
-
- def change_view(self, *args, **kwargs):
- self.inlines = [UserProfileInline]
- return super(UserAdmin, self).change_view(*args, **kwargs)
-
+class LdtUserAdmin(admin.ModelAdmin):
+ pass
-class LdtAdmin(UserProfileAdmin):
- list_display = ('username', 'email', 'first_name', 'last_name')
-
- fieldsets = [
- (None, {'fields': ('username', ('password1', 'password2'))}),
- (_('User details'), {'fields': (('first_name', 'last_name'), 'email')}),
- (_('Groups'), {'fields': ('groups',)}),
- (_('Permissions'), {'fields': ('is_staff', 'user_permissions')}),
- ]
- form = LdtForm
- model = Ldt
- filter_horizontal = ('user_permissions',)
- inlines = [UserProfileInline, ApiKeyInline]
-
- def get_fieldsets(self, request, obj=None):
- fieldsets = deepcopy(self.fieldsets)
- if not '/add' in request.path:
- fieldsets[0] = (None, {'fields': ('username',)})
- fieldsets.append((_('Password'), {'fields': ('password1', 'password2'), 'classes': ('collapse',)}))
- return fieldsets
-
- def add_view(self, request):
- return super(UserAdmin, self).add_view(request)
-
-
admin.site.unregister(Group)
admin.site.register(Group, GroupAdmin)
-admin.site.unregister(Ldt)
-admin.site.register(Ldt, LdtAdmin)
-
-admin.site.register(ApiKey)
-admin.site.register(ApiAccess)
-
-admin.site.unregister(User)
-admin.site.register(User, UserProfileAdmin)
+admin.site.register(LdtUser, LdtUserAdmin)
\ No newline at end of file
--- a/src/ldt/ldt/user/forms.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/forms.py Fri May 24 21:55:08 2013 +0200
@@ -1,16 +1,17 @@
from django import forms
from django.conf import settings
+from django.contrib.auth import get_user_model
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
-from django.contrib.auth.models import User
+from django.contrib.auth.models import Group
from django.forms.util import ErrorList
from django.utils.translation import gettext as _
-from models import Ldt
+User = get_user_model()
class LdtForm(UserCreationForm):
class Meta:
- model = Ldt
+ model = User
def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None,
initial=None, error_class=ErrorList, label_suffix=':',
@@ -113,11 +114,9 @@
super(LanguageChangeForm, self).__init__(*args, **kwargs)
def save(self):
- profile = self.user.get_profile()
- profile.language = self.cleaned_data['language']
- profile.save()
+ self.user.language = self.cleaned_data['language']
+ self.user.save()
return self.user
-
class PictureForm(forms.Form):
image=forms.ImageField(label=_("Profile picture"), required=False)
@@ -141,9 +140,12 @@
return None
class_name = self.model.__class__.__name__
- if class_name == 'User' or class_name == 'Group':
+ if isinstance(self.model, Group):
instance_name = "%s" % self.model.id
img_container = self.model.get_profile()
+ if isinstance(self.model, User):
+ instance_name = "%s" % self.model.id
+ img_container = self.model
elif class_name == 'Content':
instance_name = self.model.iri_id
img_container = self.model
@@ -159,5 +161,4 @@
img_container.image = self.cleaned_data['image']
img_container.save()
return self.model
-
\ No newline at end of file
--- a/src/ldt/ldt/user/migrations/0005_add_permission_owner_group.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/migrations/0005_add_permission_owner_group.py Fri May 24 21:55:08 2013 +0200
@@ -1,20 +1,14 @@
-#@PydevCodeAnalysisIgnore
# encoding: utf-8
-import datetime
-from south.db import db
+from django.contrib.auth.models import Permission
+from django.contrib.contenttypes.models import ContentType
from south.v2 import DataMigration
-from django.db import models
-from django.contrib.auth.models import User
-from ldt.user.models import UserProfile
-from django.contrib.auth.models import Group, Permission
-from django.contrib.contenttypes.models import ContentType
class Migration(DataMigration):
def forwards(self, orm):
content_type = ContentType.objects.get(app_label='auth', model='group')
- permission = Permission.objects.create(codename='is_owner_group',
+ Permission.objects.create(codename='is_owner_group',
name='Can add/delete admins to the group',
content_type=content_type)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/migrations/0009_rename_auth_user_to_user_ldt_user.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,95 @@
+# -*- coding: utf-8 -*-
+from south.db import db
+from south.v2 import SchemaMigration
+
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+ db.rename_table('auth_user', 'user_ldtuser') # @UndefinedVariable
+ db.rename_table('auth_user_groups', 'user_ldtuser_groups') # @UndefinedVariable
+ db.rename_column('user_ldtuser_groups', 'user_id', 'ldtuser_id') # @UndefinedVariable
+ db.rename_table('auth_user_user_permissions', 'user_ldtuser_user_permissions') # @UndefinedVariable
+ db.rename_column('user_ldtuser_user_permissions', 'user_id', 'ldtuser_id') # @UndefinedVariable
+
+ def backwards(self, orm):
+ db.rename_table('user_ldt_user', 'auth_user') # @UndefinedVariable
+ db.rename_table('user_ldtuser_groups', 'auth_user_groups') # @UndefinedVariable
+ db.rename_column('auth_user_groups', 'ldtuser_id', 'user_id') # @UndefinedVariable
+ db.rename_table('user_ldtuser_user_permissions', 'auth_user_user_permissions') # @UndefinedVariable
+ db.rename_column('auth_user_user_permissions', 'ldtuser_id', 'user_id') # @UndefinedVariable
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'user.groupprofile': {
+ 'Meta': {'object_name': 'GroupProfile'},
+ 'description': ('django.db.models.fields.TextField', [], {}),
+ 'group': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'profile'", 'unique': 'True', 'to': u"orm['auth.Group']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/groups/group_default_icon.png'", 'max_length': '200'})
+ },
+ u'user.ldt': {
+ 'Meta': {'object_name': 'Ldt', '_ormbases': [u'auth.User']},
+ u'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True', 'primary_key': 'True'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'user.userprofile': {
+ 'Meta': {'object_name': 'UserProfile'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'user': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True'})
+ }
+ }
+
+ complete_apps = ['user']
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/migrations/0010_auto__add_field_ldtuser_language__add_field_ldtuser_image.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,103 @@
+# -*- coding: utf-8 -*-
+from south.db import db
+from south.v2 import SchemaMigration
+
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+ # Adding field 'LdtUser.language'
+ db.add_column(u'user_ldtuser', 'language', # @UndefinedVariable
+ self.gf('django.db.models.fields.CharField')(default='fr', max_length=2),
+ keep_default=False)
+
+ # Adding field 'LdtUser.image'
+ db.add_column(u'user_ldtuser', 'image', # @UndefinedVariable
+ self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/users/user_default_icon.png', max_length=200),
+ keep_default=False)
+
+
+ def backwards(self, orm):
+ # Deleting field 'LdtUser.language'
+ db.delete_column(u'user_ldtuser', 'language') # @UndefinedVariable
+
+ # Deleting field 'LdtUser.image'
+ db.delete_column(u'user_ldtuser', 'image') # @UndefinedVariable
+
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'user.groupprofile': {
+ 'Meta': {'object_name': 'GroupProfile'},
+ 'description': ('django.db.models.fields.TextField', [], {}),
+ 'group': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'profile'", 'unique': 'True', 'to': u"orm['auth.Group']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/groups/group_default_icon.png'", 'max_length': '200'})
+ },
+ u'user.ldt': {
+ 'Meta': {'object_name': 'Ldt', '_ormbases': [u'auth.User']},
+ u'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True', 'primary_key': 'True'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'user.userprofile': {
+ 'Meta': {'object_name': 'UserProfile'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'user': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True'})
+ }
+ }
+
+ complete_apps = ['user']
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/migrations/0011_copy_image_language_ldt_user.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,96 @@
+# -*- coding: utf-8 -*-
+from south.v2 import DataMigration
+
+class Migration(DataMigration):
+
+ def forwards(self, orm):
+ for userprofile in orm['user.userprofile'].objects.all():
+ user = orm['user.ldtuser'].objects.get(id=userprofile.user_id)
+ user.language = userprofile.language
+ user.image = userprofile.image
+ user.save()
+
+ def backwards(self, orm):
+ for user in orm['user.userprofile'].objects.all():
+ userprofile = orm['user.ldtprofile'].objects.get(user_id=user.id)
+ userprofile.language = user.language
+ userprofile.image = user.image
+ userprofile.save()
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'user.groupprofile': {
+ 'Meta': {'object_name': 'GroupProfile'},
+ 'description': ('django.db.models.fields.TextField', [], {}),
+ 'group': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'profile'", 'unique': 'True', 'to': u"orm['auth.Group']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/groups/group_default_icon.png'", 'max_length': '200'})
+ },
+ u'user.ldt': {
+ 'Meta': {'object_name': 'Ldt', '_ormbases': [u'auth.User']},
+ u'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True', 'primary_key': 'True'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'user.userprofile': {
+ 'Meta': {'object_name': 'UserProfile'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'user': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True'})
+ }
+ }
+
+ complete_apps = ['user']
+ symmetrical = True
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/migrations/0012_auto__del_userprofile.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,92 @@
+# -*- coding: utf-8 -*-
+from south.db import db
+from south.v2 import SchemaMigration
+
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+ # Deleting model 'UserProfile'
+ db.delete_table(u'user_userprofile') # @UndefinedVariable
+
+
+ def backwards(self, orm):
+ # Adding model 'UserProfile'
+ db.create_table(u'user_userprofile', ( # @UndefinedVariable
+ ('image', self.gf('sorl.thumbnail.fields.ImageField')(default='thumbnails/users/user_default_icon.png', max_length=200)),
+ (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('language', self.gf('django.db.models.fields.CharField')(default='fr', max_length=2)),
+ ('user', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['auth.User'], unique=True)),
+ ))
+ db.send_create_signal(u'user', ['UserProfile']) # @UndefinedVariable
+
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'user.groupprofile': {
+ 'Meta': {'object_name': 'GroupProfile'},
+ 'description': ('django.db.models.fields.TextField', [], {}),
+ 'group': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'profile'", 'unique': 'True', 'to': u"orm['auth.Group']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/groups/group_default_icon.png'", 'max_length': '200'})
+ },
+ u'user.ldt': {
+ 'Meta': {'object_name': 'Ldt', '_ormbases': [u'auth.User']},
+ u'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True', 'primary_key': 'True'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ }
+ }
+
+ complete_apps = ['user']
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ldt/ldt/user/migrations/0013_auto__del_ldt.py Fri May 24 21:55:08 2013 +0200
@@ -0,0 +1,69 @@
+# -*- coding: utf-8 -*-
+from south.db import db
+from south.v2 import SchemaMigration
+
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+ # Deleting model 'Ldt'
+ db.delete_table(u'user_ldt') # @UndefinedVariable
+
+
+ def backwards(self, orm):
+ # Adding model 'Ldt'
+ db.create_table(u'user_ldt', ( # @UndefinedVariable
+ (u'user_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['auth.User'], unique=True, primary_key=True)),
+ ))
+ db.send_create_signal(u'user', ['Ldt']) # @UndefinedVariable
+
+
+ models = {
+ u'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ u'auth.permission': {
+ 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ u'contenttypes.contenttype': {
+ 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ u'user.groupprofile': {
+ 'Meta': {'object_name': 'GroupProfile'},
+ 'description': ('django.db.models.fields.TextField', [], {}),
+ 'group': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'profile'", 'unique': 'True', 'to': u"orm['auth.Group']"}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/groups/group_default_icon.png'", 'max_length': '200'})
+ },
+ u'user.ldtuser': {
+ 'Meta': {'object_name': 'LdtUser'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'image': ('sorl.thumbnail.fields.ImageField', [], {'default': "'thumbnails/users/user_default_icon.png'", 'max_length': '200'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
+ 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ }
+ }
+
+ complete_apps = ['user']
\ No newline at end of file
--- a/src/ldt/ldt/user/models.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/models.py Fri May 24 21:55:08 2013 +0200
@@ -1,48 +1,38 @@
from django.conf import settings
-from django.contrib import admin
-from django.contrib.auth.models import User, UserManager, Group
+from django.contrib.auth.models import (AbstractUser, UserManager, Group,
+ BaseUserManager)
from django.db import models
from django.db.models.signals import post_save
+from django.utils import timezone
from sorl.thumbnail import ImageField
-import datetime
-
-class Ldt(User):
-# irigroups = models.ManyToManyField(IriGroup, blank=True)
-
- class Meta:
- verbose_name = 'iri user'
- verbose_name_plural = 'iri users'
-
- def __unicode__(self):
- return self.username
-
+class LdtUserManager(BaseUserManager):
-class LdtManager(UserManager):
- def create_user(self, username, email, password=None):
- "Creates and saves a User with the given username, e-mail and password."
- now = datetime.datetime.utcnow()
- new_user = Ldt(None, username, '', '', email.strip().lower(), 'placeholder', False, True, False, now, now)
- if password:
- new_user.set_password(password)
- else:
- new_user.set_unusable_password()
- new_user.save()
- new_user.groups.add(Group.objects.get(name=settings.PUBLIC_GROUP_NAME))
- return new_user
-
-
-class UserProfile (models.Model):
- user = models.OneToOneField(User)
- language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2])
- image = ImageField(upload_to=settings.MEDIA_ROOT+"thumbnails/users/", default=settings.DEFAULT_USER_ICON, max_length=200)
+ def create_user(self, username, email=None, password=None, **extra_fields):
+ """
+ Creates and saves a User with the given username, email and password.
+ """
+ now = timezone.now()
+ if not username:
+ raise ValueError('The given username must be set')
+ email = UserManager.normalize_email(email)
+ user = self.model(username=username, email=email,
+ is_staff=False, is_active=True, is_superuser=False,
+ last_login=now, date_joined=now, **extra_fields)
- @staticmethod
- def create_user_profile(sender, instance, created, **kwargs):
- if created:
- UserProfile.objects.get_or_create(user=instance)
- everyone, _ = Group.objects.get_or_create(name=settings.PUBLIC_GROUP_NAME)
- instance.groups.add(everyone)
+ user.set_password(password)
+ user.save(using=self._db)
+ everyone, _ = Group.objects.get_or_create(name=settings.PUBLIC_GROUP_NAME)
+ user.groups.add(everyone)
+ return user
+
+ def create_superuser(self, username, email, password, **extra_fields):
+ u = self.create_user(username, email, password, **extra_fields)
+ u.is_staff = True
+ u.is_active = True
+ u.is_superuser = True
+ u.save(using=self._db)
+ return u
class GroupProfile(models.Model):
group = models.OneToOneField(Group, primary_key=False, related_name='profile')
@@ -55,20 +45,22 @@
profile = GroupProfile()
profile.group_id = instance.id
profile.save()
- admins = User.objects.filter(is_superuser=True)
+ admins = LdtUser.objects.filter(is_superuser=True)
if admins:
- instance.user_set.add(admins[0])
+ admin_user = admins[0]
+ admin_user.groups.add(instance)
+ admin_user.save()
+
+class LdtUser(AbstractUser):
+ language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2])
+ image = ImageField(upload_to=settings.MEDIA_ROOT+"thumbnails/users/", default=settings.DEFAULT_USER_ICON, max_length=200)
+
+ objects = LdtUserManager()
+
-# To keep consistency with User.get_profile() method
def get_profile(self):
return self.profile
-Group.add_to_class("get_profile", get_profile)
-
+Group.add_to_class("get_profile", get_profile) # @UndefinedVariable
post_save.connect(GroupProfile.create_group_profile, sender=Group)
-post_save.connect(UserProfile.create_user_profile, sender=User)
-
-User.objects = LdtManager()
-User.objects.contribute_to_class(User, "objects")
-admin.site.register(Ldt)
--- a/src/ldt/ldt/user/templates/ldt/user/change_profile.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/ldt/user/change_profile.html Fri May 24 21:55:08 2013 +0200
@@ -35,7 +35,7 @@
{% if msg %}
<div class="success" style="left:50%; text-align: center;">{{ msg }}</div>
{% endif %}
-<form method="post" action="{% url ldt.user.views.profile %}">
+<form method="post" action="{% url 'ldt.user.views.profile' %}">
{% csrf_token %}
<table>
<tr>
@@ -97,7 +97,7 @@
</table>
</form>
-<form method="post" action="{% url ldt.user.views.password %}">
+<form method="post" action="{% url 'ldt.user.views.password' %}">
{% csrf_token %}
<table>
<tr>
@@ -146,7 +146,7 @@
</table>
</form>
-<form enctype="multipart/form-data" method="post" action="{% url ldt.user.views.profile_picture %}">
+<form enctype="multipart/form-data" method="post" action="{% url 'ldt.user.views.profile_picture' %}">
{% csrf_token %}
<table>
<tr>
@@ -154,7 +154,7 @@
<strong>{% trans "Current profile picture" %}</strong>
</td>
<td>
- {% thumbnail user.get_profile.image "x100" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
+ {% thumbnail user.image "x100" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %} {% endthumbnail %}
</td>
</tr>
<tr>
--- a/src/ldt/ldt/user/templates/ldt/user/login_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/ldt/user/login_form.html Fri May 24 21:55:08 2013 +0200
@@ -1,11 +1,10 @@
{% load i18n %}
-{% load absurl %}
{# print user's state and form of login #}
{% block js_import %}
{{block.super}}
<script language="javascript">
- var url_login_ajax='{% absurl ldt.user.views.login_ajax %}';
+ var url_login_ajax='{% url "ldt.user.views.login_ajax" %}';
{% if reload %}
var reload=true;
{% else %}
@@ -30,9 +29,9 @@
<ul class="usertool">
{% if user.is_authenticated %}
<li id="user">{{user.username}}</li>
- <li><a href="{% url ldt.user.views.profile %}" >{% trans "Profiles" %}</a> </li>
- <li><a href="{% url ldt.user.views.space %}">{% trans "Space" %}</a></li>
- <li><a href="{% url ldt.user.views.logout_view %}" >{% trans "Log out" %}</a></li>
+ <li><a href="{% url 'ldt.user.views.profile' %}" >{% trans "Profiles" %}</a> </li>
+ <li><a href="{% url 'ldt.user.views.space' %}">{% trans "Space" %}</a></li>
+ <li><a href="{% url 'ldt.user.views.logout_view' %}" >{% trans "Log out" %}</a></li>
{% else %}
<li><a href="#inlineContent" class="login_link">{% trans "Log in" %}</li>
@@ -48,7 +47,7 @@
<div id="msg"></div>
<div id="login_form" style="padding: 8px;" method="POST" action="">
<div style="float: right; padding-bottom: 8px;">
- <a href="{% url registration.views.register %}" >{% trans "create account" %}</a>
+ <a href="{% url 'registration.views.register' %}" >{% trans "create account" %}</a>
</div>
<dl style="clear: both;">
@@ -66,7 +65,7 @@
</dd>
<dt/>
<dd>
- <a href="{% url django.contrib.auth.views.password_reset %}" >{% trans "reset password" %}</a>
+ <a href="{% url 'django.contrib.auth.views.password_reset' %}" >{% trans "reset password" %}</a>
</dd>
</dl>
<input class="button" id="submit" type="submit" value="{% trans 'Connection' %}"/>
--- a/src/ldt/ldt/user/templates/ldt/user/user_base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/ldt/user/user_base.html Fri May 24 21:55:08 2013 +0200
@@ -2,11 +2,11 @@
{# this page inherit base html, all pages of ldt inherit this page. #}
{# all contents are writed in the "iricontent" block #}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/workspace.css" %}' type="text/css"/>
+ <link rel="stylesheet" href='{% static "ldt/css/workspace.css" %}' type="text/css"/>
{% endblock %}
--- a/src/ldt/ldt/user/templates/registration/activate.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/activate.html Fri May 24 21:55:08 2013 +0200
@@ -10,5 +10,5 @@
{% block iricontent %}
<p>{% trans "You have activated your account" %}</p>
-<a href="{% url django.contrib.auth.views.login%}">{% trans "Go back to login page" %}</a>
+<a href="{% url 'django.contrib.auth.views.login'%}">{% trans "Go back to login page" %}</a>
{% endblock %}
\ No newline at end of file
--- a/src/ldt/ldt/user/templates/registration/base.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/base.html Fri May 24 21:55:08 2013 +0200
@@ -1,10 +1,10 @@
{% extends "ldt/user/user_base.html" %}
-{% load absstatic %}
+{% load static %}
{% block js_import %}
{{ block.super }}
{% endblock %}
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/registration.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/registration.css" %}' />
{% endblock %}
{% block pageclass %}profile{% endblock %}
--- a/src/ldt/ldt/user/templates/registration/login.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/login.html Fri May 24 21:55:08 2013 +0200
@@ -1,6 +1,6 @@
{% extends "registration/base.html" %}
{% load i18n %}
-{% load absstatic %}
+{% load static %}
{% block js_declaration %}{{ block.super }}
<script type="text/javascript">
$(document).ready(function() {
@@ -11,8 +11,8 @@
{% block css_import %}
{{ block.super }}
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldt.css" %}' />
- <link rel="stylesheet" href='{% absstatic "ldt/css/ldtform.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldt.css" %}' />
+ <link rel="stylesheet" href='{% static "ldt/css/ldtform.css" %}' />
{% endblock %}
@@ -37,8 +37,8 @@
<div id="login_links" class="span-12 last">
<div id="login_links_list" class="span-12 last">
<ul>
- <li><a href="{% url registration.views.register %}" >{% trans "Create an account" %}</a></li>
- <li><a href="{% url django.contrib.auth.views.password_reset %}" >{% trans "Forget password?" %}</a></li>
+ <li><a href="{% url 'registration.views.register' %}" >{% trans "Create an account" %}</a></li>
+ <li><a href="{% url 'django.contrib.auth.views.password_reset' %}" >{% trans "Forget password?" %}</a></li>
</ul>
</div>
</div>
--- a/src/ldt/ldt/user/templates/registration/password_change_done.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/password_change_done.html Fri May 24 21:55:08 2013 +0200
@@ -4,7 +4,7 @@
{% block breadcrumb %}
<li></li>
- <li><a href="{% url ldt.user.views.profile %}">{% trans "Profiles" %}</a></li>
+ <li><a href="{% url 'ldt.user.views.profile' %}">{% trans "Profiles" %}</a></li>
<li>{% trans "password change" %}</li>
{% endblock %}
@@ -12,6 +12,6 @@
{% block iricontent %}
<p>{% trans 'Your password has been changed.' %}</p>
-<a href="{% url ldt.user.views.profile %}">{% trans 'Go back to profiles' %}</a>
+<a href="{% url 'ldt.user.views.profile' %}">{% trans 'Go back to profiles' %}</a>
{% endblock %}
--- a/src/ldt/ldt/user/templates/registration/password_change_form.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/password_change_form.html Fri May 24 21:55:08 2013 +0200
@@ -10,7 +10,7 @@
{% endblock %}
{% block breadcrumb %}
<li></li>
- <li><a href="{% url ldt.user.views.profile %}">{% trans "Profiles" %}</a></li>
+ <li><a href="{% url 'ldt.user.views.profile' %}">{% trans "Profiles" %}</a></li>
<li>{% trans 'Password change' %}</li>
{% endblock %}
--- a/src/ldt/ldt/user/templates/registration/password_reset_email.html Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templates/registration/password_reset_email.html Fri May 24 21:55:08 2013 +0200
@@ -4,7 +4,7 @@
{% trans "Please go to the following page and choose a new password:" %}
{% block reset_link %}
-{{ protocol }}://{{ domain }}{% url django.contrib.auth.views.password_reset_confirm uidb36=uid, token=token %}
+{{ protocol }}://{{ domain }}{% url 'django.contrib.auth.views.password_reset_confirm' uidb36=uid, token=token %}
{% endblock %}
{% trans "Your username, in case you've forgotten:" %} {{ user.username }}
--- a/src/ldt/ldt/user/templatetags/logintag.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/templatetags/logintag.py Fri May 24 21:55:08 2013 +0200
@@ -2,7 +2,7 @@
register = template.Library()
-def login_ajax(user, reload=None):
+def login_ajax(user, reload=None): # @ReservedAssignment
return {'user': user, 'reload': reload}
register.inclusion_tag('ldt/user/login_form.html')(login_ajax)
--- a/src/ldt/ldt/user/urls.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/urls.py Fri May 24 21:55:08 2013 +0200
@@ -1,4 +1,4 @@
-from django.conf.urls.defaults import patterns, url
+from django.conf.urls import patterns, url
urlpatterns = patterns('',
url(r'^loginAjax/$', 'ldt.user.views.login_ajax'),
--- a/src/ldt/ldt/user/views.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/user/views.py Fri May 24 21:55:08 2013 +0200
@@ -1,3 +1,4 @@
+from .forms import ProfileForm, LanguageChangeForm, PictureForm
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.decorators import login_required
from django.contrib.auth.forms import PasswordChangeForm
@@ -6,14 +7,12 @@
from django.template import RequestContext, loader
from django.utils import simplejson
from django.utils.translation import ugettext as _
-from forms import ProfileForm, LanguageChangeForm, PictureForm
from django.views.i18n import set_language
@login_required
def profile(request):
msg = ''
- profile = request.user.get_profile()
- user_language = profile.language
+ user_language = request.user.language
if request.method == "POST":
profile_form = ProfileForm(request.user, request.POST, instance=request.user)
@@ -38,7 +37,7 @@
@login_required
def password(request):
msg = ''
- user_language = request.user.get_profile().language
+ user_language = request.user.language
if request.method == "POST":
password_form = PasswordChangeForm(request.user, request.POST)
@@ -61,7 +60,7 @@
@login_required
def profile_picture(request):
msg = ''
- user_language = request.user.get_profile().language
+ user_language = request.user.language
if request.method == "POST":
profile_form = ProfileForm(instance=request.user)
@@ -85,7 +84,6 @@
logout(request)
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
#return HttpResponseRedirect(settings.LOGOUT_URL)
-
def login_ajax(request, loginstate_template_name='ldt/user/login_form.html'):
if request.method == "POST":
--- a/src/ldt/ldt/utils/context_processors.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/utils/context_processors.py Fri May 24 21:55:08 2013 +0200
@@ -4,8 +4,11 @@
def ldt_context(request):
- return {'BASE_URL': settings.BASE_URL, 'MEDIA_URL': settings.MEDIA_URL, \
- 'WEB_URL': get_web_url(), \
- 'ADMIN_MEDIA_PREFIX': settings.ADMIN_MEDIA_PREFIX, 'VERSION': ldt.get_version(), \
- 'WEB_VERSION' : settings.WEB_VERSION, }
+ return {
+ 'BASE_URL': settings.BASE_URL,
+ 'MEDIA_URL': settings.MEDIA_URL,
+ 'WEB_URL': get_web_url(),
+ 'VERSION': ldt.get_version(),
+ 'WEB_VERSION' : settings.WEB_VERSION,
+ }
--- a/src/ldt/ldt/utils/url.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/utils/url.py Fri May 24 21:55:08 2013 +0200
@@ -1,12 +1,16 @@
from django.contrib.staticfiles.storage import staticfiles_storage
-from django.core.urlresolvers import reverse
+from django.core.urlresolvers import reverse, get_script_prefix
+from django.utils.encoding import iri_to_uri
from ldt.utils.web_url_management import get_web_url
from ldt import settings
from django.conf import settings as djangosettings
import httplib2
import re
import urlparse
-import logging
+from django.utils.http import urlquote
+
+def static(path):
+ return staticfiles_storage.url(path)
def absstatic(request, path):
domain=get_web_url(request)
@@ -43,4 +47,19 @@
def is_absolute(url):
- return bool(urlparse.urlparse(url).scheme)
\ No newline at end of file
+ return bool(urlparse.urlparse(url).scheme)
+
+###
+#
+#
+def reverse_prefix(viewname, urlconf=None, args=None, kwargs=None, prefix=None, current_app=None):
+
+ url = reverse(viewname,urlconf,args,kwargs,prefix,current_app)
+ prefix = get_script_prefix()
+ quoted_prefix = urlquote(prefix)
+ clean_prefix = iri_to_uri(prefix)
+
+ if url.startswith(quoted_prefix):
+ return clean_prefix + url[len(quoted_prefix):]
+ else:
+ return url
--- a/src/ldt/ldt/utils/zipfileext.py Wed May 15 12:18:43 2013 +0200
+++ b/src/ldt/ldt/utils/zipfileext.py Fri May 24 21:55:08 2013 +0200
@@ -2,7 +2,7 @@
import os.path
class ZipFileExt(zipfile.ZipFile):
- def unzip_into_dir(self, dir):
+ def unzip_into_dir(self, dir): # @ReservedAssignment
if not os.path.exists(dir):
os.mkdir(dir, 0777)
for name in self.namelist():