edit panel: fix item duration check; use history for edits

This commit is contained in:
rolux 2013-08-09 18:37:16 +00:00
parent 93ef9d9f6a
commit da63228c89

View file

@ -155,14 +155,17 @@ pandora.ui.editPanel = function() {
data.value += clip['in'];
}
pandora.api.get({id: clip.item, keys: ['duration']}, function(result) {
data.value = Math.min(data.value, result.data.duration);
args[data.key] = data.value;
if (data.key == 'in' && data.value > clip.out) {
args.out = args['in'];
} else if (data.key == 'out' && data.value < clip['in']) {
args['in'] = args.out;
var clips;
if (data.key == 'out') {
data.value = Math.min(data.value, result.data.duration);
}
pandora.api.editClip(args, function(result) {
clips = serializeClips([data.id]).concat(serializeClips([{
id: data.id,
'in': data.key == 'in' ? data.value : clip['in'],
item: clip.item,
out: data.key == 'out' ? data.value : clip.out
}]));
pandora.doHistory('edit', clips, ui.edit, function(result) {
if (result.status.code == 200) {
edit.clips[index] = result.data;
that.updateClip(data.id, result.data);
@ -368,7 +371,7 @@ pandora.ui.editPanel = function() {
edit.duration += clip.duration;
});
that.options({
clips: Ox.clone(clips),
clips: Ox.clone(edit.clips),
duration: edit.duration,
smallTimelineURL: getSmallTimelineURL(),
video: getVideos()