forked from 0x2620/pandora
update embed dialog
This commit is contained in:
parent
735395cb97
commit
46b86ac7a8
1 changed files with 42 additions and 29 deletions
|
@ -206,21 +206,20 @@ pandora.ui.insertEmbedDialog = function(callback) {
|
||||||
$input.position = Ox.Input({
|
$input.position = Ox.Input({
|
||||||
label: 'Position',
|
label: 'Position',
|
||||||
labelWidth: 128,
|
labelWidth: 128,
|
||||||
placeholder: '00:00:00',
|
placeholder: '00:00:00.000',
|
||||||
width: formWidth
|
width: formWidth
|
||||||
})
|
})
|
||||||
.addClass('advanced')
|
.addClass('advanced')
|
||||||
.css({display: 'inline-block', margin: '4px 0'})
|
.css({display: 'inline-block', margin: '4px 0'})
|
||||||
.bindEvent({
|
.bindEvent({
|
||||||
change: function(data) {
|
change: function(data) {
|
||||||
if ($input['in'].options('value')) {
|
var hasInAndOut = $input['in'].options('value') !== '';
|
||||||
|
if (data.value) {
|
||||||
$input.position.options({
|
$input.position.options({
|
||||||
value: Ox.formatDuration(
|
value: limitPoint(
|
||||||
Ox.limit(
|
data.value,
|
||||||
Ox.parseDuration($input.position.options('value')),
|
hasInAndOut ? $input['in'].options('value') : 0,
|
||||||
Ox.parseDuration($input['in'].options('value')),
|
hasInAndOut ? $input.out.options('value') : duration
|
||||||
Ox.parseDuration($input.out.options('value'))
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -233,22 +232,26 @@ pandora.ui.insertEmbedDialog = function(callback) {
|
||||||
$input['in'] = Ox.Input({
|
$input['in'] = Ox.Input({
|
||||||
label: 'In Point',
|
label: 'In Point',
|
||||||
labelWidth: 128,
|
labelWidth: 128,
|
||||||
placeholder: '00:00:00',
|
placeholder: '00:00:00.000',
|
||||||
width: formWidth
|
width: formWidth
|
||||||
})
|
})
|
||||||
.css({display: 'inline-block', margin: '4px 0'})
|
.css({display: 'inline-block', margin: '4px 0'})
|
||||||
.bindEvent({
|
.bindEvent({
|
||||||
change: function(data) {
|
change: function(data) {
|
||||||
var min = Ox.parseDuration(data.value) + 1;
|
if (data.value) {
|
||||||
if (
|
$input['in'].options({
|
||||||
$input.out.options('value') === ''
|
value: limitPoint(data.value, 0, duration)
|
||||||
|| input.out.options('value') < min
|
|
||||||
) {
|
|
||||||
$input.out.options({
|
|
||||||
value: Ox.formatDuration(min)
|
|
||||||
});
|
});
|
||||||
|
if ($input.out.options('value') === '') {
|
||||||
|
$input.out.options({value: Ox.formatDuration(duration)});
|
||||||
|
} else if (
|
||||||
|
Ox.parseDuration($input.out.options('value'))
|
||||||
|
< Ox.parseDuration(data.value)
|
||||||
|
) {
|
||||||
|
$input.out.options({value: data.value});
|
||||||
}
|
}
|
||||||
$input.annotation.options({value: ''});
|
$input.annotation.options({value: ''});
|
||||||
|
}
|
||||||
formatURL();
|
formatURL();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -257,26 +260,26 @@ pandora.ui.insertEmbedDialog = function(callback) {
|
||||||
$input.out = Ox.Input({
|
$input.out = Ox.Input({
|
||||||
label: 'Out Point',
|
label: 'Out Point',
|
||||||
labelWidth: 128,
|
labelWidth: 128,
|
||||||
placeholder: '00:00:00',
|
placeholder: '00:00:00.000',
|
||||||
width: formWidth
|
width: formWidth
|
||||||
})
|
})
|
||||||
.css({display: 'inline-block', margin: '4px 0'})
|
.css({display: 'inline-block', margin: '4px 0'})
|
||||||
.bindEvent({
|
.bindEvent({
|
||||||
change: function(data) {
|
change: function(data) {
|
||||||
if (Ox.parseDuration(data.value) < 1) {
|
if (data.value) {
|
||||||
$input.out.options({value: 1});
|
|
||||||
data.value = 1
|
|
||||||
}
|
|
||||||
var max = Ox.parseDuration(data.value) - 1;
|
|
||||||
if (
|
|
||||||
!input['in'].options('value') === ''
|
|
||||||
|| input['in'].options > max
|
|
||||||
) {
|
|
||||||
$input.out.options({
|
$input.out.options({
|
||||||
value: Ox.formatDuration(max)
|
value: limitPoint(data.value, 0, duration)
|
||||||
});
|
});
|
||||||
|
if ($input['in'].options('value') === '') {
|
||||||
|
$input['in'].options({value: Ox.formatDuration(0)});
|
||||||
|
} else if (
|
||||||
|
Ox.parseDuration($input['in'].options('value'))
|
||||||
|
> Ox.parseDuration(data.value)
|
||||||
|
) {
|
||||||
|
$input['in'].options({value: data.value});
|
||||||
}
|
}
|
||||||
$input.annotation.options({value: ''});
|
$input.annotation.options({value: ''});
|
||||||
|
}
|
||||||
formatURL();
|
formatURL();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -422,6 +425,16 @@ pandora.ui.insertEmbedDialog = function(callback) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function limitPoint(value, min, max) {
|
||||||
|
return Ox.formatDuration(
|
||||||
|
Ox.limit(
|
||||||
|
Ox.parseDuration(value),
|
||||||
|
Ox.parseDuration(min),
|
||||||
|
Ox.parseDuration(max)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
function parseURL(url) {
|
function parseURL(url) {
|
||||||
var parsed = Ox.parseURL(url),
|
var parsed = Ox.parseURL(url),
|
||||||
protocol = parsed.protocol.replace(/:$/, ''),
|
protocol = parsed.protocol.replace(/:$/, ''),
|
||||||
|
|
Loading…
Reference in a new issue