Fixed: Unlimited MaxSize and increased granularity.

fixes #337
This commit is contained in:
Taloth Saldono
2015-05-20 00:57:01 +02:00
parent e5278a0243
commit ab1e82414b
14 changed files with 249 additions and 56 deletions

View File

@@ -6,7 +6,7 @@
<div class="row">
<span class="col-md-2 col-sm-3">Quality</span>
<span class="col-md-2 col-sm-3">Title</span>
<span class="col-md-4 col-sm-6">Size Limit</span>
<span class="col-md-4 col-sm-6">Size Limit <i class="icon-sonarr-info" title="Limits are automatically adjusted for the series runtime and number of episodes in the file." /></span>
</div>
</div>
<div class="rows x-rows">

View File

@@ -6,6 +6,12 @@ require('jquery-ui');
var view = Marionette.ItemView.extend({
template : 'Settings/Quality/Definition/QualityDefinitionItemViewTemplate',
className : 'row',
slider : {
min : 0,
max : 200,
step : 0.1
},
ui : {
sizeSlider : '.x-slider',
@@ -31,11 +37,12 @@ var view = Marionette.ItemView.extend({
this.ui.sizeSlider.slider({
range : true,
min : 0,
max : 200,
min : this.slider.min,
max : this.slider.max,
step : this.slider.step,
values : [
this.model.get('minSize'),
this.model.get('maxSize')
this.model.get('minSize') || this.slider.min,
this.model.get('maxSize') || this.slider.max
]
});
@@ -43,15 +50,22 @@ var view = Marionette.ItemView.extend({
},
_updateSize : function(event, ui) {
this.model.set('minSize', ui.values[0]);
this.model.set('maxSize', ui.values[1]);
var minSize = ui.values[0];
var maxSize = ui.values[1];
if (maxSize === this.slider.max) {
maxSize = null;
}
this.model.set('minSize', minSize);
this.model.set('maxSize', maxSize);
this._changeSize();
},
_changeSize : function() {
var minSize = this.model.get('minSize');
var maxSize = this.model.get('maxSize');
var minSize = this.model.get('minSize') || this.slider.min;
var maxSize = this.model.get('maxSize') || null;
{
var minBytes = minSize * 1024 * 1024;
@@ -63,24 +77,18 @@ var view = Marionette.ItemView.extend({
}
{
if (maxSize === 0) {
if (maxSize === 0 || maxSize === null) {
this.ui.thirtyMinuteMaxSize.html('Unlimited');
this.ui.sixtyMinuteMaxSize.html('Unlimited');
} else {
var maxBytes = maxSize * 1024 * 1024;
var maxThirty = fileSize(maxBytes * 30, 1, false);
var maxSixty = fileSize(maxBytes * 60, 1, false);
return;
this.ui.thirtyMinuteMaxSize.html(maxThirty);
this.ui.sixtyMinuteMaxSize.html(maxSixty);
}
var maxBytes = maxSize * 1024 * 1024;
var maxThirty = fileSize(maxBytes * 30, 1, false);
var maxSixty = fileSize(maxBytes * 60, 1, false);
this.ui.thirtyMinuteMaxSize.html(maxThirty);
this.ui.sixtyMinuteMaxSize.html(maxSixty);
}
/*if (parseInt(maxSize, 10) === 0) {
thirty = 'No Limit';
sixty = 'No Limit';
}*/
}
});