Browse Source

Charts listing on dashboard

pull/5180/head
Ruud 10 years ago
parent
commit
8bbe4b3908
  1. 2
      couchpotato/core/media/movie/_base/static/list.js
  2. 49
      couchpotato/core/media/movie/_base/static/movie.actions.js
  3. 6
      couchpotato/core/media/movie/_base/static/movie.scss
  4. 66
      couchpotato/core/media/movie/charts/main.py
  5. 14
      couchpotato/core/media/movie/charts/static/charts.js
  6. 9
      couchpotato/core/media/movie/suggestion/main.py
  7. 2
      couchpotato/static/scripts/combined.base.min.js
  8. 51
      couchpotato/static/scripts/combined.plugins.min.js
  9. 2
      couchpotato/static/scripts/page/home.js
  10. 124
      couchpotato/static/style/combined.min.css

2
couchpotato/core/media/movie/_base/static/list.js

@ -527,7 +527,7 @@ var MovieList = new Class({
getSavedView: function(){ getSavedView: function(){
var self = this; var self = this;
return Cookie.read(self.options.identifier+'_view'); return self.options.force_view ? self.options.view : Cookie.read(self.options.identifier+'_view');
}, },
search: function(){ search: function(){

49
couchpotato/core/media/movie/_base/static/movie.actions.js

@ -733,7 +733,7 @@ MA.SuggestSeen = new Class({
createButton: function(){ createButton: function(){
var self = this; var self = this;
return new Element('a.add', { return new Element('a.seen', {
'text': 'Already seen', 'text': 'Already seen',
'title': 'Already seen it!', 'title': 'Already seen it!',
'events': { 'events': {
@ -778,7 +778,7 @@ MA.SuggestIgnore = new Class({
createButton: function(){ createButton: function(){
var self = this; var self = this;
return new Element('a.add', { return new Element('a.ignore', {
'text': 'Ignore', 'text': 'Ignore',
'title': 'Don\'t suggest this movie anymore', 'title': 'Don\'t suggest this movie anymore',
'events': { 'events': {
@ -807,6 +807,51 @@ MA.SuggestIgnore = new Class({
}); });
MA.ChartIgnore = new Class({
Extends: SuggestBase,
icon: 'error',
create: function() {
var self = this;
self.button = self.createButton();
self.detail_button = self.createButton();
},
createButton: function(){
var self = this;
return new Element('a.ignore', {
'text': 'Hide',
'title': 'Don\'t show this movie in charts',
'events': {
'click': self.markAsHidden.bind(self)
}
});
},
markAsHidden: function(e){
var self = this;
(e).preventDefault();
Api.request('charts.ignore', {
'data': {
'imdb': self.getIMDB()
},
'onComplete': function(json){
if(self.movie.details){
self.movie.details.close();
}
self.movie.destroy();
}
});
}
});
MA.Readd = new Class({ MA.Readd = new Class({
Extends: MovieAction, Extends: MovieAction,

6
couchpotato/core/media/movie/_base/static/movie.scss

@ -224,6 +224,12 @@ $mass_edit_height: 44px;
} }
} }
} }
.rating .vote {
display: inline-block;
min-width: 60px;
text-align: right;
}
} }
} }

66
couchpotato/core/media/movie/charts/main.py

@ -1,5 +1,6 @@
import time import time
from couchpotato.core.helpers.variable import getTitle from couchpotato import Env
from couchpotato.core.helpers.variable import getTitle, splitString
from couchpotato.core.logger import CPLog from couchpotato.core.logger import CPLog
from couchpotato.api import addApiView from couchpotato.api import addApiView
@ -17,10 +18,7 @@ class Charts(Plugin):
def __init__(self): def __init__(self):
addApiView('charts.view', self.automationView) addApiView('charts.view', self.automationView)
addEvent('app.load', self.setCrons) addApiView('charts.ignore', self.ignoreView)
def setCrons(self):
fireEvent('schedule.interval', 'charts.update_cache', self.updateViewCache, hours = self.update_interval)
def automationView(self, force_update = False, **kwargs): def automationView(self, force_update = False, **kwargs):
@ -31,10 +29,40 @@ class Charts(Plugin):
if not charts: if not charts:
charts = self.updateViewCache() charts = self.updateViewCache()
ignored = splitString(Env.prop('charts_ignore', default = ''))
# Create a list the movie/list.js can use
for chart in charts:
medias = []
for media in chart.get('list', []):
identifier = media.get('imdb')
if identifier in ignored:
continue
# Cache poster
poster = media.get('images', {}).get('poster', [])
cached_poster = fireEvent('file.download', url = poster[0], single = True) if len(poster) > 0 else False
files = {'image_poster': [cached_poster] } if cached_poster else {}
medias.append({
'status': 'suggested',
'title': getTitle(media),
'type': 'movie',
'info': media,
'files': files,
'identifiers': {
'imdb': identifier
}
})
chart['list'] = medias
return { return {
'success': True, 'success': True,
'count': len(charts), 'count': len(charts),
'charts': charts 'charts': charts,
'ignored': ignored,
} }
def updateViewCache(self): def updateViewCache(self):
@ -54,20 +82,6 @@ class Charts(Plugin):
chart['hide_wanted'] = self.conf('hide_wanted') chart['hide_wanted'] = self.conf('hide_wanted')
chart['hide_library'] = self.conf('hide_library') chart['hide_library'] = self.conf('hide_library')
# Create a list the movie/list.js can use
medias = []
for media in chart.get('list'):
medias.append({
'status': 'suggested',
'title': getTitle(media),
'type': 'movie',
'info': media,
'identifiers': {
'imdb': media.get('imdb')
}
})
chart['list'] = medias
self.setCache('charts_cached', charts, timeout = self.update_interval * 3600) self.setCache('charts_cached', charts, timeout = self.update_interval * 3600)
except: except:
log.error('Failed refreshing charts') log.error('Failed refreshing charts')
@ -75,3 +89,15 @@ class Charts(Plugin):
self.update_in_progress = False self.update_in_progress = False
return charts return charts
def ignoreView(self, imdb = None, **kwargs):
ignored = splitString(Env.prop('charts_ignore', default = ''))
if imdb:
ignored.append(imdb)
Env.prop('charts_ignore', ','.join(set(ignored)))
return {
'result': True
}

14
couchpotato/core/media/movie/charts/static/charts.js

@ -73,7 +73,7 @@ var Charts = new Class({
'identifier': chart.name.toLowerCase().replace(/[^a-z0-9]+/g, '_'), 'identifier': chart.name.toLowerCase().replace(/[^a-z0-9]+/g, '_'),
'title': chart.name, 'title': chart.name,
'description': '<a href="'+chart.url+'">See source</a>', 'description': '<a href="'+chart.url+'">See source</a>',
'actions': [MA.Add, MA.SuggestIgnore, MA.SuggestSeen, MA.IMDB, MA.Trailer], 'actions': [MA.Add, MA.ChartIgnore, MA.IMDB, MA.Trailer],
'load_more': false, 'load_more': false,
'view': 'thumb', 'view': 'thumb',
'force_view': true, 'force_view': true,
@ -112,18 +112,6 @@ var Charts = new Class({
} }
}, },
hide: function(){
this.el.hide();
},
afterAdded: function(m){
$(m).getElement('div.chart_number')
.addClass('chart_in_wanted')
.set('title', 'Movie in wanted list');
},
toElement: function(){ toElement: function(){
return this.el; return this.el;
} }

9
couchpotato/core/media/movie/suggestion/main.py

@ -47,15 +47,18 @@ class Suggestion(Plugin):
medias = [] medias = []
for suggestion in suggestions[:int(limit)]: for suggestion in suggestions[:int(limit)]:
# Cache poster
poster = suggestion.get('images', {}).get('poster', []) poster = suggestion.get('images', {}).get('poster', [])
cached_poster = fireEvent('file.download', url = poster[0], single = True) if len(poster) > 0 else False
files = {'image_poster': [cached_poster] } if cached_poster else {}
medias.append({ medias.append({
'status': 'suggested', 'status': 'suggested',
'title': getTitle(suggestion), 'title': getTitle(suggestion),
'type': 'movie', 'type': 'movie',
'info': suggestion, 'info': suggestion,
'files': { 'files': files,
'image_poster': [fireEvent('file.download', url = poster[0], single = True)]
} if len(poster) > 0 else {},
'identifiers': { 'identifiers': {
'imdb': suggestion.get('imdb') 'imdb': suggestion.get('imdb')
} }

2
couchpotato/static/scripts/combined.base.min.js

@ -970,7 +970,7 @@ Page.Home = new Class({
return; return;
} }
self.chain = new Chain(); self.chain = new Chain();
self.chain.chain(self.createAvailable.bind(self), self.createSoon.bind(self), self.createSuggestions.bind(self), self.createLate.bind(self)); self.chain.chain(self.createAvailable.bind(self), self.createSoon.bind(self), self.createSuggestions.bind(self), self.createCharts.bind(self), self.createLate.bind(self));
self.chain.callChain(); self.chain.callChain();
}, },
createAvailable: function() { createAvailable: function() {

51
couchpotato/static/scripts/combined.plugins.min.js

@ -461,7 +461,7 @@ var MovieList = new Class({
click: self.loadMore.bind(self) click: self.loadMore.bind(self)
} }
}) : null); }) : null);
self.changeView(self.getSavedView() || self.options.view || "thumb"); self.changeView((self.options.force_view ? self.options.view : self.getSavedView() || self.options.view) || "thumb");
if (self.options.navigation) self.createNavigation(); if (self.options.navigation) self.createNavigation();
if (self.options.api_call) self.getMovies(); if (self.options.api_call) self.getMovies();
App.on("movie.added", self.movieAdded.bind(self)); App.on("movie.added", self.movieAdded.bind(self));
@ -801,7 +801,7 @@ var MovieList = new Class({
}, },
getSavedView: function() { getSavedView: function() {
var self = this; var self = this;
return Cookie.read(self.options.identifier + "_view"); return self.options.force_view ? self.options.view : Cookie.read(self.options.identifier + "_view");
}, },
search: function() { search: function() {
var self = this; var self = this;
@ -1533,7 +1533,7 @@ MA.SuggestSeen = new Class({
}, },
createButton: function() { createButton: function() {
var self = this; var self = this;
return new Element("a.add", { return new Element("a.seen", {
text: "Already seen", text: "Already seen",
title: "Already seen it!", title: "Already seen it!",
events: { events: {
@ -1569,7 +1569,7 @@ MA.SuggestIgnore = new Class({
}, },
createButton: function() { createButton: function() {
var self = this; var self = this;
return new Element("a.add", { return new Element("a.ignore", {
text: "Ignore", text: "Ignore",
title: "Don't suggest this movie anymore", title: "Don't suggest this movie anymore",
events: { events: {
@ -1594,6 +1594,41 @@ MA.SuggestIgnore = new Class({
} }
}); });
MA.ChartIgnore = new Class({
Extends: SuggestBase,
icon: "error",
create: function() {
var self = this;
self.button = self.createButton();
self.detail_button = self.createButton();
},
createButton: function() {
var self = this;
return new Element("a.ignore", {
text: "Hide",
title: "Don't show this movie in charts",
events: {
click: self.markAsHidden.bind(self)
}
});
},
markAsHidden: function(e) {
var self = this;
e.preventDefault();
Api.request("charts.ignore", {
data: {
imdb: self.getIMDB()
},
onComplete: function(json) {
if (self.movie.details) {
self.movie.details.close();
}
self.movie.destroy();
}
});
}
});
MA.Readd = new Class({ MA.Readd = new Class({
Extends: MovieAction, Extends: MovieAction,
create: function() { create: function() {
@ -2368,7 +2403,7 @@ var Charts = new Class({
identifier: chart.name.toLowerCase().replace(/[^a-z0-9]+/g, "_"), identifier: chart.name.toLowerCase().replace(/[^a-z0-9]+/g, "_"),
title: chart.name, title: chart.name,
description: '<a href="' + chart.url + '">See source</a>', description: '<a href="' + chart.url + '">See source</a>',
actions: [ MA.Add, MA.SuggestIgnore, MA.SuggestSeen, MA.IMDB, MA.Trailer ], actions: [ MA.Add, MA.ChartIgnore, MA.IMDB, MA.Trailer ],
load_more: false, load_more: false,
view: "thumb", view: "thumb",
force_view: true, force_view: true,
@ -2395,12 +2430,6 @@ var Charts = new Class({
self.shown_once = true; self.shown_once = true;
} }
}, },
hide: function() {
this.el.hide();
},
afterAdded: function(m) {
$(m).getElement("div.chart_number").addClass("chart_in_wanted").set("title", "Movie in wanted list");
},
toElement: function() { toElement: function() {
return this.el; return this.el;
} }

2
couchpotato/static/scripts/page/home.js

@ -25,7 +25,7 @@ Page.Home = new Class({
self.createAvailable.bind(self), self.createAvailable.bind(self),
self.createSoon.bind(self), self.createSoon.bind(self),
self.createSuggestions.bind(self), self.createSuggestions.bind(self),
//self.createCharts.bind(self), self.createCharts.bind(self),
self.createLate.bind(self) self.createLate.bind(self)
); );

124
couchpotato/static/style/combined.min.css

@ -1,4 +1,4 @@
.movies>.description a:hover,.page.movie_details .releases .buttons a:hover{text-decoration:underline} .movies>.description a:hover,.page.movie_details .releases .buttons a:hover,.page.settings fieldset h2 .hint a{text-decoration:underline}
.search_form{display:inline-block;z-index:11;width:44px;position:relative} .search_form{display:inline-block;z-index:11;width:44px;position:relative}
.search_form .icon-search{position:absolute;z-index:2;top:50%;left:0;height:100%;text-align:center;color:#FFF;font-size:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)} .search_form .icon-search{position:absolute;z-index:2;top:50%;left:0;height:100%;text-align:center;color:#FFF;font-size:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}
.search_form .wrapper{position:absolute;left:44px;bottom:0;background:#ac0000;border-radius:3px 0 0 3px;display:none;box-shadow:0 0 15px 2px rgba(0,0,0,.15)} .search_form .wrapper{position:absolute;left:44px;bottom:0;background:#ac0000;border-radius:3px 0 0 3px;display:none;box-shadow:0 0 15px 2px rgba(0,0,0,.15)}
@ -86,6 +86,7 @@
.list_list .movie .data .info .eta{font-size:.8em;opacity:.5;margin-right:4px} .list_list .movie .data .info .eta{font-size:.8em;opacity:.5;margin-right:4px}
.list_list .movie .data .info .quality{clear:both;overflow:hidden} .list_list .movie .data .info .quality{clear:both;overflow:hidden}
.list_list .movie .data .info .quality span{float:left;font-size:.7em;margin:2px 0 0 2px} .list_list .movie .data .info .quality span{float:left;font-size:.7em;margin:2px 0 0 2px}
.list_list .movie .data .info .rating .vote{display:inline-block;min-width:60px;text-align:right}
.list_list .movie .actions{position:absolute;right:10px;top:0;bottom:0;display:none;z-index:10} .list_list .movie .actions{position:absolute;right:10px;top:0;bottom:0;display:none;z-index:10}
.list_list .movie .actions .action{display:inline-block} .list_list .movie .actions .action{display:inline-block}
.list_list .movie .actions a{height:100%;display:block;background:#FFF;padding:10px;width:auto;float:right;color:#000} .list_list .movie .actions a{height:100%;display:block;background:#FFF;padding:10px;width:auto;float:right;color:#000}
@ -139,7 +140,7 @@
@media (max-width:480px){.page.movie_details .overlay{left:0;border-radius:0} @media (max-width:480px){.page.movie_details .overlay{left:0;border-radius:0}
.page.movie_details .overlay .close{width:44px} .page.movie_details .overlay .close{width:44px}
} }
.page.movie_details .content{position:fixed;z-index:2;top:0;bottom:0;right:0;left:176px;background:#FFF;border-radius:3px 0 0 3px;overflow-y:auto;-webkit-transform:translateX(100%) translateZ(0);transform:translateX(100%) translateZ(0);transition:-webkit-transform 350ms cubic-bezier(.9,0,.1,1);transition:transform 350ms cubic-bezier(.9,0,.1,1)} .page.movie_details .content{position:fixed;z-index:2;top:0;bottom:0;right:0;left:176px;background:#FFF;border-radius:3px 0 0 3px;overflow-y:auto;-webkit-transform:translateX(100%)translateZ(0);transform:translateX(100%)translateZ(0);transition:-webkit-transform 350ms cubic-bezier(.9,0,.1,1);transition:transform 350ms cubic-bezier(.9,0,.1,1)}
.page.movie_details .content>.head{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;padding:0 20px;position:relative;z-index:2} .page.movie_details .content>.head{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;padding:0 20px;position:relative;z-index:2}
@media (max-width:480px){.page.movie_details .content{left:44px} @media (max-width:480px){.page.movie_details .content{left:44px}
.page.movie_details .content>.head{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 10px;line-height:1em} .page.movie_details .content>.head{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 10px;line-height:1em}
@ -173,7 +174,7 @@
.page.movie_details .content>.head .buttons{margin-left:auto} .page.movie_details .content>.head .buttons{margin-left:auto}
.page.movie_details .content .section{padding:10px} .page.movie_details .content .section{padding:10px}
} }
.page.movie_details .files span,.page.movie_details .releases .item span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding:6.67px 0} .page.movie_details .files span,.page.movie_details .releases .item span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;padding:6.67px 0}
.page.movie_details.show{pointer-events:auto} .page.movie_details.show{pointer-events:auto}
.page.movie_details.show .overlay{opacity:1;transition-delay:0s} .page.movie_details.show .overlay{opacity:1;transition-delay:0s}
.page.movie_details.show .overlay .close{opacity:1;transition-delay:300ms} .page.movie_details.show .overlay .close{opacity:1;transition-delay:300ms}
@ -230,7 +231,7 @@
.page.movie_details .releases .actions{min-width:80px;max-width:80px} .page.movie_details .releases .actions{min-width:80px;max-width:80px}
.page.movie_details .trailer_container{background:#000;position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;cursor:pointer} .page.movie_details .trailer_container{background:#000;position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;cursor:pointer}
.alph_nav .menus .button,.alph_nav .menus .counter{line-height:80px;padding:0 10px} .alph_nav .menus .button,.alph_nav .menus .counter{line-height:80px;padding:0 10px}
.page.movie_details .trailer_container .background{opacity:.3;transition:all 300ms;-webkit-transform:scale(1.05) translateZ(0);transform:scale(1.05) translateZ(0);background:center no-repeat;background-size:cover;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1} .page.movie_details .trailer_container .background{opacity:.3;transition:all 300ms;-webkit-transform:scale(1.05)translateZ(0);transform:scale(1.05)translateZ(0);background:center no-repeat;background-size:cover;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}
.page.movie_details .trailer_container .icon-play{opacity:.9;position:absolute;z-index:2;text-align:center;width:100%;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);transition:all 300ms;color:#FFF;font-size:110px} .page.movie_details .trailer_container .icon-play{opacity:.9;position:absolute;z-index:2;text-align:center;width:100%;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);transition:all 300ms;color:#FFF;font-size:110px}
@media (max-width:1024px){.page.movie_details .trailer_container .icon-play{font-size:55px} @media (max-width:1024px){.page.movie_details .trailer_container .icon-play{font-size:55px}
} }
@ -291,6 +292,7 @@
@media all and (max-width:600px){.charts .chart{width:100%} @media all and (max-width:600px){.charts .chart{width:100%}
} }
.charts .chart .media_result .data{left:150px;background:#4e5969;border:none} .charts .chart .media_result .data{left:150px;background:#4e5969;border:none}
#category_ordering li:last-child,#profile_ordering li:last-child,.api_docs .api .params tr:last-child td,.api_docs .api .params tr:last-child th{border:0}
.charts .chart .media_result .data .info{top:10px;left:15px;right:15px;bottom:10px;overflow:hidden} .charts .chart .media_result .data .info{top:10px;left:15px;right:15px;bottom:10px;overflow:hidden}
.charts .chart .media_result .data .info h2{white-space:normal;max-height:120px;font-size:18px;line-height:18px} .charts .chart .media_result .data .info h2{white-space:normal;max-height:120px;font-size:18px;line-height:18px}
.charts .chart .media_result .data .info .genres,.charts .chart .media_result .data .info .rating,.charts .chart .media_result .data .info .year{position:static;display:block;padding:0;opacity:.6} .charts .chart .media_result .data .info .genres,.charts .chart .media_result .data .info .rating,.charts .chart .media_result .data .info .year{position:static;display:block;padding:0;opacity:.6}
@ -309,6 +311,7 @@
.charts .chart .media_result .chart_number{color:#fff;position:absolute;top:0;padding:10px;font:700 2em/1em Helvetica,Sans-Serif;width:50px;height:100%;text-align:center;border-left:8px solid transparent} .charts .chart .media_result .chart_number{color:#fff;position:absolute;top:0;padding:10px;font:700 2em/1em Helvetica,Sans-Serif;width:50px;height:100%;text-align:center;border-left:8px solid transparent}
.charts .chart .media_result.chart_in_wanted .chart_number{border-color:rgba(0,255,40,.3)} .charts .chart .media_result.chart_in_wanted .chart_number{border-color:rgba(0,255,40,.3)}
.charts .chart .media_result.chart_in_library .chart_number{border-color:rgba(0,202,32,.3)} .charts .chart .media_result.chart_in_library .chart_number{border-color:rgba(0,202,32,.3)}
.page.wizard .tabs li:hover a,.toggle_menu a:hover{border-color:#047792}
.charts .chart .media_result .actions{position:absolute;top:10px;right:10px;display:none;width:90px} .charts .chart .media_result .actions{position:absolute;top:10px;right:10px;display:none;width:90px}
.charts .chart .media_result:hover .actions{display:block} .charts .chart .media_result:hover .actions{display:block}
.charts .chart .media_result:hover h2 .title{opacity:0} .charts .chart .media_result:hover h2 .title{opacity:0}
@ -316,40 +319,13 @@
.charts .chart .media_result .actions a{margin-left:10px;vertical-align:middle} .charts .chart .media_result .actions a{margin-left:10px;vertical-align:middle}
.toggle_menu{height:50px} .toggle_menu{height:50px}
.toggle_menu a{display:block;width:50%;float:left;color:rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.06667)} .toggle_menu a{display:block;width:50%;float:left;color:rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.06667)}
.toggle_menu a:hover{border-color:#047792;border-width:4px;color:#fff} .toggle_menu a:hover{border-width:4px;color:#fff}
.toggle_menu a.active{border-bottom:4px solid #04bce6;color:#fff} .toggle_menu a.active{border-bottom:4px solid #04bce6;color:#fff}
#category_ordering li,#profile_ordering li,.add_new_profile{border-bottom:1px solid #eaeaea}
.toggle_menu a:last-child{float:right} .toggle_menu a:last-child{float:right}
.toggle_menu h2{height:40px} .toggle_menu h2{height:40px}
@media all and (max-width:480px){.toggle_menu h2{font-size:16px;text-align:center;height:30px} @media all and (max-width:480px){.toggle_menu h2{font-size:16px;text-align:center;height:30px}
} }
.suggestions{clear:both;padding-top:10px;margin-bottom:30px}
.suggestions>h2{height:40px}
.suggestions .media_result{display:inline-block;width:33.333%;height:150px}
@media all and (max-width:960px){.suggestions .media_result{width:50%}
}
@media all and (max-width:600px){.suggestions .media_result{width:100%}
}
.suggestions .media_result .data{left:100px;background:#4e5969;border:none}
.suggestions .media_result .data .info{top:10px;left:15px;right:15px;bottom:10px;overflow:hidden}
.suggestions .media_result .data .info h2{white-space:normal;max-height:120px;font-size:18px;line-height:18px}
.suggestions .media_result .data .info .genres,.suggestions .media_result .data .info .rating,.suggestions .media_result .data .info .year{position:static;display:block;padding:0;opacity:.6}
.suggestions .media_result .data .info .year{margin:10px 0 0}
.suggestions .media_result .data .info .rating{font-size:20px;float:right;margin-top:-20px}
.suggestions .media_result .data .info .rating:before{content:"\e031";font-family:Elusive-Icons;font-size:14px;margin:0 5px 0 0;vertical-align:bottom}
.suggestions .media_result .data .info .genres{font-size:11px;font-style:italic;text-align:right}
.suggestions .media_result .data .info .plot{display:block;font-size:11px;overflow:hidden;text-align:justify;height:100%;z-index:2;top:64px;position:absolute;background:#4e5969;cursor:pointer;transition:all .4s ease-in-out;padding:0 3px 10px 0}
.suggestions .media_result .data:before{content:'';display:block;height:10px;right:0;left:0;bottom:10px;position:absolute;background:linear-gradient(0deg,#4e5969 0,rgba(78,89,105,0) 100%);z-index:3;pointer-events:none}
.suggestions .media_result .data .info .plot.full{top:0;overflow:auto}
.suggestions .media_result .data{cursor:default}
.suggestions .media_result .options{left:100px}
.suggestions .media_result .options select[name=category],.suggestions .media_result .options select[name=profile],.suggestions .media_result .options select[name=title]{width:100%}
.suggestions .media_result .button{position:absolute;margin:2px 0 0;right:15px;bottom:15px}
.suggestions .media_result .thumbnail{width:100px}
.suggestions .media_result .actions{position:absolute;top:10px;right:10px;display:none;width:140px}
.suggestions .media_result:hover .actions{display:block}
.suggestions .media_result:hover h2 .title{opacity:0}
.suggestions .media_result .data.open .actions{display:none}
.suggestions .media_result .actions a{margin-left:10px;vertical-align:middle}
.add_new_category{padding:20px;display:block;text-align:center;font-size:20px} .add_new_category{padding:20px;display:block;text-align:center;font-size:20px}
.category{margin-bottom:20px;position:relative} .category{margin-bottom:20px;position:relative}
.category>.delete{position:absolute;padding:16px;right:0;cursor:pointer;opacity:.6;color:#fd5353} .category>.delete{position:absolute;padding:16px;right:0;cursor:pointer;opacity:.6;color:#fd5353}
@ -359,8 +335,7 @@
.category .formHint{opacity:.1} .category .formHint{opacity:.1}
.category:hover .formHint{opacity:1} .category:hover .formHint{opacity:1}
#category_ordering ul{float:left;margin:0;width:275px;padding:0} #category_ordering ul{float:left;margin:0;width:275px;padding:0}
#category_ordering li{cursor:-webkit-grab;cursor:grab;border-bottom:1px solid #eaeaea;padding:5px;list-style:none} #category_ordering li{cursor:-webkit-grab;cursor:grab;padding:5px;list-style:none}
#category_ordering li:last-child{border:0}
#category_ordering li .check{margin:2px 10px 0 0;vertical-align:top} #category_ordering li .check{margin:2px 10px 0 0;vertical-align:top}
#category_ordering li>span{display:inline-block;height:20px;vertical-align:top;line-height:20px} #category_ordering li>span{display:inline-block;height:20px;vertical-align:top;line-height:20px}
#category_ordering li .handle{width:20px;float:right} #category_ordering li .handle{width:20px;float:right}
@ -388,7 +363,7 @@
.report_popup.report_popup .bug{width:80%;height:80%;max-height:800px;max-width:800px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:column nowrap;-ms-flex-flow:column nowrap;flex-flow:column nowrap} .report_popup.report_popup .bug{width:80%;height:80%;max-height:800px;max-width:800px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:column nowrap;-ms-flex-flow:column nowrap;flex-flow:column nowrap}
.report_popup.report_popup .bug textarea{display:block;width:100%;background:#FFF;padding:20px;overflow:auto;color:#666;height:70%;font-size:12px} .report_popup.report_popup .bug textarea{display:block;width:100%;background:#FFF;padding:20px;overflow:auto;color:#666;height:70%;font-size:12px}
.do_report.do_report{z-index:10000;position:absolute;padding:10px;background:#ac0000;color:#FFF} .do_report.do_report{z-index:10000;position:absolute;padding:10px;background:#ac0000;color:#FFF}
.add_new_profile{padding:20px;display:block;text-align:center;font-size:20px;border-bottom:1px solid #eaeaea} .add_new_profile{padding:20px;display:block;text-align:center;font-size:20px}
.profile{margin-bottom:20px} .profile{margin-bottom:20px}
.profile .quality_label input{font-weight:700} .profile .quality_label input{font-weight:700}
.profile .ctrlHolder .types{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:360px} .profile .ctrlHolder .types{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:360px}
@ -405,9 +380,8 @@
.profile .ctrlHolder.wait_for.wait_for .advanced{display:none;color:#ac0000} .profile .ctrlHolder.wait_for.wait_for .advanced{display:none;color:#ac0000}
.show_advanced .profile .ctrlHolder.wait_for.wait_for .advanced{display:inline} .show_advanced .profile .ctrlHolder.wait_for.wait_for .advanced{display:inline}
#profile_ordering ul{list-style:none;margin:0;width:275px;padding:0} #profile_ordering ul{list-style:none;margin:0;width:275px;padding:0}
#profile_ordering li{border-bottom:1px solid #eaeaea;padding:5px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center} #profile_ordering li{padding:5px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}
#profile_ordering li:hover{background:#eaeaea} #profile_ordering li:hover{background:#eaeaea}
#profile_ordering li:last-child{border:0}
#profile_ordering li input[type=checkbox]{margin:2px 10px 0 0;vertical-align:top} #profile_ordering li input[type=checkbox]{margin:2px 10px 0 0;vertical-align:top}
#profile_ordering li>span{display:inline-block;height:20px;vertical-align:top;line-height:20px} #profile_ordering li>span{display:inline-block;height:20px;vertical-align:top;line-height:20px}
#profile_ordering li>span.profile_label{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto} #profile_ordering li>span.profile_label{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto}
@ -431,7 +405,6 @@
.page.wizard .tab_wrapper .tabs{padding:0;margin:0 auto;display:block;height:100%;width:100%;max-width:960px} .page.wizard .tab_wrapper .tabs{padding:0;margin:0 auto;display:block;height:100%;width:100%;max-width:960px}
.page.wizard .tabs li{display:inline-block;height:100%} .page.wizard .tabs li{display:inline-block;height:100%}
.page.wizard .tabs li a{padding:20px 10px;height:100%;display:block;color:#FFF;font-weight:400;border-bottom:4px solid transparent} .page.wizard .tabs li a{padding:20px 10px;height:100%;display:block;color:#FFF;font-weight:400;border-bottom:4px solid transparent}
.page.wizard .tabs li:hover a{border-color:#047792}
.page.wizard .tabs li.done a{border-color:#04bce6} .page.wizard .tabs li.done a{border-color:#04bce6}
.page.wizard .tab_wrapper .pointer{border-right:10px solid transparent;border-left:10px solid transparent;border-top:10px solid #5c697b;display:block;position:absolute;top:44px} .page.wizard .tab_wrapper .pointer{border-right:10px solid transparent;border-left:10px solid transparent;border-top:10px solid #5c697b;display:block;position:absolute;top:44px}
.page.wizard .tab_content{margin:20px 0 160px} .page.wizard .tab_content{margin:20px 0 160px}
@ -447,7 +420,6 @@
.api_docs .api .params{background:#fafafa;width:100%} .api_docs .api .params{background:#fafafa;width:100%}
.api_docs .api .params h3{clear:both;float:left;width:100px} .api_docs .api .params h3{clear:both;float:left;width:100px}
.api_docs .api .params td,.api_docs .api .params th{padding:3px 5px;border-bottom:1px solid #eee} .api_docs .api .params td,.api_docs .api .params th{padding:3px 5px;border-bottom:1px solid #eee}
.api_docs .api .params tr:last-child td,.api_docs .api .params tr:last-child th{border:0}
.api_docs .api .params .param{vertical-align:top} .api_docs .api .params .param{vertical-align:top}
.api_docs .api .params .param th{text-align:left;width:100px} .api_docs .api .params .param th{text-align:left;width:100px}
.api_docs .api .params .param .type{font-style:italic;margin-right:10px;width:100px;color:#666} .api_docs .api .params .param .type{font-style:italic;margin-right:10px;width:100px;color:#666}
@ -466,6 +438,13 @@
.api_docs .database table textarea{font-size:12px;width:100%;height:200px} .api_docs .database table textarea{font-size:12px;width:100%;height:200px}
.api_docs .database table input[type=submit]{display:block} .api_docs .database table input[type=submit]{display:block}
.page.login,body{display:-webkit-flex;display:-ms-flexbox} .page.login,body{display:-webkit-flex;display:-ms-flexbox}
@font-face{font-family:icons;src:url(../fonts/icons.eot?74719538);src:url(../fonts/icons.eot?74719538#iefix)format("embedded-opentype"),url(../fonts/icons.woff?74719538)format("woff"),url(../fonts/icons.ttf?74719538)format("truetype"),url(../fonts/icons.svg?74719538#icons)format("svg");font-weight:400;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Light-webfont.eot);src:url(../fonts/OpenSans-Light-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Light-webfont.woff)format("woff"),url(../fonts/OpenSans-Light-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Light-webfont.svg#OpenSansRegular)format("svg");font-weight:200;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Regular-webfont.eot);src:url(../fonts/OpenSans-Regular-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Regular-webfont.woff)format("woff"),url(../fonts/OpenSans-Regular-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular)format("svg");font-weight:400;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Italic-webfont.eot);src:url(../fonts/OpenSans-Italic-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Italic-webfont.woff)format("woff"),url(../fonts/OpenSans-Italic-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Italic-webfont.svg#OpenSansItalic)format("svg");font-weight:400;font-style:italic}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Bold-webfont.eot);src:url(../fonts/OpenSans-Bold-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Bold-webfont.woff)format("woff"),url(../fonts/OpenSans-Bold-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Bold-webfont.svg#OpenSansBold)format("svg");font-weight:700;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-BoldItalic-webfont.eot);src:url(../fonts/OpenSans-BoldItalic-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-BoldItalic-webfont.woff)format("woff"),url(../fonts/OpenSans-BoldItalic-webfont.ttf)format("truetype"),url(../fonts/OpenSans-BoldItalic-webfont.svg#OpenSansBoldItalic)format("svg");font-weight:700;font-style:italic}
@font-face{font-family:Lobster;src:url(../fonts/Lobster-webfont.eot);src:url(../fonts/Lobster-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/Lobster-webfont.woff2)format("woff2"),url(../fonts/Lobster-webfont.woff)format("woff"),url(../fonts/Lobster-webfont.ttf)format("truetype"),url(../fonts/Lobster-webfont.svg#lobster_14regular)format("svg");font-weight:400;font-style:normal}
.page.login{background:#FFF;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;font-size:1.25em} .page.login{background:#FFF;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;font-size:1.25em}
.page.login h1{padding:0 0 10px;font-size:60px;font-family:Lobster;font-weight:400;color:#ac0000;text-align:center} .page.login h1{padding:0 0 10px;font-size:60px;font-family:Lobster;font-weight:400;color:#ac0000;text-align:center}
.page.login form{padding:0;width:300px} .page.login form{padding:0;width:300px}
@ -474,7 +453,7 @@
.page.login input[type=password],.page.login input[type=text]{width:100%!important} .page.login input[type=password],.page.login input[type=text]{width:100%!important}
.page.login .remember_me{font-size:15px;float:left;width:150px} .page.login .remember_me{font-size:15px;float:left;width:150px}
.page.login .button{float:right;margin:0;transition:none} .page.login .button{float:right;margin:0;transition:none}
@font-face{font-family:icons;src:url(../fonts/icons.eot?74719542);src:url(../fonts/icons.eot?74719542#iefix) format("embedded-opentype"),url(../fonts/icons.woff?747195412) format("woff"),url(../fonts/icons.ttf?74719542) format("truetype"),url(../fonts/icons.svg?74719542#icons) format("svg");font-weight:400;font-style:normal} @font-face{font-family:icons;src:url(../fonts/icons.eot?74719542);src:url(../fonts/icons.eot?74719542#iefix)format("embedded-opentype"),url(../fonts/icons.woff?747195412)format("woff"),url(../fonts/icons.ttf?74719542)format("truetype"),url(../fonts/icons.svg?74719542#icons)format("svg");font-weight:400;font-style:normal}
[class*=" icon-"]:before,[class^=icon-]:before{font-family:icons;font-style:normal;font-weight:400;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} [class*=" icon-"]:before,[class^=icon-]:before{font-family:icons;font-style:normal;font-weight:400;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.icon-left-arrow:before{content:'\e800'} .icon-left-arrow:before{content:'\e800'}
.icon-settings:before{content:'\e801'} .icon-settings:before{content:'\e801'}
@ -505,12 +484,12 @@
.icon-star:before{content:'\e81a'} .icon-star:before{content:'\e81a'}
.icon-star-empty:before{content:'\e81b'} .icon-star-empty:before{content:'\e81b'}
.icon-star-half:before{content:'\e81c'} .icon-star-half:before{content:'\e81c'}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Light-webfont.eot);src:url(../fonts/OpenSans-Light-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/OpenSans-Light-webfont.woff) format("woff"),url(../fonts/OpenSans-Light-webfont.ttf) format("truetype"),url(../fonts/OpenSans-Light-webfont.svg#OpenSansRegular) format("svg");font-weight:200;font-style:normal} @font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Light-webfont.eot);src:url(../fonts/OpenSans-Light-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Light-webfont.woff)format("woff"),url(../fonts/OpenSans-Light-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Light-webfont.svg#OpenSansRegular)format("svg");font-weight:200;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Regular-webfont.eot);src:url(../fonts/OpenSans-Regular-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/OpenSans-Regular-webfont.woff) format("woff"),url(../fonts/OpenSans-Regular-webfont.ttf) format("truetype"),url(../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular) format("svg");font-weight:400;font-style:normal} @font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Regular-webfont.eot);src:url(../fonts/OpenSans-Regular-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Regular-webfont.woff)format("woff"),url(../fonts/OpenSans-Regular-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular)format("svg");font-weight:400;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Italic-webfont.eot);src:url(../fonts/OpenSans-Italic-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/OpenSans-Italic-webfont.woff) format("woff"),url(../fonts/OpenSans-Italic-webfont.ttf) format("truetype"),url(../fonts/OpenSans-Italic-webfont.svg#OpenSansItalic) format("svg");font-weight:400;font-style:italic} @font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Italic-webfont.eot);src:url(../fonts/OpenSans-Italic-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Italic-webfont.woff)format("woff"),url(../fonts/OpenSans-Italic-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Italic-webfont.svg#OpenSansItalic)format("svg");font-weight:400;font-style:italic}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Bold-webfont.eot);src:url(../fonts/OpenSans-Bold-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/OpenSans-Bold-webfont.woff) format("woff"),url(../fonts/OpenSans-Bold-webfont.ttf) format("truetype"),url(../fonts/OpenSans-Bold-webfont.svg#OpenSansBold) format("svg");font-weight:700;font-style:normal} @font-face{font-family:OpenSans;src:url(../fonts/OpenSans-Bold-webfont.eot);src:url(../fonts/OpenSans-Bold-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-Bold-webfont.woff)format("woff"),url(../fonts/OpenSans-Bold-webfont.ttf)format("truetype"),url(../fonts/OpenSans-Bold-webfont.svg#OpenSansBold)format("svg");font-weight:700;font-style:normal}
@font-face{font-family:OpenSans;src:url(../fonts/OpenSans-BoldItalic-webfont.eot);src:url(../fonts/OpenSans-BoldItalic-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/OpenSans-BoldItalic-webfont.woff) format("woff"),url(../fonts/OpenSans-BoldItalic-webfont.ttf) format("truetype"),url(../fonts/OpenSans-BoldItalic-webfont.svg#OpenSansBoldItalic) format("svg");font-weight:700;font-style:italic} @font-face{font-family:OpenSans;src:url(../fonts/OpenSans-BoldItalic-webfont.eot);src:url(../fonts/OpenSans-BoldItalic-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/OpenSans-BoldItalic-webfont.woff)format("woff"),url(../fonts/OpenSans-BoldItalic-webfont.ttf)format("truetype"),url(../fonts/OpenSans-BoldItalic-webfont.svg#OpenSansBoldItalic)format("svg");font-weight:700;font-style:italic}
@font-face{font-family:Lobster;src:url(../fonts/Lobster-webfont.eot);src:url(../fonts/Lobster-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/Lobster-webfont.woff2) format("woff2"),url(../fonts/Lobster-webfont.woff) format("woff"),url(../fonts/Lobster-webfont.ttf) format("truetype"),url(../fonts/Lobster-webfont.svg#lobster_14regular) format("svg");font-weight:400;font-style:normal} @font-face{font-family:Lobster;src:url(../fonts/Lobster-webfont.eot);src:url(../fonts/Lobster-webfont.eot?#iefix)format("embedded-opentype"),url(../fonts/Lobster-webfont.woff2)format("woff2"),url(../fonts/Lobster-webfont.woff)format("woff"),url(../fonts/Lobster-webfont.ttf)format("truetype"),url(../fonts/Lobster-webfont.svg#lobster_14regular)format("svg");font-weight:400;font-style:normal}
*{margin:0;padding:0;box-sizing:border-box;text-rendering:optimizeSpeed} *{margin:0;padding:0;box-sizing:border-box;text-rendering:optimizeSpeed}
body,html{font-size:14px;line-height:1.5;font-family:OpenSans,"Helvetica Neue",Helvetica,Arial,Geneva,sans-serif;font-weight:300;height:100%;margin:0;padding:0;background:#111;overflow:hidden} body,html{font-size:14px;line-height:1.5;font-family:OpenSans,"Helvetica Neue",Helvetica,Arial,Geneva,sans-serif;font-weight:300;height:100%;margin:0;padding:0;background:#111;overflow:hidden}
body{display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap} body{display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap}
@ -518,8 +497,8 @@ a{display:inline-block;position:relative;overflow:hidden;text-decoration:none;cu
input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#FFF;border:1px solid #b7b7b7} input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#FFF;border:1px solid #b7b7b7}
.button{color:#ac0000;font-weight:300;padding:5px;cursor:pointer;border:1px solid #ac0000;border-radius:3px;margin:0 5px;transition:all 150ms} .button{color:#ac0000;font-weight:300;padding:5px;cursor:pointer;border:1px solid #ac0000;border-radius:3px;margin:0 5px;transition:all 150ms}
.button:hover{background:#ac0000;color:#FFF} .button:hover{background:#ac0000;color:#FFF}
.ripple{position:absolute;height:10px;width:10px;border-radius:50%;background:#ac0000;-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:.2;transition:all 1.5s ease} .ripple{position:absolute;height:10px;width:10px;border-radius:50%;background:#ac0000;-webkit-transform:translate(-50%,-50%)scale(1);transform:translate(-50%,-50%)scale(1);opacity:.2;transition:all 1.5s ease}
.ripple.animate{-webkit-transform:translate(-50%,-50%) scale(100);transform:translate(-50%,-50%) scale(100);opacity:0} .ripple.animate{-webkit-transform:translate(-50%,-50%)scale(100);transform:translate(-50%,-50%)scale(100);opacity:0}
.header{width:132px;min-width:132px;position:relative;z-index:100} .header{width:132px;min-width:132px;position:relative;z-index:100}
@media (max-width:480px){.header{width:44px;min-width:44px;z-index:21} @media (max-width:480px){.header{width:44px;min-width:44px;z-index:21}
} }
@ -597,7 +576,7 @@ input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#F
.more_menu{line-height:1em} .more_menu{line-height:1em}
.more_menu .button{font-size:24px;cursor:pointer} .more_menu .button{font-size:24px;cursor:pointer}
.more_menu .wrapper{display:none;position:absolute;right:0;background:#ac0000;z-index:5000;border-radius:3px 0 0 3px;-webkit-transform-origin:80% 0;transform-origin:80% 0} .more_menu .wrapper{display:none;position:absolute;right:0;background:#ac0000;z-index:5000;border-radius:3px 0 0 3px;-webkit-transform-origin:80% 0;transform-origin:80% 0}
.more_menu .wrapper:before{-webkit-transform:rotate(45deg) translateY(-60%);transform:rotate(45deg) translateY(-60%);content:'';display:block;position:absolute;background:#ac0000;height:10px;width:10px;left:-9px;bottom:11px;z-index:1;opacity:1;border-radius:3px} .more_menu .wrapper:before{-webkit-transform:rotate(45deg)translateY(-60%);transform:rotate(45deg)translateY(-60%);content:'';display:block;position:absolute;background:#ac0000;height:10px;width:10px;left:-9px;bottom:11px;z-index:1;opacity:1;border-radius:3px}
.mask,.messages{right:0;bottom:0} .mask,.messages{right:0;bottom:0}
.more_menu .wrapper ul{background:#FFF;position:relative;z-index:2;overflow:hidden;border-radius:3px 0 0 3px} .more_menu .wrapper ul{background:#FFF;position:relative;z-index:2;overflow:hidden;border-radius:3px 0 0 3px}
.more_menu .wrapper ul li{display:block;line-height:1em;border-top:1px solid #eaeaea} .more_menu .wrapper ul li{display:block;line-height:1em;border-top:1px solid #eaeaea}
@ -623,20 +602,20 @@ input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#F
.mask .message,.mask .spinner{position:absolute;top:50%;left:50%} .mask .message,.mask .spinner{position:absolute;top:50%;left:50%}
.mask .message{color:#FFF;text-align:center;width:320px;margin:-49px 0 0 -160px;font-size:16px} .mask .message{color:#FFF;text-align:center;width:320px;margin:-49px 0 0 -160px;font-size:16px}
.mask .message h1{font-size:1.5em} .mask .message h1{font-size:1.5em}
.mask .spinner{width:22px;height:22px;display:block;background:#fff;margin-top:-11px;margin-left:-11px;outline:transparent solid 1px;-webkit-animation:rotating 2.5s cubic-bezier(.9,0,.1,1) infinite normal;animation:rotating 2.5s cubic-bezier(.9,0,.1,1) infinite normal;-webkit-transform:scale(0);transform:scale(0)} .mask .spinner{width:22px;height:22px;display:block;background:#fff;margin-top:-11px;margin-left:-11px;outline:transparent solid 1px;-webkit-animation:rotating 2.5s cubic-bezier(.9,0,.1,1)infinite normal;animation:rotating 2.5s cubic-bezier(.9,0,.1,1)infinite normal;-webkit-transform:scale(0);transform:scale(0)}
.page.settings.active,.table .item{display:-webkit-flex;display:-ms-flexbox} .page.settings.active,.table .item{display:-webkit-flex;display:-ms-flexbox}
.mask.with_message .spinner{margin-top:-88px} .mask.with_message .spinner{margin-top:-88px}
.mask.show{pointer-events:auto;opacity:1} .mask.show{pointer-events:auto;opacity:1}
.mask.show .spinner{-webkit-transform:scale(1);transform:scale(1)} .mask.show .spinner{-webkit-transform:scale(1);transform:scale(1)}
.mask.hide{opacity:0} .mask.hide{opacity:0}
.mask.hide .spinner{-webkit-transform:scale(0);transform:scale(0)} .mask.hide .spinner{-webkit-transform:scale(0);transform:scale(0)}
@-webkit-keyframes rotating{0%{-webkit-transform:rotate(0) scale(1.6);transform:rotate(0) scale(1.6);border-radius:1px} @-webkit-keyframes rotating{0%{-webkit-transform:rotate(0)scale(1.6);transform:rotate(0)scale(1.6);border-radius:1px}
48%{-webkit-transform:rotate(360deg) scale(1);transform:rotate(360deg) scale(1);border-radius:50%} 48%{-webkit-transform:rotate(360deg)scale(1);transform:rotate(360deg)scale(1);border-radius:50%}
100%{-webkit-transform:rotate(720deg) scale(1.6);transform:rotate(720deg) scale(1.6);border-radius:1px} 100%{-webkit-transform:rotate(720deg)scale(1.6);transform:rotate(720deg)scale(1.6);border-radius:1px}
} }
@keyframes rotating{0%{-webkit-transform:rotate(0) scale(1.6);transform:rotate(0) scale(1.6);border-radius:1px} @keyframes rotating{0%{-webkit-transform:rotate(0)scale(1.6);transform:rotate(0)scale(1.6);border-radius:1px}
48%{-webkit-transform:rotate(360deg) scale(1);transform:rotate(360deg) scale(1);border-radius:50%} 48%{-webkit-transform:rotate(360deg)scale(1);transform:rotate(360deg)scale(1);border-radius:50%}
100%{-webkit-transform:rotate(720deg) scale(1.6);transform:rotate(720deg) scale(1.6);border-radius:1px} 100%{-webkit-transform:rotate(720deg)scale(1.6);transform:rotate(720deg)scale(1.6);border-radius:1px}
} }
.table .head{font-weight:700} .table .head{font-weight:700}
.table .item{display:flex;border-bottom:1px solid rgba(0,0,0,.2)} .table .item{display:flex;border-bottom:1px solid rgba(0,0,0,.2)}
@ -667,7 +646,7 @@ input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#F
@media (max-width:480px){.page.settings fieldset h2{display:block} @media (max-width:480px){.page.settings fieldset h2{display:block}
.page.settings fieldset h2 .hint{margin:0;display:block} .page.settings fieldset h2 .hint{margin:0;display:block}
} }
.page.settings fieldset h2 .hint a{font-weight:400;color:#ac0000;text-decoration:underline} .page.settings fieldset h2 .hint a{font-weight:400;color:#ac0000}
.page.settings fieldset .ctrlHolder{padding:6.67px 20px;border-bottom:1px solid #eaeaea;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-align-items:center;-ms-flex-align:center;align-items:center} .page.settings fieldset .ctrlHolder{padding:6.67px 20px;border-bottom:1px solid #eaeaea;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-align-items:center;-ms-flex-align:center;align-items:center}
.page.settings fieldset .ctrlHolder:last-child{border-bottom:0} .page.settings fieldset .ctrlHolder:last-child{border-bottom:0}
.page.settings fieldset .ctrlHolder label{display:inline-block;min-width:150px} .page.settings fieldset .ctrlHolder label{display:inline-block;min-width:150px}
@ -763,4 +742,31 @@ input,select,textarea{font-size:1em;font-weight:300;padding:6.67px;background:#F
.page.settings .directory_list .actions:last-child>span{padding:0 5px;text-shadow:none} .page.settings .directory_list .actions:last-child>span{padding:0 5px;text-shadow:none}
.page.settings .directory_list .actions:last-child>.clear{left:20px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);margin:0} .page.settings .directory_list .actions:last-child>.clear{left:20px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);margin:0}
.page.settings .directory_list .actions:last-child>.cancel{color:rgba(0,0,0,.4)} .page.settings .directory_list .actions:last-child>.cancel{color:rgba(0,0,0,.4)}
.page.settings .directory_list .actions:last-child>.save{margin-right:0} .page.settings .directory_list .actions:last-child>.save{margin-right:0}
.uniForm legend{font-weight:700;font-size:100%;margin:0;padding:1.5em 0}
.uniForm .ctrlHolder{padding:1em;border-bottom:1px solid #efefef}
.uniForm .ctrlHolder.focused{background:#fffcdf}
.uniForm .buttonHolder{background:#efefef;text-align:right;margin:1.5em 0 0;padding:1.5em;border-radius:4px}
.uniForm .buttonHolder .primaryAction{padding:10px 22px;line-height:1;background:#254a86;border:1px solid #163362;font-size:12px;font-weight:700;color:#fff;border-radius:4px;box-shadow:1px 1px 0 #fff;text-shadow:-1px -1px 0 rgba(0,0,0,.25)}
.uniForm .buttonHolder .primaryAction:active{position:relative;top:1px}
.uniForm .secondaryAction{text-align:left}
.uniForm button.secondaryAction{background:0 0;border:none;color:#777;margin:1.25em 0 0;padding:0}
.uniForm .inlineLabels .label em,.uniForm .inlineLabels label em{font-style:normal;font-weight:700}
.uniForm label small{font-size:.75em;color:#777}
.uniForm .textInput,.uniForm textarea{padding:4px 2px;border:1px solid #aaa;background:#fff}
.uniForm textarea{height:12em}
.uniForm ul li label{font-size:.85em}
.uniForm .ctrlHolder .textInput:focus,.uniForm .ctrlHolder textarea:focus{outline:0}
.uniForm .formHint{font-size:.85em;color:#777}
.uniForm .inlineLabels .formHint{padding-top:.5em}
.uniForm .ctrlHolder.focused .formHint{color:#333}
.uniForm #errorMsg{background:#ffdfdf;border:1px solid #f3afb5;margin:0 0 1.5em;padding:0 1.5em;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}
.uniForm #errorMsg ol{margin:0 0 1.5em;padding:0}
.uniForm #errorMsg ol li{margin:0 0 3px 1.5em;padding:7px;background:#f6bec1;position:relative;font-size:.85em;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}
.uniForm .ctrlHolder.error,.uniForm .ctrlHolder.focused.error{background:#ffdfdf;border:1px solid #f3afb5;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}
.uniForm .ctrlHolder.error input.error,.uniForm .ctrlHolder.error select.error,.uniForm .ctrlHolder.error textarea.error{color:#af4c4c;margin:0 0 6px;padding:4px}
.uniForm #okMsg{background:#c8ffbf;border:1px solid #a2ef95;margin:0 0 1.5em;padding:0 1.5em;text-align:center;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}
.uniForm #OKMsg p{margin:0}
.uniForm .col{margin-bottom:1.5em}
.uniForm .col.first{width:49%;float:left;clear:none}
.uniForm .col.last{width:49%;float:right;clear:none;margin-right:0}
Loading…
Cancel
Save