mirror of
https://gitlab.com/openlp/website.git
synced 2024-12-22 13:02:50 +00:00
Merge branch 'biblegatewayerror' into 'master'
Blog post about the BibleGateway error See merge request openlp/website!2
This commit is contained in:
commit
49fc755816
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
.doit.db.db
|
||||
.venv
|
||||
__pycache__
|
||||
cache
|
||||
output
|
||||
themes/bootstrap3
|
41
.gitlab-ci.yml
Normal file
41
.gitlab-ci.yml
Normal file
@ -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
|
36
blog/integration-with-biblegateway-broken.rst
Normal file
36
blog/integration-with-biblegateway-broken.rst
Normal file
@ -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
|
@ -16,29 +16,34 @@ documentation <http://manual.openlp.org/configure.html#remote>`_ and
|
||||
also info for the `Android
|
||||
app <http://manual.openlp.org/android.html#android>`_.
|
||||
|
||||
**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 <http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol>`_
|
||||
@ -63,12 +69,14 @@ your OpenLP computer if you know its
|
||||
device by using an app such as
|
||||
`eZNetScan <https://play.google.com/store/apps/details?id=com.vrsspl.eznetscan&hl=en>`_.
|
||||
|
||||
**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
|
||||
|
48
conf.py
48
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} <a href="mailto:{email}">{author}</a> - Powered by <a href="http://getnikola.com" rel="nofollow">Nikola</a> {license}'
|
||||
CONTENT_FOOTER = 'Contents © {date} <a href="mailto:{email}">{author}</a> - Powered by <a ' \
|
||||
'href="http://getnikola.com" rel="nofollow">Nikola</a> {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 = """
|
||||
# <!-- Social buttons -->
|
||||
# <div id="addthisbox" class="addthis_toolbox addthis_peekaboo_style addthis_default_style addthis_label_style addthis_32x32_style">
|
||||
# <div id="addthisbox" class="addthis_toolbox addthis_peekaboo_style addthis_default_style addthis_label_style
|
||||
# addthis_32x32_style">
|
||||
# <a class="addthis_button_more">Share</a>
|
||||
# <ul><li><a class="addthis_button_facebook"></a>
|
||||
# <li><a class="addthis_button_google_plusone_share"></a>
|
||||
@ -658,7 +661,7 @@ FEED_TEASERS = False
|
||||
# <input type="text" name="q" maxlength="255" results="0" placeholder="Search"/>
|
||||
# </form>
|
||||
# <!-- End of custom search -->
|
||||
#""" % 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 </head>
|
||||
# (translatable)
|
||||
#EXTRA_HEAD_DATA = """
|
||||
#<link href="//fonts.googleapis.com/css?family=Oxygen:400,300,700&subset=latin,latin-ext" rel="stylesheet" type="text/css">
|
||||
#<link href="//fonts.googleapis.com/css?family=Raleway:700,400,300" rel="stylesheet" type="text/css">
|
||||
#<link href="fonts/font-awesome/css/font-awesome.css" rel="stylesheet">
|
||||
#<link href="css/animations.css" rel="stylesheet">
|
||||
#<link href="css/style.css" rel="stylesheet">
|
||||
#<link href="css/custom.css" rel="stylesheet">
|
||||
#"""
|
||||
# EXTRA_HEAD_DATA = """
|
||||
# <link href="//fonts.googleapis.com/css?family=Oxygen:400,300,700&subset=latin,latin-ext" rel="stylesheet"
|
||||
# type="text/css">
|
||||
# <link href="//fonts.googleapis.com/css?family=Raleway:700,400,300" rel="stylesheet" type="text/css">
|
||||
# <link href="fonts/font-awesome/css/font-awesome.css" rel="stylesheet">
|
||||
# <link href="css/animations.css" rel="stylesheet">
|
||||
# <link href="css/style.css" rel="stylesheet">
|
||||
# <link href="css/custom.css" rel="stylesheet">
|
||||
# """
|
||||
EXTRA_HEAD_DATA = """
|
||||
<link href="/assets/css/ekko-lightbox.css" rel="stylesheet">
|
||||
<link href="/assets/css/toastr.min.css" rel="stylesheet">
|
||||
@ -687,14 +691,14 @@ EXTRA_HEAD_DATA = """
|
||||
# Google Analytics or whatever else you use. Added to the bottom of <body>
|
||||
# in the default template (base.tmpl).
|
||||
# (translatable)
|
||||
#BODY_END = """
|
||||
#<script type="text/javascript" src="plugins/modernizr.js"></script>
|
||||
#<script type="text/javascript" src="plugins/isotope/isotope.pkgd.min.js"></script>
|
||||
#<script type="text/javascript" src="plugins/jquery.backstretch.min.js"></script>
|
||||
#<script type="text/javascript" src="plugins/jquery.appear.js"></script>
|
||||
#<script type="text/javascript" src="js/template.js"></script>
|
||||
#<script type="text/javascript" src="js/custom.js"></script>
|
||||
#"""
|
||||
# BODY_END = """
|
||||
# <script type="text/javascript" src="plugins/modernizr.js"></script>
|
||||
# <script type="text/javascript" src="plugins/isotope/isotope.pkgd.min.js"></script>
|
||||
# <script type="text/javascript" src="plugins/jquery.backstretch.min.js"></script>
|
||||
# <script type="text/javascript" src="plugins/jquery.appear.js"></script>
|
||||
# <script type="text/javascript" src="js/template.js"></script>
|
||||
# <script type="text/javascript" src="js/custom.js"></script>
|
||||
# """
|
||||
BODY_END = """
|
||||
<script type="text/javascript">window.liveSettings={api_key:"2c307f8400684f0595b35e8101f9fc8a"};</script>
|
||||
<script type="text/javascript" src="https://checkout.stripe.com/checkout.js"></script>
|
||||
@ -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 = {}
|
||||
|
11
deploy.sh
11
deploy.sh
@ -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 ..
|
BIN
files/cover-images/integration-with-biblegateway-broken.jpg
Normal file
BIN
files/cover-images/integration-with-biblegateway-broken.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 273 KiB |
1
files/google3623fce3d6bcc6d8.html
Normal file
1
files/google3623fce3d6bcc6d8.html
Normal file
@ -0,0 +1 @@
|
||||
google-site-verification: google3623fce3d6bcc6d8.html
|
@ -9,7 +9,8 @@ ${base.html_headstart()}
|
||||
${template_hooks['extra_head']()}
|
||||
</head>
|
||||
<body class="no-trans txlive">
|
||||
% if permalink is not UNDEFINED and permalink == u'/index.html':
|
||||
<!-- ${permalink} -->
|
||||
% if permalink is not UNDEFINED and permalink == '/':
|
||||
<%include file="front_page.html"/>
|
||||
% else:
|
||||
<div class="scrollToTop"><a href="#" title="Scroll to top"><i class="fa fa-fw fa-arrow-up fa-lg"></i></a></div>
|
||||
@ -64,17 +65,7 @@ ${template_hooks['extra_head']()}
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
% if permalink is not UNDEFINED and permalink.startswith(u'/blog/index'):
|
||||
<div class="blog-heading">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
|
||||
<h1>Reflections and Projections</h1>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
% elif post is not UNDEFINED and post:
|
||||
% if post is not UNDEFINED and post:
|
||||
<div class="post-heading" style="background-image: url(${post.meta('previewimage')})">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
@ -84,6 +75,16 @@ ${template_hooks['extra_head']()}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
% elif permalink is not UNDEFINED and permalink.startswith(u'/blog/'):
|
||||
<div class="blog-heading">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
|
||||
<h1>Reflections and Projections</h1>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
% endif
|
||||
<div class="container" id="content">
|
||||
<div class="body-content">
|
||||
|
@ -93,9 +93,11 @@ lang="${lang}">
|
||||
<script type="text/javascript" src="/assets/js/custom.js"></script>
|
||||
<script type="text/javascript" src="/assets/js/jquery.colorbox-min.js"></script>
|
||||
%endif
|
||||
%if colorbox_locales[lang]:
|
||||
<script src="/assets/js/colorbox-i18n/jquery.colorbox-${colorbox_locales[lang]}.js"></script>
|
||||
%endif
|
||||
<%doc>
|
||||
% if colorbox_locales[lang]:
|
||||
<!-- script src="/assets/js/colorbox-i18n/jquery.colorbox-${colorbox_locales[lang]}.js"></script -->
|
||||
% endif
|
||||
</%doc>
|
||||
${social_buttons_code}
|
||||
</%def>
|
||||
|
||||
|
@ -85,7 +85,7 @@
|
||||
</%def>
|
||||
|
||||
<%def name="mathjax_script(post)">
|
||||
%if post.is_mathjax:
|
||||
%if post.has_math:
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({tex2jax: {inlineMath: [['$latex ','$'], ['\\(','\\)']]}});</script>
|
||||
<script src="/assets/js/mathjax.js"></script>
|
||||
|
Loading…
Reference in New Issue
Block a user