Merge pull request #241 from talvasconcelos/feature/readthemeenv

Read .env themeing colors
This commit is contained in:
Arc 2021-07-01 00:08:34 +01:00 committed by GitHub
commit a6835840a2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 18 additions and 2 deletions

View file

@ -15,7 +15,8 @@ LNBITS_SERVICE_FEE="0.0"
# Change theme # Change theme
LNBITS_SITE_TITLE=LNbits LNBITS_SITE_TITLE=LNbits
LNBITS_THEME_OPTIONS="classic,green,orange" # Choose from mint, flamingo, quasar, autumn, monochrome
LNBITS_THEME_OPTIONS="mint, flamingo, quasar, autumn, monochrome"
# Choose from LNPayWallet, OpenNodeWallet, LntxbotWallet, LndWallet (gRPC), # Choose from LNPayWallet, OpenNodeWallet, LntxbotWallet, LndWallet (gRPC),
# LndRestWallet, CLightningWallet, LNbitsWallet, SparkWallet # LndRestWallet, CLightningWallet, LNbitsWallet, SparkWallet

View file

@ -104,6 +104,7 @@ def register_assets(app: QuartTrio):
def register_filters(app: QuartTrio): def register_filters(app: QuartTrio):
"""Jinja filters.""" """Jinja filters."""
app.jinja_env.globals["SITE_TITLE"] = app.config["LNBITS_SITE_TITLE"] app.jinja_env.globals["SITE_TITLE"] = app.config["LNBITS_SITE_TITLE"]
app.jinja_env.globals["LNBITS_THEME_OPTIONS"] = app.config["LNBITS_THEME_OPTIONS"]
app.jinja_env.globals["LNBITS_VERSION"] = app.config["LNBITS_COMMIT"] app.jinja_env.globals["LNBITS_VERSION"] = app.config["LNBITS_COMMIT"]
app.jinja_env.globals["EXTENSIONS"] = get_valid_extensions() app.jinja_env.globals["EXTENSIONS"] = get_valid_extensions()

View file

@ -307,7 +307,8 @@ window.windowMixin = {
extensions: [], extensions: [],
user: null, user: null,
wallet: null, wallet: null,
payments: [] payments: [],
allowedThemes: null
} }
} }
}, },
@ -333,6 +334,7 @@ window.windowMixin = {
}, },
created: function () { created: function () {
this.$q.dark.set(this.$q.localStorage.getItem('lnbits.darkMode')) this.$q.dark.set(this.$q.localStorage.getItem('lnbits.darkMode'))
this.g.allowedThemes = window.allowedThemes
if (this.$q.localStorage.getItem('lnbits.theme')) { if (this.$q.localStorage.getItem('lnbits.theme')) {
document.body.setAttribute( document.body.setAttribute(
'data-theme', 'data-theme',

View file

@ -48,6 +48,7 @@
</q-badge> </q-badge>
{% endblock %} {% endblock %}
<q-btn-dropdown <q-btn-dropdown
v-if="g.allowedThemes"
dense dense
flat flat
round round
@ -65,6 +66,7 @@
size="md" size="md"
><q-tooltip>classic</q-tooltip> </q-btn ><q-tooltip>classic</q-tooltip> </q-btn
><q-btn ><q-btn
v-if="g.allowedThemes.includes('mint')"
dense dense
flat flat
@click="changeColor('mint')" @click="changeColor('mint')"
@ -73,6 +75,7 @@
size="md" size="md"
><q-tooltip>mint</q-tooltip> </q-btn ><q-tooltip>mint</q-tooltip> </q-btn
><q-btn ><q-btn
v-if="g.allowedThemes.includes('autumn')"
dense dense
flat flat
@click="changeColor('autumn')" @click="changeColor('autumn')"
@ -82,6 +85,7 @@
><q-tooltip>autumn</q-tooltip> ><q-tooltip>autumn</q-tooltip>
</q-btn> </q-btn>
<q-btn <q-btn
v-if="g.allowedThemes.includes('flamingo')"
dense dense
flat flat
@click="changeColor('monochrome')" @click="changeColor('monochrome')"
@ -91,6 +95,7 @@
><q-tooltip>monochrome</q-tooltip> ><q-tooltip>monochrome</q-tooltip>
</q-btn> </q-btn>
<q-btn <q-btn
v-if="g.allowedThemes.includes('monochrome')"
dense dense
flat flat
@click="changeColor('salvador')" @click="changeColor('salvador')"
@ -100,6 +105,7 @@
><q-tooltip>elSalvador</q-tooltip> ><q-tooltip>elSalvador</q-tooltip>
</q-btn> </q-btn>
<q-btn <q-btn
v-if="g.allowedThemes.includes('quasar')"
dense dense
flat flat
@click="changeColor('flamingo')" @click="changeColor('flamingo')"
@ -179,6 +185,12 @@
<!----> <!---->
<script src="/static/js/base.js"></script> <script src="/static/js/base.js"></script>
<script src="/static/js/components.js"></script> <script src="/static/js/components.js"></script>
<script type="text/javascript">
const themes = {{ LNBITS_THEME_OPTIONS | tojson }}
if(themes && themes.length) {
window.allowedThemes = themes.trim()
}
</script>
{% block scripts %}{% endblock %} {% block scripts %}{% endblock %}
</body> </body>
</html> </html>