Stable release of v2.0.24

Adds getBible Loader Plugin.
This commit is contained in:
Robot 2023-11-09 08:11:41 +02:00
parent 0ec802260e
commit be404b57ff
Signed by: Robot
GPG Key ID: 14DECD44E7E1BB95
40 changed files with 467 additions and 130 deletions

View File

@ -1,3 +1,7 @@
# v2.0.24
- Adds getBible Loader Plugin
# v2.0.23
- Refactored all core helper functions to make use of New classes

View File

@ -1,4 +1,4 @@
# Get Bible (2.0.23)
# Get Bible (2.0.24)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@ -18,38 +18,38 @@ In essence, The Bible for Joomla is designed to transform how the Word of God is
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Get Bible](https://getbible.net)
+ *First Build*: 3rd December, 2015
+ *Last Build*: 7th September, 2023
+ *Version*: 2.0.23
+ *Last Build*: 9th November, 2023
+ *Version*: 2.0.24
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
## Build Time
**556 Hours** or **70 Eight Hour Days** (actual time the author saved -
**560 Hours** or **70 Eight Hour Days** (actual time the author saved -
due to [Automated Component Builder](https://www.joomlacomponentbuilder.com))
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> never making one mistake or taking any coffee break.)
+ *Line count*: **199088**
+ *File count*: **1723**
+ *Folder count*: **163**
+ *Line count*: **200643**
+ *File count*: **1736**
+ *Folder count*: **167**
**366 Hours** or **45 Eight Hour Days** (the actual time the author spent)
**369 Hours** or **46 Eight Hour Days** (the actual time the author spent)
> (with the following break down:
> **debugging @139hours** = codingtime / 4;
> **planning @79hours** = codingtime / 7;
> **debugging @140hours** = codingtime / 4;
> **planning @80hours** = codingtime / 7;
> **mapping @56hours** = codingtime / 10;
> **office @93hours** = codingtime / 6;)
**922 Hours** or **115 Eight Hour Days**
**929 Hours** or **116 Eight Hour Days**
(a total of the realistic time frame for this project)
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> with the normal everyday realities at the office, that includes the component planning, mapping & debugging.)
Project duration: **23 weeks** or **4.8 months**
Project duration: **23.2 weeks** or **4.8 months**
> This **component** was build with a Joomla [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -1,4 +1,4 @@
# Get Bible (2.0.23)
# Get Bible (2.0.24)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@ -18,38 +18,38 @@ In essence, The Bible for Joomla is designed to transform how the Word of God is
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Get Bible](https://getbible.net)
+ *First Build*: 3rd December, 2015
+ *Last Build*: 7th September, 2023
+ *Version*: 2.0.23
+ *Last Build*: 9th November, 2023
+ *Version*: 2.0.24
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
## Build Time
**556 Hours** or **70 Eight Hour Days** (actual time the author saved -
**560 Hours** or **70 Eight Hour Days** (actual time the author saved -
due to [Automated Component Builder](https://www.joomlacomponentbuilder.com))
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> never making one mistake or taking any coffee break.)
+ *Line count*: **199088**
+ *File count*: **1723**
+ *Folder count*: **163**
+ *Line count*: **200643**
+ *File count*: **1736**
+ *Folder count*: **167**
**366 Hours** or **45 Eight Hour Days** (the actual time the author spent)
**369 Hours** or **46 Eight Hour Days** (the actual time the author spent)
> (with the following break down:
> **debugging @139hours** = codingtime / 4;
> **planning @79hours** = codingtime / 7;
> **debugging @140hours** = codingtime / 4;
> **planning @80hours** = codingtime / 7;
> **mapping @56hours** = codingtime / 10;
> **office @93hours** = codingtime / 6;)
**922 Hours** or **115 Eight Hour Days**
**929 Hours** or **116 Eight Hour Days**
(a total of the realistic time frame for this project)
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> with the normal everyday realities at the office, that includes the component planning, mapping & debugging.)
Project duration: **23 weeks** or **4.8 months**
Project duration: **23.2 weeks** or **4.8 months**
> This **component** was build with a Joomla [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -159,4 +159,4 @@ class GetbibleControllerBooks extends AdminController
$this->setRedirect(JRoute::_('index.php?option=com_getbible&view=books', false), $message, 'error');
return;
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerChapters extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerLinkers extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerNotes extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerOpen_ai_messages extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerOpen_ai_responses extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerPasswords extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerPrompts extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerTagged_verses extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerTags extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -137,4 +137,4 @@ class GetbibleControllerTranslations extends AdminController
$this->setRedirect(JRoute::_('index.php?option=com_getbible&view=translations', false), $message, 'error');
return;
}
}
}

View File

@ -49,4 +49,4 @@ class GetbibleControllerVerses extends AdminController
{
return parent::getModel($name, $prefix, $config);
}
}
}

View File

@ -73,9 +73,8 @@ if (!JFactory::getUser()->authorise('core.manage', 'com_getbible'))
};
// Add CSS file for all pages
$document = JFactory::getDocument();
$document->addStyleSheet('components/com_getbible/assets/css/admin.css');
$document->addScript('components/com_getbible/assets/js/admin.js');
JHtml::_('stylesheet', 'components/com_getbible/assets/css/admin.css', ['version' => 'auto']);
JHtml::_('script', 'components/com_getbible/assets/js/admin.js', ['version' => 'auto']);
// require helper files
JLoader::register('GetbibleHelper', __DIR__ . '/helpers/getbible.php');

View File

@ -75,7 +75,7 @@ use VDM\Joomla\Utilities\ObjectHelper;
use VDM\Joomla\Utilities\GetHelper;
use VDM\Joomla\Utilities\JsonHelper;
use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper;
use VDM\Joomla\Componentbuilder\Utilities\FormHelper;
use VDM\Joomla\Utilities\FormHelper;
/**
* Getbible component helper.

View File

@ -16,7 +16,7 @@ COM_GETBIBLE_BOOKS_ACCESS_DESC="Allows the users in this group to access access
COM_GETBIBLE_BOOKS_BATCH_OPTIONS="Batch process the selected Books"
COM_GETBIBLE_BOOKS_BATCH_TIP="All changes will be applied to all selected Books"
COM_GETBIBLE_BOOKS_BATCH_USE="Books Batch Use"
COM_GETBIBLE_BOOKS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch books"
COM_GETBIBLE_BOOKS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch books"
COM_GETBIBLE_BOOKS_CREATE="Books Create"
COM_GETBIBLE_BOOKS_CREATE_DESC="Allows the users in this group to create create books"
COM_GETBIBLE_BOOKS_DASHBOARD_LIST="Books Dashboard List"
@ -103,7 +103,7 @@ COM_GETBIBLE_CHAPTERS_ACCESS_DESC="Allows the users in this group to access acce
COM_GETBIBLE_CHAPTERS_BATCH_OPTIONS="Batch process the selected Chapters"
COM_GETBIBLE_CHAPTERS_BATCH_TIP="All changes will be applied to all selected Chapters"
COM_GETBIBLE_CHAPTERS_BATCH_USE="Chapters Batch Use"
COM_GETBIBLE_CHAPTERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch chapters"
COM_GETBIBLE_CHAPTERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch chapters"
COM_GETBIBLE_CHAPTERS_CREATE="Chapters Create"
COM_GETBIBLE_CHAPTERS_CREATE_DESC="Allows the users in this group to create create chapters"
COM_GETBIBLE_CHAPTERS_DASHBOARD_LIST="Chapters Dashboard List"
@ -631,7 +631,7 @@ COM_GETBIBLE_LINKERS_ACCESS_DESC="Allows the users in this group to access acces
COM_GETBIBLE_LINKERS_BATCH_OPTIONS="Batch process the selected Linkers"
COM_GETBIBLE_LINKERS_BATCH_TIP="All changes will be applied to all selected Linkers"
COM_GETBIBLE_LINKERS_BATCH_USE="Linkers Batch Use"
COM_GETBIBLE_LINKERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch linkers"
COM_GETBIBLE_LINKERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch linkers"
COM_GETBIBLE_LINKERS_CREATE="Linkers Create"
COM_GETBIBLE_LINKERS_CREATE_DESC="Allows the users in this group to create create linkers"
COM_GETBIBLE_LINKERS_DASHBOARD_LIST="Linkers Dashboard List"
@ -720,7 +720,7 @@ COM_GETBIBLE_NOTES_ACCESS_DESC="Allows the users in this group to access access
COM_GETBIBLE_NOTES_BATCH_OPTIONS="Batch process the selected Notes"
COM_GETBIBLE_NOTES_BATCH_TIP="All changes will be applied to all selected Notes"
COM_GETBIBLE_NOTES_BATCH_USE="Notes Batch Use"
COM_GETBIBLE_NOTES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch notes"
COM_GETBIBLE_NOTES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch notes"
COM_GETBIBLE_NOTES_CREATE="Notes Create"
COM_GETBIBLE_NOTES_CREATE_DESC="Allows the users in this group to create create notes"
COM_GETBIBLE_NOTES_DASHBOARD_LIST="Notes Dashboard List"
@ -752,7 +752,7 @@ COM_GETBIBLE_NOTES_EDIT_STATE_DESC="Allows the users in this group to update the
COM_GETBIBLE_NOTES_EDIT_VERSE="Notes Edit Verse"
COM_GETBIBLE_NOTES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of note"
COM_GETBIBLE_NOTES_EDIT_VERSION="Notes Edit Version"
COM_GETBIBLE_NOTES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version notes"
COM_GETBIBLE_NOTES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version notes"
COM_GETBIBLE_NOTES_N_ITEMS_ARCHIVED="%s Notes archived."
COM_GETBIBLE_NOTES_N_ITEMS_ARCHIVED_1="%s Note archived."
COM_GETBIBLE_NOTES_N_ITEMS_CHECKED_IN_0="No Note successfully checked in."
@ -825,7 +825,7 @@ COM_GETBIBLE_OPEN_AI_MESSAGES_ACCESS_DESC="Allows the users in this group to acc
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_OPTIONS="Batch process the selected Open AI Messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_TIP="All changes will be applied to all selected Open AI Messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE="Open Ai Messages Batch Use"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_CREATE="Open Ai Messages Create"
COM_GETBIBLE_OPEN_AI_MESSAGES_CREATE_DESC="Allows the users in this group to create create open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_DELETE="Open Ai Messages Delete"
@ -855,7 +855,7 @@ COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_SOURCE_DESC="Allows the users in this group t
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_STATE="Open Ai Messages Edit State"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_STATE_DESC="Allows the users in this group to update the state of the open ai message"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION="Open Ai Messages Edit Version"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_N_ITEMS_ARCHIVED="%s Open AI Messages archived."
COM_GETBIBLE_OPEN_AI_MESSAGES_N_ITEMS_ARCHIVED_1="%s Open AI Message archived."
COM_GETBIBLE_OPEN_AI_MESSAGES_N_ITEMS_CHECKED_IN_0="No Open AI Message successfully checked in."
@ -921,7 +921,7 @@ COM_GETBIBLE_OPEN_AI_RESPONSES_ACCESS_DESC="Allows the users in this group to ac
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_OPTIONS="Batch process the selected Open AI Responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_TIP="All changes will be applied to all selected Open AI Responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE="Open Ai Responses Batch Use"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_CREATE="Open Ai Responses Create"
COM_GETBIBLE_OPEN_AI_RESPONSES_CREATE_DESC="Allows the users in this group to create create open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_DASHBOARD_LIST="Open Ai Responses Dashboard List"
@ -983,7 +983,7 @@ COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_TOTAL_TOKENS_DESC="Allows the users in this
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSE="Open Ai Responses Edit Verse"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of open ai response"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION="Open Ai Responses Edit Version"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_WORD="Open Ai Responses Edit Word"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_WORD_DESC="Allows the users in this group to edit word of open ai response"
COM_GETBIBLE_OPEN_AI_RESPONSES_N_ITEMS_ARCHIVED="%s Open AI Responses archived."
@ -1106,7 +1106,7 @@ COM_GETBIBLE_PASSWORDS_ACCESS_PASSWORD_DESC="Allows the users in this group to a
COM_GETBIBLE_PASSWORDS_BATCH_OPTIONS="Batch process the selected Passwords"
COM_GETBIBLE_PASSWORDS_BATCH_TIP="All changes will be applied to all selected Passwords"
COM_GETBIBLE_PASSWORDS_BATCH_USE="Passwords Batch Use"
COM_GETBIBLE_PASSWORDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch passwords"
COM_GETBIBLE_PASSWORDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch passwords"
COM_GETBIBLE_PASSWORDS_CREATE="Passwords Create"
COM_GETBIBLE_PASSWORDS_CREATE_DESC="Allows the users in this group to create create passwords"
COM_GETBIBLE_PASSWORDS_DELETE="Passwords Delete"
@ -1192,7 +1192,7 @@ COM_GETBIBLE_PROMPTS_ACCESS_TEMPERATURE_OVERRIDE_DESC="Allows the users in this
COM_GETBIBLE_PROMPTS_BATCH_OPTIONS="Batch process the selected Prompts"
COM_GETBIBLE_PROMPTS_BATCH_TIP="All changes will be applied to all selected Prompts"
COM_GETBIBLE_PROMPTS_BATCH_USE="Prompts Batch Use"
COM_GETBIBLE_PROMPTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch prompts"
COM_GETBIBLE_PROMPTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch prompts"
COM_GETBIBLE_PROMPTS_CREATE="Prompts Create"
COM_GETBIBLE_PROMPTS_CREATE_DESC="Allows the users in this group to create create prompts"
COM_GETBIBLE_PROMPTS_DASHBOARD_LIST="Prompts Dashboard List"
@ -1256,7 +1256,7 @@ COM_GETBIBLE_PROMPTS_EDIT_TOP_P_DESC="Allows the users in this group to edit top
COM_GETBIBLE_PROMPTS_EDIT_TOP_P_OVERRIDE="Prompts Edit Top P Override"
COM_GETBIBLE_PROMPTS_EDIT_TOP_P_OVERRIDE_DESC="Allows the users in this group to edit top p override of prompt"
COM_GETBIBLE_PROMPTS_EDIT_VERSION="Prompts Edit Version"
COM_GETBIBLE_PROMPTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version prompts"
COM_GETBIBLE_PROMPTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version prompts"
COM_GETBIBLE_PROMPTS_N_ITEMS_ARCHIVED="%s Prompts archived."
COM_GETBIBLE_PROMPTS_N_ITEMS_ARCHIVED_1="%s Prompt archived."
COM_GETBIBLE_PROMPTS_N_ITEMS_CHECKED_IN_0="No Prompt successfully checked in."
@ -1439,7 +1439,7 @@ COM_GETBIBLE_TAGGED_VERSES_ACCESS_DESC="Allows the users in this group to access
COM_GETBIBLE_TAGGED_VERSES_BATCH_OPTIONS="Batch process the selected Tagged Verses"
COM_GETBIBLE_TAGGED_VERSES_BATCH_TIP="All changes will be applied to all selected Tagged Verses"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE="Tagged Verses Batch Use"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch tagged verses"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch tagged verses"
COM_GETBIBLE_TAGGED_VERSES_CREATE="Tagged Verses Create"
COM_GETBIBLE_TAGGED_VERSES_CREATE_DESC="Allows the users in this group to create create tagged verses"
COM_GETBIBLE_TAGGED_VERSES_DASHBOARD_LIST="Tagged Verses Dashboard List"
@ -1473,7 +1473,7 @@ COM_GETBIBLE_TAGGED_VERSES_EDIT_TAG_DESC="Allows the users in this group to edit
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSE="Tagged Verses Edit Verse"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of tagged verse"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION="Tagged Verses Edit Version"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version tagged verses"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version tagged verses"
COM_GETBIBLE_TAGGED_VERSES_N_ITEMS_ARCHIVED="%s Tagged Verses archived."
COM_GETBIBLE_TAGGED_VERSES_N_ITEMS_ARCHIVED_1="%s Tagged Verse archived."
COM_GETBIBLE_TAGGED_VERSES_N_ITEMS_CHECKED_IN_0="No Tagged Verse successfully checked in."
@ -1540,7 +1540,7 @@ COM_GETBIBLE_TAGS_ACCESS_DESC="Allows the users in this group to access access t
COM_GETBIBLE_TAGS_BATCH_OPTIONS="Batch process the selected Tags"
COM_GETBIBLE_TAGS_BATCH_TIP="All changes will be applied to all selected Tags"
COM_GETBIBLE_TAGS_BATCH_USE="Tags Batch Use"
COM_GETBIBLE_TAGS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch tags"
COM_GETBIBLE_TAGS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch tags"
COM_GETBIBLE_TAGS_CREATE="Tags Create"
COM_GETBIBLE_TAGS_CREATE_DESC="Allows the users in this group to create create tags"
COM_GETBIBLE_TAGS_DASHBOARD_LIST="Tags Dashboard List"
@ -1568,7 +1568,7 @@ COM_GETBIBLE_TAGS_EDIT_OWN_DESC="Allows the users in this group to edit edit own
COM_GETBIBLE_TAGS_EDIT_STATE="Tags Edit State"
COM_GETBIBLE_TAGS_EDIT_STATE_DESC="Allows the users in this group to update the state of the tag"
COM_GETBIBLE_TAGS_EDIT_VERSION="Tags Edit Version"
COM_GETBIBLE_TAGS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version tags"
COM_GETBIBLE_TAGS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version tags"
COM_GETBIBLE_TAGS_N_ITEMS_ARCHIVED="%s Tags archived."
COM_GETBIBLE_TAGS_N_ITEMS_ARCHIVED_1="%s Tag archived."
COM_GETBIBLE_TAGS_N_ITEMS_CHECKED_IN_0="No Tag successfully checked in."
@ -1658,7 +1658,7 @@ COM_GETBIBLE_TRANSLATIONS_ACCESS_DESC="Allows the users in this group to access
COM_GETBIBLE_TRANSLATIONS_BATCH_OPTIONS="Batch process the selected Translations"
COM_GETBIBLE_TRANSLATIONS_BATCH_TIP="All changes will be applied to all selected Translations"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE="Translations Batch Use"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch translations"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch translations"
COM_GETBIBLE_TRANSLATIONS_CREATE="Translations Create"
COM_GETBIBLE_TRANSLATIONS_CREATE_DESC="Allows the users in this group to create create translations"
COM_GETBIBLE_TRANSLATIONS_DASHBOARD_LIST="Translations Dashboard List"
@ -1847,7 +1847,7 @@ COM_GETBIBLE_VERSES_ACCESS_DESC="Allows the users in this group to access access
COM_GETBIBLE_VERSES_BATCH_OPTIONS="Batch process the selected Verses"
COM_GETBIBLE_VERSES_BATCH_TIP="All changes will be applied to all selected Verses"
COM_GETBIBLE_VERSES_BATCH_USE="Verses Batch Use"
COM_GETBIBLE_VERSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch verses"
COM_GETBIBLE_VERSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch verses"
COM_GETBIBLE_VERSES_CREATE="Verses Create"
COM_GETBIBLE_VERSES_CREATE_DESC="Allows the users in this group to create create verses"
COM_GETBIBLE_VERSES_DASHBOARD_LIST="Verses Dashboard List"

View File

@ -2,7 +2,7 @@ COM_GETBIBLE="Get Bible"
COM_GETBIBLE_BOOKS_ACCESS="Books Access"
COM_GETBIBLE_BOOKS_ACCESS_DESC="Allows the users in this group to access access books"
COM_GETBIBLE_BOOKS_BATCH_USE="Books Batch Use"
COM_GETBIBLE_BOOKS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch books"
COM_GETBIBLE_BOOKS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch books"
COM_GETBIBLE_BOOKS_CREATE="Books Create"
COM_GETBIBLE_BOOKS_CREATE_DESC="Allows the users in this group to create create books"
COM_GETBIBLE_BOOKS_DASHBOARD_LIST="Books Dashboard List"
@ -36,7 +36,7 @@ COM_GETBIBLE_BOOK_UPDATE_CHAPTERS_NAMES_BUTTON_ACCESS_DESC="Allows the users in
COM_GETBIBLE_CHAPTERS_ACCESS="Chapters Access"
COM_GETBIBLE_CHAPTERS_ACCESS_DESC="Allows the users in this group to access access chapters"
COM_GETBIBLE_CHAPTERS_BATCH_USE="Chapters Batch Use"
COM_GETBIBLE_CHAPTERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch chapters"
COM_GETBIBLE_CHAPTERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch chapters"
COM_GETBIBLE_CHAPTERS_CREATE="Chapters Create"
COM_GETBIBLE_CHAPTERS_CREATE_DESC="Allows the users in this group to create create chapters"
COM_GETBIBLE_CHAPTERS_DASHBOARD_LIST="Chapters Dashboard List"
@ -75,7 +75,7 @@ COM_GETBIBLE_EDIT_VERSIONS_DESC="Allows users in this group to edit versions."
COM_GETBIBLE_LINKERS_ACCESS="Linkers Access"
COM_GETBIBLE_LINKERS_ACCESS_DESC="Allows the users in this group to access access linkers"
COM_GETBIBLE_LINKERS_BATCH_USE="Linkers Batch Use"
COM_GETBIBLE_LINKERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch linkers"
COM_GETBIBLE_LINKERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch linkers"
COM_GETBIBLE_LINKERS_CREATE="Linkers Create"
COM_GETBIBLE_LINKERS_CREATE_DESC="Allows the users in this group to create create linkers"
COM_GETBIBLE_LINKERS_DASHBOARD_LIST="Linkers Dashboard List"
@ -122,7 +122,7 @@ COM_GETBIBLE_MENU_VERSES="Verses"
COM_GETBIBLE_NOTES_ACCESS="Notes Access"
COM_GETBIBLE_NOTES_ACCESS_DESC="Allows the users in this group to access access notes"
COM_GETBIBLE_NOTES_BATCH_USE="Notes Batch Use"
COM_GETBIBLE_NOTES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch notes"
COM_GETBIBLE_NOTES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch notes"
COM_GETBIBLE_NOTES_CREATE="Notes Create"
COM_GETBIBLE_NOTES_CREATE_DESC="Allows the users in this group to create create notes"
COM_GETBIBLE_NOTES_DASHBOARD_LIST="Notes Dashboard List"
@ -154,13 +154,13 @@ COM_GETBIBLE_NOTES_EDIT_STATE_DESC="Allows the users in this group to update the
COM_GETBIBLE_NOTES_EDIT_VERSE="Notes Edit Verse"
COM_GETBIBLE_NOTES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of note"
COM_GETBIBLE_NOTES_EDIT_VERSION="Notes Edit Version"
COM_GETBIBLE_NOTES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version notes"
COM_GETBIBLE_NOTES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version notes"
COM_GETBIBLE_NOTES_SUBMENU="Notes Submenu"
COM_GETBIBLE_NOTES_SUBMENU_DESC="Allows the users in this group to submenu of note"
COM_GETBIBLE_OPEN_AI_MESSAGES_ACCESS="Open Ai Messages Access"
COM_GETBIBLE_OPEN_AI_MESSAGES_ACCESS_DESC="Allows the users in this group to access access open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE="Open Ai Messages Batch Use"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_CREATE="Open Ai Messages Create"
COM_GETBIBLE_OPEN_AI_MESSAGES_CREATE_DESC="Allows the users in this group to create create open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_DELETE="Open Ai Messages Delete"
@ -190,11 +190,11 @@ COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_SOURCE_DESC="Allows the users in this group t
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_STATE="Open Ai Messages Edit State"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_STATE_DESC="Allows the users in this group to update the state of the open ai message"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION="Open Ai Messages Edit Version"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version open ai messages"
COM_GETBIBLE_OPEN_AI_MESSAGES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version open ai messages"
COM_GETBIBLE_OPEN_AI_RESPONSES_ACCESS="Open Ai Responses Access"
COM_GETBIBLE_OPEN_AI_RESPONSES_ACCESS_DESC="Allows the users in this group to access access open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE="Open Ai Responses Batch Use"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_CREATE="Open Ai Responses Create"
COM_GETBIBLE_OPEN_AI_RESPONSES_CREATE_DESC="Allows the users in this group to create create open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_DASHBOARD_LIST="Open Ai Responses Dashboard List"
@ -256,7 +256,7 @@ COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_TOTAL_TOKENS_DESC="Allows the users in this
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSE="Open Ai Responses Edit Verse"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of open ai response"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION="Open Ai Responses Edit Version"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version open ai responses"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_WORD="Open Ai Responses Edit Word"
COM_GETBIBLE_OPEN_AI_RESPONSES_EDIT_WORD_DESC="Allows the users in this group to edit word of open ai response"
COM_GETBIBLE_OPEN_AI_RESPONSES_SUBMENU="Open Ai Responses Submenu"
@ -266,7 +266,7 @@ COM_GETBIBLE_PASSWORDS_ACCESS_DESC="Allows the users in this group to access acc
COM_GETBIBLE_PASSWORDS_ACCESS_PASSWORD="Passwords Access Password"
COM_GETBIBLE_PASSWORDS_ACCESS_PASSWORD_DESC="Allows the users in this group to access password of password"
COM_GETBIBLE_PASSWORDS_BATCH_USE="Passwords Batch Use"
COM_GETBIBLE_PASSWORDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch passwords"
COM_GETBIBLE_PASSWORDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch passwords"
COM_GETBIBLE_PASSWORDS_CREATE="Passwords Create"
COM_GETBIBLE_PASSWORDS_CREATE_DESC="Allows the users in this group to create create passwords"
COM_GETBIBLE_PASSWORDS_DELETE="Passwords Delete"
@ -296,7 +296,7 @@ COM_GETBIBLE_PROMPTS_ACCESS_DESC="Allows the users in this group to access acces
COM_GETBIBLE_PROMPTS_ACCESS_TEMPERATURE_OVERRIDE="Prompts Access Temperature Override"
COM_GETBIBLE_PROMPTS_ACCESS_TEMPERATURE_OVERRIDE_DESC="Allows the users in this group to access temperature override of prompt"
COM_GETBIBLE_PROMPTS_BATCH_USE="Prompts Batch Use"
COM_GETBIBLE_PROMPTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch prompts"
COM_GETBIBLE_PROMPTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch prompts"
COM_GETBIBLE_PROMPTS_CREATE="Prompts Create"
COM_GETBIBLE_PROMPTS_CREATE_DESC="Allows the users in this group to create create prompts"
COM_GETBIBLE_PROMPTS_DASHBOARD_LIST="Prompts Dashboard List"
@ -360,13 +360,13 @@ COM_GETBIBLE_PROMPTS_EDIT_TOP_P_DESC="Allows the users in this group to edit top
COM_GETBIBLE_PROMPTS_EDIT_TOP_P_OVERRIDE="Prompts Edit Top P Override"
COM_GETBIBLE_PROMPTS_EDIT_TOP_P_OVERRIDE_DESC="Allows the users in this group to edit top p override of prompt"
COM_GETBIBLE_PROMPTS_EDIT_VERSION="Prompts Edit Version"
COM_GETBIBLE_PROMPTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version prompts"
COM_GETBIBLE_PROMPTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version prompts"
COM_GETBIBLE_PROMPTS_SUBMENU="Prompts Submenu"
COM_GETBIBLE_PROMPTS_SUBMENU_DESC="Allows the users in this group to submenu of prompt"
COM_GETBIBLE_TAGGED_VERSES_ACCESS="Tagged Verses Access"
COM_GETBIBLE_TAGGED_VERSES_ACCESS_DESC="Allows the users in this group to access access tagged verses"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE="Tagged Verses Batch Use"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch tagged verses"
COM_GETBIBLE_TAGGED_VERSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch tagged verses"
COM_GETBIBLE_TAGGED_VERSES_CREATE="Tagged Verses Create"
COM_GETBIBLE_TAGGED_VERSES_CREATE_DESC="Allows the users in this group to create create tagged verses"
COM_GETBIBLE_TAGGED_VERSES_DASHBOARD_LIST="Tagged Verses Dashboard List"
@ -400,13 +400,13 @@ COM_GETBIBLE_TAGGED_VERSES_EDIT_TAG_DESC="Allows the users in this group to edit
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSE="Tagged Verses Edit Verse"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSE_DESC="Allows the users in this group to edit verse of tagged verse"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION="Tagged Verses Edit Version"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version tagged verses"
COM_GETBIBLE_TAGGED_VERSES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version tagged verses"
COM_GETBIBLE_TAGGED_VERSES_SUBMENU="Tagged Verses Submenu"
COM_GETBIBLE_TAGGED_VERSES_SUBMENU_DESC="Allows the users in this group to submenu of tagged verse"
COM_GETBIBLE_TAGS_ACCESS="Tags Access"
COM_GETBIBLE_TAGS_ACCESS_DESC="Allows the users in this group to access access tags"
COM_GETBIBLE_TAGS_BATCH_USE="Tags Batch Use"
COM_GETBIBLE_TAGS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch tags"
COM_GETBIBLE_TAGS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch tags"
COM_GETBIBLE_TAGS_CREATE="Tags Create"
COM_GETBIBLE_TAGS_CREATE_DESC="Allows the users in this group to create create tags"
COM_GETBIBLE_TAGS_DASHBOARD_LIST="Tags Dashboard List"
@ -434,13 +434,13 @@ COM_GETBIBLE_TAGS_EDIT_OWN_DESC="Allows the users in this group to edit edit own
COM_GETBIBLE_TAGS_EDIT_STATE="Tags Edit State"
COM_GETBIBLE_TAGS_EDIT_STATE_DESC="Allows the users in this group to update the state of the tag"
COM_GETBIBLE_TAGS_EDIT_VERSION="Tags Edit Version"
COM_GETBIBLE_TAGS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version tags"
COM_GETBIBLE_TAGS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version tags"
COM_GETBIBLE_TAGS_SUBMENU="Tags Submenu"
COM_GETBIBLE_TAGS_SUBMENU_DESC="Allows the users in this group to submenu of tag"
COM_GETBIBLE_TRANSLATIONS_ACCESS="Translations Access"
COM_GETBIBLE_TRANSLATIONS_ACCESS_DESC="Allows the users in this group to access access translations"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE="Translations Batch Use"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch translations"
COM_GETBIBLE_TRANSLATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch translations"
COM_GETBIBLE_TRANSLATIONS_CREATE="Translations Create"
COM_GETBIBLE_TRANSLATIONS_CREATE_DESC="Allows the users in this group to create create translations"
COM_GETBIBLE_TRANSLATIONS_DASHBOARD_LIST="Translations Dashboard List"
@ -502,7 +502,7 @@ COM_GETBIBLE_USE_BATCH_DESC="Allows users in this group to use batch copy/update
COM_GETBIBLE_VERSES_ACCESS="Verses Access"
COM_GETBIBLE_VERSES_ACCESS_DESC="Allows the users in this group to access access verses"
COM_GETBIBLE_VERSES_BATCH_USE="Verses Batch Use"
COM_GETBIBLE_VERSES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch verses"
COM_GETBIBLE_VERSES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch verses"
COM_GETBIBLE_VERSES_CREATE="Verses Create"
COM_GETBIBLE_VERSES_CREATE_DESC="Allows the users in this group to create create verses"
COM_GETBIBLE_VERSES_DASHBOARD_LIST="Verses Dashboard List"

View File

@ -38,7 +38,7 @@ class GetbibleModelGetbible extends ListModel
'main' => array('png.linkers', 'png.notes', 'png.tagged_verses', 'png.prompts', 'png.open_ai_responses', 'png.tags', 'png.translations', 'png.books', 'png.chapters', 'png.verses')
);
// view access array
$viewAccess = array(
$viewAccess = [
'linker.create' => 'linker.create',
'linkers.access' => 'linker.access',
'linker.access' => 'linker.access',
@ -94,7 +94,8 @@ class GetbibleModelGetbible extends ListModel
'verses.access' => 'verse.access',
'verse.access' => 'verse.access',
'verses.submenu' => 'verse.submenu',
'verses.dashboard_list' => 'verse.dashboard_list');
'verses.dashboard_list' => 'verse.dashboard_list',
];
// loop over the $views
foreach($viewGroups as $group => $views)
{

View File

@ -0,0 +1 @@

View File

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="4" method="upgrade">
<name>COM_GETBIBLE</name>
<creationDate>7th September, 2023</creationDate>
<creationDate>9th November, 2023</creationDate>
<author>Llewellyn van der Merwe</author>
<authorEmail>joomla@vdm.io</authorEmail>
<authorUrl>https://getbible.net</authorUrl>
<copyright>Copyright (C) 2015. All Rights Reserved</copyright>
<license>GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html</license>
<version>2.0.23</version>
<version>2.0.24</version>
<description><![CDATA[
<h1>Get Bible (v.2.0.23)</h1>
<h1>Get Bible (v.2.0.24)</h1>
<div style="clear: both;"></div>
<p>Welcome to the next level of scripture engagement - The Bible for Joomla! Our purpose is to bring the Word of God to every person, in their native language, entirely free. This isn't just a typical extension; it's a groundbreaking tool developed to span language divides and deliver a rich, customizable Bible study experience to users worldwide.

View File

@ -48,6 +48,22 @@ abstract class Api
*/
protected Response $response;
/**
* The Url string
*
* @var string|null
* @since 3.2.0
*/
protected ?string $url = null;
/**
* The token string
*
* @var string|null
* @since 3.2.0
*/
protected ?string $token = null;
/**
* Constructor.
*
@ -67,14 +83,31 @@ abstract class Api
/**
* Load/Reload API.
*
* @param string|null $url The url.
* @param token|null $token The token.
* @param string|null $url The url.
* @param token|null $token The token.
* @param bool $backup The backup swapping switch.
*
* @return void
* @since 3.2.0
**/
public function load_(?string $url = null, ?string $token = null)
public function load_(?string $url = null, ?string $token = null, bool $backup = true): void
{
// we keep the old values
// so we can reset after our call
// for the rest of the container
if ($backup)
{
if ($url !== null)
{
$this->url = $this->uri->getUrl();
}
if ($token !== null)
{
$this->token = $this->http->getToken();
}
}
if ($url !== null)
{
$this->uri->setUrl($url);
@ -85,6 +118,37 @@ abstract class Api
$this->http->setToken($token);
}
}
/**
* Reset to previous toke, url it set
*
* @return void
* @since 3.2.0
**/
public function reset_(): void
{
if ($this->url !== null)
{
$this->uri->setUrl($this->url);
$this->url = null;
}
if ($this->token !== null)
{
$this->http->setToken($this->token);
$this->token = null;
}
}
/**
* Get the API url
*
* @return string
* @since 3.2.0
**/
public function api()
{
return $this->uri->api();
}
}

View File

@ -205,16 +205,19 @@ class Contents extends Api
// Build the request path.
$path = "/repos/{$owner}/{$repo}/contents";
// Get the URI with the specified path.
$uri = $this->uri->get($path);
// Add the 'ref' parameter if it's provided.
if ($ref !== null)
{
$this->uri->setVar('ref', $ref);
$uri->setVar('ref', $ref);
}
// Send the get request.
return $this->response->get(
$this->http->get(
$this->uri->get($path)
$uri
)
);
}
@ -227,8 +230,8 @@ class Contents extends Api
* @param string $filepath The file path.
* @param string $content The file content.
* @param string $message The commit message.
* @param string $branch The branch name. Defaults to the repository's default branch.
* @param string $sha The blob SHA of the file.
* @param string $branch The branch name. Defaults to the repository's default branch.
* @param string|null $authorName The author name. Defaults to the authenticated user.
* @param string|null $authorEmail The author email. Defaults to the authenticated user.
* @param string|null $committerName The committer name. Defaults to the authenticated user.
@ -248,8 +251,8 @@ class Contents extends Api
string $filepath,
string $content,
string $message,
string $branch = 'master',
string $sha,
string $branch = 'master',
?string $authorName = null,
?string $authorEmail = null,
?string $committerName = null,
@ -503,7 +506,6 @@ class Contents extends Api
$this->uri->get($path)
)
);
}
}
}

View File

@ -179,7 +179,6 @@ class Admin implements ServiceProviderInterface
$container->get('Gitea.Dynamic.Uri'),
$container->get('Gitea.Utilities.Response')
);
}
}
}

View File

@ -58,7 +58,7 @@ class Jcb implements ServiceProviderInterface
$gitea_url = Helper::getParams('com_componentbuilder')->get('custom_gitea_url');
// only load this if we have a custom URL set
if ($add_gitea_url == 2 && is_string($gitea_url) && strpos($gitea_url, 'http') !== false)
if ($add_gitea_url == 2 && !empty($gitea_url) && strpos($gitea_url, 'http') !== false)
{
return new Uri($gitea_url);
}
@ -76,9 +76,19 @@ class Jcb implements ServiceProviderInterface
*/
public function getHttp(Container $container): Http
{
return new Http(
Helper::getParams('com_componentbuilder')->get('gitea_token')
);
$add_gitea_url = Helper::getParams('com_componentbuilder')->get('add_custom_gitea_url', 1);
if ($add_gitea_url == 2)
{
return new Http(
Helper::getParams('com_componentbuilder')->get('custom_gitea_token')
);
}
else
{
return new Http(
Helper::getParams('com_componentbuilder')->get('gitea_token')
);
}
}
}

View File

@ -66,7 +66,6 @@ class Utilities implements ServiceProviderInterface
public function getResponse(Container $container): Response
{
return new Response();
}
}
}

View File

@ -23,6 +23,14 @@ use Joomla\Registry\Registry;
*/
final class Http extends JoomlaHttp
{
/**
* The token
*
* @var string
* @since 3.2.0
*/
protected string $_token_; // to avoid collusions (but allow swapping)
/**
* Constructor.
*
@ -45,6 +53,7 @@ final class Http extends JoomlaHttp
if (is_string($token))
{
$config['headers']['Authorization'] = 'token ' . $token;
$this->_token_ = $token;
}
$options = new Registry($config);
@ -60,7 +69,7 @@ final class Http extends JoomlaHttp
*
* @since 3.2.0
**/
public function setToken(string $token)
public function setToken(string $token): void
{
// get the current headers
$headers = (array) $this->getOption('headers', [
@ -70,9 +79,20 @@ final class Http extends JoomlaHttp
// add the token
$headers['Authorization'] = 'token ' . $token;
$this->_token_ = $token;
$this->setOption('headers', $headers);
}
/**
* Get the Token.
*
* @return string|null
* @since 3.2.0
**/
public function getToken(): ?string
{
return $this->_token_ ?? null;
}
}

View File

@ -107,7 +107,18 @@ final class Uri
**/
public function setUrl(string $url)
{
return $this->url = $url;
$this->url = $url;
}
/**
* Get the URL of the API
*
* @return string|null
* @since 3.2.0
**/
public function getUrl(): ?string
{
return $this->url ?? null;
}
/**
@ -120,7 +131,7 @@ final class Uri
**/
private function setEndpoint(string $endpoint)
{
return $this->endpoint = $endpoint;
$this->endpoint = $endpoint;
}
/**
@ -133,8 +144,7 @@ final class Uri
**/
private function setVersion($version)
{
return $this->version = $version;
}
$this->version = $version;
}
}

View File

@ -385,25 +385,48 @@ final class Load extends Database implements LoadInterface
{
if (isset($value['value']) && isset($value['operator']))
{
if (ArrayHelper::check($value['value']))
// check if value needs to be quoted
$quote = $value['quote'] ?? true;
if (!$quote)
{
// add the where by array
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' (' .
implode(',',
array_map(
fn($val) => $this->quote($val),
$value['value']
)
)
. ')'
);
if (ArrayHelper::check($value['value']))
{
// add the where by array
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' (' .
implode(',', $value['value'])
. ')'
);
}
else
{
// add the where
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' ' . $value['value']);
}
}
else
{
// add the where
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' ' . $this->quote($value['value']));
if (ArrayHelper::check($value['value']))
{
// add the where by array
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' (' .
implode(',',
array_map(
fn($val) => $this->quote($val),
$value['value']
)
)
. ')'
);
}
else
{
// add the where
$query->where($this->db->quoteName($key) . ' ' .
$value['operator'] . ' ' . $this->quote($value['value']));
}
}
}
else

View File

@ -0,0 +1,187 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 4th September, 2022
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\Utilities;
use Joomla\CMS\Form\FormHelper as JoomlaFormHelper;
use Joomla\CMS\Form\FormField;
/**
* Form Helper
*
* @since 3.2.0
*/
abstract class FormHelper
{
/**
* get the field xml
*
* @param array $attributes The array of attributes
* @param array $options The options to apply to the XML element
*
* @return \SimpleXMLElement|null
* @since 3.2.0
*/
public static function xml(array $attributes, ?array $options = null): ?\SimpleXMLElement
{
// make sure we have attributes and a type value
if (ArrayHelper::check($attributes))
{
// start field xml
$XML = new \SimpleXMLElement('<field/>');
// load the attributes
self::attributes($XML, $attributes);
// check if we have options
if (ArrayHelper::check($options))
{
// load the options
self::options($XML, $options);
}
// return the field xml
return $XML;
}
return null;
}
/**
* xmlAppend
*
* @param \SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param mixed $node A SimpleXMLElement node to append to the XML element reference,
* or a stdClass object containing a comment attribute to be injected
* before the XML node and a fieldXML attribute containing a SimpleXMLElement
*
* @return void
* @since 3.2.0
*/
public static function append(\SimpleXMLElement &$xml, $node)
{
if (!$node)
{
// element was not returned
return;
}
switch (get_class($node))
{
case 'stdClass':
if (property_exists($node, 'comment'))
{
self::comment($xml, $node->comment);
}
if (property_exists($node, 'fieldXML'))
{
self::append($xml, $node->fieldXML);
}
break;
case 'SimpleXMLElement':
$domXML = \dom_import_simplexml($xml);
$domNode = \dom_import_simplexml($node);
$domXML->appendChild($domXML->ownerDocument->importNode($domNode, true));
$xml = \simplexml_import_dom($domXML);
break;
}
}
/**
* xmlComment
*
* @param \SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param string $comment The comment to inject
*
* @return void
* @since 3.2.0
*/
public static function comment(\SimpleXMLElement &$xml, string $comment)
{
$domXML = \dom_import_simplexml($xml);
$domComment = new \DOMComment($comment);
$nodeTarget = $domXML->ownerDocument->importNode($domComment, true);
$domXML->appendChild($nodeTarget);
$xml = \simplexml_import_dom($domXML);
}
/**
* xmlAddAttributes
*
* @param \SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $attributes The attributes to apply to the XML element
*
* @return void
* @since 3.2.0
*/
public static function attributes(\SimpleXMLElement &$xml, array $attributes = [])
{
foreach ($attributes as $key => $value)
{
$xml->addAttribute($key, $value);
}
}
/**
* xmlAddOptions
*
* @param \SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $options The options to apply to the XML element
*
* @return void
* @since 3.2.0
*/
public static function options(\SimpleXMLElement &$xml, array $options = [])
{
foreach ($options as $key => $value)
{
$addOption = $xml->addChild('option');
$addOption->addAttribute('value', $key);
$addOption[] = $value;
}
}
/**
* get the field object
*
* @param array $attributes The array of attributes
* @param string $default The default of the field
* @param array $options The options to apply to the XML element
*
* @return FormField|null
* @since 3.2.0
*/
public static function field(array $attributes, string $default = '', ?array $options = null): ?FormField
{
// make sure we have attributes and a type value
if (ArrayHelper::check($attributes) && isset($attributes['type']))
{
// get field type
if (($field = JoomlaFormHelper::loadFieldType($attributes['type'], true)) === false)
{
return null;
}
// get field xml
$XML = self::xml($attributes, $options);
// setup the field
$field->setup($XML, $default);
// return the field object
return $field;
}
return null;
}
}

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -1539,7 +1539,7 @@ class com_getbibleInstallerScript
echo '<a target="_blank" href="https://getbible.net" title="Get Bible">
<img src="components/com_getbible/assets/images/vdm-component.jpg"/>
</a>
<h3>Upgrade to Version 2.0.23 Was Successful! Let us know if anything is not working as expected.</h3>';
<h3>Upgrade to Version 2.0.24 Was Successful! Let us know if anything is not working as expected.</h3>';
// Set db if not set already.
if (!isset($db))

View File

@ -67,9 +67,8 @@ spl_autoload_register(function ($class) {
// Set the component css/js
$document = JFactory::getDocument();
$document->addStyleSheet('components/com_getbible/assets/css/site.css');
$document->addScript('components/com_getbible/assets/js/site.js');
JHtml::_('stylesheet', 'components/com_getbible/assets/css/site.css', ['version' => 'auto']);
JHtml::_('script', 'components/com_getbible/assets/js/site.js', ['version' => 'auto']);
// Require helper files
JLoader::register('GetbibleHelper', __DIR__ . '/helpers/getbible.php');

View File

@ -73,7 +73,7 @@ use VDM\Joomla\GetBible\Factory;
use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper;
use VDM\Joomla\Utilities\JsonHelper;
use VDM\Joomla\Utilities\ObjectHelper;
use VDM\Joomla\Componentbuilder\Utilities\FormHelper;
use VDM\Joomla\Utilities\FormHelper;
use VDM\Joomla\Utilities\GetHelper;
use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper;

View File

@ -985,7 +985,7 @@ class GetbibleModelApp extends ItemModel
JPluginHelper::importPlugin('content');
$this->_dispatcher = JFactory::getApplication();
// Check if we can decode distribution_history
if (GetbibleHelper::checkJson($data->distribution_history))
if (isset($data->distribution_history) && GetbibleHelper::checkJson($data->distribution_history))
{
// Decode distribution_history
$data->distribution_history = json_decode($data->distribution_history, true);

View File

@ -264,7 +264,7 @@ class GetbibleModelOpenai extends ItemModel
JPluginHelper::importPlugin('content');
$this->_dispatcher = JFactory::getApplication();
// Check if we can decode distribution_history
if (GetbibleHelper::checkJson($data->distribution_history))
if (isset($data->distribution_history) && GetbibleHelper::checkJson($data->distribution_history))
{
// Decode distribution_history
$data->distribution_history = json_decode($data->distribution_history, true);

View File

@ -338,7 +338,7 @@ class GetbibleModelSearch extends ListModel
JPluginHelper::importPlugin('content');
$this->_dispatcher = JFactory::getApplication();
// Check if we can decode distribution_history
if (GetbibleHelper::checkJson($data->distribution_history))
if (isset($data->distribution_history) && GetbibleHelper::checkJson($data->distribution_history))
{
// Decode distribution_history
$data->distribution_history = json_decode($data->distribution_history, true);

View File

@ -250,7 +250,7 @@ class GetbibleModelTag extends ListModel
JPluginHelper::importPlugin('content');
$this->_dispatcher = JFactory::getApplication();
// Check if we can decode distribution_history
if (GetbibleHelper::checkJson($data->distribution_history))
if (isset($data->distribution_history) && GetbibleHelper::checkJson($data->distribution_history))
{
// Decode distribution_history
$data->distribution_history = json_decode($data->distribution_history, true);

View File

@ -395,4 +395,22 @@
<maintainerurl>https://getbible.net</maintainerurl>
<targetplatform name="joomla" version="3.*"/>
</update>
<update>
<name>Get Bible</name>
<description>The Bible for Joomla</description>
<element>pkg_getbible</element>
<type>package</type>
<client>site</client>
<version>2.0.24</version>
<infourl title="Get Bible!">https://getbible.net</infourl>
<downloads>
<downloadurl type="full" format="zip">https://git.vdm.dev/api/v1/repos/getBible/joomla-pkg/archive/v2.0.24.zip</downloadurl>
</downloads>
<tags>
<tag>stable</tag>
</tags>
<maintainer>Llewellyn van der Merwe</maintainer>
<maintainerurl>https://getbible.net</maintainerurl>
<targetplatform name="joomla" version="3.*"/>
</update>
</updates>