Stable release of v2.0.13

Fix tag issues. Adds Footable to back-end. Fix chapter issue of app page. Moves translations tab.
This commit is contained in:
Robot 2023-08-04 17:13:55 +02:00
parent 1b3f535925
commit 832dab55e2
Signed by: Robot
GPG Key ID: 14DECD44E7E1BB95
58 changed files with 9410 additions and 354 deletions

View File

@ -61,4 +61,11 @@
# v2.0.12
- Fixes Links to Translations (to use their own book names)
- Fixes Links to Translations (to use their own book names)
# v2.0.13
- Fix tag issues
- Adds Footable to back-end
- Fix chapter issue of app page
- Moves translations tab

View File

@ -1,4 +1,4 @@
# Get Bible (2.0.12)
# Get Bible (2.0.13)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@ -18,8 +18,8 @@ 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*: 3rd August, 2023
+ *Version*: 2.0.12
+ *Last Build*: 4th August, 2023
+ *Version*: 2.0.13
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@ -31,9 +31,9 @@ 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*: **196041**
+ *File count*: **1702**
+ *Folder count*: **162**
+ *Line count*: **196023**
+ *File count*: **1703**
+ *Folder count*: **163**
**361 Hours** or **46 Eight Hour Days** (the actual time the author spent)

View File

@ -1,4 +1,4 @@
# Get Bible (2.0.12)
# Get Bible (2.0.13)
![Get Bible image](https://git.vdm.dev/getBible/joomla-component/raw/branch/master/admin/assets/images/vdm-component.jpg "GetBible")
@ -18,8 +18,8 @@ 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*: 3rd August, 2023
+ *Version*: 2.0.12
+ *Last Build*: 4th August, 2023
+ *Version*: 2.0.13
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@ -31,9 +31,9 @@ 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*: **196041**
+ *File count*: **1702**
+ *Folder count*: **162**
+ *Line count*: **196023**
+ *File count*: **1703**
+ *Folder count*: **163**
**361 Hours** or **46 Eight Hour Days** (the actual time the author spent)

View File

@ -793,91 +793,6 @@
<option value="secondary">
COM_GETBIBLE_CONFIG_SECONDARY</option>
</field>
<!-- Show_translations_tab_text Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_tab_text"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_TAB_TEXT_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_tab Field. Type: Text. (joomla) -->
<field
type="text"
name="translations_tab"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_LABEL"
size="10"
maxlength="250"
description="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_DESCRIPTION"
class="text_area"
filter="JComponentHelper::filterText"
message="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_MESSAGE"
hint="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_HINT"
autocomplete="on"
showon="set_default_tab_names:1[AND]show_translations_tab_text:1"
/>
<!-- Show_translations_icon Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_icon"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_ICON_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_icon Field. Type: Text. (joomla) -->
<field
type="text"
name="translations_icon"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_LABEL"
size="10"
maxlength="50"
description="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_DESCRIPTION"
class="text_area"
filter="CMD"
message="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_MESSAGE"
hint="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_HINT"
autocomplete="on"
showon="show_translations_icon:1[AND]custom_icons:1"
/>
<!-- Show_translations_card Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_card"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_CARD_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_card_style Field. Type: List. (joomla) -->
<field
type="list"
name="translations_card_style"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_CARD_STYLE_LABEL"
class="list_class"
default="default"
showon="show_translations_card:1">
<!-- Option Set. -->
<option value="default">
COM_GETBIBLE_CONFIG_DEFAULT</option>
<option value="primary">
COM_GETBIBLE_CONFIG_PRIMARY</option>
<option value="secondary">
COM_GETBIBLE_CONFIG_SECONDARY</option>
</field>
<!-- Show_books_tab_text Field. Type: Radio. (joomla) -->
<field
type="radio"
@ -1048,6 +963,91 @@
<option value="secondary">
COM_GETBIBLE_CONFIG_SECONDARY</option>
</field>
<!-- Show_translations_tab_text Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_tab_text"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_TAB_TEXT_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_tab Field. Type: Text. (joomla) -->
<field
type="text"
name="translations_tab"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_LABEL"
size="10"
maxlength="250"
description="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_DESCRIPTION"
class="text_area"
filter="JComponentHelper::filterText"
message="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_MESSAGE"
hint="COM_GETBIBLE_CONFIG_TRANSLATIONS_TAB_HINT"
autocomplete="on"
showon="set_default_tab_names:1[AND]show_translations_tab_text:1"
/>
<!-- Show_translations_icon Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_icon"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_ICON_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_icon Field. Type: Text. (joomla) -->
<field
type="text"
name="translations_icon"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_LABEL"
size="10"
maxlength="50"
description="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_DESCRIPTION"
class="text_area"
filter="CMD"
message="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_MESSAGE"
hint="COM_GETBIBLE_CONFIG_TRANSLATIONS_ICON_HINT"
autocomplete="on"
showon="show_translations_icon:1[AND]custom_icons:1"
/>
<!-- Show_translations_card Field. Type: Radio. (joomla) -->
<field
type="radio"
name="show_translations_card"
label="COM_GETBIBLE_CONFIG_SHOW_TRANSLATIONS_CARD_LABEL"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_GETBIBLE_CONFIG_YES</option>
<option value="0">
COM_GETBIBLE_CONFIG_NO</option>
</field>
<!-- Translations_card_style Field. Type: List. (joomla) -->
<field
type="list"
name="translations_card_style"
label="COM_GETBIBLE_CONFIG_TRANSLATIONS_CARD_STYLE_LABEL"
class="list_class"
default="default"
showon="show_translations_card:1">
<!-- Option Set. -->
<option value="default">
COM_GETBIBLE_CONFIG_DEFAULT</option>
<option value="primary">
COM_GETBIBLE_CONFIG_PRIMARY</option>
<option value="secondary">
COM_GETBIBLE_CONFIG_SECONDARY</option>
</field>
<!-- Show_settings Field. Type: Radio. (joomla) -->
<field
type="radio"

View File

@ -58,22 +58,22 @@ $can = GetbibleHelper::getActions('note');
</div><br /><br />
<?php endif; ?>
<?php if (GetbibleHelper::checkArray($items)): ?>
<table class="footable table data notes metro-blue" data-page-size="20" data-filter="#filter_notes">
<table class="footable table data notes" data-show-toggle="true" data-toggle-column="first" data-sorting="true" data-paging="true" data-paging-size="20" data-filtering="true">
<thead>
<tr>
<th data-toggle="true">
<th data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_NOTE_BOOK_NR_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_NOTE_LINKER_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_NOTE_ACCESS_LABEL'); ?>
</th>
<th width="10" data-hide="phone,tablet">
<th width="10" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_NOTE_STATUS'); ?>
</th>
<th width="5" data-type="numeric" data-hide="phone,tablet">
<th width="5" data-type="number" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_NOTE_ID'); ?>
</th>
</tr>
@ -103,25 +103,25 @@ $can = GetbibleHelper::getActions('note');
<?php echo JText::_($item->access); ?>
</td>
<?php if ($item->published == 1): ?>
<td class="center" data-value="1">
<td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>
</span>
</td>
<?php elseif ($item->published == 0): ?>
<td class="center" data-value="2">
<td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>">
<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>
</span>
</td>
<?php elseif ($item->published == 2): ?>
<td class="center" data-value="3">
<td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>">
<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>
</span>
</td>
<?php elseif ($item->published == -2): ?>
<td class="center" data-value="4">
<td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>
</span>
@ -133,13 +133,6 @@ $can = GetbibleHelper::getActions('note');
</tr>
<?php endforeach; ?>
</tbody>
<tfoot class="hide-if-no-paging">
<tr>
<td colspan="5">
<div class="pagination pagination-centered"></div>
</td>
</tr>
</tfoot>
</table>
<?php else: ?>
<div class="alert alert-no-items">

View File

@ -58,22 +58,22 @@ $can = GetbibleHelper::getActions('password');
</div><br /><br />
<?php endif; ?>
<?php if (GetbibleHelper::checkArray($items)): ?>
<table class="footable table data passwords metro-blue" data-page-size="20" data-filter="#filter_passwords">
<table class="footable table data passwords" data-show-toggle="true" data-toggle-column="first" data-sorting="true" data-paging="true" data-paging-size="20" data-filtering="true">
<thead>
<tr>
<th data-toggle="true">
<th data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_PASSWORD_NAME_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_PASSWORD_LINKER_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_PASSWORD_GUID_LABEL'); ?>
</th>
<th width="10" data-hide="phone,tablet">
<th width="10" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_PASSWORD_STATUS'); ?>
</th>
<th width="5" data-type="numeric" data-hide="phone,tablet">
<th width="5" data-type="number" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_PASSWORD_ID'); ?>
</th>
</tr>
@ -103,25 +103,25 @@ $can = GetbibleHelper::getActions('password');
<?php echo $displayData->escape($item->guid); ?>
</td>
<?php if ($item->published == 1): ?>
<td class="center" data-value="1">
<td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>
</span>
</td>
<?php elseif ($item->published == 0): ?>
<td class="center" data-value="2">
<td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>">
<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>
</span>
</td>
<?php elseif ($item->published == 2): ?>
<td class="center" data-value="3">
<td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>">
<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>
</span>
</td>
<?php elseif ($item->published == -2): ?>
<td class="center" data-value="4">
<td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>
</span>
@ -133,13 +133,6 @@ $can = GetbibleHelper::getActions('password');
</tr>
<?php endforeach; ?>
</tbody>
<tfoot class="hide-if-no-paging">
<tr>
<td colspan="5">
<div class="pagination pagination-centered"></div>
</td>
</tr>
</tfoot>
</table>
<?php else: ?>
<div class="alert alert-no-items">

View File

@ -58,28 +58,28 @@ $can = GetbibleHelper::getActions('tagged_verse');
</div><br /><br />
<?php endif; ?>
<?php if (GetbibleHelper::checkArray($items)): ?>
<table class="footable table data tagged_verses metro-blue" data-page-size="20" data-filter="#filter_tagged_verses">
<table class="footable table data tagged_verses" data-show-toggle="true" data-toggle-column="first" data-sorting="true" data-paging="true" data-paging-size="20" data-filtering="true">
<thead>
<tr>
<th data-toggle="true">
<th data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSES_REFERENCE'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_ABBREVIATION_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_ACCESS_LABEL'); ?>
</th>
<th data-hide="phone,tablet">
<th data-breakpoints="xs sm md" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_LINKER_LABEL'); ?>
</th>
<th data-hide="phone,tablet">
<th data-breakpoints="xs sm md" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_TAG_LABEL'); ?>
</th>
<th width="10" data-hide="phone,tablet">
<th width="10" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_STATUS'); ?>
</th>
<th width="5" data-type="numeric" data-hide="phone,tablet">
<th width="5" data-type="number" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_TAGGED_VERSE_ID'); ?>
</th>
</tr>
@ -123,25 +123,25 @@ $can = GetbibleHelper::getActions('tagged_verse');
<?php endif; ?>
</td>
<?php if ($item->published == 1): ?>
<td class="center" data-value="1">
<td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>
</span>
</td>
<?php elseif ($item->published == 0): ?>
<td class="center" data-value="2">
<td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>">
<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>
</span>
</td>
<?php elseif ($item->published == 2): ?>
<td class="center" data-value="3">
<td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>">
<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>
</span>
</td>
<?php elseif ($item->published == -2): ?>
<td class="center" data-value="4">
<td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>
</span>
@ -153,13 +153,6 @@ $can = GetbibleHelper::getActions('tagged_verse');
</tr>
<?php endforeach; ?>
</tbody>
<tfoot class="hide-if-no-paging">
<tr>
<td colspan="7">
<div class="pagination pagination-centered"></div>
</td>
</tr>
</tfoot>
</table>
<?php else: ?>
<div class="alert alert-no-items">

View File

@ -46,25 +46,25 @@ else
?>
<div class="form-vertical">
<?php if (GetbibleHelper::checkArray($items)): ?>
<table class="footable table data open_ai_messages metro-blue" data-page-size="20" data-filter="#filter_open_ai_messages">
<table class="footable table data open_ai_messages" data-show-toggle="true" data-toggle-column="first" data-sorting="true" data-paging="true" data-paging-size="20" data-filtering="true">
<thead>
<tr>
<th data-toggle="true">
<th data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_ROLE_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_OPEN_AI_RESPONSE_LABEL'); ?>
</th>
<th data-hide="phone">
<th data-breakpoints="xs sm" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_PROMPT_LABEL'); ?>
</th>
<th data-hide="phone,tablet">
<th data-breakpoints="xs sm md" data-type="html" data-sort-use="text">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_SOURCE_LABEL'); ?>
</th>
<th width="10" data-hide="phone,tablet">
<th width="10" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_STATUS'); ?>
</th>
<th width="5" data-type="numeric" data-hide="phone,tablet">
<th width="5" data-type="number" data-breakpoints="xs sm md">
<?php echo JText::_('COM_GETBIBLE_OPEN_AI_MESSAGE_ID'); ?>
</th>
</tr>
@ -101,25 +101,25 @@ else
<?php echo JText::_($item->source); ?>
</td>
<?php if ($item->published == 1): ?>
<td class="center" data-value="1">
<td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_PUBLISHED'); ?>
</span>
</td>
<?php elseif ($item->published == 0): ?>
<td class="center" data-value="2">
<td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>">
<?php echo JText::_('COM_GETBIBLE_INACTIVE'); ?>
</span>
</td>
<?php elseif ($item->published == 2): ?>
<td class="center" data-value="3">
<td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>">
<?php echo JText::_('COM_GETBIBLE_ARCHIVED'); ?>
</span>
</td>
<?php elseif ($item->published == -2): ?>
<td class="center" data-value="4">
<td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>">
<?php echo JText::_('COM_GETBIBLE_TRASHED'); ?>
</span>
@ -131,13 +131,6 @@ else
</tr>
<?php endforeach; ?>
</tbody>
<tfoot class="hide-if-no-paging">
<tr>
<td colspan="6">
<div class="pagination pagination-centered"></div>
</td>
</tr>
</tfoot>
</table>
<?php else: ?>
<div class="alert alert-no-items">

View File

@ -0,0 +1 @@

View File

@ -201,27 +201,13 @@ class GetbibleViewLinker extends HtmlView
$this->document->setTitle(JText::_($isNew ? 'COM_GETBIBLE_LINKER_NEW' : 'COM_GETBIBLE_LINKER_EDIT'));
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_getbible/assets/css/linker.css", (GetbibleHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');
// Add the CSS for Footable.
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.core.min.css', ['version' => 'auto']);
// Add the CSS for Footable
$this->document->addStyleSheet('https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css');
JHtml::_('stylesheet', 'media/com_getbible/footable-v3/css/footable.standalone.min.css', ['version' => 'auto']);
// Add the JavaScript for Footable (adding all functions)
JHtml::_('script', 'media/com_getbible/footable-v3/js/footable.min.js', ['version' => 'auto']);
// Use the Metro Style
if (!isset($this->fooTableStyle) || 0 == $this->fooTableStyle)
{
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.metro.min.css', ['version' => 'auto']);
}
// Use the Legacy Style.
elseif (isset($this->fooTableStyle) && 1 == $this->fooTableStyle)
{
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.standalone.min.css', ['version' => 'auto']);
}
// Add the JavaScript for Footable
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.sort.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.filter.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.paginate.js', ['version' => 'auto']);
$footable = "jQuery(document).ready(function() { jQuery(function () { jQuery('.footable').footable(); }); jQuery('.nav-tabs').on('click', 'li', function() { setTimeout(tableFix, 10); }); }); function tableFix() { jQuery('.footable').trigger('footable_resize'); }";
$footable = "jQuery(document).ready(function() { jQuery(function () { jQuery('.footable').footable();});});";
$this->document->addScriptDeclaration($footable);
$this->document->addScript(JURI::root() . $this->script, (GetbibleHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript');

View File

@ -200,27 +200,13 @@ class GetbibleViewOpen_ai_response extends HtmlView
$this->document->setTitle(JText::_($isNew ? 'COM_GETBIBLE_OPEN_AI_RESPONSE_NEW' : 'COM_GETBIBLE_OPEN_AI_RESPONSE_EDIT'));
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_getbible/assets/css/open_ai_response.css", (GetbibleHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');
// Add the CSS for Footable.
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.core.min.css', ['version' => 'auto']);
// Add the CSS for Footable
$this->document->addStyleSheet('https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css');
JHtml::_('stylesheet', 'media/com_getbible/footable-v3/css/footable.standalone.min.css', ['version' => 'auto']);
// Add the JavaScript for Footable (adding all functions)
JHtml::_('script', 'media/com_getbible/footable-v3/js/footable.min.js', ['version' => 'auto']);
// Use the Metro Style
if (!isset($this->fooTableStyle) || 0 == $this->fooTableStyle)
{
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.metro.min.css', ['version' => 'auto']);
}
// Use the Legacy Style.
elseif (isset($this->fooTableStyle) && 1 == $this->fooTableStyle)
{
JHtml::_('stylesheet', 'media/com_getbible/footable-v2/css/footable.standalone.min.css', ['version' => 'auto']);
}
// Add the JavaScript for Footable
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.sort.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.filter.js', ['version' => 'auto']);
JHtml::_('script', 'media/com_getbible/footable-v2/js/footable.paginate.js', ['version' => 'auto']);
$footable = "jQuery(document).ready(function() { jQuery(function () { jQuery('.footable').footable(); }); jQuery('.nav-tabs').on('click', 'li', function() { setTimeout(tableFix, 10); }); }); function tableFix() { jQuery('.footable').trigger('footable_resize'); }";
$footable = "jQuery(document).ready(function() { jQuery(function () { jQuery('.footable').footable();});});";
$this->document->addScriptDeclaration($footable);
$this->document->addScript(JURI::root() . $this->script, (GetbibleHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript');

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>3rd August, 2023</creationDate>
<creationDate>4th August, 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.12</version>
<version>2.0.13</version>
<description><![CDATA[
<h1>Get Bible (v.2.0.12)</h1>
<h1>Get Bible (v.2.0.13)</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.
@ -48,6 +48,7 @@ In essence, The Bible for Joomla is designed to transform how the Word of God is
<folder>nouislider</folder>
<folder>datatable</folder>
<folder>uikit-v3</folder>
<folder>footable-v3</folder>
</media>
<!-- Update Schema; New in Joomla 2.5 -->

View File

@ -0,0 +1,14 @@
Copyright (c) 2015 Steven Usher & Brad Vincent
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

View File

@ -0,0 +1,266 @@
/*
* FooTable v3 - FooTable is a jQuery plugin that aims to make HTML tables on smaller devices look awesome.
* @version 3.0.6
* @link http://fooplugins.com
* @copyright Steven Usher & Brad Vincent 2015
* @license Released under the GPLv3 license.
*/
table.footable,
table.footable-details {
position: relative;
width: 100%;
border-spacing: 0;
border-collapse: collapse;
}
table.footable-details {
margin-bottom: 0;
}
table > tbody > tr > td > span.footable-toggle {
margin-right: 8px;
opacity: 0.3;
}
table > tbody > tr > td > span.footable-toggle.last-column {
margin-left: 8px;
float: right;
}
table.table-condensed > tbody > tr > td > span.footable-toggle {
margin-right: 5px;
}
table.footable-details > tbody > tr > th:nth-child(1) {
min-width: 40px;
width: 120px;
}
table.footable-details > tbody > tr > td:nth-child(2) {
word-break: break-all;
}
table.footable-details > thead > tr:first-child > th,
table.footable-details > thead > tr:first-child > td,
table.footable-details > tbody > tr:first-child > th,
table.footable-details > tbody > tr:first-child > td,
table.footable-details > tfoot > tr:first-child > th,
table.footable-details > tfoot > tr:first-child > td {
border-top-width: 0;
}
table.footable-details.table-bordered > thead > tr:first-child > th,
table.footable-details.table-bordered > thead > tr:first-child > td,
table.footable-details.table-bordered > tbody > tr:first-child > th,
table.footable-details.table-bordered > tbody > tr:first-child > td,
table.footable-details.table-bordered > tfoot > tr:first-child > th,
table.footable-details.table-bordered > tfoot > tr:first-child > td {
border-top-width: 1px;
}
div.footable-loader {
vertical-align: middle;
text-align: center;
height: 300px;
position: relative;
}
div.footable-loader > span.fooicon {
display: inline-block;
opacity: 0.3;
font-size: 30px;
line-height: 32px;
width: 32px;
height: 32px;
margin-top: -16px;
margin-left: -16px;
position: absolute;
top: 50%;
left: 50%;
-webkit-animation: fooicon-spin-r 2s infinite linear;
animation: fooicon-spin-r 2s infinite linear;
}
table.footable > tbody > tr.footable-empty > td {
vertical-align: middle;
text-align: center;
font-size: 30px;
}
table.footable > tbody > tr > td,
table.footable > tbody > tr > th {
display: none;
}
table.footable > tbody > tr.footable-empty > td,
table.footable > tbody > tr.footable-empty > th,
table.footable > tbody > tr.footable-detail-row > td,
table.footable > tbody > tr.footable-detail-row > th {
display: table-cell;
}
@-webkit-keyframes fooicon-spin-r {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fooicon-spin-r {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
.fooicon {
position: relative;
top: 1px;
display: inline-block;
font-family: 'Glyphicons Halflings' !important;
font-style: normal;
font-weight: 400;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.fooicon:before,
.fooicon:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.fooicon-loader:before {
content: "\e030";
}
.fooicon-plus:before {
content: "\2b";
}
.fooicon-minus:before {
content: "\2212";
}
.fooicon-search:before {
content: "\e003";
}
.fooicon-remove:before {
content: "\e014";
}
.fooicon-sort:before {
content: "\e150";
}
.fooicon-sort-asc:before {
content: "\e155";
}
.fooicon-sort-desc:before {
content: "\e156";
}
.fooicon-pencil:before {
content: "\270f";
}
.fooicon-trash:before {
content: "\e020";
}
.fooicon-eye-close:before {
content: "\e106";
}
.fooicon-flash:before {
content: "\e162";
}
.fooicon-cog:before {
content: "\e019";
}
table.footable > thead > tr.footable-filtering > th {
border-bottom-width: 1px;
font-weight: normal;
}
table.footable > thead > tr.footable-filtering > th,
table.footable.footable-filtering-right > thead > tr.footable-filtering > th {
text-align: right;
}
table.footable.footable-filtering-left > thead > tr.footable-filtering > th {
text-align: left;
}
table.footable.footable-filtering-center > thead > tr.footable-filtering > th {
text-align: center;
}
table.footable > thead > tr.footable-filtering > th div.form-group {
margin-bottom: 0;
}
table.footable > thead > tr.footable-filtering > th div.form-group+div.form-group {
margin-top: 5px;
}
table.footable > thead > tr.footable-filtering > th div.input-group {
width: 100%;
}
table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox {
margin: 0;
display: block;
position: relative;
}
table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox > label {
display: block;
padding-left: 20px;
}
table.footable > thead > tr.footable-filtering > th ul.dropdown-menu > li > a.checkbox input[type="checkbox"] {
position: absolute;
margin-left: -20px;
}
@media (min-width: 768px) {
table.footable > thead > tr.footable-filtering > th div.input-group {
width: auto;
}
table.footable > thead > tr.footable-filtering > th div.form-group {
margin-left: 2px;
margin-right: 2px;
}
table.footable > thead > tr.footable-filtering > th div.form-group+div.form-group {
margin-top: 0;
}
}
td.footable-sortable,
th.footable-sortable {
position: relative;
padding-right: 30px;
cursor: pointer;
}
td.footable-sortable > span.fooicon,
th.footable-sortable > span.fooicon {
position: absolute;
right: 6px;
top: 50%;
margin-top: -7px;
opacity: 0;
transition: opacity 0.3s ease-in;
}
td.footable-sortable:hover > span.fooicon,
th.footable-sortable:hover > span.fooicon {
opacity: 1;
}
td.footable-sortable.footable-asc > span.fooicon,
th.footable-sortable.footable-asc > span.fooicon,
td.footable-sortable.footable-desc > span.fooicon,
th.footable-sortable.footable-desc > span.fooicon {
opacity: 1;
}
table.footable > tfoot > tr.footable-paging > td > ul.pagination {
margin: 10px 0 0 0;
}
table.footable > tfoot > tr.footable-paging > td > span.label {
display: inline-block;
margin: 0 0 10px 0;
padding: 4px 10px;
}
table.footable > tfoot > tr.footable-paging > td,
table.footable-paging-center > tfoot > tr.footable-paging > td {
text-align: center;
}
table.footable-paging-left > tfoot > tr.footable-paging > td {
text-align: left;
}
table.footable-paging-right > tfoot > tr.footable-paging > td {
text-align: right;
}
ul.pagination > li.footable-page {
display: none;
}
ul.pagination > li.footable-page.visible {
display: inline;
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,175 @@
/*
* FooTable v3 - FooTable is a jQuery plugin that aims to make HTML tables on smaller devices look awesome.
* @version 3.1.4
* @link http://fooplugins.com
* @copyright Steven Usher & Brad Vincent 2015
* @license Released under the GPLv3 license.
*/
table.footable,
table.footable-details {
position: relative;
width: 100%;
border-spacing: 0;
border-collapse: collapse;
}
table.footable-details {
margin-bottom: 0;
}
table.footable-hide-fouc {
display: none;
}
table > tbody > tr > td > span.footable-toggle {
margin-right: 8px;
opacity: 0.3;
}
table > tbody > tr > td > span.footable-toggle.last-column {
margin-left: 8px;
float: right;
}
table.table-condensed > tbody > tr > td > span.footable-toggle {
margin-right: 5px;
}
table.footable-details > tbody > tr > th:nth-child(1) {
min-width: 40px;
width: 120px;
}
table.footable-details > tbody > tr > td:nth-child(2) {
word-break: break-all;
}
table.footable-details > thead > tr:first-child > th,
table.footable-details > thead > tr:first-child > td,
table.footable-details > tbody > tr:first-child > th,
table.footable-details > tbody > tr:first-child > td,
table.footable-details > tfoot > tr:first-child > th,
table.footable-details > tfoot > tr:first-child > td {
border-top-width: 0;
}
table.footable-details.table-bordered > thead > tr:first-child > th,
table.footable-details.table-bordered > thead > tr:first-child > td,
table.footable-details.table-bordered > tbody > tr:first-child > th,
table.footable-details.table-bordered > tbody > tr:first-child > td,
table.footable-details.table-bordered > tfoot > tr:first-child > th,
table.footable-details.table-bordered > tfoot > tr:first-child > td {
border-top-width: 1px;
}
div.footable-loader {
vertical-align: middle;
text-align: center;
height: 300px;
position: relative;
}
div.footable-loader > span.fooicon {
display: inline-block;
opacity: 0.3;
font-size: 30px;
line-height: 32px;
width: 32px;
height: 32px;
margin-top: -16px;
margin-left: -16px;
position: absolute;
top: 50%;
left: 50%;
-webkit-animation: fooicon-spin-r 2s infinite linear;
animation: fooicon-spin-r 2s infinite linear;
}
table.footable > tbody > tr.footable-empty > td {
vertical-align: middle;
text-align: center;
font-size: 30px;
}
table.footable > tbody > tr > td,
table.footable > tbody > tr > th {
display: none;
}
table.footable > tbody > tr.footable-empty > td,
table.footable > tbody > tr.footable-empty > th,
table.footable > tbody > tr.footable-detail-row > td,
table.footable > tbody > tr.footable-detail-row > th {
display: table-cell;
}
@-webkit-keyframes fooicon-spin-r {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fooicon-spin-r {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
.fooicon {
position: relative;
top: 1px;
display: inline-block;
font-family: 'Glyphicons Halflings' !important;
font-style: normal;
font-weight: 400;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.fooicon:before,
.fooicon:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.fooicon-loader:before {
content: "\e030";
}
.fooicon-plus:before {
content: "\2b";
}
.fooicon-minus:before {
content: "\2212";
}
.fooicon-search:before {
content: "\e003";
}
.fooicon-remove:before {
content: "\e014";
}
.fooicon-sort:before {
content: "\e150";
}
.fooicon-sort-asc:before {
content: "\e155";
}
.fooicon-sort-desc:before {
content: "\e156";
}
.fooicon-pencil:before {
content: "\270f";
}
.fooicon-trash:before {
content: "\e020";
}
.fooicon-eye-close:before {
content: "\e106";
}
.fooicon-flash:before {
content: "\e162";
}
.fooicon-cog:before {
content: "\e019";
}
.fooicon-stats:before {
content: "\e185";
}

View File

@ -0,0 +1 @@
table.footable,table.footable-details{position:relative;width:100%;border-spacing:0;border-collapse:collapse}table.footable-details{margin-bottom:0}table.footable-hide-fouc{display:none}table>tbody>tr>td>span.footable-toggle{margin-right:8px;opacity:.3}table>tbody>tr>td>span.footable-toggle.last-column{margin-left:8px;float:right}table.table-condensed>tbody>tr>td>span.footable-toggle{margin-right:5px}table.footable-details>tbody>tr>th:nth-child(1){min-width:40px;width:120px}table.footable-details>tbody>tr>td:nth-child(2){word-break:break-all}table.footable-details>tbody>tr:first-child>td,table.footable-details>tbody>tr:first-child>th,table.footable-details>tfoot>tr:first-child>td,table.footable-details>tfoot>tr:first-child>th,table.footable-details>thead>tr:first-child>td,table.footable-details>thead>tr:first-child>th{border-top-width:0}table.footable-details.table-bordered>tbody>tr:first-child>td,table.footable-details.table-bordered>tbody>tr:first-child>th,table.footable-details.table-bordered>tfoot>tr:first-child>td,table.footable-details.table-bordered>tfoot>tr:first-child>th,table.footable-details.table-bordered>thead>tr:first-child>td,table.footable-details.table-bordered>thead>tr:first-child>th{border-top-width:1px}div.footable-loader{vertical-align:middle;text-align:center;height:300px;position:relative}div.footable-loader>span.fooicon{display:inline-block;opacity:.3;font-size:30px;line-height:32px;width:32px;height:32px;margin-top:-16px;margin-left:-16px;position:absolute;top:50%;left:50%;-webkit-animation:fooicon-spin-r 2s infinite linear;animation:fooicon-spin-r 2s infinite linear}table.footable>tbody>tr.footable-empty>td{vertical-align:middle;text-align:center;font-size:30px}table.footable>tbody>tr>td,table.footable>tbody>tr>th{display:none}table.footable>tbody>tr.footable-detail-row>td,table.footable>tbody>tr.footable-detail-row>th,table.footable>tbody>tr.footable-empty>td,table.footable>tbody>tr.footable-empty>th{display:table-cell}@-webkit-keyframes fooicon-spin-r{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fooicon-spin-r{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fooicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings'!important;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fooicon:after,.fooicon:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fooicon-loader:before{content:"\e030"}.fooicon-plus:before{content:"\2b"}.fooicon-minus:before{content:"\2212"}.fooicon-search:before{content:"\e003"}.fooicon-remove:before{content:"\e014"}.fooicon-sort:before{content:"\e150"}.fooicon-sort-asc:before{content:"\e155"}.fooicon-sort-desc:before{content:"\e156"}.fooicon-pencil:before{content:"\270f"}.fooicon-trash:before{content:"\e020"}.fooicon-eye-close:before{content:"\e106"}.fooicon-flash:before{content:"\e162"}.fooicon-cog:before{content:"\e019"}.fooicon-stats:before{content:"\e185"}

View File

@ -0,0 +1,675 @@
/*
* FooTable v3 - FooTable is a jQuery plugin that aims to make HTML tables on smaller devices look awesome.
* @version 3.1.4
* @link http://fooplugins.com
* @copyright Steven Usher & Brad Vincent 2015
* @license Released under the GPLv3 license.
*/
/* globals - instead we house them under the .footable.table class as the root of FooTable is always the table itself. */
.footable.table, .footable.table *,
.footable-details.table, .footable-details.table * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.footable.table th,
.footable-details.table th {
text-align: left;
}
/* tables */
.footable.table,
.footable-details.table {
width: 100%;
max-width: 100%;
margin-bottom: 20px;
}
.footable.table > caption + thead > tr:first-child > th,
.footable.table > colgroup + thead > tr:first-child > th,
.footable.table > thead:first-child > tr:first-child > th,
.footable.table > caption + thead > tr:first-child > td,
.footable.table > colgroup + thead > tr:first-child > td,
.footable.table > thead:first-child > tr:first-child > td,
.footable-details.table > caption + thead > tr:first-child > th,
.footable-details.table > colgroup + thead > tr:first-child > th,
.footable-details.table > thead:first-child > tr:first-child > th,
.footable-details.table > caption + thead > tr:first-child > td,
.footable-details.table > colgroup + thead > tr:first-child > td,
.footable-details.table > thead:first-child > tr:first-child > td {
border-top: 0;
}
.footable.table > thead > tr > th,
.footable.table > tbody > tr > th,
.footable.table > tfoot > tr > th,
.footable.table > thead > tr > td,
.footable.table > tbody > tr > td,
.footable.table > tfoot > tr > td,
.footable-details.table > thead > tr > th,
.footable-details.table > tbody > tr > th,
.footable-details.table > tfoot > tr > th,
.footable-details.table > thead > tr > td,
.footable-details.table > tbody > tr > td,
.footable-details.table > tfoot > tr > td {
padding: 8px;
line-height: 1.42857143;
vertical-align: top;
border-top: 1px solid #ddd;
}
.footable.table > thead > tr > th,
.footable.table > thead > tr > td,
.footable-details.table > thead > tr > th,
.footable-details.table > thead > tr > td {
vertical-align: bottom;
border-bottom: 2px solid #ddd;
}
.footable.table-condensed > thead > tr > th,
.footable.table-condensed > tbody > tr > th,
.footable.table-condensed > tfoot > tr > th,
.footable.table-condensed > thead > tr > td,
.footable.table-condensed > tbody > tr > td,
.footable.table-condensed > tfoot > tr > td,
.footable-details.table-condensed > thead > tr > th,
.footable-details.table-condensed > tbody > tr > th,
.footable-details.table-condensed > tfoot > tr > th,
.footable-details.table-condensed > thead > tr > td,
.footable-details.table-condensed > tbody > tr > td,
.footable-details.table-condensed > tfoot > tr > td {
padding: 5px;
}
.footable.table-bordered,
.footable-details.table-bordered {
border: 1px solid #ddd;
}
.footable.table-bordered > thead > tr > th,
.footable.table-bordered > tbody > tr > th,
.footable.table-bordered > tfoot > tr > th,
.footable.table-bordered > thead > tr > td,
.footable.table-bordered > tbody > tr > td,
.footable.table-bordered > tfoot > tr > td,
.footable-details.table-bordered > thead > tr > th,
.footable-details.table-bordered > tbody > tr > th,
.footable-details.table-bordered > tfoot > tr > th,
.footable-details.table-bordered > thead > tr > td,
.footable-details.table-bordered > tbody > tr > td,
.footable-details.table-bordered > tfoot > tr > td {
border: 1px solid #ddd;
}
.footable.table-bordered > thead > tr > th,
.footable.table-bordered > thead > tr > td,
.footable-details.table-bordered > thead > tr > th,
.footable-details.table-bordered > thead > tr > td {
border-bottom-width: 2px;
}
.footable.table-striped > tbody > tr:nth-child(odd),
.footable-details.table-striped > tbody > tr:nth-child(odd) {
background-color: #f9f9f9;
}
.footable.table-hover > tbody > tr:hover,
.footable-details.table-hover > tbody > tr:hover {
background-color: #f5f5f5;
}
/* buttons */
.footable .btn {
display: inline-block;
padding: 6px 12px;
margin-bottom: 0;
font-size: 14px;
font-weight: 400;
line-height: 1.42857143;
text-align: center;
white-space: nowrap;
vertical-align: middle;
-ms-touch-action: manipulation;
touch-action: manipulation;
cursor: pointer;
-webkit-appearance: button;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-image: none;
border: 1px solid transparent;
border-radius: 4px;
overflow: visible;
text-transform: none;
}
.footable .btn:hover,
.footable .btn:focus,
.footable .btn.focus {
color: #333;
text-decoration: none;
}
.footable .btn-default {
color: #333;
background-color: #fff;
border-color: #ccc;
}
.footable .btn-default:hover,
.footable .btn-default:focus,
.footable .btn-default.focus,