diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bf85b9a --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +.doit.db.db +.venv +__pycache__ +cache +output +themes/bootstrap3 diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..fffdeee --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,41 @@ +image: alpine + +before_script: +- apk --no-cache add make openssh-client py3-setuptools python3-dev py3-pillow py3-lxml +- python3 -m pip install nikola + +pages: + stage: deploy + script: + - nikola theme -i bootstrap3 + - nikola build + artifacts: + paths: + - output + only: + - master + +test: + stage: test + script: + - nikola theme -i bootstrap3 + - nikola build + artifacts: + paths: + - output + except: + - master + +deploy: + stage: deploy + script: + - nikola theme -i bootstrap3 + - nikola build + - cd output + - echo "$STRIPE_API_KEY" > stripe.ini + - ssh-add <(echo "$SSH_PRIVATE_KEY") + - mkdir -p ~/.ssh + - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' + - scp -r * openlp@openlp.org:public_html/ + only: + - master diff --git a/blog/integration-with-biblegateway-broken.rst b/blog/integration-with-biblegateway-broken.rst new file mode 100644 index 0000000..29f9d1d --- /dev/null +++ b/blog/integration-with-biblegateway-broken.rst @@ -0,0 +1,36 @@ +.. title: Integration with BibleGateway Broken +.. slug: blog/2019/07/14/integration-with-biblegateway-broken +.. date: 2019-07-14 23:42:41 UTC +.. tags: +.. category: +.. link: +.. description: +.. type: text +.. previewimage: /cover-images/integration-with-biblegateway-broken.jpg + +Over the last few days we have received a TON of reports about OpenLP's integration with BibleGateway being broken. +Users who rely on web Bibles from BibleGateway are telling us that they get an error message whenever they try to +look up new passages (verses are downloaded from Bible Gateway on an as-needed basis in order to comply with Bible +translation copyright terms). + +Unfortunately there is no quick fix for this, and because some of the libraries that OpenLP 2.4.6 uses are no longer +available, we are not able to create new builds for the OpenLP 2.4.x release series. We are investigating other options, +but we cannot guarantee anything. + +While we are well aware that some bibles available on BibleGateway are not available elsewhere, there are other sources +for a lot of Bibles, such as `Zefania`_ or from the homepage of Open Song. In both cases do remember to extract the +zip file before importing. See the `Bibles section`_ of the manual for more details on importing Bibles from other +sources. + +Alternatively, going to https://www.biblegateway.com/ and copying and pasting the Bible text into a custom slide is +also an option. + +The only good news here is that the new implementation for web Bibles in the upcoming OpenLP 3.0 release is not +affected by this, although it is not ready for production use. + +We apologise for the problems people are experiencing. The bad side of using an external service like BibleGateway is +that when they change something, OpenLP is not built to handle the change, and appears to be "broken". Sadly, there is +no real way to prevent something like this from happening again. + +.. _Zefania: https://sourceforge.net/projects/zefania-sharp/files/Bibles/ +.. _Bibles section: http://manual.openlp.org/bibles.html diff --git a/blog/tips-android-app-setup-openlp.rst b/blog/tips-android-app-setup-openlp.rst index 75967e5..d1eca02 100644 --- a/blog/tips-android-app-setup-openlp.rst +++ b/blog/tips-android-app-setup-openlp.rst @@ -16,29 +16,34 @@ documentation `_ and also info for the `Android app `_. -**Networking Basics** +Networking Basics +----------------- Before we get to the tips, we need to be sure have a good understanding of some basic networking terms. -**IP Address:** This is the unique number that is given to a computer on -a network. Think of this as a street address of a house. On most local -networks It will look something like this: 192.168.1.100. +**IP Address** + This is the unique number that is given to a computer on + a network. Think of this as a street address of a house. On most local + networks It will look something like this: 192.168.1.100. -**LAN:** Local Area Network, this is the local network. If you have a -typical home setup with a modem and a wireless router the wireless -router connects all the computers and assings IP addresses on the LAN. -Many users have confused the LAN with the internet. A LAN doesn not have -to be connected to the internet at all, it simply provides a way for -several close by computers to communicate. A LAN is all that is needed -for the remote feature of OpenLP to work. +**LAN** + Local Area Network, this is the local network. If you have a + typical home setup with a modem and a wireless router the wireless + router connects all the computers and assings IP addresses on the LAN. + Many users have confused the LAN with the internet. A LAN doesn not have + to be connected to the internet at all, it simply provides a way for + several close by computers to communicate. A LAN is all that is needed + for the remote feature of OpenLP to work. -**WiFi:** this is the means that you connect to a Local network -wirelessly. Again, this does not mean you are connected to the internet. +**WiFi** + this is the means that you connect to a Local network + wirelessly. Again, this does not mean you are connected to the internet. Now, to the tips... -**Get on the Same Network** +Get on the Same Network +----------------------- Many people use the Android app on their mobile phone. One of the most common issues I have ran into when someone is running the remote app is @@ -46,7 +51,8 @@ they are not on the network that the OpenLP machine is on. For most setups this means you need to be on the same WiFi network that the OpenLP machine is on. -**Connect to the Correct IP Address ** +Connect to the Correct IP Address +--------------------------------- Most networks use `DHCP `_ @@ -63,12 +69,14 @@ your OpenLP computer if you know its device by using an app such as `eZNetScan `_. -**Be Sure to Apply Your Settings** +Be Sure to Apply Your Settings +------------------------------ If you need to change your IP address on the Android app be sure to tap the Activate button to activate the changes.  -**Consider a Static IP Address** +Consider a Static IP Address +---------------------------- A static IP address will help keep you from having a lot of these issues. This may not always be possible, another way to achieve diff --git a/conf.py b/conf.py index 73da773..b7b7065 100644 --- a/conf.py +++ b/conf.py @@ -136,7 +136,8 @@ TIMEZONE = "UTC" # Date format used to display post dates. # (str used by datetime.datetime.strftime) # DATE_FORMAT = '%Y-%m-%d %H:%M' -DATE_FORMAT = '%a %-d %b, %Y' +# DATE_FORMAT = '%a %-d %b, %Y' +DATE_FORMAT = 'EEE d MMM, y' # While nikola can select a sensible locale for each language, # sometimes explicit control can come handy. @@ -445,7 +446,8 @@ LICENSE = "" # A small copyright notice for the page footer (in HTML). # (translatable) -CONTENT_FOOTER = 'Contents © {date} {author} - Powered by Nikola {license}' +CONTENT_FOOTER = 'Contents © {date} {author} - Powered by Nikola {license}' # Things that will be passed to CONTENT_FOOTER.format(). This is done # for translatability, as dicts are not formattable. Nikola will @@ -530,7 +532,7 @@ COMMENT_SYSTEM_ID = "openlp" # This can be disabled on a per-page/post basis by adding # .. pretty_url: False # to the metadata -# PRETTY_URLS = False +PRETTY_URLS = False # If True, publish future dated posts right away instead of scheduling them. # Defaults to False. @@ -586,7 +588,8 @@ COMMENT_SYSTEM_ID = "openlp" # (translatable) # SOCIAL_BUTTONS_CODE = """ # -#
+#
# Share #
  • #
  • @@ -658,7 +661,7 @@ FEED_TEASERS = False # # # -#""" % SITE_URL +# """ % SITE_URL # Use content distribution networks for jquery, twitter-bootstrap css and js, # and html5shiv (for older versions of Internet Explorer) @@ -671,14 +674,15 @@ FEED_TEASERS = False # Extra things you want in the pages HEAD tag. This will be added right # before # (translatable) -#EXTRA_HEAD_DATA = """ - # - # - # - # - # - # -#""" +# EXTRA_HEAD_DATA = """ +# +# +# +# +# +# +# """ EXTRA_HEAD_DATA = """ @@ -687,14 +691,14 @@ EXTRA_HEAD_DATA = """ # Google Analytics or whatever else you use. Added to the bottom of # in the default template (base.tmpl). # (translatable) -#BODY_END = """ - # - # - # - # - # - # -#""" +# BODY_END = """ +# +# +# +# +# +# +# """ BODY_END = """ @@ -723,7 +727,7 @@ BODY_END = """ # If you hate "Filenames with Capital Letters and Spaces.md", you should # set this to true. -UNSLUGIFY_TITLES = True +FILE_METADATA_UNSLUGIFY_TITLES = True # Additional metadata that is added to a post when creating a new_post # ADDITIONAL_METADATA = {} diff --git a/deploy.sh b/deploy.sh deleted file mode 100755 index 0685a87..0000000 --- a/deploy.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -NIKOLA=`which nikola` -if [[ -f "nikola" ]]; then - NIKOLA="./nikola" -fi -$NIKOLA clean -$NIKOLA build -cd output -rsync -r -a -v -z -e ssh * openlp@openlp.org:public_html/ -cd .. diff --git a/files/cover-images/integration-with-biblegateway-broken.jpg b/files/cover-images/integration-with-biblegateway-broken.jpg new file mode 100644 index 0000000..d82b244 Binary files /dev/null and b/files/cover-images/integration-with-biblegateway-broken.jpg differ diff --git a/files/google3623fce3d6bcc6d8.html b/files/google3623fce3d6bcc6d8.html new file mode 100644 index 0000000..a090bf2 --- /dev/null +++ b/files/google3623fce3d6bcc6d8.html @@ -0,0 +1 @@ +google-site-verification: google3623fce3d6bcc6d8.html diff --git a/themes/openlp2v2/templates/base.tmpl b/themes/openlp2v2/templates/base.tmpl index 1421177..de64971 100644 --- a/themes/openlp2v2/templates/base.tmpl +++ b/themes/openlp2v2/templates/base.tmpl @@ -9,7 +9,8 @@ ${base.html_headstart()} ${template_hooks['extra_head']()} -% if permalink is not UNDEFINED and permalink == u'/index.html': + +% if permalink is not UNDEFINED and permalink == '/': <%include file="front_page.html"/> % else:
    @@ -64,17 +65,7 @@ ${template_hooks['extra_head']()}
-% if permalink is not UNDEFINED and permalink.startswith(u'/blog/index'): -
-
-
-
-

Reflections and Projections

-
-
-
-
-% elif post is not UNDEFINED and post: +% if post is not UNDEFINED and post:
@@ -84,6 +75,16 @@ ${template_hooks['extra_head']()}
+% elif permalink is not UNDEFINED and permalink.startswith(u'/blog/'): +
+
+
+
+

Reflections and Projections

+
+
+
+
% endif
diff --git a/themes/openlp2v2/templates/base_helper.tmpl b/themes/openlp2v2/templates/base_helper.tmpl index 73906ba..c503403 100644 --- a/themes/openlp2v2/templates/base_helper.tmpl +++ b/themes/openlp2v2/templates/base_helper.tmpl @@ -93,9 +93,11 @@ lang="${lang}"> %endif - %if colorbox_locales[lang]: - - %endif + <%doc> + % if colorbox_locales[lang]: + + % endif + ${social_buttons_code} diff --git a/themes/openlp2v2/templates/post_helper.tmpl b/themes/openlp2v2/templates/post_helper.tmpl index 0cc51ba..39f55b8 100644 --- a/themes/openlp2v2/templates/post_helper.tmpl +++ b/themes/openlp2v2/templates/post_helper.tmpl @@ -85,7 +85,7 @@ <%def name="mathjax_script(post)"> - %if post.is_mathjax: + %if post.has_math: