]> git.parisson.com Git - telemeta.git/commitdiff
fix item edit, add auto_zoom for item edit
authorGuillaume Pellerin <yomguy@parisson.com>
Mon, 17 Nov 2014 21:37:03 +0000 (22:37 +0100)
committerGuillaume Pellerin <yomguy@parisson.com>
Mon, 17 Nov 2014 21:37:03 +0000 (22:37 +0100)
telemeta/static/telemeta/css/telemeta.css
telemeta/templates/telemeta/mediaitem_detail.html
telemeta/urls.py
telemeta/views/item.py

index 8fd41ca870684bbeae08fad4cb07827ee211f250..74da57c8034195e28bed4b8fed214d438b8f2535 100644 (file)
@@ -1343,3 +1343,6 @@ a:focus,div:focus{
     border-radius: 8px 0px 8px 8px;
 }
 
+.no-sound-access {
+    padding: 200px;
+}
\ No newline at end of file
index ddf892315122b141e1d11eb365089585ef774f18..36bdfe28318c70f3835e8a821d0828f3523438d9 100644 (file)
         {% endif %}
 
     </div>
+
     {% else %}
 
     <div id="rightcol">
index e171f03a9851d3960d11f47528c5fdda05829b16..1a194ff051a88bbf243f1524f46d455dc5e485d3 100644 (file)
@@ -81,7 +81,7 @@ urlpatterns = patterns('',
     url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/visualize/(?P<grapher_id>[0-9a-z_]+)/(?P<width>[0-9A-Z]+)x(?P<height>[0-9A-Z]+)/$', item_view.item_visualize, name="telemeta-item-visualize"),
     url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/analyze/xml/$', item_view.item_analyze_xml, name="telemeta-item-analyze-xml"),
     url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/item_xspf.xml$', item_view.item_playlist, dict(template="telemeta/mediaitem_xspf.xml", mimetype="application/xspf+xml"), name="telemeta-item-xspf"),
-    url(r'^archives/items/(?P<pk>[A-Za-z0-9._-]+)/edit/$', ItemEditView.as_view(), name="telemeta-item-edit"),
+    url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/edit/$', ItemEditView.as_view(), name="telemeta-item-edit"),
     url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/copy/$', ItemEditView.as_view(), name="telemeta-item-copy"),
     url(r'^archives/item_new/add/$', ItemAddView.as_view(), name="telemeta-item-add"),
     url(r'^archives/items/(?P<public_id>[A-Za-z0-9._-]+)/player/(?P<width>[0-9]+)x(?P<height>[0-9]+)/$', item_view.item_detail, dict(template='telemeta/mediaitem_player.html'), name="telemeta-item-player"),
@@ -105,7 +105,6 @@ urlpatterns = patterns('',
     url(r'^archives/collections_unpublished/$', CollectionUnpublishedListView.as_view(), name="telemeta-collections-unpublished"),
     url(r'^archives/collections_published/$', CollectionPublishedListView.as_view(), name="telemeta-collections-published"),
     url(r'^archives/collections_sound/$', CollectionSoundListView.as_view(), name="telemeta-collections-sound"),
-
     url(r'^archives/collections/(?P<public_id>[A-Za-z0-9._-]+)/$', CollectionDetailView.as_view(), name="telemeta-collection-detail"),
     url(r'^archives/collections/(?P<public_id>[A-Za-z0-9._-]+)/dc/$', CollectionDetailViewDC.as_view(), name="telemeta-collection-dublincore"),
     url(r'^archives/collections/(?P<public_id>[A-Za-z0-9._-]+)/collection_xspf.xml$', collection_view.collection_playlist, dict(template="telemeta/collection_xspf.xml", mimetype="application/xspf+xml"), name="telemeta-collection-xspf"),
index d70e8d50cca899460507faec8b56be2ddf7514f8..74f20a5814246613c629c5f897ffe29885a69b26 100644 (file)
@@ -51,7 +51,7 @@ class ItemBaseMixin(object):
     export_enabled = getattr(settings, 'TELEMETA_DOWNLOAD_ENABLED', True)
     export_formats = getattr(settings, 'TELEMETA_DOWNLOAD_FORMATS', ('mp3', 'wav'))
     default_grapher_id = getattr(settings, 'TIMESIDE_DEFAULT_GRAPHER_ID', ('waveform_simple'))
-    default_grapher_sizes = getattr(settings, 'TELEMETA_DEFAULT_GRAPHER_SIZES', ['360x130', ])
+    default_grapher_sizes = getattr(settings, 'TIMESIDE_DEFAULT_GRAPHER_SIZES', ['360x130', ])
     auto_zoom = getattr(settings, 'TIMESIDE_AUTO_ZOOM', False)
 
 
@@ -707,21 +707,18 @@ class ItemViewMixin(ItemBaseMixin):
                 break
         return grapher
 
-
     def get_object(self):
-        if 'public_id' in self.kwargs.keys():
-            obj = self.model.objects.filter(code=self.kwargs['public_id'])
-            if not obj:
+        item = self.model()
+        if 'public_id' in self.kwargs:
+            items = self.model.objects.filter(code=self.kwargs['public_id'])
+            if not items:
                 try:
-                    obj = self.model.objects.get(id=self.kwargs['public_id'])
+                    item = self.model.objects.get(id=self.kwargs['public_id'])
                 except:
                     pass
             else:
-                obj = obj[0]
-            self.pk = obj.pk
-            return get_object_or_404(self.model, pk=self.pk)
-        else:
-            return get_object_or_404(self.model, pk=self.kwargs['pk'])
+                item = items[0]
+        return item
 
 
 class ItemEditView(ItemViewMixin, UpdateWithInlinesView):
@@ -747,6 +744,7 @@ class ItemEditView(ItemViewMixin, UpdateWithInlinesView):
         context['export_formats'] = self.get_export_formats()
         context['visualizers'] = self.get_graphers()
         context['audio_export_enabled'] = self.export_enabled
+        context['auto_zoom'] = True
         return context
 
 
@@ -756,15 +754,17 @@ class ItemAddView(ItemViewMixin, CreateWithInlinesView):
     template_name = 'telemeta/mediaitem_add.html'
 
     def get_initial(self):
-        obj = MediaItem()
+        item = self.model()
         # new item for a specific collection
         if 'public_id' in self.kwargs:
             public_id = self.kwargs['public_id']
             collections = MediaCollection.objects.filter(code=public_id)
             if collections:
                 collection = collections[0]
-                obj.collection = collection
-        return model_to_dict(obj)
+                item.collection = collection
+                items = MediaItem.objects.filter(collection=collection)
+                item.code = auto_code(items, collection.code)
+        return model_to_dict(item)
 
     def get_success_url(self):
         return reverse_lazy('telemeta-items')