26 changed files with 8063 additions and 668 deletions
@ -1,33 +1,33 @@ |
|||
def start(): |
|||
pass |
|||
|
|||
config = [{ |
|||
'name': 'Renamer', |
|||
'tab': 'renaming', |
|||
'options': { |
|||
'enabled': { |
|||
'default': False, |
|||
'type': 'bool', |
|||
'description': 'Enable renaming', |
|||
}, |
|||
'from': { |
|||
'default': '', |
|||
'type': 'directory', |
|||
'label': 'From', |
|||
'description': 'Folder where the movies are downloaded to.', |
|||
}, |
|||
'to': { |
|||
'default': '', |
|||
'type': 'directory', |
|||
'label': 'To', |
|||
'description': 'Folder where the movies will be moved to.', |
|||
}, |
|||
'run_every': { |
|||
'default': 1, |
|||
'type': 'int', |
|||
'unit': 'min(s)', |
|||
'description': 'Search for new movies inside the folder every X minutes.', |
|||
} |
|||
} |
|||
}] |
|||
|
|||
#config = [{ |
|||
# 'name': 'Renamer', |
|||
# 'tab': 'renaming', |
|||
# 'options': { |
|||
# 'enabled': { |
|||
# 'default': False, |
|||
# 'type': 'bool', |
|||
# 'description': 'Enable renaming', |
|||
# }, |
|||
# 'from': { |
|||
# 'default': '', |
|||
# 'type': 'directory', |
|||
# 'label': 'From', |
|||
# 'description': 'Folder where the movies are downloaded to.', |
|||
# }, |
|||
# 'to': { |
|||
# 'default': '', |
|||
# 'type': 'directory', |
|||
# 'label': 'To', |
|||
# 'description': 'Folder where the movies will be moved to.', |
|||
# }, |
|||
# 'run_every': { |
|||
# 'default': 1, |
|||
# 'type': 'int', |
|||
# 'unit': 'min(s)', |
|||
# 'description': 'Search for new movies inside the folder every X minutes.', |
|||
# } |
|||
# } |
|||
#}] |
|||
config = [] |
|||
|
After Width: | Height: | Size: 1.3 KiB |
@ -0,0 +1,71 @@ |
|||
/* |
|||
--- |
|||
|
|||
name: EventStack |
|||
|
|||
description: Helps you Escape. |
|||
|
|||
authors: Christoph Pojer (@cpojer) |
|||
|
|||
license: MIT-style license. |
|||
|
|||
requires: [Core/Class.Extras, Core/Element.Event, Class-Extras/Class.Binds] |
|||
|
|||
provides: EventStack |
|||
|
|||
... |
|||
*/ |
|||
|
|||
(function(){ |
|||
|
|||
this.EventStack = new Class({ |
|||
|
|||
Implements: [Options, Class.Binds], |
|||
|
|||
options: { |
|||
event: 'keyup', |
|||
condition: function(event){ |
|||
return (event.key == 'esc'); |
|||
} |
|||
}, |
|||
|
|||
initialize: function(options){ |
|||
this.setOptions(options); |
|||
this.stack = []; |
|||
this.data = []; |
|||
|
|||
document.addEvent(this.options.event, this.bound('condition')); |
|||
}, |
|||
|
|||
condition: function(event){ |
|||
if (this.options.condition.call(this, event, this.data.getLast())) |
|||
this.pop(event); |
|||
}, |
|||
|
|||
erase: function(fn){ |
|||
this.data.erase(this.data[this.stack.indexOf(fn)]); |
|||
this.stack.erase(fn); |
|||
|
|||
return this; |
|||
}, |
|||
|
|||
push: function(fn, data){ |
|||
this.erase(fn); |
|||
this.data.push(data || null); |
|||
this.stack.push(fn); |
|||
|
|||
return this; |
|||
}, |
|||
|
|||
pop: function(event){ |
|||
var fn = this.stack.pop(), |
|||
data = this.data.pop(); |
|||
|
|||
if (fn) fn.call(this, event, data); |
|||
|
|||
return this; |
|||
} |
|||
|
|||
}); |
|||
|
|||
}).call(this); |
@ -0,0 +1,30 @@ |
|||
/* |
|||
--- |
|||
|
|||
name: EventStack.OuterClick |
|||
|
|||
description: Helps you escape from clicks outside of a certain area. |
|||
|
|||
authors: Christoph Pojer (@cpojer) |
|||
|
|||
license: MIT-style license. |
|||
|
|||
requires: [EventStack] |
|||
|
|||
provides: EventStack.OuterClick |
|||
|
|||
... |
|||
*/ |
|||
|
|||
EventStack.OuterClick = new Class({ |
|||
|
|||
Extends: EventStack, |
|||
|
|||
options: { |
|||
event: 'click', |
|||
condition: function(event, element){ |
|||
return element && !element.contains(event.target); |
|||
} |
|||
} |
|||
|
|||
}); |
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -0,0 +1,140 @@ |
|||
/* |
|||
--- |
|||
name: Fx.Tween.CSS3.Replacement |
|||
script: Fx.Tween.CSS3.Replacement.js |
|||
license: MIT-style license. |
|||
description: Same behavior like Fx.Tween but tries to use native CSS3 transition if possible (Overwrites Fx.Tween). |
|||
copyright: Copyright (c) 2010, Dipl.-Ing. (FH) André Fiedler <kontakt at visualdrugs dot net>, based on code by eskimoblood (mootools users group) |
|||
authors: [André Fiedler, eskimoblood] |
|||
|
|||
requires: [Core/Class.Extras, Core/Element.Event, Core/Element.Style, Core/Fx.Tween] |
|||
|
|||
provides: [Fx.Tween] |
|||
... |
|||
*/ |
|||
|
|||
Element.NativeEvents.transitionend = 2; |
|||
Element.NativeEvents.webkitTransitionEnd = 2; |
|||
Element.NativeEvents.oTransitionEnd = 2; |
|||
|
|||
Element.Events.transitionend = { |
|||
base: Browser.safari || Browser.chrome ? 'webkitTransitionEnd' : (Browser.opera ? 'oTransitionEnd' : 'transitionend') |
|||
}; |
|||
|
|||
Event.implement({ |
|||
|
|||
getPropertyName: function(){ |
|||
return this.event.propertyName; |
|||
}, |
|||
|
|||
getElapsedTime: function(nativeTime){ |
|||
return nativeTime ? this.event.elapsedTime : (this.event.elapsedTime * 1000).toInt(); |
|||
} |
|||
|
|||
}); |
|||
|
|||
Element.implement({ |
|||
|
|||
supportStyle: function(style){ |
|||
var value = this.style[style]; |
|||
return !!(value || value == ''); |
|||
}, |
|||
|
|||
supportVendorStyle: function(style){ |
|||
var prefixedStyle = null; |
|||
return this.supportStyle(style) ? style : ['webkit', 'Moz', 'o'].some(function(prefix){ |
|||
prefixedStyle = prefix + style.capitalize(); |
|||
return this.supportStyle(prefixedStyle); |
|||
}, this) ? prefixedStyle : null; |
|||
} |
|||
|
|||
}); |
|||
|
|||
Fx.TweenCSS2 = Fx.Tween; |
|||
|
|||
Fx.Tween = new Class({ |
|||
|
|||
Extends: Fx.TweenCSS2, |
|||
|
|||
transitionTimings: { |
|||
'linear' : '0,0,1,1', |
|||
'expo:in' : '0.71,0.01,0.83,0', |
|||
'expo:out' : '0.14,1,0.32,0.99', |
|||
'expo:in:out' : '0.85,0,0.15,1', |
|||
'circ:in' : '0.34,0,0.96,0.23', |
|||
'circ:out' : '0,0.5,0.37,0.98', |
|||
'circ:in:out' : '0.88,0.1,0.12,0.9', |
|||
'sine:in' : '0.22,0.04,0.36,0', |
|||
'sine:out' : '0.04,0,0.5,1', |
|||
'sine:in:out' : '0.37,0.01,0.63,1', |
|||
'quad:in' : '0.14,0.01,0.49,0', |
|||
'quad:out' : '0.01,0,0.43,1', |
|||
'quad:in:out' : '0.47,0.04,0.53,0.96', |
|||
'cubic:in' : '0.35,0,0.65,0', |
|||
'cubic:out' : '0.09,0.25,0.24,1', |
|||
'cubic:in:out' : '0.66,0,0.34,1', |
|||
'quart:in' : '0.69,0,0.76,0.17', |
|||
'quart:out' : '0.26,0.96,0.44,1', |
|||
'quart:in:out' : '0.76,0,0.24,1', |
|||
'quint:in' : '0.64,0,0.78,0', |
|||
'quint:out' : '0.22,1,0.35,1', |
|||
'quint:in:out' : '0.9,0,0.1,1' |
|||
}, |
|||
|
|||
initialize: function(element, options){ |
|||
options.transition = options.transition || 'sine:in:out'; |
|||
this.parent(element, options); |
|||
if (typeof this.options.transition != 'string') alert('Only short notated transitions (like \'sine:in\') are supported by Fx.Tween.CSS3'); |
|||
this.options.transition = this.options.transition.toLowerCase(); |
|||
this.transition = this.element.supportVendorStyle('transition'); |
|||
this.css3Supported = !!this.transition && !!this.transitionTimings[this.options.transition]; |
|||
}, |
|||
|
|||
check: function(){ |
|||
if (!this.boundComplete) return true; |
|||
return this.parent(); |
|||
}, |
|||
|
|||
start: function(property, from, to){ |
|||
if (this.css3Supported){ |
|||
if (!this.check(property, from, to)) return this; |
|||
var args = Array.flatten(arguments); |
|||
this.property = this.options.property || args.shift(); |
|||
var parsed = this.prepare(this.element, this.property, args); |
|||
this.from = parsed.from; |
|||
this.to = parsed.to; |
|||
this.boundComplete = function(event){ |
|||
if (event.getPropertyName() == this.property /* && event.getElapsedTime() == this.options.duration */ ){ |
|||
this.element.removeEvent('transitionend', this.boundComplete); |
|||
this.boundComplete = null; |
|||
this.fireEvent('complete', this.subject); |
|||
} |
|||
}.bind(this); |
|||
this.element.addEvent('transitionend', this.boundComplete); |
|||
var trans = function(){ |
|||
this.element.setStyle(this.transition, this.property + ' ' + this.options.duration + 'ms cubic-bezier(' + this.transitionTimings[this.options.transition] + ')'); |
|||
this.element.setStyle(this.property, this.to[0].value + + this.options.unit); |
|||
}.bind(this); |
|||
if (args[1]){ |
|||
this.element.setStyle(this.transition, 'none'); |
|||
this.element.setStyle(this.property, this.from[0].value + + this.options.unit); |
|||
trans.delay(0.1); |
|||
} else |
|||
trans(); |
|||
this.fireEvent('start', this.subject); |
|||
return this; |
|||
} |
|||
return this.parent(property, from, to); |
|||
}, |
|||
|
|||
cancel: function(){ |
|||
if (this.css3Supported){ |
|||
this.element.setStyle(this.transition, 'none'); |
|||
this.element.removeEvent('transitionend', this.boundComplete); |
|||
this.boundComplete = null; |
|||
} |
|||
this.parent(); |
|||
return this; |
|||
} |
|||
|
|||
}); |
@ -0,0 +1,119 @@ |
|||
/* @override http://localhost:5000/static/style/movie_add.css */ |
|||
|
|||
.search_form { |
|||
display: inline-block; |
|||
width: 25%; |
|||
} |
|||
|
|||
.search_form input { |
|||
padding-right: 25px; |
|||
border: 1px solid #aaa; |
|||
padding: 4px; |
|||
margin: 0; |
|||
font-size: 14px; |
|||
width: 90%; |
|||
|
|||
border-radius: 3px; |
|||
-webkit-border-radius: 3px; |
|||
-moz-border-radius: 3px; |
|||
} |
|||
.search_form .input a { |
|||
width: 12px; |
|||
height: 20px; |
|||
display: inline-block; |
|||
margin: 0 0 -5px -20px; |
|||
top: 4px; |
|||
right: 5px; |
|||
background: url('../images/close_button.png') 0 center no-repeat; |
|||
cursor: pointer; |
|||
} |
|||
.search_form .input a:hover { background-position: -12px center; } |
|||
|
|||
.search_form .results_container { |
|||
padding: 10px 0; |
|||
position: absolute; |
|||
background: #fff; |
|||
margin: 11px 0 0 -243px; |
|||
width: 470px; |
|||
min-height: 140px; |
|||
|
|||
box-shadow: 0 0 30px rgba(0,0,0,0.2); |
|||
-moz-box-shadow: 0 0 30px rgba(0,0,0,0.2); |
|||
-webkit-box-shadow: 0 0 30px rgba(0,0,0,0.2); |
|||
|
|||
border-radius: 3px; |
|||
-webkit-border-radius: 3px; |
|||
-moz-border-radius: 3px; |
|||
} |
|||
.search_form .spinner { |
|||
background: #fff url('../images/spinner.gif') no-repeat center 70px; |
|||
} |
|||
|
|||
.search_form .pointer { |
|||
border-right: 10px solid transparent; |
|||
border-left: 10px solid transparent; |
|||
border-bottom: 10px solid #fff; |
|||
display: block; |
|||
position: absolute; |
|||
width: 0px; |
|||
left: 50%; |
|||
margin: -19px 0 0 110px; |
|||
} |
|||
|
|||
.search_form .results .movie { |
|||
overflow: hidden; |
|||
background: #666; |
|||
min-height: 140px; |
|||
} |
|||
|
|||
.search_form .results .movie .add { |
|||
min-height: 140px; |
|||
} |
|||
|
|||
.search_form .results .movie .data { |
|||
padding: 0 15px; |
|||
width: 440px; |
|||
position: relative; |
|||
min-height: 100px; |
|||
top: 0; |
|||
margin: -140px 0 0 0; |
|||
background: #fff; |
|||
min-height: 140px; |
|||
} |
|||
|
|||
.search_form .results .movie .thumbnail { |
|||
width: 17%; |
|||
display: inline-block; |
|||
margin: 15px 3% 15px 0; |
|||
vertical-align: top; |
|||
|
|||
border-radius: 3px; |
|||
-moz-border-radius: 3px; |
|||
-webkit-border-radius: 3px; |
|||
box-shadow: 0 0 3px rgba(0,0,0,0.35); |
|||
-moz-box-shadow: 0 0 3px rgba(0,0,0,0.35); |
|||
-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.35); |
|||
} |
|||
|
|||
.search_form .results .movie .info { |
|||
width: 74%; |
|||
display: inline-block; |
|||
vertical-align: top; |
|||
padding: 15px 0; |
|||
background: #fff; |
|||
} |
|||
.search_form .results .movie .add +.info { |
|||
margin-left: 20%; |
|||
} |
|||
|
|||
.search_form .results .movie .info h2 { |
|||
margin: 0; |
|||
} |
|||
|
|||
.search_form .results .movie .info h2 span { |
|||
padding: 0 5px; |
|||
content: ")"; |
|||
} |
|||
|
|||
.search_form .results .movie .info h2 span:before { content: "("; } |
|||
.search_form .results .movie .info h2 span:after { content: ")"; } |
@ -0,0 +1,126 @@ |
|||
/* @override http://localhost:5000/static/style/page/settings.css */ |
|||
|
|||
.page.settings { |
|||
overflow: hidden; |
|||
} |
|||
|
|||
.page.settings .tabs { |
|||
float: left; |
|||
width: 20%; |
|||
font-size: 25px; |
|||
text-align: right; |
|||
list-style: none; |
|||
padding: 40px 0; |
|||
margin: 0; |
|||
min-height: 300px; |
|||
} |
|||
.page.settings .tabs a { |
|||
display: block; |
|||
padding: 10px 15px; |
|||
border: 1px solid transparent; |
|||
position: relative; |
|||
z-index: 200; |
|||
margin-right: -1px; |
|||
} |
|||
.page.settings .tabs .active a { |
|||
color: black; |
|||
background: #fbfbfb; |
|||
border-color: #f1f1f1; |
|||
border-right-color: transparent; |
|||
} |
|||
|
|||
.page.settings .containers { |
|||
width: 75.8%; |
|||
float: left; |
|||
padding: 20px 2%; |
|||
min-height: 300px; |
|||
background: #fbfbfb; |
|||
border-left: 1px solid #f1f1f1;s |
|||
} |
|||
|
|||
.page.settings .advanced { |
|||
display: none; |
|||
color: #ce3b19; |
|||
} |
|||
.page.settings.show_advanced .advanced { display: block; } |
|||
|
|||
.page.settings .tab_content { |
|||
display: none; |
|||
} |
|||
.page.settings .tab_content.active { display: block; } |
|||
|
|||
.page.settings fieldset { |
|||
padding: 10px 0; |
|||
} |
|||
.page.settings fieldset h2 { |
|||
font-weight: normal; |
|||
font-size: 25px; |
|||
padding: 0 9px 10px; |
|||
margin: 0; |
|||
border-bottom: 1px solid #f3f3f3; |
|||
} |
|||
.page.settings fieldset h2 .hint { |
|||
color: #888; |
|||
font-size: 12px; |
|||
margin-left: 10px; |
|||
} |
|||
|
|||
.page.settings .ctrlHolder { |
|||
line-height: 25px; |
|||
padding: 10px; |
|||
border-bottom: 1px solid #f3f3f3; |
|||
font-size: 14px; |
|||
} |
|||
.page.settings .ctrlHolder:last-child { border: none; } |
|||
.page.settings .ctrlHolder:hover { background: rgba(211,234,254,0.1); } |
|||
.page.settings .ctrlHolder.focused:hover { background: rgba(251,246,48,0.29); } |
|||
|
|||
.page.settings .ctrlHolder .formHint { |
|||
float: right; |
|||
width: 47%; |
|||
margin: -18px 0; |
|||
padding: 0; |
|||
} |
|||
|
|||
.page.settings .ctrlHolder input[type=checkbox] + .formHint { |
|||
float: none; |
|||
width: auto; |
|||
display: inline-block; |
|||
margin-left: 1% !important; |
|||
color: #222; |
|||
} |
|||
|
|||
.page.settings .ctrlHolder label { |
|||
font-weight: bold; |
|||
width: 20%; |
|||
margin: 0; |
|||
padding: 6px 0 0; |
|||
} |
|||
|
|||
.page.settings input[type=text] { |
|||
border: 1px solid #aaa; |
|||
padding: 3px; |
|||
margin: 0; |
|||
width: 30%; |
|||
|
|||
border-radius: 3px; |
|||
-webkit-border-radius: 3px; |
|||
-moz-border-radius: 3px; |
|||
} |
|||
.page.settings .input.xsmall { width: 5% } |
|||
.page.settings .input.small { width: 10% } |
|||
.page.settings .input.medium { width: 15% } |
|||
.page.settings .input.large { width: 25% } |
|||
.page.settings .input.xlarge { width: 30% } |
|||
|
|||
.page.settings .advanced_toggle { |
|||
clear: both; |
|||
display: block; |
|||
text-align: right; |
|||
height: 20px; |
|||
margin: 0; |
|||
} |
|||
.page.settings .advanced_toggle span { padding: 0 5px; } |
|||
.page.settings.show_advanced .advanced_toggle { |
|||
color: #ce3b19; |
|||
} |
Loading…
Reference in new issue