Merge with 0e6e631718ee86cf88ac0e0be1e9f4637ac42d4c
authorcavaliet
Mon, 27 May 2013 16:08:26 +0200
changeset 41 cc2a710abeaf
parent 40 e817af4f68ee (diff)
parent 38 0e6e631718ee (current diff)
child 42 95e64fb6730f
child 43 3b438962ad57
Merge with 0e6e631718ee86cf88ac0e0be1e9f4637ac42d4c
--- a/src/metadatacomposer/templates/metadatacomposer_home.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/metadatacomposer_home.html	Mon May 27 16:08:26 2013 +0200
@@ -30,13 +30,13 @@
         <header>
             <div class="container">
                 <div class="row">
-                    <div class="span3"><h1><a class="clearfix" href="{% url composer_home branding=branding %}">
+                    <div class="span3"><h1><a class="clearfix" href="{% url 'composer_home' branding=branding %}">
                         {% include top_header_partial %}
                     </a></h1></div>
                     <div class="span9">
                         <ul class="breadcrumb nav-bar">
-                        <li><a href="{% url composer_project_list branding=branding %}"><i class="icon-file"></i> Projets</a> <span class="divider">/</span></li>
-                        <li><a href="{% url composer_resource_list branding=branding %}"><i class="icon-folder-close-alt"></i>Ressources</a></li>
+                        <li><a href="{% url 'composer_project_list' branding=branding %}"><i class="icon-file"></i> Projets</a> <span class="divider">/</span></li>
+                        <li><a href="{% url 'composer_resource_list' branding=branding %}"><i class="icon-folder-close-alt"></i>Ressources</a></li>
                         </ul>
                     </div>
                 </div>
@@ -64,7 +64,7 @@
                     <h3 class="span8"><i class="icon-picture"></i> Dernières images</h3>
                     <div class="span4 wrap-btn-add">
                         <a data-type-media="image" data-title="Ajouter une image" class="btn btn-success open-modal" 
-                         href="{% url composer_modal_image branding=branding %}" data-hide-bibliotheque>
+                         href="{% url 'composer_modal_image' branding=branding %}" data-hide-bibliotheque="">
                          Ajouter une image <i class="icon-plus-sign"></i></a>
                     </div>
                 </div>
@@ -82,7 +82,7 @@
                     <h3 class="span8"><i class="icon-film"></i> Dernières vidéos</h3>
                     <div class="span4 wrap-btn-add">
                         <a data-type-media="video" data-title="Ajouter une vidéo" class="btn btn-success open-modal" 
-                         href="{% url composer_modal_video branding=branding %}" data-hide-bibliotheque>
+                         href="{% url 'composer_modal_video' branding=branding %}" data-hide-bibliotheque="">
                          Ajouter une vidéo <i class="icon-plus-sign"></i></a>
                     </div>
                 </div>
--- a/src/metadatacomposer/templates/metadatacomposer_modal_image.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/metadatacomposer_modal_image.html	Mon May 27 16:08:26 2013 +0200
@@ -3,13 +3,13 @@
 <div class="row">
     <div class="span3">
         <ul class="modal-menu">
-            <li class="bibliotheque-link"><a data-type-media="image" data-title="Bibliothèque" class="btn open-modal" href="modal-bibliotheque-image.html"><i class="icon-folder-open"></i> Bibliothèque</a></li>
+            <li class="bibliotheque-link"><a data-type-media="image" data-title="Bibliothèque" class="btn open-modal" href="{% url 'composer_modal_image_library' branding=branding %}"><i class="icon-folder-open"></i> Bibliothèque</a></li>
             <li><a class="btn active" tabindex="-1" href="#"><i class="icon-plus-sign"></i> Ajouter une image</a></li>
         </ul>
     </div>
-    <div class="span8 offset1 popup-content">
+    <div class="span8 popup-content">
     <h4>Informations et source de l'image</h4>
-    <form class="form-horizontal" action="{% url composer_modal_image branding=branding %}" enctype="multipart/form-data" method="post">{% csrf_token %}
+    <form class="form-horizontal" action="{% url 'composer_modal_image' branding=branding %}" enctype="multipart/form-data" method="post">{% csrf_token %}
         {% if image_pk %}<input type="hidden" value="{{ image_pk }}" name="image_pk">{% endif %}
 	    {% for error in form.errors %}
 	    <span class="error">{{ error }}</span>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/metadatacomposer/templates/metadatacomposer_modal_image_library.html	Mon May 27 16:08:26 2013 +0200
@@ -0,0 +1,13 @@
+{% load static %}
+{% load thumbnail %}
+<div class="row">
+    <div class="span3">
+        <ul class="modal-menu">
+            <li><a class="btn active" tabindex="-1" href="#"><i class="icon-folder-open"></i> Bibliothèque</a></li>
+            <li><a class="btn open-modal" data-type-media="image" data-title="Ajouter une image" tabindex="-1" href="{% url 'composer_modal_image' branding=branding %}"><i class="icon-plus-sign"></i> Ajouter une image</a></li>
+        </ul>
+    </div>
+    <div class="span8 popup-content bibliotheque-image" id="image_list_container_library">
+        {% include 'partial/library_image_list.html' %}
+    </div>
+</div>
\ No newline at end of file
--- a/src/metadatacomposer/templates/metadatacomposer_modal_video.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/metadatacomposer_modal_video.html	Mon May 27 16:08:26 2013 +0200
@@ -8,9 +8,9 @@
             <li><a class="btn active" tabindex="-1" href="#"><i class="icon-plus-sign"></i> Ajouter une video</a></li>
         </ul>
     </div>
-    <div class="span8 offset1 popup-content">
+    <div class="span8 popup-content">
 
-    <form class="row" action="{% if content %}{% url composer_modal_video branding=branding iri_id=content.iri_id %}{% else %}{% url composer_modal_video branding=branding %}{% endif %}" enctype="multipart/form-data" method="post">
+    <form class="row" action="{% if content %}{% url 'composer_modal_video' branding=branding iri_id=content.iri_id %}{% else %}{% url 'composer_modal_video' branding=branding %}{% endif %}" enctype="multipart/form-data" method="post">
         <h4 class="span8">Informations sur la vidéo</h4>
         <div class="span4">
             {% csrf_token %}
--- a/src/metadatacomposer/templates/metadatacomposer_resource_list.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/metadatacomposer_resource_list.html	Mon May 27 16:08:26 2013 +0200
@@ -19,7 +19,8 @@
                         <div class="row article-title">
                             <h3 class="span8"><i class="icon-picture"></i> Liste des images</h3>
                             <div class="span4 wrap-btn-add">
-                                <a data-type-media="image" data-title="Ajouter une image" class="btn btn-success open-modal" href="{% url composer_modal_image branding=branding %}">
+                                <a data-type-media="image" data-title="Ajouter une image" class="btn btn-success open-modal" 
+                                href="{% url 'composer_modal_image' branding=branding %}" >
                                     Ajouter une image <i class="icon-plus-sign"></i>
                                 </a>
                             </div>
@@ -34,7 +35,7 @@
                             <div class="row article-title">
                                 <h3 class="span8"><i class="icon-film"></i> Liste des vidéos</h3>
                                 <div class="span4 wrap-btn-add">
-                                    <a data-type-media="video" data-title="Ajouter une vidéo" class="btn btn-success open-modal" href="{% url composer_modal_video branding=branding %}">
+                                    <a data-type-media="video" data-title="Ajouter une vidéo" class="btn btn-success open-modal" href="{% url 'composer_modal_video' branding=branding %}">
                                         Ajouter une vidéo <i class="icon-plus-sign"></i>
                                     </a>
                                 </div>
@@ -107,5 +108,22 @@
             }
         });
     });
+    $(document).on('click', 'a.image_pagination_library', function(e){
+        e.preventDefault();e.stopPropagation();
+        var url = $(this).attr('href');
+        $(this).addClass("loader");
+        $.ajax({
+            url: url,
+            cache: false,
+            type: 'GET',
+            success: function(data, status, request) {
+                $("#image_list_container_library").html(data);
+            },
+            error: function(jqXHR, textStatus, errorThrown) {
+                resp = $.parseJSON(jqXHR.responseText);
+                alert(resp.message);
+            }
+        });
+    });
     </script>
 {% endblock %}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/metadatacomposer/templates/partial/library_image_list.html	Mon May 27 16:08:26 2013 +0200
@@ -0,0 +1,38 @@
+{% load static %}
+{% load i18n %}
+{% load thumbnail %}
+{% load front_tags %}
+        <div class="row">
+          {% for i in image_results %}
+            <div class="span2">
+                <a href="">{% thumbnail i.image_file "140x140" crop="center" format="PNG" as im %}<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}" />{% empty %}<img src="{% static 'metadatacomposer/img/140x140.gif' %}" width="140px" height="140px" />{% endthumbnail %}
+                <h5><a href="#">{{ i.title }}</a></h5>
+            </div>
+          {% endfor %}
+        </div>
+        <div class="pagination">
+            <ul>
+            {% if image_results.has_previous %}
+                <li><a href="{% url 'composer_image_page' branding=branding %}?page={{ image_results.previous_page_number }}&mode=library" class="image_pagination_library">{% trans "Previous" %}</a></li>
+            {% else %}
+               <li class="disabled"><a>{% trans "Previous" %}</a></li>
+            {% endif %}
+            {% if image_results.paginator.num_pages > 1 %}
+             {% for i in image_results.paginator.num_pages|get_range %}
+              {% if i|add:'1' == image_results.number %}
+                <li class="active"><a href="#">{{i|add:'1'}}</a></li>
+              {% else %}
+                <li><a href="{% url 'composer_image_page' branding=branding %}?page={{i|add:'1'}}&mode=library" class="image_pagination_library">{{i|add:'1'}}</a></li>
+              {% endif %}
+             {% endfor %}
+            {% endif %}
+            {% if image_results.has_next %}
+                <li><a href="{% url 'composer_image_page' branding=branding %}?page={{ image_results.next_page_number }}&mode=library" class="image_pagination_library">{% trans "Next" %}</a></li>
+            {% else %}
+               <li class="disabled"><a>{% trans "Next" %}</a></li>
+            {% endif %}
+            {% if image_results.paginator.num_pages > 1 %}
+                <li><a href="{% url 'composer_image_page' branding=branding %}?page=x&mode=library" class="image_pagination_library">({% trans "All" %})</a></li>
+            {% endif %}
+            </ul>
+        </div>
\ No newline at end of file
--- a/src/metadatacomposer/templates/partial/resource_content_list.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/partial/resource_content_list.html	Mon May 27 16:08:26 2013 +0200
@@ -26,7 +26,7 @@
                                         </td>
                                         <td>{{ res.content.update_date|date:"Y/m/d" }}</td>
                                         <td>
-                                            <a data-type-media="video" data-title="Modifier une vidéo" class="btn open-modal" href="{% url composer_modal_video branding=branding iri_id=res.content.iri_id %}"><i class="icon-pencil"></i></a>
+                                            <a data-type-media="video" data-title="Modifier une vidéo" class="btn open-modal" href="{% url 'composer_modal_video' branding=branding iri_id=res.content.iri_id %}"><i class="icon-pencil"></i></a>
                                             <a class="btn btn-delete" data-title="Titre du média" href="#row-list-ressources-video-id1">
                                             <i class="icon-remove"></i>
                                         </a>
@@ -38,7 +38,7 @@
                             <div class="pagination">
                                 <ul>
 			                    {% if content_results.has_previous %}
-			                        <li><a href="{% url composer_content_page branding=branding %}?page={{ content_results.previous_page_number }}" class="content_pagination">{% trans "Previous" %}</a></li>
+			                        <li><a href="{% url 'composer_content_page' branding=branding %}?page={{ content_results.previous_page_number }}" class="content_pagination">{% trans "Previous" %}</a></li>
 			                    {% else %}
 			                       <li class="disabled"><a>{% trans "Previous" %}</a></li>
 			                    {% endif %}
@@ -47,17 +47,17 @@
 			                      {% if i|add:'1' == content_results.number %}
 			                        <li class="active"><a href="#">{{i|add:'1'}}</a></li>
 			                      {% else %}
-			                        <li><a href="{% url composer_content_page branding=branding %}?page={{i|add:'1'}}" class="content_pagination">{{i|add:'1'}}</a></li>
+			                        <li><a href="{% url 'composer_content_page' branding=branding %}?page={{i|add:'1'}}" class="content_pagination">{{i|add:'1'}}</a></li>
 			                      {% endif %}
 			                     {% endfor %}
 			                    {% endif %}
 			                    {% if content_results.has_next %}
-			                        <li><a href="{% url composer_content_page branding=branding %}?page={{ content_results.next_page_number }}" class="content_pagination">{% trans "Next" %}</a></li>
+			                        <li><a href="{% url 'composer_content_page' branding=branding %}?page={{ content_results.next_page_number }}" class="content_pagination">{% trans "Next" %}</a></li>
 			                    {% else %}
 			                       <li class="disabled"><a>{% trans "Next" %}</a></li>
 			                    {% endif %}
 			                    {% if content_results.paginator.num_pages > 1 %}
-			                        <li><a href="{% url composer_content_page branding=branding %}?page=x" class="content_pagination">({% trans "All" %})</a></li>
+			                        <li><a href="{% url 'composer_content_page' branding=branding %}?page=x" class="content_pagination">({% trans "All" %})</a></li>
 			                    {% endif %}
                                 </ul>
                             </div>
\ No newline at end of file
--- a/src/metadatacomposer/templates/partial/resource_image_list.html	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/templates/partial/resource_image_list.html	Mon May 27 16:08:26 2013 +0200
@@ -24,7 +24,7 @@
                                     </td>
                                     <td>{{ res.modification_date|date:"Y/m/d" }}</td>
                                     <td>
-                                        <a data-type-media="image" data-title="Modifier une image" class="btn open-modal" href="{% url composer_modal_image branding=branding %}?image={{ res.pk }}"><i class="icon-pencil"></i></a>
+                                        <a data-type-media="image" data-title="Modifier une image" class="btn open-modal" href="{% url 'composer_modal_image' branding=branding %}?image={{ res.pk }}"><i class="icon-pencil"></i></a>
                                         <a class="btn btn-delete" data-title="Titre du média" href="#row-list-ressources-image-id1">
                                             <i class="icon-remove"></i>
                                         </a>
@@ -36,7 +36,7 @@
                             <div class="pagination">
                                 <ul>
 			                    {% if image_results.has_previous %}
-			                        <li><a href="{% url composer_image_page branding=branding %}?page={{ image_results.previous_page_number }}" class="image_pagination">{% trans "Previous" %}</a></li>
+			                        <li><a href="{% url 'composer_image_page' branding=branding %}?page={{ image_results.previous_page_number }}" class="image_pagination">{% trans "Previous" %}</a></li>
 			                    {% else %}
 			                       <li class="disabled"><a>{% trans "Previous" %}</a></li>
 			                    {% endif %}
@@ -45,17 +45,17 @@
 			                      {% if i|add:'1' == image_results.number %}
 			                        <li class="active"><a href="#">{{i|add:'1'}}</a></li>
 			                      {% else %}
-			                        <li><a href="{% url composer_image_page branding=branding %}?page={{i|add:'1'}}" class="image_pagination">{{i|add:'1'}}</a></li>
+			                        <li><a href="{% url 'composer_image_page' branding=branding %}?page={{i|add:'1'}}" class="image_pagination">{{i|add:'1'}}</a></li>
 			                      {% endif %}
 			                     {% endfor %}
 			                    {% endif %}
 			                    {% if image_results.has_next %}
-			                        <li><a href="{% url composer_image_page branding=branding %}?page={{ image_results.next_page_number }}" class="image_pagination">{% trans "Next" %}</a></li>
+			                        <li><a href="{% url 'composer_image_page' branding=branding %}?page={{ image_results.next_page_number }}" class="image_pagination">{% trans "Next" %}</a></li>
 			                    {% else %}
 			                       <li class="disabled"><a>{% trans "Next" %}</a></li>
 			                    {% endif %}
 			                    {% if image_results.paginator.num_pages > 1 %}
-			                        <li><a href="{% url composer_image_page branding=branding %}?page=x" class="image_pagination">({% trans "All" %})</a></li>
+			                        <li><a href="{% url 'composer_image_page' branding=branding %}?page=x" class="image_pagination">({% trans "All" %})</a></li>
 			                    {% endif %}
                                 </ul>
                             </div>
\ No newline at end of file
--- a/src/metadatacomposer/urls.py	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/urls.py	Mon May 27 16:08:26 2013 +0200
@@ -2,7 +2,7 @@
 from metadatacomposer.views import MetadataComposerHome, MetadataComposerProjectList,\
     MetadataComposerResourceList, MetadataComposerContentPagination,\
     MetadataComposerModalVideo, MetadataComposerModalImage,\
-    MetadataComposerImagePagination
+    MetadataComposerImagePagination, MetadataComposerModalImageLibrary
 
 urlpatterns = patterns('',
     url(r'^jsi18n/(?P<packages>\S+?)/$', 'django.views.i18n.javascript_catalog', name='jsi18n'),
@@ -13,6 +13,7 @@
     url(r'^(?P<branding>.*)/modalvideo/(?P<iri_id>[\w-]+)$', MetadataComposerModalVideo.as_view(), name="composer_modal_video"),
     url(r'^(?P<branding>.*)/modalvideo/$', MetadataComposerModalVideo.as_view(), name="composer_modal_video"),
     url(r'^(?P<branding>.*)/modalimage/$', MetadataComposerModalImage.as_view(), name="composer_modal_image"),
+    url(r'^(?P<branding>.*)/modalimagelibrary/$', MetadataComposerModalImageLibrary.as_view(), name="composer_modal_image_library"),
     url(r'^(?P<branding>.*)/$', MetadataComposerHome.as_view(), name="composer_home"),
     url(r'^$', MetadataComposerHome.as_view(), name="composer_home"),
 )
--- a/src/metadatacomposer/views.py	Mon May 27 15:24:46 2013 +0200
+++ b/src/metadatacomposer/views.py	Mon May 27 16:08:26 2013 +0200
@@ -110,7 +110,10 @@
 class MetadataComposerImagePagination(TemplateResponseMixin, MetadataComposerContextView):
     
     def get_template_names(self):
-        return "partial/resource_image_list.html"
+        if self.template_name and self.template_name!="":
+            return self.template_name
+        else:
+            return "partial/resource_image_list.html"
     
     @method_decorator(login_required)
     @method_decorator(never_cache)
@@ -120,9 +123,13 @@
     def get(self, request, branding="iri", **kwargs):
         self.branding = branding
         page = request.GET.get("page") or 1
+        mode = request.GET.get("mode") or "resource"
         # Get current contents page and theirs projects
         image_results = get_images(page)
         
+        if mode=="library":
+            self.template_name = "partial/library_image_list.html"
+        
         context = self.get_context_dict(request)
         context.update({"image_results":image_results})
         return self.render_to_response(context)
@@ -276,3 +283,22 @@
 
 
 
+class MetadataComposerModalImageLibrary(TemplateResponseMixin, MetadataComposerContextView):
+    
+    def get_template_names(self):
+        return "metadatacomposer_modal_image_library.html"
+    
+    @method_decorator(login_required)
+    @method_decorator(never_cache)
+    def dispatch(self, *args, **kwargs):
+        return super(MetadataComposerModalImageLibrary, self).dispatch(*args, **kwargs)
+    
+    def get(self, request, branding="iri", **kwargs):
+        self.branding = branding
+        
+        context = self.get_context_dict(request)
+        context.update({"image_results":get_images(1)})
+        return self.render_to_response(context)
+
+
+