# HG changeset patch # User verrierj # Date 1328530681 -3600 # Node ID 4d95862afbb258154e5593ffd0b78a095414142a # Parent 155456f99f3d94fcc56ba08877c975eaf9ec3ca8# Parent 7bb62216b289599c8bf25e56fc066a435e2ec421 Merge with 7bb62216b289599c8bf25e56fc066a435e2ec421 diff -r 155456f99f3d -r 4d95862afbb2 src/ldt/ldt/ldt_utils/forms.py --- a/src/ldt/ldt/ldt_utils/forms.py Mon Feb 06 12:42:53 2012 +0100 +++ b/src/ldt/ldt/ldt_utils/forms.py Mon Feb 06 13:18:01 2012 +0100 @@ -68,8 +68,9 @@ if not iriurl_data: iriurl_data = "%s/%s.iri" % (iri_id_data, iri_id_data) cleaned_data['iriurl'] = iriurl_data - # we add a comma to the tag list, to force comma separated list and enable tags with spaces. - cleaned_data['tags'] = cleaned_data['tags'] + ',' + # if needed, we add a comma to the tag list, to force comma separated list and enable tags with spaces. + if ',' not in cleaned_data['tags'] : + cleaned_data['tags'] = cleaned_data['tags'] + ',' return cleaned_data class Meta: diff -r 155456f99f3d -r 4d95862afbb2 src/ldt/ldt/static/ldt/js/LdtPlayer-release.js --- a/src/ldt/ldt/static/ldt/js/LdtPlayer-release.js Mon Feb 06 12:42:53 2012 +0100 +++ b/src/ldt/ldt/static/ldt/js/LdtPlayer-release.js Mon Feb 06 13:18:01 2012 +0100 @@ -2901,7 +2901,8 @@ var duration = +this._serializer.currentMedia().meta["dc:duration"]; var currentChapter = this._serializer.currentChapitre(currentTime); - if (IriSP.null_or_undefined(currentChapter)) { + + if (IriSP.null_or_undefined(currentChapter)) { var left = this.selector.width() / 2; var width = this.selector.width() / 10; } else { @@ -2909,8 +2910,10 @@ var width = (currentChapter.end / duration) * this.selector.width() - left; } - this.sliceLeft = left; - this.sliceWidth = width; + // slider position and length is kept in percents. + this.sliceLeft = (left / this.selector.width()) * 100; + this.sliceWidth = (width / this.selector.width()) * 100; + this._Popcorn.trigger("IriSP.SliceWidget.position", [left, width]); this._Popcorn.listen("IriSP.SliceWidget.zoneChange", IriSP.wrap(this, this.handleSliderChanges)); this._Popcorn.trigger("IriSP.SliceWidget.show"); @@ -3067,18 +3070,20 @@ if (this.cinecast_version) { annotation["begin"] = Math.round(this._Popcorn.currentTime() * 1000 - duration_part); - annotation["end"] = Math.round(this._Popcorn.currentTime() * 1000 + duration_part); - if (annotation["begin"] < 0) - annotation["begin"] = 0; - - if (annotation["end"] > this._serializer.currentMedia().meta["dc:duration"]) - annotation["end"] = this._serializer.currentMedia().meta["dc:duration"]; - + annotation["end"] = Math.round(this._Popcorn.currentTime() * 1000 + duration_part); } else { var duration = +this._serializer.currentMedia().meta["dc:duration"]; annotation["begin"] = +((duration * (this.sliceLeft / 100)).toFixed(0)); annotation["end"] = +((duration * ((this.sliceWidth + this.sliceLeft) / 100)).toFixed(0)); } + + // boundary checks + if (annotation["begin"] < 0) + annotation["begin"] = 0; + + if (annotation["end"] > this._serializer.currentMedia().meta["dc:duration"]) + annotation["end"] = this._serializer.currentMedia().meta["dc:duration"]; + annotation["type"] = this._serializer.getContributions(); if (typeof(annotation["type"]) === "undefined")