Mechanism to insert site-specific selectors. #2169

This commit is contained in:
ccd0 2019-07-08 13:39:35 -07:00
parent b257cd2d6a
commit 0437e1a11e
3 changed files with 20 additions and 4 deletions

View File

@ -4,7 +4,7 @@ CustomCSS =
@addStyle() @addStyle()
addStyle: -> addStyle: ->
@style = $.addStyle Conf['usercss'], 'custom-css', '#fourchanx-css' @style = $.addStyle CSS.sub(Conf['usercss']), 'custom-css', '#fourchanx-css'
rmStyle: -> rmStyle: ->
if @style if @style
@ -14,4 +14,4 @@ CustomCSS =
update: -> update: ->
unless @style unless @style
return @addStyle() return @addStyle()
@style.textContent = Conf['usercss'] @style.textContent = CSS.sub Conf['usercss']

View File

@ -16,6 +16,22 @@ report:
<%= multiline(read('report.css')) %>, <%= multiline(read('report.css')) %>,
www: www:
<%= multiline(read('www.css')) %> <%= multiline(read('www.css')) %>,
sub: function(css) {
var variables = {
site: Site.selectors
};
return css.replace(/\$[\w\$]+/g, function(name) {
var words = name.slice(1).split('$');
var sel = variables;
for (var i = 0; i < words.length; i++) {
if (typeof sel !== 'object') return name;
sel = sel[words[i]];
}
if (typeof sel !== 'string') return name;
return sel;
});
}
}; };

View File

@ -223,7 +223,7 @@ Main =
Conf['Autohiding Scrollbar'] = !Conf['Autohiding Scrollbar'] Conf['Autohiding Scrollbar'] = !Conf['Autohiding Scrollbar']
$.set 'Autohiding Scrollbar', Conf['Autohiding Scrollbar'] $.set 'Autohiding Scrollbar', Conf['Autohiding Scrollbar']
$.toggleClass doc, 'autohiding-scrollbar' $.toggleClass doc, 'autohiding-scrollbar'
$.addStyle CSS.boards, 'fourchanx-css' $.addStyle CSS.sub(CSS.boards), 'fourchanx-css'
Main.bgColorStyle = $.el 'style', id: 'fourchanx-bgcolor-css' Main.bgColorStyle = $.el 'style', id: 'fourchanx-bgcolor-css'
keyboard = false keyboard = false