From 3c1695a7f95badc242c2e91b005070e205b5a53d Mon Sep 17 00:00:00 2001 From: Llewellyn van der Merwe Date: Thu, 9 Nov 2023 08:16:35 +0200 Subject: [PATCH] first commit --- getbibleloader.php | 56 ++++++++++++++++ getbibleloader.xml | 28 ++++++++ index.html | 1 + .../en-GB/en-GB.plg_system_getbibleloader.ini | 3 + .../en-GB.plg_system_getbibleloader.sys.ini | 3 + language/en-GB/index.html | 1 + language/index.html | 1 + script.php | 64 +++++++++++++++++++ 8 files changed, 157 insertions(+) create mode 100644 getbibleloader.php create mode 100644 getbibleloader.xml create mode 100644 index.html create mode 100644 language/en-GB/en-GB.plg_system_getbibleloader.ini create mode 100644 language/en-GB/en-GB.plg_system_getbibleloader.sys.ini create mode 100644 language/en-GB/index.html create mode 100644 language/index.html create mode 100644 script.php diff --git a/getbibleloader.php b/getbibleloader.php new file mode 100644 index 0000000..a2e43ae --- /dev/null +++ b/getbibleloader.php @@ -0,0 +1,56 @@ + + @git Get Bible + @github Get Bible + @support Get Bible + @copyright Copyright (C) 2015. All Rights Reserved + @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html + +/------------------------------------------------------------------------------------------------------*/ + +// No direct access to this file +defined('_JEXEC') or die('Restricted access'); + +use Joomla\CMS\Plugin\CMSPlugin; +use Joomla\CMS\Html\HTMLHelper; + +/** + * System - GetBibleLoader plugin. + * + * @package GetBibleLoader + * @since 2.0.0 + */ +class PlgSystemGetBibleLoader extends CMSPlugin +{ + /** + * Application object + * + * @var CMSApplication + * @since 1.0.0 + */ + protected $app; + + /** + * This method is called before the head is compiled and allows manipulation of the head data. + * In this case, it's used to add a JavaScript file to the front end of the Joomla site. + * + * @return void + * + * @since 3.0.0 + * @throws Exception on error. + */ + public function onBeforeCompileHead() + { + // Check if we are in the site application + if ($this->app->isClient('site')) { + HTMLHelper::_('script', 'https://cdn.jsdelivr.net/gh/getbible/loader@2.0.0/dist/js/getBible.min.js', ['version' => 'auto']); + } + } +} diff --git a/getbibleloader.xml b/getbibleloader.xml new file mode 100644 index 0000000..0ed53f8 --- /dev/null +++ b/getbibleloader.xml @@ -0,0 +1,28 @@ + + + PLG_SYSTEM_GETBIBLELOADER + 9th November, 2023 + Llewellyn van der Merwe + joomla@vdm.io + https://getbible.net + Copyright (C) 2015. All Rights Reserved + GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html + 2.0.0 + PLG_SYSTEM_GETBIBLELOADER_XML_DESCRIPTION + + + script.php + + + + en-GB/en-GB.plg_system_getbibleloader.ini + en-GB/en-GB.plg_system_getbibleloader.sys.ini + + + + + getbibleloader.php + index.html + language + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..fa6d84e --- /dev/null +++ b/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/language/en-GB/en-GB.plg_system_getbibleloader.ini b/language/en-GB/en-GB.plg_system_getbibleloader.ini new file mode 100644 index 0000000..afa8dd5 --- /dev/null +++ b/language/en-GB/en-GB.plg_system_getbibleloader.ini @@ -0,0 +1,3 @@ +PLG_SYSTEM_GETBIBLELOADER="System - GetBibleLoader" +PLG_SYSTEM_GETBIBLELOADER_DESCRIPTION="This plugin is used to load scripture on your website. So it adds https://cdn.jsdelivr.net/gh/getbible/loader@2.0.0/dist/js/getBible.min.js to the header of your website. See: https://getbible.net/biblekit for more details." +PLG_SYSTEM_GETBIBLELOADER_XML_DESCRIPTION="

System - GetBibleLoader (v.2.0.0)

This plugin is used to load scripture on your website. So it adds https://cdn.jsdelivr.net/gh/getbible/loader@2.0.0/dist/js/getBible.min.js to the header of your website. See: https://getbible.net/biblekit for more details.

Created by Llewellyn van der Merwe
Development started 26th July, 2023

" \ No newline at end of file diff --git a/language/en-GB/en-GB.plg_system_getbibleloader.sys.ini b/language/en-GB/en-GB.plg_system_getbibleloader.sys.ini new file mode 100644 index 0000000..afa8dd5 --- /dev/null +++ b/language/en-GB/en-GB.plg_system_getbibleloader.sys.ini @@ -0,0 +1,3 @@ +PLG_SYSTEM_GETBIBLELOADER="System - GetBibleLoader" +PLG_SYSTEM_GETBIBLELOADER_DESCRIPTION="This plugin is used to load scripture on your website. So it adds https://cdn.jsdelivr.net/gh/getbible/loader@2.0.0/dist/js/getBible.min.js to the header of your website. See: https://getbible.net/biblekit for more details." +PLG_SYSTEM_GETBIBLELOADER_XML_DESCRIPTION="

System - GetBibleLoader (v.2.0.0)

This plugin is used to load scripture on your website. So it adds https://cdn.jsdelivr.net/gh/getbible/loader@2.0.0/dist/js/getBible.min.js to the header of your website. See: https://getbible.net/biblekit for more details.

Created by Llewellyn van der Merwe
Development started 26th July, 2023

" \ No newline at end of file diff --git a/language/en-GB/index.html b/language/en-GB/index.html new file mode 100644 index 0000000..fa6d84e --- /dev/null +++ b/language/en-GB/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/language/index.html b/language/index.html new file mode 100644 index 0000000..fa6d84e --- /dev/null +++ b/language/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/script.php b/script.php new file mode 100644 index 0000000..9eb9f34 --- /dev/null +++ b/script.php @@ -0,0 +1,64 @@ + + @git Get Bible + @github Get Bible + @support Get Bible + @copyright Copyright (C) 2015. All Rights Reserved + @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html + +/------------------------------------------------------------------------------------------------------*/ + +// No direct access to this file +defined('_JEXEC') or die('Restricted access'); + +/** + * System - GetBibleLoader script file. + * + * @package PlgSystemGetBibleLoader + */ +class plgSystemGetBibleLoaderInstallerScript +{ + + /** + * Called before any type of action + * + * @param string $route Which action is happening (install|uninstall|discover_install|update) + * @param Joomla\CMS\Installer\InstallerAdapter $adapter The object responsible for running this script + * + * @return boolean True on success + */ + public function preflight($route, $adapter) + { + // get application + $app = JFactory::getApplication(); + + // the default for both install and update + $jversion = new JVersion(); + if (!$jversion->isCompatible('3.8.0')) + { + $app->enqueueMessage('Please upgrade to at least Joomla! 3.8.0 before continuing!', 'error'); + return false; + } + + if ('install' === $route) + { +// + + $jversion = new JVersion(); + if (!$jversion->isCompatible('3.10.0')) { + $app->enqueueMessage('Please upgrade to at least Joomla! 3.10 before continuing!', 'error'); + return false; + } + + } + + return true; + } +}