diff --git a/CHANGELOG.md b/CHANGELOG.md
index f9e79cf..a8dc9bf 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -83,4 +83,8 @@
# v2.0.16
-- Fixed JavaScript Database Manager
\ No newline at end of file
+- Fixed JavaScript Database Manager
+
+# v2.0.17
+
+- Adds brut-force protection
\ No newline at end of file
diff --git a/README.md b/README.md
index 5ad568c..95b7b5d 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Get Bible (2.0.16)
+# Get Bible (2.0.17)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@@ -19,7 +19,7 @@ In essence, The Bible for Joomla is designed to transform how the Word of God is
+ *Name*: [Get Bible](https://getbible.net)
+ *First Build*: 3rd December, 2015
+ *Last Build*: 7th August, 2023
-+ *Version*: 2.0.16
++ *Version*: 2.0.17
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@@ -31,8 +31,8 @@ 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*: **196888**
-+ *File count*: **1711**
++ *Line count*: **196949**
++ *File count*: **1712**
+ *Folder count*: **163**
**362 Hours** or **45 Eight Hour Days** (the actual time the author spent)
diff --git a/admin/README.txt b/admin/README.txt
index 5ad568c..95b7b5d 100644
--- a/admin/README.txt
+++ b/admin/README.txt
@@ -1,4 +1,4 @@
-# Get Bible (2.0.16)
+# Get Bible (2.0.17)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@@ -19,7 +19,7 @@ In essence, The Bible for Joomla is designed to transform how the Word of God is
+ *Name*: [Get Bible](https://getbible.net)
+ *First Build*: 3rd December, 2015
+ *Last Build*: 7th August, 2023
-+ *Version*: 2.0.16
++ *Version*: 2.0.17
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@@ -31,8 +31,8 @@ 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*: **196888**
-+ *File count*: **1711**
++ *Line count*: **196949**
++ *File count*: **1712**
+ *Folder count*: **163**
**362 Hours** or **45 Eight Hour Days** (the actual time the author spent)
diff --git a/admin/language/en-GB/en-GB.com_getbible.ini b/admin/language/en-GB/en-GB.com_getbible.ini
index d546279..b1cce7b 100644
--- a/admin/language/en-GB/en-GB.com_getbible.ini
+++ b/admin/language/en-GB/en-GB.com_getbible.ini
@@ -1902,4 +1902,5 @@ COM_GETBIBLE_YOU_ARE_CURRENTLY_VIEWING_THE_TRASH_AREA_AND_YOU_DONT_HAVE_ANY_ITEM
COM_GETBIBLE_YOU_CAN_DIRECTLY_DOWNLOAD_THE_LATEST_UPDATE_OR_USE_THE_JOOMLA_UPDATE_AREA="You can directly download the latest update, or use the Joomla update area."
COM_GETBIBLE_YOU_DO_NOT_HAVE_PERMISSION_TO_UPDATE_THE_BOOK_NAMES_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_HELP="You do not have permission to update the book names, please contact your system administrator for more help."
COM_GETBIBLE_YOU_DO_NOT_HAVE_PERMISSION_TO_UPDATE_THE_CHAPTER_NAMES_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_HELP="You do not have permission to update the chapter names, please contact your system administrator for more help."
+COM_GETBIBLE_YOU_HAVE_BEEN_BLOCKED_YOU_WILL_NEED_TO_WAIT_ONE_DAY_BEFORE_TRYING_AGAIN_OR_CONTACT_SUPPORT="You have been blocked, you will need to wait one day before trying again, or contact support."
COM_GETBIBLE_YOU_WILL_HAVE_TO_ENABLE_OPEN_AI_IN_THE_GLOBAL_OPTIONS_OF_YOUR_COMPONENT_SINCE_IT_IS_CURRENTLY_DISABLED="You will have to enable Open AI in the global options of your component, since it is currently disabled."
\ No newline at end of file
diff --git a/admin/sql/updates/mysql/2.0.16.sql b/admin/sql/updates/mysql/2.0.16.sql
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/admin/sql/updates/mysql/2.0.16.sql
@@ -0,0 +1 @@
+
diff --git a/getbible.xml b/getbible.xml
index 195b845..6e61eee 100644
--- a/getbible.xml
+++ b/getbible.xml
@@ -7,9 +7,9 @@
https://getbible.netCopyright (C) 2015. All Rights ReservedGNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
- 2.0.16
+ 2.0.17Get Bible (v.2.0.16)
+
Get Bible (v.2.0.17)
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.
diff --git a/libraries/jcb_powers/VDM.Joomla.GetBible/src/Linker.php b/libraries/jcb_powers/VDM.Joomla.GetBible/src/Linker.php
index 324d9f3..9a94bed 100644
--- a/libraries/jcb_powers/VDM.Joomla.GetBible/src/Linker.php
+++ b/libraries/jcb_powers/VDM.Joomla.GetBible/src/Linker.php
@@ -376,6 +376,18 @@ final class Linker
];
}
+ // get trying attempt counter
+ $attempt = $this->session->get("getbible_attempt_{$linker}", 1);
+ if ($attempt >= 11)
+ {
+ return [
+ 'error' => Text::_('COM_GETBIBLE_YOU_HAVE_BEEN_BLOCKED_YOU_WILL_NEED_TO_WAIT_ONE_DAY_BEFORE_TRYING_AGAIN_OR_CONTACT_SUPPORT')
+ ];
+ }
+ // we log this, only 10 allowed
+ $attempt++;
+ $this->session->set("getbible_attempt_{$linker}", $attempt);
+
// get linker
if (($_linker = $this->load->item(['guid' => $linker],'linker')) !== null)
{
@@ -389,7 +401,6 @@ final class Linker
if (!empty($oldPass))
{
-
$oldPass = trim($oldPass);
if (($guid = $this->getPassGuid($linker, $oldPass)) === null)
@@ -439,6 +450,7 @@ final class Linker
// add to session
$this->session->set('getbible_active_linker_guid', $linker);
$this->session->set("getbible_active_{$linker}", 'valid_access');
+ $this->session->set("getbible_attempt_{$linker}", 1);
return (array) $_linker;
}
diff --git a/script.php b/script.php
index 49534f0..ae619da 100644
--- a/script.php
+++ b/script.php
@@ -1539,7 +1539,7 @@ class com_getbibleInstallerScript
echo '
-
Upgrade to Version 2.0.16 Was Successful! Let us know if anything is not working as expected.
';
+
Upgrade to Version 2.0.17 Was Successful! Let us know if anything is not working as expected.
';
// Set db if not set already.
if (!isset($db))
diff --git a/site/language/en-GB/en-GB.com_getbible.ini b/site/language/en-GB/en-GB.com_getbible.ini
index cb14daa..ce87a17 100644
--- a/site/language/en-GB/en-GB.com_getbible.ini
+++ b/site/language/en-GB/en-GB.com_getbible.ini
@@ -223,7 +223,7 @@ COM_GETBIBLE_TOP_P="Top P"
COM_GETBIBLE_TOTALTOKENS="TotalTokens"
COM_GETBIBLE_TO_PERFORM_THIS_OPEN_THE_GLOBAL_OPTIONS_SECTION_OF_THE_GETBIBLE_BACKEND_LOCATE_THE_GLOBAL_TAB_AND_SWITCH_SHOW_INSTALL_BUTTON_TO_NO_THIS_STEP_ENSURES_THAT_YOUR_SYSTEM_RESOURCES_ARE_NOT_UTILIZED_UNNECESSARILY_ONCE_YOU_HAVE_SUCCESSFULLY_INSTALLED_ALL_YOUR_DESIRED_BIBLE_TRANSLATIONS="To perform this, open the 'Global Options' section of the getBible backend, locate the 'Global' Tab, and switch 'Show Install Button' to [No]. This step ensures that your system resources are not utilized unnecessarily once you have successfully installed all your desired Bible translations."
COM_GETBIBLE_TO_UNTAG_A_VERSE_DRAG_AND_DROP_THE_DESIRED_TAG_FROM_ACTIVE_TO_THE_AVAILABLE_TAGS_AREA="To un-tag a verse, drag and drop the desired tag from active to the available tags area."
-COM_GETBIBLE_TO_USE_A_DIFFERENT_PERSISTENT_SESSION_KEY_SIMPLY_ADD_IT_ABOVE_AND_CLICK_LOAD="To use a different persistent session key, simply add it above, and click load."
+COM_GETBIBLE_TO_USE_A_DIFFERENT_PERSISTENT_SESSION_KEY_SIMPLY_ADD_IT_ABOVE_AND_CLICK_THE_BUTTON_BELOW_THAT_SAYS_LOAD_PREVIOUS_PERSISTENT_SESSION="To use a different persistent session key, simply add it above, and click the button below that says: Load Previous Persistent Session."
COM_GETBIBLE_TRANSLATION="Translation"
COM_GETBIBLE_TRANSLATIONS="Translations"
COM_GETBIBLE_TYPE_YOUR_SEARCH_PHRASE_INTO_THE_SEARCH_BOX_AND_PRESS_ENTER_TO_SEARCH_THE_BSCRIPTURESB_DAILY="Type your search phrase into the search box and press [ENTER] to search the Scriptures daily!"
@@ -251,6 +251,7 @@ COM_GETBIBLE_YOU_ARE_ABOUT_TO_REMOVE_THIS_TAG_ENTIRELY_THIS_PROCESS_WILL_ALSO_DI
COM_GETBIBLE_YOU_CAN_ADD_IT_HERE_TO_LOAD_YOUR_PREVIOUS_SESSION="You can add it here to load your previous session."
COM_GETBIBLE_YOU_CAN_CHANGE_YOUR_SESSION_NAME_TO_SOMETHING_MORE_RECOGNIZABLE="You can change your session name to something more recognizable."
COM_GETBIBLE_YOU_CAN_SHARE_YOUR_SESSION_WITH_LOVED_ONES_SO_THEY_CAN_SEE_YOUR_NOTES_AND_TAGS="You can share your session with loved ones so they can see your notes and tags."
+COM_GETBIBLE_YOU_HAVE_BEEN_BLOCKED_YOU_WILL_NEED_TO_WAIT_ONE_DAY_BEFORE_TRYING_AGAIN_OR_CONTACT_SUPPORT="You have been blocked, you will need to wait one day before trying again, or contact support."
COM_GETBIBLE_YOU_HAVE_ENTERED_A_VALID_SESSION_KEY="You have entered a valid session key."
COM_GETBIBLE_YOU_MUST_ADD_A_TAG_NAME="You must add a tag name."
COM_GETBIBLE_YOU_SHOULD_SELECT_ONE_OF_BYOUR_FAVOURITEB_VERSES="You should select one of your favourite verses."
diff --git a/site/views/app/tmpl/default_getbibleappactivesession.php b/site/views/app/tmpl/default_getbibleappactivesession.php
index e917af5..8549cfe 100644
--- a/site/views/app/tmpl/default_getbibleappactivesession.php
+++ b/site/views/app/tmpl/default_getbibleappactivesession.php
@@ -31,7 +31,7 @@ defined('_JEXEC') or die('Restricted access');
'getbible-settings-session-linker', 'label' => JText::_('COM_GETBIBLE_PERSISTENT_SESSION_KEY'), 'class_other' => 'getbible-linker-guid-input uk-text-center', 'value' => $this->linker['guid']]); ?>
-
+
diff --git a/update_server.xml b/update_server.xml
index 309f868..5a8c635 100644
--- a/update_server.xml
+++ b/update_server.xml
@@ -269,4 +269,22 @@
https://getbible.net
+
+ Get Bible
+ The Bible for Joomla
+ pkg_getbible
+ package
+ site
+ 2.0.17
+ https://getbible.net
+
+ https://git.vdm.dev/api/v1/repos/getBible/joomla-pkg/archive/v2.0.17.zip
+
+
+ stable
+
+ Llewellyn van der Merwe
+ https://getbible.net
+
+
\ No newline at end of file