forked from 0x2620/pandora
dont expose ids of empty subtitles, fixes #1333
This commit is contained in:
parent
05bd43e878
commit
661e005b78
3 changed files with 14 additions and 5 deletions
|
@ -15,7 +15,7 @@ import ox
|
|||
from clip.models import Clip
|
||||
from changelog.models import Changelog
|
||||
|
||||
from item.utils import sort_string
|
||||
from item.utils import sort_string, get_by_key
|
||||
import managers
|
||||
import utils
|
||||
from tasks import update_matches
|
||||
|
@ -235,6 +235,10 @@ class Annotation(models.Model):
|
|||
streams = self.item.streams()
|
||||
if streams:
|
||||
j['videoRatio'] = streams[0].aspect_ratio
|
||||
subtitles = get_by_key(settings.CONFIG['layers'], 'isSubtitles', True)
|
||||
if subtitles:
|
||||
if 'id' in j and self.layer == subtitles['id'] and not self.value:
|
||||
del j['id']
|
||||
return j
|
||||
|
||||
def log(self):
|
||||
|
|
|
@ -123,7 +123,8 @@ def findClips(request):
|
|||
|
||||
def add_annotations(key, qs, add_layer=False):
|
||||
values = ['public_id', 'value', 'clip__start', 'clip__end']
|
||||
if add_layer:
|
||||
subtitles = utils.get_by_key(settings.CONFIG['layers'], 'isSubtitles', True)
|
||||
if subtitles or add_layer:
|
||||
values.append('layer')
|
||||
if query['filter']:
|
||||
qs = qs.filter(query['filter'])
|
||||
|
@ -137,6 +138,8 @@ def findClips(request):
|
|||
'id': a['public_id'],
|
||||
'value': a['value'],
|
||||
}
|
||||
if a['layer'] == subtitles['id'] and not a['value']:
|
||||
del l['id']
|
||||
if add_layer:
|
||||
l['layer'] = a['layer']
|
||||
i[key].append(l)
|
||||
|
|
|
@ -119,16 +119,18 @@ pandora.ui.clipList = function(videoRatio) {
|
|||
Ox.print(data.ids[0], '$$$$$', that.value(data.ids[0]))
|
||||
var id = data.ids[0],
|
||||
item = !ui.item ? id.split('/')[0] : ui.item,
|
||||
annotation = that.value(id, 'annotations')[0].id,
|
||||
points = {
|
||||
annotation: that.value(id, 'annotations')[0].id.split('/')[1],
|
||||
annotation: annotation ? annotation.split('/')[1] : '',
|
||||
'in': that.value(id, 'in'),
|
||||
out: that.value(id, 'out'),
|
||||
position: that.value(id, 'in')
|
||||
},
|
||||
set;
|
||||
if (isEmbed) {
|
||||
// FIXME: This is wrong, see ticket #1333.
|
||||
window.open('/' + item + '/' + points.annotation, '_blank');
|
||||
window.open( '/' + item + '/'
|
||||
+ (annotation ? points.annotation : points['in'] + ',' + points.out),
|
||||
'_blank');
|
||||
} else {
|
||||
set = {
|
||||
item: item,
|
||||
|
|
Loading…
Reference in a new issue