]> git.parisson.com Git - telemeta.git/commitdiff
Essai avec url et tag inc
authormathieu <mathieu.boye28@gmail.com>
Wed, 13 Apr 2016 07:39:30 +0000 (09:39 +0200)
committermathieu <mathieu.boye28@gmail.com>
Wed, 13 Apr 2016 07:39:30 +0000 (09:39 +0200)
Former-commit-id: 8a04bcc8c38f3a7eef168493d83b492978aff944

telemeta/static/telemeta/js/playlist.js
telemeta/templates/telemeta/lists.html
telemeta/templatetags/telemeta_tags.py
telemeta/urls.py
telemeta/views/home.py
telemeta/views/playlist.py

index b07bdcbe711e6e5e234b7eafa01a38efe9196df0..b4631372ca8d11131be2baa3a77b8cca903ece5e 100644 (file)
@@ -113,9 +113,10 @@ var playlistUtils = {
         });
     },
 
-    removeResource: function(id){
-        json([id],'telemeta.del_playlist_resource',function(){
-            window.location.reload();
+    removeResource: function(id, id_playlist){
+        json([id, id_playlist],'telemeta.del_playlist_resource',function(data){
+               var id = JSON.parse(data.result).result;
+               window.location.pathname = '/desk/lists/open-list-' + id;
         });
     },
 
index 866caf64a1e3332b3d2b099d72584612c50c072a..834ac1328022e43197ac8a9ffeccf71f259af527 100644 (file)
@@ -9,48 +9,6 @@
 {% endblock %}
 {% comment "added by Killian Mary end" %}{% endcomment %}
 
-{% block extra_javascript %}
-<script src="{{ STATIC_URL }}telemeta/js/popupdiv.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}telemeta/js/playlist.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}tablesorter/jquery.tablesorter.min.js" type="text/javascript"></script>
-<script src="{{ STATIC_URL }}jquery-ui/jquery-ui.min.js" type="text/javascript"></script>
-<script>
-    jQuery(window).ready(function(){
-        var p = playlistUtils;
-        var a = jQuery('#_new_playlist');
-        a.unbind('click').click(function(){p.showAdd(a);});
-        });
-
-    {% for playlist in playlists %}
-        playlistUtils.addEditPlaylist('{{playlist.playlist.public_id}}','{{ playlist.playlist.title }}','{{playlist.playlist.description}}');
-    {% endfor %}
-
-</script>
-
-{% comment "added by Killian Mary" %}{% endcomment %}
-
-<script>
-    $(document).ready(function() {
-        var nouvellesIcones = {
-            header : 'ui-icon-carat-1-e',
-            activeHeader : 'ui-icon-carat-1-s',
-
-        };
-
-        $("#accordeon").accordion({
-            collapsible : true,
-            icons : nouvellesIcones,
-            heightStyle: "content",
-        });
-
-        $.tablesorter.defaults.sortList = [[2,0]];
-        {% for playlist in playlists %}
-            $("#{{playlist.playlist.public_id}}tb").tablesorter({headers: {6:{sorter:false}}} );
-        {% endfor %}
-    });
-</script>
-{% endblock %}
-
 {% comment "added by Killian Mary end" %}{% endcomment %}
 
 {% block content %}
 
     <div id="accordeon" style="margin-bottom:20px;">
 
+    {% startinc playlists|length %}
+
     {% for playlist in playlists %}
+    {% if playlist.playlist.public_id != last_playlist %}
+               {% incinc %}
+       {% else %}
+               {% bloqueinc %}
+    {% endif %}
+       
 
     <div><a href="#">{{ playlist.playlist.title }}</a></div>
     <div>
                     {% endif %}
                 </td>
                 <td style="vertical-align:middle">
-                <a href="#" onclick="if(confirm(gettrans('delete the resource from the playlist permanently?'))){playlistUtils.removeResource('{{resource.public_id}}');};return false;" class="component_icon button icon_cancel" style="padding: 4px 12px;"></a>
+                <a href="#" onclick="if(confirm(gettrans('delete the resource from the playlist permanently?'))){playlistUtils.removeResource('{{resource.public_id}}', '{{playlist.playlist.public_id}}');};return false;" class="component_icon button icon_cancel" style="padding: 4px 12px;"></a>
                 </td>
             </tr>
             {% endfor %}
     </div>
 </div>
 {% endblock %}
+{% block extra_javascript %}
+<script src="{{ STATIC_URL }}telemeta/js/popupdiv.js" type="text/javascript"></script>
+<script src="{{ STATIC_URL }}telemeta/js/playlist.js" type="text/javascript"></script>
+<script src="{{ STATIC_URL }}tablesorter/jquery.tablesorter.min.js" type="text/javascript"></script>
+<script src="{{ STATIC_URL }}jquery-ui/jquery-ui.min.js" type="text/javascript"></script>
+<script>
+    jQuery(window).ready(function(){
+        var p = playlistUtils;
+        var a = jQuery('#_new_playlist');
+        a.unbind('click').click(function(){p.showAdd(a);});
+        });
+
+    {% for playlist in playlists %}
+        playlistUtils.addEditPlaylist('{{playlist.playlist.public_id}}','{{ playlist.playlist.title }}','{{playlist.playlist.description}}');
+    {% endfor %}
+
+</script>
+
+{% comment "added by Killian Mary" %}{% endcomment %}
+
+<script>
+    $(document).ready(function() {
+        var nouvellesIcones = {
+            header : 'ui-icon-carat-1-e',
+            activeHeader : 'ui-icon-carat-1-s',
+
+        };
+
+        $("#accordeon").accordion({
+            collapsible : true,
+            icons : nouvellesIcones,
+            heightStyle: "content",
+            active: {% valinc %}
+        });
+
+        $.tablesorter.defaults.sortList = [[2,0]];
+        {% for playlist in playlists %}
+            $("#{{playlist.playlist.public_id}}tb").tablesorter({headers: {6:{sorter:false}}} );
+        {% endfor %}
+    });
+</script>
+
+{% endinc %}
+{% endblock %}
index a085034424fbe2011158341026c206b5776d792f..c5e19820ba75a93fc98520035b33e0898dfdfffc 100644 (file)
@@ -467,3 +467,47 @@ def get_googletools():
 @register.assignment_tag
 def settings_value(name):
     return getattr(settings, name, "")
+    
+cpt = None
+    
+class Inc:
+    
+    def __init__(self, limite):
+        self.var = 0
+        self.limite = limite
+        self.bloque = False
+        
+    def inc(self):
+       if self.bloque == False:
+               self.var = self.var +1
+        if self.var == self.limite:
+            self.var = 0
+        
+@register.simple_tag
+def startinc(limite):
+    global cpt
+    cpt = Inc(limite)
+    return ''
+    
+@register.simple_tag
+def incinc():
+    global cpt
+    cpt.inc()
+    return ''
+
+@register.simple_tag
+def valinc():
+    global cpt
+    return cpt.var
+    
+@register.simple_tag
+def bloqueinc():
+    global cpt
+    cpt.bloque = True
+    return ''
+    
+@register.simple_tag
+def endinc():
+       global cpt
+       cpt = None
+       return ''
index fd95be62615ac3f0cc20e123492c431935b3184d..903a31e550f44fd795da392c99f50817758f23df 100644 (file)
@@ -190,7 +190,7 @@ urlpatterns = patterns('',
     url(r'^accounts/$', home_view.users, name="telemeta-users"),
 
     # Desk
-    url(r'^desk/lists/$', home_view.lists, name="telemeta-desk-lists"),
+    url(r'^desk/lists/(?:open-list-(?P<id_playlist>[0-9]+)/)?$', home_view.lists, name="telemeta-desk-lists"),
     url(r'^desk/profile/(?P<username>[A-Za-z0-9@+._-]+)/$', profile_view.profile_detail, name="telemeta-desk-profile"),
     url(r'^desk/home/$', home_view.home, name="telemeta-desk-home"),
 
index b4665f1f2df06d8e6eafa54e822e54445237f619..b784b3eebf641d78b2b10fe2b439313694fde4fb 100644 (file)
@@ -62,7 +62,7 @@ class HomeView(object):
                     'sound_pub_item': sound_pub_item })
         return HttpResponse(template.render(context))
 
-    def lists(self, request):
+    def lists(self, request, id_playlist):
         """Render the home page"""
 
         if request.user.is_authenticated():
@@ -70,8 +70,9 @@ class HomeView(object):
             playlists = get_playlists(request)
             revisions = get_revisions(100)
             user_revisions = get_revisions(25, request.user)
+            last_playlist = id_playlist
             return render(request, template, {'playlists': playlists,
-                                              'revisions': revisions, 'user_revisions': user_revisions })
+                                              'revisions': revisions, 'user_revisions': user_revisions , 'last_playlist':last_playlist})
         else:
             template = 'telemeta/messages.html'
             mess = ugettext('Access not allowed')
index 2046400cd26a0de3bdabdfeb22ba2237bfcdb6eb..9991e53f636824b4d124ccc31a6b1970f54126f7 100644 (file)
@@ -20,6 +20,8 @@
 
 
 from telemeta.views.core import *
+import json
+from django.http import HttpResponse
 
 
 class PlaylistView(object):
@@ -67,9 +69,11 @@ class PlaylistView(object):
             raise 'Error : Bad playlist_resource dictionnary'
 
     @jsonrpc_method('telemeta.del_playlist_resource')
-    def del_playlist_resource(request, public_id):
+    def del_playlist_resource(request, public_id, playlist_id):
         m = PlaylistResource.objects.get(public_id=public_id)
         m.delete()
+        reponse = {'result': playlist_id, "error":None, "id":"jsonrpc"}
+        return json.dumps(reponse)
 
     def get_elements(self, playlist, resource_type):
         resources = PlaylistResource.objects.filter(playlist=playlist)