diff --git a/README.md b/README.md index 8b23a680..ce8b7ac4 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Sermon Distributor (1.4.1) +# Sermon Distributor (2.0.x) ![Sermon Distributor image](https://raw.githubusercontent.com/SermonDistributor/Joomla-3-Component/master/admin/assets/images/vdm-component.jpg "The Sermon Distributor") @@ -23,32 +23,32 @@ The best way to see all your options is to install this component on you Joomla + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Sermon Distributor](https://www.vdm.io/) + *First Build*: 22nd October, 2015 -+ *Last Build*: 24th August, 2017 -+ *Version*: 1.4.1 ++ *Last Build*: 3rd March, 2018 ++ *Version*: 2.0.x + *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 :hourglass: -**177 Hours** or **22 Eight Hour Days** (actual time the author saved - +**180 Hours** or **23 Eight Hour Days** (actual time the author saved - due to [Automated Component Builder](https://www.vdm.io/joomla-component-builder)) > (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*: **63481** -+ *File count*: **443** -+ *Folder count*: **90** ++ *Line count*: **64404** ++ *File count*: **451** ++ *Folder count*: **93** -**117 Hours** or **15 Eight Hour Days** (the actual time the author spent) +**118 Hours** or **14 Eight Hour Days** (the actual time the author spent) > (with the following break down: -> **debugging @44hours** = codingtime / 4; -> **planning @25hours** = codingtime / 7; +> **debugging @45hours** = codingtime / 4; +> **planning @26hours** = codingtime / 7; > **mapping @18hours** = codingtime / 10; > **office @30hours** = codingtime / 6;) -**294 Hours** or **37 Eight Hour Days** +**298 Hours** or **37 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**, @@ -63,5 +63,5 @@ Project duration: **7.4 weeks** or **1.5 months** Come on buy me a coffee :) * PayPal: [paypal.me/payvdm](https://www.paypal.me/payvdm) - * Bitcoin: 1FLxiT6wyxgZ3boeviLkYJ1DRpp41uzpxa - * Ethereum: 0x243392daa3c9c8bc841fcacf7c7f72541cb16823 \ No newline at end of file + * Bitcoin: 18vURxYpPFjvNk8BnUy1ovCAyQmY3MzkSf + * Ethereum: 0x9548144662b47327c954f3e214edb96662d51218 \ No newline at end of file diff --git a/admin/README.txt b/admin/README.txt index 8b23a680..ce8b7ac4 100644 --- a/admin/README.txt +++ b/admin/README.txt @@ -1,4 +1,4 @@ -# Sermon Distributor (1.4.1) +# Sermon Distributor (2.0.x) ![Sermon Distributor image](https://raw.githubusercontent.com/SermonDistributor/Joomla-3-Component/master/admin/assets/images/vdm-component.jpg "The Sermon Distributor") @@ -23,32 +23,32 @@ The best way to see all your options is to install this component on you Joomla + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Sermon Distributor](https://www.vdm.io/) + *First Build*: 22nd October, 2015 -+ *Last Build*: 24th August, 2017 -+ *Version*: 1.4.1 ++ *Last Build*: 3rd March, 2018 ++ *Version*: 2.0.x + *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 :hourglass: -**177 Hours** or **22 Eight Hour Days** (actual time the author saved - +**180 Hours** or **23 Eight Hour Days** (actual time the author saved - due to [Automated Component Builder](https://www.vdm.io/joomla-component-builder)) > (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*: **63481** -+ *File count*: **443** -+ *Folder count*: **90** ++ *Line count*: **64404** ++ *File count*: **451** ++ *Folder count*: **93** -**117 Hours** or **15 Eight Hour Days** (the actual time the author spent) +**118 Hours** or **14 Eight Hour Days** (the actual time the author spent) > (with the following break down: -> **debugging @44hours** = codingtime / 4; -> **planning @25hours** = codingtime / 7; +> **debugging @45hours** = codingtime / 4; +> **planning @26hours** = codingtime / 7; > **mapping @18hours** = codingtime / 10; > **office @30hours** = codingtime / 6;) -**294 Hours** or **37 Eight Hour Days** +**298 Hours** or **37 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**, @@ -63,5 +63,5 @@ Project duration: **7.4 weeks** or **1.5 months** Come on buy me a coffee :) * PayPal: [paypal.me/payvdm](https://www.paypal.me/payvdm) - * Bitcoin: 1FLxiT6wyxgZ3boeviLkYJ1DRpp41uzpxa - * Ethereum: 0x243392daa3c9c8bc841fcacf7c7f72541cb16823 \ No newline at end of file + * Bitcoin: 18vURxYpPFjvNk8BnUy1ovCAyQmY3MzkSf + * Ethereum: 0x9548144662b47327c954f3e214edb96662d51218 \ No newline at end of file diff --git a/admin/access.xml b/admin/access.xml index 84885fd5..d3788a6b 100644 --- a/admin/access.xml +++ b/admin/access.xml @@ -26,21 +26,10 @@ - - - - - - - - - - - @@ -83,6 +72,7 @@ + @@ -198,17 +188,6 @@ - - - - - - - - - - - diff --git a/admin/assets/css/admin.css b/admin/assets/css/admin.css index 2d67580b..3e417e8c 100644 --- a/admin/assets/css/admin.css +++ b/admin/assets/css/admin.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage admin.css diff --git a/admin/assets/css/dashboard.css b/admin/assets/css/dashboard.css index be0403d0..d470ff96 100644 --- a/admin/assets/css/dashboard.css +++ b/admin/assets/css/dashboard.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage dashboard.css diff --git a/admin/assets/css/external_source.css b/admin/assets/css/external_source.css index 30e31dc0..03179c51 100644 --- a/admin/assets/css/external_source.css +++ b/admin/assets/css/external_source.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_source.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/external_sources.css b/admin/assets/css/external_sources.css index 8bf259c8..556d4f4b 100644 --- a/admin/assets/css/external_sources.css +++ b/admin/assets/css/external_sources.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_sources.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/help_document.css b/admin/assets/css/help_document.css index 2942a6d1..84400872 100644 --- a/admin/assets/css/help_document.css +++ b/admin/assets/css/help_document.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_document.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/help_documents.css b/admin/assets/css/help_documents.css index 870208fa..8ad60c1a 100644 --- a/admin/assets/css/help_documents.css +++ b/admin/assets/css/help_documents.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_documents.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/local_listing.css b/admin/assets/css/local_listing.css index ce8f5a97..1bf729c0 100644 --- a/admin/assets/css/local_listing.css +++ b/admin/assets/css/local_listing.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listing.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/local_listings.css b/admin/assets/css/local_listings.css index 7a58ba17..6ab80ea4 100644 --- a/admin/assets/css/local_listings.css +++ b/admin/assets/css/local_listings.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listings.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/manual_updater.css b/admin/assets/css/manual_updater.css index 8c50b4d7..f462de51 100644 --- a/admin/assets/css/manual_updater.css +++ b/admin/assets/css/manual_updater.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 45 of this MVC - @build 7th July, 2017 - @created 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage manual_updater.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/preacher.css b/admin/assets/css/preacher.css index 7262bee3..a1fec2b7 100644 --- a/admin/assets/css/preacher.css +++ b/admin/assets/css/preacher.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preacher.css diff --git a/admin/assets/css/preachers.css b/admin/assets/css/preachers.css index a37d4bfc..3bc9ce41 100644 --- a/admin/assets/css/preachers.css +++ b/admin/assets/css/preachers.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preachers.css diff --git a/admin/assets/css/series.css b/admin/assets/css/series.css index 9eb52e0c..6c994941 100644 --- a/admin/assets/css/series.css +++ b/admin/assets/css/series.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.css diff --git a/admin/assets/css/series_list.css b/admin/assets/css/series_list.css index 4d2155f4..68dfb396 100644 --- a/admin/assets/css/series_list.css +++ b/admin/assets/css/series_list.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series_list.css diff --git a/admin/assets/css/sermon.css b/admin/assets/css/sermon.css index dc0f062e..ee5088c9 100644 --- a/admin/assets/css/sermon.css +++ b/admin/assets/css/sermon.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.css diff --git a/admin/assets/css/sermons.css b/admin/assets/css/sermons.css index dd677c29..53d6e1d3 100644 --- a/admin/assets/css/sermons.css +++ b/admin/assets/css/sermons.css @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermons.css diff --git a/admin/assets/css/statistic.css b/admin/assets/css/statistic.css index 222212ac..61b1295e 100644 --- a/admin/assets/css/statistic.css +++ b/admin/assets/css/statistic.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistic.css @author Llewellyn van der Merwe diff --git a/admin/assets/css/statistics.css b/admin/assets/css/statistics.css index 192c9997..a7206d8a 100644 --- a/admin/assets/css/statistics.css +++ b/admin/assets/css/statistics.css @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistics.css @author Llewellyn van der Merwe diff --git a/admin/assets/js/admin.js b/admin/assets/js/admin.js index e69de29b..f2ec8337 100644 --- a/admin/assets/js/admin.js +++ b/admin/assets/js/admin.js @@ -0,0 +1,25 @@ +/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/ + __ __ _ _____ _ _ __ __ _ _ _ + \ \ / / | | | __ \ | | | | | \/ | | | | | | | + \ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| | + \ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` | + \ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| | + \/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_| + | | + |_| +/-------------------------------------------------------------------------------------------------------------------------------/ + + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 + @package Sermon Distributor + @subpackage admin.js + @author Llewellyn van der Merwe + @copyright Copyright (C) 2015. All Rights Reserved + @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html + + A sermon distributor that links to Dropbox. + +/-----------------------------------------------------------------------------------------------------------------------------*/ + +/* JS Document */ diff --git a/admin/config.xml b/admin/config.xml index 1ce1d83c..cb5fea36 100644 --- a/admin/config.xml +++ b/admin/config.xml @@ -47,21 +47,22 @@ /> - - - - + + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_V2" + + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_V3" + @@ -361,1613 +375,1251 @@ name="player_custom_config" label="COM_SERMONDISTRIBUTOR_CONFIG_PLAYER"> - - - - - COM_SERMONDISTRIBUTOR_CONFIG_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_CONFIG_SOUNDMANAGER - - COM_SERMONDISTRIBUTOR_CONFIG_JPLAYER - - COM_SERMONDISTRIBUTOR_CONFIG_HTML_FIVE_BASIC - + + + + COM_SERMONDISTRIBUTOR_CONFIG_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_CONFIG_SOUNDMANAGER + COM_SERMONDISTRIBUTOR_CONFIG_JPLAYER + COM_SERMONDISTRIBUTOR_CONFIG_HTML_FIVE_BASIC + - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PANEL - - COM_SERMONDISTRIBUTOR_CONFIG_BOX - - COM_SERMONDISTRIBUTOR_CONFIG_BIG - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PANEL + COM_SERMONDISTRIBUTOR_CONFIG_BOX + COM_SERMONDISTRIBUTOR_CONFIG_BIG + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PANEL - - COM_SERMONDISTRIBUTOR_CONFIG_BOX - - COM_SERMONDISTRIBUTOR_CONFIG_SMALL - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PANEL + COM_SERMONDISTRIBUTOR_CONFIG_BOX + COM_SERMONDISTRIBUTOR_CONFIG_SMALL + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PANEL - - COM_SERMONDISTRIBUTOR_CONFIG_BOX - - COM_SERMONDISTRIBUTOR_CONFIG_SMALL - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PANEL + COM_SERMONDISTRIBUTOR_CONFIG_BOX + COM_SERMONDISTRIBUTOR_CONFIG_SMALL + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + - - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PANEL - - COM_SERMONDISTRIBUTOR_CONFIG_BOX - - COM_SERMONDISTRIBUTOR_CONFIG_SMALL - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_TABLE - - COM_SERMONDISTRIBUTOR_CONFIG_GRID - - COM_SERMONDISTRIBUTOR_CONFIG_LIST - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_PLAIN - - COM_SERMONDISTRIBUTOR_CONFIG_LINES - - COM_SERMONDISTRIBUTOR_CONFIG_STRIPED - - COM_SERMONDISTRIBUTOR_CONFIG_SPACED - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_RED - - COM_SERMONDISTRIBUTOR_CONFIG_PURPLE - - COM_SERMONDISTRIBUTOR_CONFIG_GREEN - - COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE - - COM_SERMONDISTRIBUTOR_CONFIG_LEGACY - - COM_SERMONDISTRIBUTOR_CONFIG_UIKIT - - COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM - - COM_SERMONDISTRIBUTOR_CONFIG_NONE - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - - - - - - COM_SERMONDISTRIBUTOR_CONFIG_YES - - COM_SERMONDISTRIBUTOR_CONFIG_NO - + + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PANEL + COM_SERMONDISTRIBUTOR_CONFIG_BOX + COM_SERMONDISTRIBUTOR_CONFIG_SMALL + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + + + COM_SERMONDISTRIBUTOR_CONFIG_TABLE + COM_SERMONDISTRIBUTOR_CONFIG_GRID + COM_SERMONDISTRIBUTOR_CONFIG_LIST + + + + + COM_SERMONDISTRIBUTOR_CONFIG_PLAIN + COM_SERMONDISTRIBUTOR_CONFIG_LINES + COM_SERMONDISTRIBUTOR_CONFIG_STRIPED + COM_SERMONDISTRIBUTOR_CONFIG_SPACED + + + + + COM_SERMONDISTRIBUTOR_CONFIG_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_RED + COM_SERMONDISTRIBUTOR_CONFIG_PURPLE + COM_SERMONDISTRIBUTOR_CONFIG_GREEN + COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE + COM_SERMONDISTRIBUTOR_CONFIG_LEGACY + COM_SERMONDISTRIBUTOR_CONFIG_UIKIT + COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM + COM_SERMONDISTRIBUTOR_CONFIG_NONE + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + + + + + COM_SERMONDISTRIBUTOR_CONFIG_YES + COM_SERMONDISTRIBUTOR_CONFIG_NO + input->getCmd('view', 'Sermondistributor'); @@ -48,46 +48,48 @@ class SermondistributorController extends JControllerLegacy $id = $this->input->getInt('id'); // Check for edit form. - if(SermondistributorHelper::checkArray($data)) - { - if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_sermondistributor.edit.'.$data['view'], $id)) - { - // Somehow the person just went to the form - we don't allow that. - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id)); - $this->setMessage($this->getError(), 'error'); - // check if item was opend from other then its own list view - $ref = $this->input->getCmd('ref', 0); - $refid = $this->input->getInt('refid', 0); - // set redirect - if ($refid > 0 && SermondistributorHelper::checkString($ref)) - { - // redirect to item of ref - $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false)); - } - elseif (SermondistributorHelper::checkString($ref)) - { + if(SermondistributorHelper::checkArray($data)) + { + if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_sermondistributor.edit.'.$data['view'], $id)) + { + // Somehow the person just went to the form - we don't allow that. + $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id)); + $this->setMessage($this->getError(), 'error'); + // check if item was opend from other then its own list view + $ref = $this->input->getCmd('ref', 0); + $refid = $this->input->getInt('refid', 0); + // set redirect + if ($refid > 0 && SermondistributorHelper::checkString($ref)) + { + // redirect to item of ref + $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false)); + } + elseif (SermondistributorHelper::checkString($ref)) + { - // redirect to ref - $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.(string)$ref, false)); - } - else - { - // normal redirect back to the list view - $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.$data['views'], false)); - } + // redirect to ref + $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.(string)$ref, false)); + } + else + { + // normal redirect back to the list view + $this->setRedirect(JRoute::_('index.php?option=com_sermondistributor&view='.$data['views'], false)); + } - return false; - } - } + return false; + } + } return parent::display($cachable, $urlparams); } protected function getViewRelation($view) { - if (SermondistributorHelper::checkString($view)) - { - $views = array( + // check the we have a value + if (SermondistributorHelper::checkString($view)) + { + // the view relationships + $views = array( 'preacher' => 'preachers', 'sermon' => 'sermons', 'series' => 'series_list', @@ -95,18 +97,20 @@ class SermondistributorController extends JControllerLegacy 'external_source' => 'external_sources', 'local_listing' => 'local_listings', 'help_document' => 'help_documents' - ); - // check if this is a list view - if (in_array($view,$views)) - { - return array('edit' => false, 'view' => array_search($view,$views), 'views' => $view); - } - // check if it is an edit view - elseif (array_key_exists($view,$views)) - { - return array('edit' => true, 'view' => $view, 'views' => $views[$view]); - } - } + ); + // check if this is a list view + if (in_array($view, $views)) + { + // this is a list view + return array('edit' => false, 'view' => array_search($view,$views), 'views' => $view); + } + // check if it is an edit view + elseif (array_key_exists($view, $views)) + { + // this is a edit view + return array('edit' => true, 'view' => $view, 'views' => $views[$view]); + } + } return false; } } diff --git a/admin/controllers/ajax.json.php b/admin/controllers/ajax.json.php index 61681751..2a934687 100644 --- a/admin/controllers/ajax.json.php +++ b/admin/controllers/ajax.json.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage ajax.json.php @@ -42,12 +42,12 @@ class SermondistributorControllerAjax extends JControllerLegacy JResponse::setHeader('Content-Disposition','attachment;filename="getajax.json"'); JResponse::setHeader("Access-Control-Allow-Origin", "*"); // load the tasks - $this->registerTask('theQueue', 'ajax'); - $this->registerTask('updateLocalListingExternal', 'ajax'); $this->registerTask('isNew', 'ajax'); $this->registerTask('isRead', 'ajax'); $this->registerTask('getBuildTable', 'ajax'); - $this->registerTask('getSourceStatus', 'ajax'); + $this->registerTask('getSourceStatus', 'ajax'); + $this->registerTask('getCronPath', 'ajax'); + $this->registerTask('updateLocalListingExternal', 'ajax'); } public function ajax() @@ -58,91 +58,10 @@ class SermondistributorControllerAjax extends JControllerLegacy $token = JSession::getFormToken(); $call_token = $jinput->get('token', 0, 'ALNUM'); if($token == $call_token) - { + { $task = $this->getTask(); switch($task) - { - case 'theQueue': - try - { - $returnRaw = $jinput->get('raw', false, 'BOOLEAN'); - $listValue = $jinput->get('list', NULL, 'INT'); - $tarValue = $jinput->get('tar', NULL, 'INT'); - $typeValue = $jinput->get('type', NULL, 'INT'); - if($listValue && $tarValue && $typeValue) - { - $result = $this->getModel('ajax')->theQueue($listValue, $tarValue, $typeValue); - } - else - { - $result = false; - } - if($callback = $jinput->get('callback', null, 'CMD')) - { - echo $callback . "(".json_encode($result).");"; - } - elseif($returnRaw) - { - echo json_encode($result); - } - else - { - echo "(".json_encode($result).");"; - } - } - catch(Exception $e) - { - if($callback = $jinput->get('callback', null, 'CMD')) - { - echo $callback."(".json_encode($e).");"; - } - else - { - echo "(".json_encode($e).");"; - } - } - break; - case 'updateLocalListingExternal': - try - { - $returnRaw = $jinput->get('raw', false, 'BOOLEAN'); - $idValue = $jinput->get('id', NULL, 'INT'); - $targetValue = $jinput->get('target', NULL, 'INT'); - $typeValue = $jinput->get('type', NULL, 'INT'); - $sleutelValue = $jinput->get('sleutel', NULL, 'CMD'); - if($idValue && $targetValue && $typeValue && $sleutelValue && $user->id != 0) - { - $result = $this->getModel('ajax')->updateLocalListingExternal($idValue, $targetValue, $typeValue, $sleutelValue); - } - else - { - $result = false; - } - if($callback = $jinput->get('callback', null, 'CMD')) - { - echo $callback . "(".json_encode($result).");"; - } - elseif($returnRaw) - { - echo json_encode($result); - } - else - { - echo "(".json_encode($result).");"; - } - } - catch(Exception $e) - { - if($callback = $jinput->get('callback', null, 'CMD')) - { - echo $callback."(".json_encode($e).");"; - } - else - { - echo "(".json_encode($e).");"; - } - } - break; + { case 'isNew': try { @@ -295,17 +214,96 @@ class SermondistributorControllerAjax extends JControllerLegacy echo "(".json_encode($e).");"; } } + break; + case 'getCronPath': + try + { + $returnRaw = $jinput->get('raw', false, 'BOOLEAN'); + $getTypeValue = $jinput->get('getType', NULL, 'WORD'); + if($getTypeValue && $user->id != 0) + { + $result = $this->getModel('ajax')->getCronPath($getTypeValue); + } + else + { + $result = false; + } + if($callback = $jinput->get('callback', null, 'CMD')) + { + echo $callback . "(".json_encode($result).");"; + } + elseif($returnRaw) + { + echo json_encode($result); + } + else + { + echo "(".json_encode($result).");"; + } + } + catch(Exception $e) + { + if($callback = $jinput->get('callback', null, 'CMD')) + { + echo $callback."(".json_encode($e).");"; + } + else + { + echo "(".json_encode($e).");"; + } + } + break; + case 'updateLocalListingExternal': + try + { + $returnRaw = $jinput->get('raw', false, 'BOOLEAN'); + $idValue = $jinput->get('id', NULL, 'INT'); + $targetValue = $jinput->get('target', NULL, 'INT'); + $typeValue = $jinput->get('type', NULL, 'INT'); + $sleutelValue = $jinput->get('sleutel', NULL, 'CMD'); + if($idValue && $targetValue && $typeValue && $sleutelValue && $user->id != 0) + { + $result = $this->getModel('ajax')->updateLocalListingExternal($idValue, $targetValue, $typeValue, $sleutelValue); + } + else + { + $result = false; + } + if($callback = $jinput->get('callback', null, 'CMD')) + { + echo $callback . "(".json_encode($result).");"; + } + elseif($returnRaw) + { + echo json_encode($result); + } + else + { + echo "(".json_encode($result).");"; + } + } + catch(Exception $e) + { + if($callback = $jinput->get('callback', null, 'CMD')) + { + echo $callback."(".json_encode($e).");"; + } + else + { + echo "(".json_encode($e).");"; + } + } break; } } - else - { + else + { if($callback = $jinput->get('callback', null, 'CMD')) - { + { echo $callback."(".json_encode(false).");"; } - else - { + else + { echo "(".json_encode(false).");"; } } diff --git a/admin/controllers/external_source.php b/admin/controllers/external_source.php index 0374eed4..05cf4289 100644 --- a/admin/controllers/external_source.php +++ b/admin/controllers/external_source.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_source.php @author Llewellyn van der Merwe @@ -301,10 +301,10 @@ class SermondistributorControllerExternal_source extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -416,11 +416,11 @@ class SermondistributorControllerExternal_source extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/external_sources.php b/admin/controllers/external_sources.php index 9c8d908d..0367bd24 100644 --- a/admin/controllers/external_sources.php +++ b/admin/controllers/external_sources.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_sources.php @author Llewellyn van der Merwe diff --git a/admin/controllers/help.php b/admin/controllers/help.php index baaf5d66..a2de1a55 100644 --- a/admin/controllers/help.php +++ b/admin/controllers/help.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage help.php @@ -48,7 +48,8 @@ class SermondistributorControllerHelp extends JControllerLegacy // Check Token! $token = JSession::getFormToken(); $call_token = $jinput->get('token', 0, 'ALNUM'); - if($user->id != 0 && $token == $call_token){ + if($user->id != 0 && $token == $call_token) + { $task = $this->getTask(); switch($task){ case 'getText': @@ -64,25 +65,25 @@ class SermondistributorControllerHelp extends JControllerLegacy $result = ''; } echo $result; - // stop execution gracefully - jexit(); + // stop execution gracefully + jexit(); } - catch(Exception $e) + catch(Exception $e) { - // stop execution gracefully + // stop execution gracefully jexit(); } break; } } - else - { - // stop execution gracefully + else + { + // stop execution gracefully jexit(); } } - protected function getHelpDocumentText($id) + protected function getHelpDocumentText($id) { $db = JFactory::getDbo(); $query = $db->getQuery(true); diff --git a/admin/controllers/help_document.php b/admin/controllers/help_document.php index 9d0cdb77..c0eae03b 100644 --- a/admin/controllers/help_document.php +++ b/admin/controllers/help_document.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_document.php @author Llewellyn van der Merwe @@ -159,10 +159,10 @@ class SermondistributorControllerHelp_document extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -274,11 +274,11 @@ class SermondistributorControllerHelp_document extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/help_documents.php b/admin/controllers/help_documents.php index afe647cf..8a347879 100644 --- a/admin/controllers/help_documents.php +++ b/admin/controllers/help_documents.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_documents.php @author Llewellyn van der Merwe diff --git a/admin/controllers/import.php b/admin/controllers/import.php index e3b20c47..95454eb4 100644 --- a/admin/controllers/import.php +++ b/admin/controllers/import.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage import.php diff --git a/admin/controllers/local_listing.php b/admin/controllers/local_listing.php index ecb8b437..c4e5a374 100644 --- a/admin/controllers/local_listing.php +++ b/admin/controllers/local_listing.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listing.php @author Llewellyn van der Merwe @@ -159,10 +159,10 @@ class SermondistributorControllerLocal_listing extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -274,11 +274,11 @@ class SermondistributorControllerLocal_listing extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/local_listings.php b/admin/controllers/local_listings.php index 9d1a3010..da0333ce 100644 --- a/admin/controllers/local_listings.php +++ b/admin/controllers/local_listings.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listings.php @author Llewellyn van der Merwe diff --git a/admin/controllers/manual_updater.php b/admin/controllers/manual_updater.php index 500bfd63..6652ca0e 100644 --- a/admin/controllers/manual_updater.php +++ b/admin/controllers/manual_updater.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 45 of this MVC - @build 7th July, 2017 - @created 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage manual_updater.php @author Llewellyn van der Merwe diff --git a/admin/controllers/preacher.php b/admin/controllers/preacher.php index 1a2364e0..668ba36b 100644 --- a/admin/controllers/preacher.php +++ b/admin/controllers/preacher.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preacher.php @@ -159,10 +159,10 @@ class SermondistributorControllerPreacher extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -274,11 +274,11 @@ class SermondistributorControllerPreacher extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/preachers.php b/admin/controllers/preachers.php index cf0dc14a..9c8dda59 100644 --- a/admin/controllers/preachers.php +++ b/admin/controllers/preachers.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preachers.php diff --git a/admin/controllers/series.php b/admin/controllers/series.php index 3f7022dc..5a84cb1e 100644 --- a/admin/controllers/series.php +++ b/admin/controllers/series.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.php @@ -159,10 +159,10 @@ class SermondistributorControllerSeries extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -274,11 +274,11 @@ class SermondistributorControllerSeries extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/series_list.php b/admin/controllers/series_list.php index 150ac09b..3a6c87d9 100644 --- a/admin/controllers/series_list.php +++ b/admin/controllers/series_list.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series_list.php diff --git a/admin/controllers/sermon.php b/admin/controllers/sermon.php index 1ac4ee35..2a4a769a 100644 --- a/admin/controllers/sermon.php +++ b/admin/controllers/sermon.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.php @@ -158,10 +158,10 @@ class SermondistributorControllerSermon extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -273,11 +273,11 @@ class SermondistributorControllerSermon extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/sermondistributor.php b/admin/controllers/sermondistributor.php index 7ae80a4a..7d8b2883 100644 --- a/admin/controllers/sermondistributor.php +++ b/admin/controllers/sermondistributor.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermondistributor.php diff --git a/admin/controllers/sermons.php b/admin/controllers/sermons.php index 2372a889..64c71d01 100644 --- a/admin/controllers/sermons.php +++ b/admin/controllers/sermons.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermons.php diff --git a/admin/controllers/statistic.php b/admin/controllers/statistic.php index 87c70765..a9daa81d 100644 --- a/admin/controllers/statistic.php +++ b/admin/controllers/statistic.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistic.php @author Llewellyn van der Merwe @@ -159,10 +159,10 @@ class SermondistributorControllerStatistic extends JControllerForm { $append .= '&ref='.(string)$ref.'&refid='.(int)$refid; } - elseif ($ref) - { + elseif ($ref) + { $append .= '&ref='.(string)$ref; - } + } if ($tmpl) { @@ -274,11 +274,11 @@ class SermondistributorControllerStatistic extends JControllerForm $this->ref = $this->input->get('ref', 0, 'word'); $this->refid = $this->input->get('refid', 0, 'int'); - if ($this->ref || $this->refid) - { - // to make sure the item is checkedin on redirect - $this->task = 'save'; - } + if ($this->ref || $this->refid) + { + // to make sure the item is checkedin on redirect + $this->task = 'save'; + } $saved = parent::save($key, $urlVar); diff --git a/admin/controllers/statistics.php b/admin/controllers/statistics.php index e5a8a0ff..2792ae22 100644 --- a/admin/controllers/statistics.php +++ b/admin/controllers/statistics.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistics.php @author Llewellyn van der Merwe diff --git a/admin/helpers/headercheck.php b/admin/helpers/headercheck.php index 4b35e9b0..c8bbd240 100644 --- a/admin/helpers/headercheck.php +++ b/admin/helpers/headercheck.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage headercheck.php diff --git a/admin/helpers/html/batch_.php b/admin/helpers/html/batch_.php index acb82d8c..7cc30adc 100644 --- a/admin/helpers/html/batch_.php +++ b/admin/helpers/html/batch_.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage batch_.php diff --git a/admin/helpers/sermondistributor.php b/admin/helpers/sermondistributor.php index 4cb74a00..c86691ff 100644 --- a/admin/helpers/sermondistributor.php +++ b/admin/helpers/sermondistributor.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermondistributor.php @@ -30,50 +30,23 @@ defined('_JEXEC') or die('Restricted access'); * Sermondistributor component helper. */ abstract class SermondistributorHelper -{ - - /** - * The Global Admin Event Method. - **/ - public static function globalEvent($document) - { - self::loadExternalUpdateAjax($document); - } - - /** - * Load the External Update Ajax to page - **/ - public static function loadExternalUpdateAjax($document) - { - $update = self::getNextUpdateValues(); // id, target, type - if ($update) - { - $document->addScriptDeclaration(" - jQuery(window).load(function() { - theQueue(".$update."); - }); - - function theQueue(id, target, type) { - var getUrl = '".JURI::root()."administrator/index.php?option=com_sermondistributor&task=ajax.theQueue&format=json'; - if(target > 0 && type > 0 && id > 0){ - var request = 'token=".JSession::getFormToken()."&tar='+target+'&list='+id+'&type='+type; - } - return jQuery.ajax({ - type: 'GET', - url: getUrl, - dataType: 'jsonp', - data: request, - jsonp: 'callback' - }); - }"); - } - } +{ /** * The global params **/ protected static $params = false; + /** + * Update Watcher + **/ + public static $updateWatch = 1; + + /** + * Update Watcher (if array is only one value) + **/ + public static $updateWatch_ = 0; + /** * The external source links auto **/ @@ -98,7 +71,7 @@ abstract class SermondistributorHelper * The update errors **/ protected static $updateErrors = array(); - + /** * prepare base64 string for url **/ @@ -123,7 +96,7 @@ abstract class SermondistributorHelper } return $string; } - + /** * get Download links of a sermon **/ @@ -324,14 +297,24 @@ abstract class SermondistributorHelper return true; } - protected static function getNextUpdateValues() + public static function getNextUpdateValues($asArray = false) { + // find the next value + $next = false; // get actual update values $updates = self::getExternalListingUpdateKeys(); // get last update $updatePath = self::getFilePath('path', 'updatelast', 'txt', 'vDm', JPATH_COMPONENT_ADMINISTRATOR); if (($lastUpdate = @file_get_contents($updatePath)) !== FALSE && self::checkArray($updates)) { + // is it time to watch + if (self::$updateWatch_ > 0) + { + // increment the watch, as this is the start of new round + self::$updateWatch++; + // new round has started + self::$updateWatch_ = 0; + } // now check what is next $lastKey = array_search($lastUpdate, $updates); if (!is_null($lastKey)) @@ -339,35 +322,55 @@ abstract class SermondistributorHelper $nextKey = $lastKey + 1; if (isset($updates[$nextKey])) { - self::saveFile($updates[$nextKey],$updatePath); - return $updates[$nextKey]; + $next = $updates[$nextKey]; + } + else + { + // last item in array, so next round about to start + self::$updateWatch_++; } } } // rest and start with the first key - if (self::checkArray($updates)) + if (!$next && self::checkArray($updates)) { // save the first set $start = reset($updates); - self::saveFile($start,$updatePath); - return $start; + $next = $start; } - return false; + // save to file if next is found + if ($next) + { + self::writeFile($updatePath,$next); + // convert to array of needed + if ($asArray) + { + if (strpos($next, ',') !== false) + { + $next = array_map('trim', explode(',', $next)); + } + else + { + return false; + } + } + } + return $next; } - + /** - * Get the file path or url - * - * @param string $type The (url/path) type to return - * @param string $target The Params Target name (if set) - * @param string $fileType The kind of filename to generate (if not set no file name is generated) - * @param string $key The key to adjust the filename (if not set ignored) - * @param string $default The default path if not set in Params (fallback path) - * @param bool $createIfNotSet The switch to create the folder if not found - * - * @return string On success the path or url is returned based on the type requested - * - */ + * Get the file path or url + * + * @param string $type The (url/path) type to return + * @param string $target The Params Target name (if set) + * @param string $fileType The kind of filename to generate (if not set no file name is generated) + * @param string $key The key to adjust the filename (if not set ignored) + * @param string $default The default path if not set in Params (fallback path) + * @param bool $createIfNotSet The switch to create the folder if not found + * + * @return string On success the path or url is returned based on the type requested + * + */ public static function getFilePath($type = 'path', $target = 'filepath', $fileType = null, $key = '', $default = JPATH_SITE . '/images/', $createIfNotSet = true) { // get the global settings @@ -379,7 +382,7 @@ abstract class SermondistributorHelper // check the file path (revert to default only of not a hidden file path) if ('hiddenfilepath' !== $target && strpos($filePath, JPATH_SITE) === false) { - $filePath = JPATH_SITE . '/images/'; + $filePath = $default; } jimport('joomla.filesystem.folder'); // create the folder if it does not exist @@ -389,24 +392,29 @@ abstract class SermondistributorHelper } // setup the file name $fileName = ''; + // Get basic key + $basickey = 'Th!s_iS_n0t_sAfe_buT_b3tter_then_n0thiug'; + if (method_exists(get_called_class(), "getCryptKey")) + { + $basickey = self::getCryptKey('basic', $basickey); + } + // check the key + if (!self::checkString($key)) + { + $key = 'vDm'; + } + // set the file name if (self::checkString($fileType)) { - // Get basic key - $basickey = 'Th!s_iS_n0t_sAfe_buT_b3tter_then_n0thiug'; - if (method_exists(get_called_class(), "getCryptKey")) - { - $basickey = self::getCryptKey('basic', $basickey); - } - // check the key - if (self::checkString($key)) - { - $key = 'vDm'; - } // set the name $fileName = trim(md5($type.$target.$basickey.$key) . '.' . trim($fileType, '.')); } + else + { + $fileName = trim(md5($type.$target.$basickey.$key)) . '.txt'; + } // return the url - if ($type === 'url') + if ('url' === $type) { if (strpos($filePath, JPATH_SITE) !== false) { @@ -418,18 +426,44 @@ abstract class SermondistributorHelper } // sanitize the path return '/' . trim( $filePath, '/' ) . '/' . $fileName; - } + } - protected static function saveFile($data,$path_filename) + + /** + * Write a file to the server + * + * @param string $path The path and file name where to safe the data + * @param string $data The data to safe + * + * @return bool true On success + * + */ + public static function writeFile($path, $data) { + $klaar = false; if (self::checkString($data)) { - $fp = fopen($path_filename, 'w'); - fwrite($fp, $data); - fclose($fp); - return true; + // open the file + $fh = fopen($path, "w"); + if (!is_resource($fh)) + { + return $klaar; + } + // write to the file + if (fwrite($fh, $data)) + { + // has been done + $klaar = true; + } + // close file. + fclose($fh); } - return false; + return $klaar; + } + + protected static function saveFile($data, $path_filename) + { + return self::writeFile($path_filename, $data); } public static function getExternalListingUpdateKeys($id = null, $updateMethod = 2, $returnType = 1) @@ -837,7 +871,7 @@ abstract class SermondistributorHelper } } } - + /** * Change to nice fancy date */ @@ -895,14 +929,633 @@ abstract class SermondistributorHelper && ($timestamp <= PHP_INT_MAX) && ($timestamp >= ~PHP_INT_MAX); } - + + + /** + * Workers to load tasks + * + * @var array + */ + protected static $worker = array(); + + /** + * Set a worker dynamic URLs + * + * @var array + */ + protected static $workerURL = array(); + + /** + * Set a worker dynamic HEADERs + * + * @var array + */ + protected static $workerHEADER = array(); + + /** + * Curl Error Notice + * + * @var bool + */ + protected static $curlErrorLoaded = false; + + /** + * Set a worker url + * + * @param string $function The function to target to perform the task + * @param string $url The url of where the task is to be performed + * + * @return void + * + */ + public static function setWorkerUrl(&$function, &$url) + { + // set the URL if found + if (self::checkString($url)) + { + // make sure task function url is up + self::$workerURL[$function] = $url; + } + } + + /** + * Set a worker headers + * + * @param string $function The function to target to perform the task + * @param array $headers The headers needed for these workers/function + * + * @return void + * + */ + public static function setWorkerHeaders(&$function, &$headers) + { + // set the Headers if found + if (self::checkArray($headers)) + { + // make sure task function headers are set + self::$workerHEADER[$function] = $headers; + } + } + + /** + * Set a worker that needs to perform a task + * + * @param mixed $data The data to pass to the task + * @param string $function The function to target to perform the task + * @param string $url The url of where the task is to be performed + * @param array $headers The headers needed for these workers/function + * + * @return void + * + */ + public static function setWorker($data, $function, $url = null, $headers = null) + { + // make sure task function is up + if (!isset(self::$worker[$function])) + { + self::$worker[$function] = array(); + } + // load the task + self::$worker[$function][] = self::lock($data); + // set the Headers if found + if ($headers && !isset(self::$workerHEADER[$function])) + { + self::setWorkerHeaders($function, $headers); + } + // set the URL if found + if ($url && !isset(self::$workerURL[$function])) + { + self::setWorkerUrl($function, $url); + } + } + + /** + * Run set Workers + * + * @param string $function The function to target to perform the task + * @param string $perTask The amount of task per worker + * @param function $callback The option to do a call back when task is completed + * @param int $threadSize The size of the thread + * + * @return bool true On success + * + */ + public static function runWorker($function, $perTask = 50, $callback = null, $threadSize = 20) + { + // set task + $task = self::lock($function); + // build headers + $headers = array('VDM-TASK: ' .$task); + // build dynamic headers + if (isset(self::$workerHEADER[$function]) && self::checkArray(self::$workerHEADER[$function])) + { + foreach (self::$workerHEADER[$function] as $header) + { + $headers[] = $header; + } + } + // build worker options + $options = array(); + // make sure worker is up + if (isset(self::$worker[$function]) && self::checkArray(self::$worker[$function])) + { + // this load method is for each + if (1 == $perTask) + { + // working with a string = 1 + $headers[] = 'VDM-VALUE-TYPE: ' .self::lock(1); + // now load the options + foreach (self::$worker[$function] as $data) + { + $options[] = array(CURLOPT_HTTPHEADER => $headers, CURLOPT_POST => 1, CURLOPT_POSTFIELDS => 'VDM_DATA='. $data); + } + } + // this load method is for bundles + else + { + // working with an array = 2 + $headers[] = 'VDM-VALUE-TYPE: ' .self::lock(2); + // now load the options + $work = array_chunk(self::$worker[$function], $perTask); + foreach ($work as $data) + { + $options[] = array(CURLOPT_HTTPHEADER => $headers, CURLOPT_POST => 1, CURLOPT_POSTFIELDS => 'VDM_DATA='. implode('___VDM___', $data)); + } + } + // relieve worker of task/function + self::$worker[$function] = array(); + } + // do the execution + if (self::checkArray($options)) + { + if (isset(self::$workerURL[$function])) + { + $url = self::$workerURL[$function]; + } + else + { + $url = JURI::root() . '/index.php?option=com_sermondistributor&task=api.worker'; + } + return self::curlMultiExec($url, $options, $callback, $threadSize); + } + return false; + } + + /** + * Do a multi curl execution of tasks + * + * @param string $url The url of where the task is to be performed + * @param array $_options The array of curl options/headers to set + * @param function $callback The option to do a call back when task is completed + * @param int $threadSize The size of the thread + * + * @return bool true On success + * + */ + public static function curlMultiExec(&$url, &$_options, $callback = null, $threadSize = 20) + { + // make sure we have curl available + if (!function_exists('curl_version')) + { + if (!self::$curlErrorLoaded) + { + // set the notice + JFactory::getApplication()->enqueueMessage(JText::_('COM_SERMONDISTRIBUTOR_HTWOCURL_NOT_FOUNDHTWOPPLEASE_SETUP_CURL_ON_YOUR_SYSTEM_OR_BSERMONDISTRIBUTORB_WILL_NOT_FUNCTION_CORRECTLYP'), 'Error'); + // load the notice only once + self::$curlErrorLoaded = true; + } + return false; + } + // make sure we have an url + if (self::checkString($url)) + { + // make sure the thread size isn't greater than the # of _options + $threadSize = (count($_options) < $threadSize) ? count($_options) : $threadSize; + // set the options + $options = array(); + $options[CURLOPT_URL] = $url; + $options[CURLOPT_USERAGENT] = 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12'; + $options[CURLOPT_RETURNTRANSFER] = TRUE; + $options[CURLOPT_SSL_VERIFYPEER] = FALSE; + // start multi threading :) + $handle = curl_multi_init(); + // start the first batch of requests + for ($i = 0; $i < $threadSize; $i++) + { + if (isset($_options[$i])) + { + $ch = curl_init(); + foreach ($_options[$i] as $curlopt => $string) + { + $options[$curlopt] = $string; + } + curl_setopt_array($ch, $options); + curl_multi_add_handle($handle, $ch); + } + } + // we wait for all the calls to finish (should not take long) + do { + while(($execrun = curl_multi_exec($handle, $working)) == CURLM_CALL_MULTI_PERFORM); + if($execrun != CURLM_OK) + break; + // a request was just completed -- find out which one + while($done = curl_multi_info_read($handle)) + { + if (is_callable($callback)) + { + // $info = curl_getinfo($done['handle']); + // request successful. process output using the callback function. + $output = curl_multi_getcontent($done['handle']); + $callback($output); + } + $key = $i + 1; + if(isset($_options[$key])) + { + // start a new request (it's important to do this before removing the old one) + $ch = curl_init(); $i++; + // add options + foreach ($_options[$key] as $curlopt => $string) + { + $options[$curlopt] = $string; + } + curl_setopt_array($ch, $options); + curl_multi_add_handle($handle, $ch); + // remove options again + foreach ($_options[$key] as $curlopt => $string) + { + unset($options[$curlopt]); + } + } + // remove the curl handle that just completed + curl_multi_remove_handle($handle, $done['handle']); + } + // stop wasting CPU cycles and rest for a couple ms + usleep(10000); + } while ($working); + // close the curl multi thread + curl_multi_close($handle); + // okay done + return true; + } + return false; + } + + /** + * the locker + * + * @var array + **/ + protected static $locker = array(); + + /** + * the dynamic replacement salt + * + * @var array + **/ + protected static $globalSalt = array(); + + /** + * the timer + * + * @var object + **/ + protected static $keytimer; + + /** + * To Lock string + * + * @param string $string The string/array to lock + * @param string $key The custom key to use + * @param int $salt The switch to add salt and type of salt + * @param int $dynamic The dynamic replacement array of salt build string + * @param int $urlencode The switch to control url encoding + **/ + public static function lock($string, $key = null, $salt = 2, $dynamic = null, $urlencode = true) + { + // get the global settings + if (!$key || !self::checkString($key)) + { + // set temp timer + $timer = 2; + // if we have a timer use it + if ($salt > 0) + { + $timer = $salt; + } + if (method_exists(get_called_class(), "getCryptKey")) + { + $key = self::getCryptKey('basic', self::salt($timer, $dynamic)); + } + else + { + $key = self::salt($timer, $dynamic); + } + } + // check if we have a salt timer + if ($salt > 0) + { + $key .= self::salt($salt, $dynamic); + } + // get the locker settings + if (!isset(self::$locker[$key]) || !self::checkObject(self::$locker[$key])) + { + self::$locker[$key] = new FOFEncryptAes($key, 128); + } + // convert array to string + if (self::checkArray($string)) + { + $string = serialize($string); + } + // prep for url + if ($urlencode) + { + return self::base64_urlencode(self::$locker[$key]->encryptString($string)); + } + return self::$locker[$key]->encryptString($string); + } + + /** + * To un-Lock string + * + * @param string $string The string to unlock + * @param string $key The custom key to use + * @param int $salt The switch to add salt and type of salt + * @param int $dynamic The dynamic replacement array of salt build string + * @param int $urlencode The switch to control url decoding + **/ + public static function unlock($string, $key = null, $salt = 2, $dynamic = null, $urlencode = true) + { + // get the global settings + if (!$key || !self::checkString($key)) + { + // set temp timer + $timer = 2; + // if we have a timer use it + if ($salt > 0) + { + $timer = $salt; + } + // get secure key + if (method_exists(get_called_class(), "getCryptKey")) + { + $key = self::getCryptKey('basic', self::salt($timer, $dynamic)); + } + else + { + $key = self::salt($timer, $dynamic); + } + } + // check if we have a salt timer + if ($salt > 0) + { + $key .= self::salt($salt, $dynamic); + } + // get the locker settings + if (!isset(self::$locker[$key]) || !self::checkObject(self::$locker[$key])) + { + self::$locker[$key] = new FOFEncryptAes($key, 128); + } + // make sure we have real base64 + if ($urlencode) + { + $string = self::base64_urldecode($string); + } + // basic decrypt string. + if (!empty($string) && !is_numeric($string) && $string === base64_encode(base64_decode($string, true))) + { + $string = rtrim(self::$locker[$key]->decryptString($string), "\0"); + // convert serial string to array + if (self::is_serial($string)) + { + $string = unserialize($string); + } + } + return $string; + } + + /** + * The Salt + * + * @param int $type The type of length the salt should be valid + * @param int $dynamic The dynamic replacement array of salt build string + **/ + public static function salt($type = 1, $dynamic = null) + { + // get dynamic replacement salt + $dynamic = self::getDynamicSalt($dynamic); + // get the key timer + if (!self::checkObject(self::$keytimer)) + { + // load the date time object + self::$keytimer = new DateTime; + // set the correct time stamp + $vdmLocalTime = new DateTimeZone('Africa/Windhoek'); + self::$keytimer->setTimezone($vdmLocalTime); + } + // set type + if ($type == 2) + { + // hour + $format = 'Y-m-d \o\n ' . self::periodFix(self::$keytimer->format('H')); + } + elseif ($type == 3) + { + // day + $format = 'Y-m-' . self::periodFix(self::$keytimer->format('d')); + } + elseif ($type == 4) + { + // month + $format = 'Y-' . self::periodFix(self::$keytimer->format('m')); + } + else + { + // minute + $format = 'Y-m-d \o\n H:' . self::periodFix(self::$keytimer->format('i')); + } + // get key + if (self::checkArray($dynamic)) + { + return md5(str_replace(array_keys($dynamic), array_values($dynamic), self::$keytimer->format($format) . ' @ VDM.I0')); + } + return md5(self::$keytimer->format($format) . ' @ VDM.I0'); + } + + /** + * The function to insure the salt is valid within the given period (third try) + * + * @param int $main The main number + */ + protected static function periodFix($main) + { + return round($main / 3) * 3; + } + + /** + * Check if a string is serialized + * @param string $string + */ + public static function is_serial($string) + { + return (@unserialize($string) !== false); + } + + /** + * Get dynamic replacement salt + */ + public static function getDynamicSalt($dynamic = null) + { + // load global if not manually set + if (!self::checkArray($dynamic)) + { + return self::getGlobalSalt(); + } + // return manual values if set + else + { + return $dynamic; + } + } + + /** + * The random or dynamic secret salt + */ + public static function getSecretSalt($string = null, $size = 9) + { + // set the string + if (!$string) + { + // get random string + $string = self::randomkey($size); + } + // convert string to array + $string = self::safeString($string); + // convert string to array + $array = str_split($string); + // insure only unique values are used + $array = array_unique($array); + // set the size + $size = ($size <= count($array)) ? $size : count($array); + // down size the + return array_slice($array, 0, $size); + } + + /** + * Get global replacement salt + */ + public static function getGlobalSalt() + { + // load from memory if found + if (!self::checkArray(self::$globalSalt)) + { + // get the global settings + if (!self::checkObject(self::$params)) + { + self::$params = JComponentHelper::getParams('com_sermondistributor'); + } + // check if we have a global dynamic replacement array available (format --> ' 1->!,3->E,4->A') + $tmp = self::$params->get('dynamic_salt', null); + if (self::checkString($tmp) && strpos($tmp, ',') !== false && strpos($tmp, '->') !== false) + { + $salt = array_map('trim', (array) explode(',', $tmp)); + if (self::checkArray($salt )) + { + foreach($salt as $replace) + { + $dynamic = array_map('trim', (array) explode('->', $replace)); + if (isset($dynamic[0]) && isset($dynamic[1])) + { + self::$globalSalt[$dynamic[0]] = $dynamic[1]; + } + } + } + } + } + // return global if found + if (self::checkArray(self::$globalSalt)) + { + return self::$globalSalt; + } + // return default as fail safe + return array('1' => '!', '3' => 'E', '4' => 'A'); + } + + /** + * Close public protocol + */ + public static function closePublicProtocol($id, $public) + { + // get secret salt + $secretSalt = self::getSecretSalt(self::salt(1,array('4' => 'R','1' => 'E','2' => 'G','7' => 'J','8' => 'A'))); + // get the key + $key = self::salt(1, $secretSalt); + // get secret salt + $secret = self::getSecretSalt(); + // set the secret + $close['SECRET'] = self::lock($secret, $key, 1, array('1' => 's', '3' => 'R', '4' => 'D')); + // get the key + $key = self::salt(1, $secret); + // get the public key + $close['PUBLIC'] = self::lock($public, $key, 1, array('1' => '!', '3' => 'E', '4' => 'A')); + // get secret salt + $secretSalt = self::getSecretSalt($public); + // get the key + $key = self::salt(1, $secretSalt); + // get the ID + $close['ID'] = self::unlock($id, $key, 1, array('1' => 'i', '3' => 'e', '4' => 'B')); + // return closed values + return $close; + } + + /** + * Open public protocol + */ + public static function openPublicProtocol($SECRET, $ID, $PUBLIC) + { + // get secret salt + $secretSalt = self::getSecretSalt(self::salt(1,array('4' => 'R','1' => 'E','2' => 'G','7' => 'J','8' => 'A'))); + // get the key + $key = self::salt(1, $secretSalt); + // get the $SECRET + $SECRET = self::unlock($SECRET, $key, 1, array('1' => 's', '3' => 'R', '4' => 'D')); + // get the key + $key = self::salt(1, $SECRET); + // get the public key + $open['public'] = self::unlock($PUBLIC, $key, 1, array('1' => '!', '3' => 'E', '4' => 'A')); + // get secret salt + $secretSalt = self::getSecretSalt($open['public']); + // get the key + $key = self::salt(1, $secretSalt); + // get the ID + $open['id'] = self::unlock($ID, $key, 1, array('1' => 'i', '3' => 'e', '4' => 'B')); + // return opened values + return $open; + } /** * Load the Component xml manifest. **/ - public static function manifest() + public static function manifest() { - $manifestUrl = JPATH_ADMINISTRATOR."/components/com_sermondistributor/sermondistributor.xml"; - return simplexml_load_file($manifestUrl); + $manifestUrl = JPATH_ADMINISTRATOR."/components/com_sermondistributor/sermondistributor.xml"; + return simplexml_load_file($manifestUrl); + } + + /** + * Joomla version object + **/ + protected static $JVersion; + + /** + * set/get Joomla version + **/ + public static function jVersion() + { + // check if set + if (!self::checkObject(self::$JVersion)) + { + self::$JVersion = new JVersion(); + } + return self::$JVersion; } /** @@ -917,22 +1570,22 @@ abstract class SermondistributorHelper // get all Contributors (max 20) $searchArray = range('0','20'); foreach($searchArray as $nr) - { + { if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 1 || $params->get("showContributor".$nr) == 3)) - { + { // set link based of selected option if($params->get("useContributor".$nr) == 1) - { + { $link_front = ''; $link_back = ''; } - elseif($params->get("useContributor".$nr) == 2) - { + elseif($params->get("useContributor".$nr) == 2) + { $link_front = ''; $link_back = ''; } - else - { + else + { $link_front = ''; $link_back = ''; } @@ -1020,10 +1673,10 @@ abstract class SermondistributorHelper **/ public static function addSubmenu($submenu) { - // load user for access menus - $user = JFactory::getUser(); - // load the submenus to sidebar - JHtmlSidebar::addEntry(JText::_('COM_SERMONDISTRIBUTOR_SUBMENU_DASHBOARD'), 'index.php?option=com_sermondistributor&view=sermondistributor', $submenu === 'sermondistributor'); + // load user for access menus + $user = JFactory::getUser(); + // load the submenus to sidebar + JHtmlSidebar::addEntry(JText::_('COM_SERMONDISTRIBUTOR_SUBMENU_DASHBOARD'), 'index.php?option=com_sermondistributor&view=sermondistributor', $submenu === 'sermondistributor'); if ($user->authorise('preacher.access', 'com_sermondistributor') && $user->authorise('preacher.submenu', 'com_sermondistributor')) { JHtmlSidebar::addEntry(JText::_('COM_SERMONDISTRIBUTOR_SUBMENU_PREACHERS'), 'index.php?option=com_sermondistributor&view=preachers', $submenu === 'preachers'); @@ -1430,9 +2083,9 @@ abstract class SermondistributorHelper public static function jsonToString($value, $sperator = ", ", $table = null) { - // check if string is JSON - $result = json_decode($value, true); - if (json_last_error() === JSON_ERROR_NONE) + // check if string is JSON + $result = json_decode($value, true); + if (json_last_error() === JSON_ERROR_NONE) { // is JSON if (self::checkArray($result)) @@ -1454,15 +2107,15 @@ abstract class SermondistributorHelper } return (string) implode($sperator,$result); } - return (string) json_decode($value); - } - return $value; - } + return (string) json_decode($value); + } + return $value; + } public static function isPublished($id,$type) { if ($type == 'raw') - { + { $type = 'item'; } $db = JFactory::getDbo(); @@ -1475,7 +2128,7 @@ abstract class SermondistributorHelper $db->execute(); $found = $db->getNumRows(); if($found) - { + { return true; } return false; @@ -1492,33 +2145,33 @@ abstract class SermondistributorHelper $db->execute(); $found = $db->getNumRows(); if($found) - { + { return $db->loadResult(); } return $id; } - /** + /** * Get the actions permissions **/ - public static function getActions($view,&$record = null,$views = null) + public static function getActions($view,&$record = null,$views = null) { jimport('joomla.access.access'); $user = JFactory::getUser(); $result = new JObject; $view = self::safeString($view); - if (self::checkString($views)) - { + if (self::checkString($views)) + { $views = self::safeString($views); - } + } // get all actions from component $actions = JAccess::getActions('com_sermondistributor', 'component'); - // set acctions only set in component settiongs - $componentActions = array('core.admin','core.manage','core.options','core.export'); + // set acctions only set in component settiongs + $componentActions = array('core.admin','core.manage','core.options','core.export'); // loop the actions and set the permissions foreach ($actions as $action) - { + { // set to use component default $fallback= true; if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions)) @@ -1597,17 +2250,17 @@ abstract class SermondistributorHelper } elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0) { - // make sure we use the core. action check for the categories - if (strpos($action->name,$view) !== false && strpos($action->name,'core.') === false ) { - $coreCheck = explode('.',$action->name); - $coreCheck[0] = 'core'; - $categoryCheck = implode('.',$coreCheck); - } - else - { - $categoryCheck = $action->name; - } - // The record has a category. Check the category permissions. + // make sure we use the core. action check for the categories + if (strpos($action->name,$view) !== false && strpos($action->name,'core.') === false ) { + $coreCheck = explode('.',$action->name); + $coreCheck[0] = 'core'; + $categoryCheck = implode('.',$coreCheck); + } + else + { + $categoryCheck = $action->name; + } + // The record has a category. Check the category permissions. $catpermission = $user->authorise($categoryCheck, 'com_sermondistributor.'.$views.'.category.' . (int) $record->catid); if (!$catpermission && !is_null($catpermission)) { @@ -1693,20 +2346,43 @@ abstract class SermondistributorHelper /** * Get any component's model **/ - public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $component = 'sermondistributor') + public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $component = 'Sermondistributor', $config = array()) { + // fix the name + $name = self::safeString($name); + // full path + $fullPath = $path . '/models'; + // set prefix + $prefix = $component.'Model'; // load the model file - JModelLegacy::addIncludePath( $path . '/models' ); + JModelLegacy::addIncludePath($fullPath, $prefix); // get instance - $model = JModelLegacy::getInstance( $name, $component.'Model' ); - // if model not found + $model = JModelLegacy::getInstance($name, $prefix, $config); + // if model not found (strange) if ($model == false) { - // build class name - $class = $prefix.$name; - // initilize the model - new $class(); - $model = JModelLegacy::getInstance($name, $prefix); + jimport('joomla.filesystem.file'); + // get file path + $filePath = $path.'/'.$name.'.php'; + $fullPath = $fullPath.'/'.$name.'.php'; + // check if it exists + if (JFile::exists($filePath)) + { + // get the file + require_once $filePath; + } + elseif (JFile::exists($fullPath)) + { + // get the file + require_once $fullPath; + } + // build class names + $modelClass = $prefix.$name; + if (class_exists($modelClass)) + { + // initialize the model + return new $modelClass($config); + } } return $model; } @@ -1897,6 +2573,31 @@ abstract class SermondistributorHelper } return false; } + + /** + * Check if we are connected + * Thanks https://stackoverflow.com/a/4860432/1429677 + * + * @returns bool true on success + **/ + public static function isConnected() + { + // If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right? + $connected = @fsockopen("www.example.com", 80); + // website, port (try 80 or 443) + if ($connected) + { + //action when connected + $is_conn = true; + fclose($connected); + } + else + { + //action in connection failure + $is_conn = false; + } + return $is_conn; + } public static function mergeArrays($arrays) { @@ -1963,8 +2664,8 @@ abstract class SermondistributorHelper $string = self::replaceNumbers($string); } // 0nly continue if we have a string - if (self::checkString($string)) - { + if (self::checkString($string)) + { // create file name without the extention that is safe if ($type === 'filename') { @@ -1987,12 +2688,12 @@ abstract class SermondistributorHelper $string = preg_replace("/[^A-Za-z ]/", '', $string); // select final adaptations if ($type === 'L' || $type === 'strtolower') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // default is to return lower - return strtolower($string); - } + { + // replace white space with underscore + $string = preg_replace('/\s+/', $spacer, $string); + // default is to return lower + return strtolower($string); + } elseif ($type === 'W') { // return a string with all first letter of each word uppercase(no undersocre) @@ -2013,21 +2714,21 @@ abstract class SermondistributorHelper // return a string with all the uppercase(no undersocre) return strtoupper($string); } - elseif ($type === 'U' || $type === 'strtoupper') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return all upper - return strtoupper($string); - } - elseif ($type === 'F' || $type === 'ucfirst') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return with first caracter to upper - return ucfirst(strtolower($string)); - } - elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase') + elseif ($type === 'U' || $type === 'strtoupper') + { + // replace white space with underscore + $string = preg_replace('/\s+/', $spacer, $string); + // return all upper + return strtoupper($string); + } + elseif ($type === 'F' || $type === 'ucfirst') + { + // replace white space with underscore + $string = preg_replace('/\s+/', $spacer, $string); + // return with first caracter to upper + return ucfirst(strtolower($string)); + } + elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase') { // convert all words to first letter uppercase $string = ucwords(strtolower($string)); @@ -2036,14 +2737,14 @@ abstract class SermondistributorHelper // now return first letter lowercase return lcfirst($string); } - // return string - return $string; - } - // not a string - return ''; + // return string + return $string; + } + // not a string + return ''; } - public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40) + public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40) { if (self::checkString($var)) { @@ -2054,11 +2755,11 @@ abstract class SermondistributorHelper return self::shorten($string,$length); } return $string; - } + } else { return ''; - } + } } public static function replaceNumbers($string) diff --git a/admin/language/en-GB/en-GB.com_sermondistributor.ini b/admin/language/en-GB/en-GB.com_sermondistributor.ini index f8e6e8ea..e2f02792 100644 --- a/admin/language/en-GB/en-GB.com_sermondistributor.ini +++ b/admin/language/en-GB/en-GB.com_sermondistributor.ini @@ -3,12 +3,13 @@ COM_SERMONDISTRIBUTOR_ADD_THE_STRONGAPP_GENERATED_ACCESS_TOKENSTRONG_HERE="Add t COM_SERMONDISTRIBUTOR_ADD_TOKEN_HERE="ADD TOKEN HERE!" COM_SERMONDISTRIBUTOR_ALL_IS_GOOD_PLEASE_CHECK_AGAIN_LATTER="All is good, please check again latter." COM_SERMONDISTRIBUTOR_ALWAYS_BETTER_TO_ADD_THE_FILES_TO_EXTERNAL_SOURCE_AND_LET_THE_SYSTEM_CREATE_THE_SERMON_FOR_YOU_PLEASE_READ_INSTRUCTIONS_BELOW_CAREFULLY="Always better to add the files to External Source and let the system create the sermon for you. Please read instructions below carefully." +COM_SERMONDISTRIBUTOR_ARCHIVED="Archived" COM_SERMONDISTRIBUTOR_AUTHOR="Author" COM_SERMONDISTRIBUTOR_A_FEW_CLOSED_ISSUES_FROM_GITHUB_IS_LOADING="A few closed issues from Github is loading" COM_SERMONDISTRIBUTOR_A_FEW_OPEN_ISSUES_FROM_GITHUB_IS_LOADING="A few open issues from Github is loading" COM_SERMONDISTRIBUTOR_BACK="Back" COM_SERMONDISTRIBUTOR_BCOULD_NOT_USE_THE_GIVEN_TOKEN_OR_THE_GIVEN_BUILD_OPTION_DOES_NOT_EXISTB="Could not use the given token, or the given build option does not exist." -COM_SERMONDISTRIBUTOR_BTHERE_WAS_AN_ERRORB="There was an error!" +COM_SERMONDISTRIBUTOR_BETA_RELEASE="Beta Release" COM_SERMONDISTRIBUTOR_BY_USING_AN_ACCESS_TOKEN_YOU_WILL_BE_ABLE_TO_MAKE_API_CALLS_FOR_YOUR_OWN_ACCOUNT_WITHOUT_GOING_THROUGH_THE_AUTHORIZATION_FLOW_DURING_THIS_MANUAL_UPDATE_OF_THE_LOCAL_LISTINGBR_THE_TOKEN_WILL_NOT_BE_STORED_AND_FOR_SAFETY_THE_TOKEN_WILL_BE_REVOKED_ONCE_THE_UPDATE_IS_COMPLETED_SUCCESSFULLYBR_BTHIS_WILL_MEAN_IT_CAN_ONLY_BE_USED_THIS_ONCEB_YOU_WOULD_NEED_A_NEW_TOKEN_EACH_TIME_YOU_RUN_THIS_UPDATE_MANUALLY_BR_SMALLMAKE_SURE_TO_HAVE_SSL_INPLACE_ON_THIS_PAGE_WHEN_DOING_THIS_UPDATE_AS_AN_EXTRA_SECURITY_MEASURESMALL="By using an access token, you will be able to make API calls for your own account without going through the authorization flow during this manual update of the local listing.The token will not be stored and for safety the token will be revoked once the update is completed successfully.This will mean it can only be used this once, you would need a new token each time you run this update manually. Make sure to have SSL in-place on this page when doing this update, as an extra security measure." COM_SERMONDISTRIBUTOR_CATEGORIES_ACCESS_SITE="Categories (Site) Access" COM_SERMONDISTRIBUTOR_CATEGORIES_ACCESS_SITE_DESC=" Allows the users in this group to access site categories." @@ -16,6 +17,7 @@ COM_SERMONDISTRIBUTOR_CATEGORY_ACCESS_SITE="Category (Site) Access" COM_SERMONDISTRIBUTOR_CATEGORY_ACCESS_SITE_DESC=" Allows the users in this group to access site category." COM_SERMONDISTRIBUTOR_CLEARING_LOCAL_LISTING_CAN_NOT_BE_DONE="Clearing local listing can not be done." COM_SERMONDISTRIBUTOR_CLEAR_LOCAL_LISTING="Clear Local Listing" +COM_SERMONDISTRIBUTOR_CLOSE_NEW="Close & New" COM_SERMONDISTRIBUTOR_CONFIG_ADD_TO_BUTTON_DESCRIPTION="Allow add to external source button to show, this will expose the external source links." COM_SERMONDISTRIBUTOR_CONFIG_ADD_TO_BUTTON_LABEL="External Source Button" COM_SERMONDISTRIBUTOR_CONFIG_ALMOST_FLAT_LOAD="Almost Flat" @@ -124,7 +126,7 @@ COM_SERMONDISTRIBUTOR_CONFIG_CONTRIBUTOR_USE_WWW="Website" COM_SERMONDISTRIBUTOR_CONFIG_CUSTOM="Custom" COM_SERMONDISTRIBUTOR_CONFIG_DARK_BLUE="Dark Blue" COM_SERMONDISTRIBUTOR_CONFIG_DONT_LOAD="Not" -COM_SERMONDISTRIBUTOR_CONFIG_ENCRYPTION_DESC="The encription key for the field encryption is set here." +COM_SERMONDISTRIBUTOR_CONFIG_ENCRYPTION_DESC="The encryption key for the field encryption is set here." COM_SERMONDISTRIBUTOR_CONFIG_ENCRYPTION_LABEL="Encryption Settings" COM_SERMONDISTRIBUTOR_CONFIG_FLAT_LOAD="Flat" COM_SERMONDISTRIBUTOR_CONFIG_FORCE_LOAD="Force" @@ -155,6 +157,7 @@ COM_SERMONDISTRIBUTOR_CONFIG_LIST_SERIES_TABLE_COLOR_LABEL="Table Color" COM_SERMONDISTRIBUTOR_CONFIG_LOCALFOLDER_DESCRIPTION="Enter the full path to the local folder where your files are found." COM_SERMONDISTRIBUTOR_CONFIG_LOCALFOLDER_HINT="/home/username/localfolder/" COM_SERMONDISTRIBUTOR_CONFIG_LOCALFOLDER_LABEL="Local Folder Path (File Source)" +COM_SERMONDISTRIBUTOR_CONFIG_LOCALFOLDER_MESSAGE="Error! Please add path to local folder here." COM_SERMONDISTRIBUTOR_CONFIG_MAX_EXECUTION_TIME_DESCRIPTION="Set in minutes the max execution time of the PHP script during updating to local listing." COM_SERMONDISTRIBUTOR_CONFIG_MAX_EXECUTION_TIME_LABEL="Max Execution Time" COM_SERMONDISTRIBUTOR_CONFIG_NO="No" @@ -312,14 +315,18 @@ COM_SERMONDISTRIBUTOR_CONFIG_STRIPED="Striped" COM_SERMONDISTRIBUTOR_CONFIG_TABLE="Table" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT="Uikit" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_DESC="The Parameters for the uikit are set here.Uikit is a lightweight and modular front-end framework -for developing fast and powerful web interfaces. For more info visit http://getuikit.com/" -COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_LABEL="Uikit Settings" +for developing fast and powerful web interfaces. For more info visit version 2 or version 3" +COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_LABEL="Uikit2 and Uikit3 Settings" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_LOAD_DESC="Set the uikit loading option." COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_LOAD_LABEL="Loading Options" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_MIN_DESC="Should the minified version of uikit files be loaded?" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_MIN_LABEL="Load Minified" COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_STYLE_DESC="Set the css style that should be used." COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_STYLE_LABEL="css Style" +COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_V2="Version 2" +COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_V3="Version 3" +COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_VERSION_DESC="Select what version you would like to use" +COM_SERMONDISTRIBUTOR_CONFIG_UIKIT_VERSION_LABEL="Uikit Versions" COM_SERMONDISTRIBUTOR_CONFIG_YES="Yes" COM_SERMONDISTRIBUTOR_CONTRIBUTOR="Contributor" COM_SERMONDISTRIBUTOR_CONTRIBUTORS="Contributors" @@ -369,37 +376,15 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DASHBOARD_LIST_DESC="Allows the users in COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DELETE="External Sources Delete" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DELETE_DESC="Allows the users in this group to delete delete external sources" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT="External Sources Edit" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_BUILD="External Sources Edit Build" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_BUILD_DESC="Allows the users in this group to update the edit build of the external source" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_BY="External Sources Edit Created By" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by external sources" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_DATE="External Sources Edit Created Date" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created external sources" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DESC="Allows the users in this group to edit the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DESCRIPTION="External Sources Edit Description" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DESCRIPTION_DESC="Allows the users in this group to update the edit description of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DROPBOXOPTIONS="External Sources Edit Dropboxoptions" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DROPBOXOPTIONS_DESC="Allows the users in this group to update the edit dropboxoptions of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_EXTERNALSOURCES="External Sources Edit Externalsources" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_EXTERNALSOURCES_DESC="Allows the users in this group to update the edit externalsources of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_FILETYPES="External Sources Edit Filetypes" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_FILETYPES_DESC="Allows the users in this group to update the edit filetypes of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_FOLDER="External Sources Edit Folder" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_FOLDER_DESC="Allows the users in this group to update the edit folder of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OAUTHTOKEN="External Sources Edit Oauthtoken" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OAUTHTOKEN_DESC="Allows the users in this group to update the edit oauthtoken of the external source" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OWN="External Sources Edit Own" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OWN_DESC="Allows the users in this group to edit edit own external sources created by them" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_PERMISSIONTYPE="External Sources Edit Permissiontype" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_PERMISSIONTYPE_DESC="Allows the users in this group to update the edit permissiontype of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_SHAREDURL="External Sources Edit Sharedurl" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_SHAREDURL_DESC="Allows the users in this group to update the edit sharedurl of the external source" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_STATE="External Sources Edit State" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_STATE_DESC="Allows the users in this group to update the state of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_UPDATE_METHOD="External Sources Edit Update Method" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_UPDATE_METHOD_DESC="Allows the users in this group to update the edit update method of the external source" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_UPDATE_TIMER="External Sources Edit Update Timer" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_UPDATE_TIMER_DESC="Allows the users in this group to update the edit update timer of the external source" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_VERSION="External Sources Edit Version" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version external sources" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EXPORT="External Sources Export" @@ -425,8 +410,61 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_N_ITEMS_UNPUBLISHED="%s External Sources COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_N_ITEMS_UNPUBLISHED_1="%s External Source unpublished." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_SUBMENU="External Sources Submenu" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_SUBMENU_DESC="Allows the users in this group to update the submenu of the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APICRONJOB_NOTE_DESCRIPTION="You must setup a cronjob that will update your local listing with the external sources.USE THE FOLLOWING: loading...Please note that if your Joomla website has a Firewall installed, it will not allow cronjob via direct URL (most of the time), you will then need to adapt the cornjob request to look like a browser. For more info please read https://stackoverflow.com/a/31597823/1429677 +" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APICRONJOB_NOTE_LABEL="API CronJob" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APP_FOLDER="App folder" -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APP_LIMITATION_NOTE_DESCRIPTION="Please Note: There is a limitation of 500 files per app/folder" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APP_LIMITATION_NOTE_DESCRIPTION="Please Note: There is a limitation of 3000 files per app/folder" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AUTOMATIC="Automatic" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AVI=".avi" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_BUILD="Build" @@ -443,6 +481,7 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DESCRIPTION="Description" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DESCRIPTION_DESCRIPTION="Enter some description" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DESCRIPTION_HINT="Description Here" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DESCRIPTION_LABEL="Description" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DESCRIPTION_MESSAGE="Error! Please add description here." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DETAILS="Details" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOC=".doc" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOCX=".docx" @@ -461,7 +500,7 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FILETYPES_DESCRIPTION="Select the file typ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FILETYPES_LABEL="File Types" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER="Folder" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_DESCRIPTION="Enter the folders to target. The folders must be in the account where you generated the access token." -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_LABEL="Target FoldersPlease note: limitation of 500 files per/folder" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_LABEL="Target FoldersPlease note: limitation of 3000 files per/folder" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_PATH="Folder Path" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_SELECT="Add/Remove" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FULL_DROPBOX="Full Dropbox" @@ -568,6 +607,7 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OAUTHTOKEN="Oauthtoken" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OAUTHTOKEN_DESCRIPTION="By using an access token, the system will be able to make automatic API calls to your app without going through the authorization flow.This field is being kept encrypted in the database. Yet Joomla back-end must be access with SSL in-place when saving this page. This will help avoid a man in the middle attach on your access token." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OAUTHTOKEN_HINT="oauthtoken here" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OAUTHTOKEN_LABEL="App Generated access token (Encrypted Field)" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OAUTHTOKEN_MESSAGE="Error! Please add generated access token here." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_ODT=".odt" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGG=".ogg" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGV=".ogv" @@ -590,18 +630,20 @@ COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SAVE_WARNING="Alias already existed so a n COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SELECT_AN_OPTION="Select an option" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHAREDURL="Sharedurl" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHAREDURL_DESCRIPTION="Enter the shared-urls of the main folders to target. The shared-urls must be from the account where you generated the access token." -COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHAREDURL_LABEL="Target Shared-urlsPlease note: limitation of 500 files per/shared-url" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHAREDURL_LABEL="Target Shared-urlsPlease note: limitation of 3000 files per/shared-url" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHAREDURL_SELECT="Add/Remove" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHARED_URL="Shared URL" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_STATUS="Status" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TFOLDER_DESCRIPTION="Enter the folder to target. The folder must be in the account where you generated the access token." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TFOLDER_HINT="any/folder/in/your/Dropbox" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TFOLDER_LABEL="Folder" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TFOLDER_MESSAGE="Error! Please add folder here." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGP=".3gp" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGTWO=".3g2" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TSHAREDURL_DESCRIPTION="Enter the shared-url of the main folder to target. The shared-url must be from the account where you generated the access token." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TSHAREDURL_HINT="https://www.dropbox.com/shared-link-from-dropbox-to-main-folder?dl=0" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TSHAREDURL_LABEL="Shared-url" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_TSHAREDURL_MESSAGE="Error! Please add shared-url here." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_UPDATE_METHOD="Update Method" COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_UPDATE_METHOD_DESCRIPTION="Select the method we should use when updating the links." COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_UPDATE_METHOD_LABEL="Update Method" @@ -712,6 +754,7 @@ COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TITLE="Title" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TITLE_DESCRIPTION="Enter Title Here" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TITLE_HINT="Title Here" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TITLE_LABEL="Title" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TITLE_MESSAGE="Error! Please add title here." COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TYPE="Type" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TYPE_DESCRIPTION="Select the help type." COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TYPE_LABEL="Type" @@ -719,9 +762,11 @@ COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL="Url" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL_DESCRIPTION="Enter url" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL_HINT="http://www.example.com" COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL_LABEL="URL" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL_MESSAGE="Error! Please add url here." COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_VERSION_DESC="A count of the number of times this Help Document has been revised." COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_VERSION_LABEL="Revision" COM_SERMONDISTRIBUTOR_HELP_MANAGER="Help" +COM_SERMONDISTRIBUTOR_HTWOCURL_NOT_FOUNDHTWOPPLEASE_SETUP_CURL_ON_YOUR_SYSTEM_OR_BSERMONDISTRIBUTORB_WILL_NOT_FUNCTION_CORRECTLYP="Curl Not Found!Please setup curl on your system, or sermondistributor will not function correctly!" COM_SERMONDISTRIBUTOR_IMPORT_CONTINUE="Continue" COM_SERMONDISTRIBUTOR_IMPORT_DATA="Import Data" COM_SERMONDISTRIBUTOR_IMPORT_DATA_DESC=" Allows users in this group to import data." @@ -764,6 +809,7 @@ COM_SERMONDISTRIBUTOR_IMPORT_TITLE="Data Importer" COM_SERMONDISTRIBUTOR_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE="Package to import not found." COM_SERMONDISTRIBUTOR_IMPORT_UPDATE_DATA="Import Data" COM_SERMONDISTRIBUTOR_IMPORT_UPLOAD_BOTTON="Upload File" +COM_SERMONDISTRIBUTOR_INACTIVE="Inactive" COM_SERMONDISTRIBUTOR_ISSUE="issue" COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_ACCESS="- Keep Original Access -" COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_CATEGORY="- Keep Original Category -" @@ -853,6 +899,7 @@ COM_SERMONDISTRIBUTOR_LOCAL_LISTING_KEY="Key" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_KEY_DESCRIPTION="This key will be used for this local listing." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_KEY_HINT="Listing Key" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_KEY_LABEL="Listing Key" +COM_SERMONDISTRIBUTOR_LOCAL_LISTING_KEY_MESSAGE="Error! Please add key here." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_MANUAL_LOCAL_SELECTION="Manual Local Selection" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_MODIFIED_BY_DESC="The last user that modified this Local Listing." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_MODIFIED_BY_LABEL="Modified By" @@ -862,6 +909,7 @@ COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NAME="Name" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NAME_DESCRIPTION="This is the file name." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NAME_HINT="file name" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NAME_LABEL="File Name" +COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NAME_MESSAGE="Error! Please add file name here." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_NEW="A New Local Listing" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_ORDERING_LABEL="Ordering" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_PERMISSION="Permissions" @@ -872,11 +920,13 @@ COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SIZE="Size" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SIZE_DESCRIPTION="This is the file size." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SIZE_HINT="file size" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SIZE_LABEL="File Size" +COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SIZE_MESSAGE="Error! Please add file size here." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_STATUS="Status" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_URL="Url" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_URL_DESCRIPTION="This is the shared URL." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_URL_HINT="shared URL" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_URL_LABEL="Shared-URL" +COM_SERMONDISTRIBUTOR_LOCAL_LISTING_URL_MESSAGE="Error! Please add shared-URL here." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_VERSION_DESC="A count of the number of times this Local Listing has been revised." COM_SERMONDISTRIBUTOR_LOCAL_LISTING_VERSION_LABEL="Revision" COM_SERMONDISTRIBUTOR_LOCAL_LISTING_WAS_CLEARED_SUCCESSFULLY="Local listing was cleared successfully." @@ -894,8 +944,10 @@ COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_SUBMENU_DESC="Allows the users in this grou COM_SERMONDISTRIBUTOR_NEW="New" COM_SERMONDISTRIBUTOR_NEW_ISSUE="New Issue" COM_SERMONDISTRIBUTOR_NOTICE="Notice!" -COM_SERMONDISTRIBUTOR_NOT_FOUND_OR_ACCESS_DENIED="Not found, or access denied." +COM_SERMONDISTRIBUTOR_NOT_FOUND_OR_ACCESS_DENIED="Not found or access denied!" COM_SERMONDISTRIBUTOR_NO_ACCESS_GRANTED="No Access Granted!" +COM_SERMONDISTRIBUTOR_NO_CRONJOB_PATH_FOUND_FOR_S="No cronjob path found for (%s)" +COM_SERMONDISTRIBUTOR_NO_CRONJOB_PATH_FOUND_SINCE_INCORRECT_TYPE_REQUESTED="No cronjob path found since incorrect type requested." COM_SERMONDISTRIBUTOR_NO_FILES_LINKED_YET="No Files Linked Yet" COM_SERMONDISTRIBUTOR_NO_ID_FOUND_CAN_NOT_RESET_THE_UPDATE_STATUS="No id found, can not reset the update status!" COM_SERMONDISTRIBUTOR_NO_MANUAL_UPDATES_AVAILABLE="No Manual Updates Available" @@ -912,6 +964,8 @@ COM_SERMONDISTRIBUTOR_PREACHER="Preacher" COM_SERMONDISTRIBUTOR_PREACHERS="Preachers" COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS="Preachers Access" COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_DESC="Allows the users in this group to access access preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_SITE="Preachers (Site) Access" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_SITE_DESC=" Allows the users in this group to access site preachers." COM_SERMONDISTRIBUTOR_PREACHERS_BATCH_OPTIONS="Batch process the selected Preachers" COM_SERMONDISTRIBUTOR_PREACHERS_BATCH_TIP="All changes will be applied to all selected Preachers" COM_SERMONDISTRIBUTOR_PREACHERS_BATCH_USE="Preachers Batch Use" @@ -976,6 +1030,7 @@ COM_SERMONDISTRIBUTOR_PREACHER_EMAIL="Email" COM_SERMONDISTRIBUTOR_PREACHER_EMAIL_DESCRIPTION="Enter Email" COM_SERMONDISTRIBUTOR_PREACHER_EMAIL_HINT="demo@example.com" COM_SERMONDISTRIBUTOR_PREACHER_EMAIL_LABEL="Email" +COM_SERMONDISTRIBUTOR_PREACHER_EMAIL_MESSAGE="Error! Please add email address here." COM_SERMONDISTRIBUTOR_PREACHER_ERROR_UNIQUE_ALIAS="Another Preacher has the same alias." COM_SERMONDISTRIBUTOR_PREACHER_ICON="Icon" COM_SERMONDISTRIBUTOR_PREACHER_ICON_DESCRIPTION="Must be 358px x 358px" @@ -989,6 +1044,7 @@ COM_SERMONDISTRIBUTOR_PREACHER_NAME="Name" COM_SERMONDISTRIBUTOR_PREACHER_NAME_DESCRIPTION="Enter Name Here" COM_SERMONDISTRIBUTOR_PREACHER_NAME_HINT="Name Here" COM_SERMONDISTRIBUTOR_PREACHER_NAME_LABEL="Name" +COM_SERMONDISTRIBUTOR_PREACHER_NAME_MESSAGE="Error! Please add name here." COM_SERMONDISTRIBUTOR_PREACHER_NEW="A New Preacher" COM_SERMONDISTRIBUTOR_PREACHER_ORDERING_LABEL="Ordering" COM_SERMONDISTRIBUTOR_PREACHER_PERMISSION="Permissions" @@ -1002,6 +1058,8 @@ COM_SERMONDISTRIBUTOR_PREACHER_WEBSITE="Website" COM_SERMONDISTRIBUTOR_PREACHER_WEBSITE_DESCRIPTION="Enter website address" COM_SERMONDISTRIBUTOR_PREACHER_WEBSITE_HINT="http://www.example.com" COM_SERMONDISTRIBUTOR_PREACHER_WEBSITE_LABEL="Website" +COM_SERMONDISTRIBUTOR_PREACHER_WEBSITE_MESSAGE="Error! Please add website here." +COM_SERMONDISTRIBUTOR_PUBLISHED="Published" COM_SERMONDISTRIBUTOR_RELEASED_THIS="released this" COM_SERMONDISTRIBUTOR_RESETTING_THE_UPDATE_STATUS_WAS_SUCCESSFUL="Resetting the update status was successful!" COM_SERMONDISTRIBUTOR_RESET_UPDATE_STATUS="Reset Update Status" @@ -1089,6 +1147,7 @@ COM_SERMONDISTRIBUTOR_SERIES_NAME="Name" COM_SERMONDISTRIBUTOR_SERIES_NAME_DESCRIPTION="Enter Name Here" COM_SERMONDISTRIBUTOR_SERIES_NAME_HINT="Name Here" COM_SERMONDISTRIBUTOR_SERIES_NAME_LABEL="Name" +COM_SERMONDISTRIBUTOR_SERIES_NAME_MESSAGE="Error! Please add name here." COM_SERMONDISTRIBUTOR_SERIES_NEW="A New Series" COM_SERMONDISTRIBUTOR_SERIES_ORDERING_LABEL="Ordering" COM_SERMONDISTRIBUTOR_SERIES_PERMISSION="Permissions" @@ -1098,6 +1157,7 @@ COM_SERMONDISTRIBUTOR_SERIES_SCRIPTURE="Scripture" COM_SERMONDISTRIBUTOR_SERIES_SCRIPTURE_DESCRIPTION="Add scripture reference to this sermon, use comma separation for multiply references." COM_SERMONDISTRIBUTOR_SERIES_SCRIPTURE_HINT="1 John 3:16, Psalm 1, James 1:1-5" COM_SERMONDISTRIBUTOR_SERIES_SCRIPTURE_LABEL="Scripture" +COM_SERMONDISTRIBUTOR_SERIES_SCRIPTURE_MESSAGE="Error! Please add some scripture reference here." COM_SERMONDISTRIBUTOR_SERIES_SERMONS="Sermons" COM_SERMONDISTRIBUTOR_SERIES_STATUS="Status" COM_SERMONDISTRIBUTOR_SERIES_VERSION_DESC="A count of the number of times this Series has been revised." @@ -1201,6 +1261,7 @@ COM_SERMONDISTRIBUTOR_SERMON_NAME="Name" COM_SERMONDISTRIBUTOR_SERMON_NAME_DESCRIPTION="Enter Name Here" COM_SERMONDISTRIBUTOR_SERMON_NAME_HINT="Name Here" COM_SERMONDISTRIBUTOR_SERMON_NAME_LABEL="Name" +COM_SERMONDISTRIBUTOR_SERMON_NAME_MESSAGE="Error! Please add name here." COM_SERMONDISTRIBUTOR_SERMON_NEW="A New Sermon" COM_SERMONDISTRIBUTOR_SERMON_NOTE_AUTO_EXTERNALSOURCE_DESCRIPTION="To integrate auto External Source with your system you need to do the following: Create main/first auto folder in External Source. This will be where you create the folders with the preacher's name. Using the preacher's alias from the system as the folder name will insure no mismatch, if the preacher already exist on the system. @@ -1298,6 +1359,7 @@ COM_SERMONDISTRIBUTOR_SERMON_SCRIPTURE="Scripture" COM_SERMONDISTRIBUTOR_SERMON_SCRIPTURE_DESCRIPTION="Add scripture reference to this sermon, use comma separation for multiply references." COM_SERMONDISTRIBUTOR_SERMON_SCRIPTURE_HINT="1 John 3:16, Psalm 1, James 1:1-5" COM_SERMONDISTRIBUTOR_SERMON_SCRIPTURE_LABEL="Scripture" +COM_SERMONDISTRIBUTOR_SERMON_SCRIPTURE_MESSAGE="Error! Please add some scripture reference here." COM_SERMONDISTRIBUTOR_SERMON_SELECT_AN_OPTION="Select an option" COM_SERMONDISTRIBUTOR_SERMON_SELECT_SOURCE="Select Source" COM_SERMONDISTRIBUTOR_SERMON_SERIES="Series" @@ -1308,6 +1370,7 @@ COM_SERMONDISTRIBUTOR_SERMON_SHORT_DESCRIPTION="Short Description" COM_SERMONDISTRIBUTOR_SERMON_SHORT_DESCRIPTION_DESCRIPTION="Enter short description" COM_SERMONDISTRIBUTOR_SERMON_SHORT_DESCRIPTION_HINT="Your Short Description Here" COM_SERMONDISTRIBUTOR_SERMON_SHORT_DESCRIPTION_LABEL="Short Description" +COM_SERMONDISTRIBUTOR_SERMON_SHORT_DESCRIPTION_MESSAGE="Error! Please add some short description here." COM_SERMONDISTRIBUTOR_SERMON_SOURCE="Source" COM_SERMONDISTRIBUTOR_SERMON_SOURCE_DESCRIPTION="Select the source of the file." COM_SERMONDISTRIBUTOR_SERMON_SOURCE_LABEL="File Source" @@ -1320,6 +1383,7 @@ COM_SERMONDISTRIBUTOR_SERMON_URL="Url" COM_SERMONDISTRIBUTOR_SERMON_URL_DESCRIPTION="The url to download the sermon." COM_SERMONDISTRIBUTOR_SERMON_URL_HINT="http://www.domain.com/direct-link-to-download.mp3" COM_SERMONDISTRIBUTOR_SERMON_URL_LABEL="File URL" +COM_SERMONDISTRIBUTOR_SERMON_URL_MESSAGE="Error! Please add sermon url here." COM_SERMONDISTRIBUTOR_SERMON_VERSION_DESC="A count of the number of times this Sermon has been revised." COM_SERMONDISTRIBUTOR_SERMON_VERSION_LABEL="Revision" COM_SERMONDISTRIBUTOR_SHAREDURL="Shared-url" @@ -1377,6 +1441,7 @@ COM_SERMONDISTRIBUTOR_STATISTIC_COUNTER="Counter" COM_SERMONDISTRIBUTOR_STATISTIC_COUNTER_DESCRIPTION="Enter number." COM_SERMONDISTRIBUTOR_STATISTIC_COUNTER_HINT="Number Here." COM_SERMONDISTRIBUTOR_STATISTIC_COUNTER_LABEL="Counter" +COM_SERMONDISTRIBUTOR_STATISTIC_COUNTER_MESSAGE="Error! Please add a number." COM_SERMONDISTRIBUTOR_STATISTIC_CREATED_BY_DESC="The user that created this Statistic." COM_SERMONDISTRIBUTOR_STATISTIC_CREATED_BY_LABEL="Created By" COM_SERMONDISTRIBUTOR_STATISTIC_CREATED_DATE_DESC="The date this Statistic was created." @@ -1388,6 +1453,7 @@ COM_SERMONDISTRIBUTOR_STATISTIC_FILENAME="Filename" COM_SERMONDISTRIBUTOR_STATISTIC_FILENAME_DESCRIPTION="Enter the file name." COM_SERMONDISTRIBUTOR_STATISTIC_FILENAME_HINT="the_file_name.mp3" COM_SERMONDISTRIBUTOR_STATISTIC_FILENAME_LABEL="File Name" +COM_SERMONDISTRIBUTOR_STATISTIC_FILENAME_MESSAGE="Error! Please add file name here." COM_SERMONDISTRIBUTOR_STATISTIC_ID="Id" COM_SERMONDISTRIBUTOR_STATISTIC_MODIFIED_BY_DESC="The last user that modified this Statistic." COM_SERMONDISTRIBUTOR_STATISTIC_MODIFIED_BY_LABEL="Modified By" @@ -1433,6 +1499,7 @@ COM_SERMONDISTRIBUTOR_THE_UPDATE_IS_RUNNING="The update is running." COM_SERMONDISTRIBUTOR_THE_WIKI_IS_LOADING="The wiki is loading" COM_SERMONDISTRIBUTOR_THIS_SOURCE_HAS_NO_LOCAL_LISTING_SET="This source has no local listing set." COM_SERMONDISTRIBUTOR_TOTAL_DOWNLOADS="total downloads" +COM_SERMONDISTRIBUTOR_TRASHED="Trashed" COM_SERMONDISTRIBUTOR_UNKNOWN_ERROR_HAS_OCCURRED="Unknown error has occurred." COM_SERMONDISTRIBUTOR_UPDATE_LOCAL_LINKS_OF_TARGET_S_EXTERNAL_SOURCE="Update Local Links of (target %s) External Source" COM_SERMONDISTRIBUTOR_UP_TO_DATE="Up to date" diff --git a/admin/language/en-GB/en-GB.com_sermondistributor.sys.ini b/admin/language/en-GB/en-GB.com_sermondistributor.sys.ini index b2552e76..338222f3 100644 --- a/admin/language/en-GB/en-GB.com_sermondistributor.sys.ini +++ b/admin/language/en-GB/en-GB.com_sermondistributor.sys.ini @@ -1,5 +1,125 @@ COM_SERMONDISTRIBUTOR="Sermon Distributor" +COM_SERMONDISTRIBUTOR_CATEGORIES_ACCESS_SITE="Categories (Site) Access" +COM_SERMONDISTRIBUTOR_CATEGORIES_ACCESS_SITE_DESC=" Allows the users in this group to access site categories." +COM_SERMONDISTRIBUTOR_CATEGORY_ACCESS_SITE="Category (Site) Access" +COM_SERMONDISTRIBUTOR_CATEGORY_ACCESS_SITE_DESC=" Allows the users in this group to access site category." COM_SERMONDISTRIBUTOR_CONFIGURATION="Sermon Distributor Configuration" +COM_SERMONDISTRIBUTOR_EDIT_CREATED_BY="Edit Created By" +COM_SERMONDISTRIBUTOR_EDIT_CREATED_BY_DESC=" Allows users in this group to edit created by." +COM_SERMONDISTRIBUTOR_EDIT_CREATED_DATE="Edit Created Date" +COM_SERMONDISTRIBUTOR_EDIT_CREATED_DATE_DESC=" Allows users in this group to edit created date." +COM_SERMONDISTRIBUTOR_EDIT_VERSIONS="Edit Version" +COM_SERMONDISTRIBUTOR_EDIT_VERSIONS_DESC=" Allows users in this group to edit versions." +COM_SERMONDISTRIBUTOR_EXPORT_DATA="Export Data" +COM_SERMONDISTRIBUTOR_EXPORT_DATA_DESC=" Allows users in this group to export data." +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_ACCESS="External Sources Access" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_ACCESS_DESC="Allows the users in this group to access access external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_BATCH_USE="External Sources Batch Use" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_CREATE="External Sources Create" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_CREATE_DESC="Allows the users in this group to create create external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DASHBOARD_ADD="External Sources Dashboard Add" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DASHBOARD_ADD_DESC="Allows the users in this group to update the dashboard add of the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DASHBOARD_LIST="External Sources Dashboard List" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DELETE="External Sources Delete" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_DELETE_DESC="Allows the users in this group to delete delete external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT="External Sources Edit" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_BY="External Sources Edit Created By" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_DATE="External Sources Edit Created Date" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_DESC="Allows the users in this group to edit the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OWN="External Sources Edit Own" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_OWN_DESC="Allows the users in this group to edit edit own external sources created by them" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_STATE="External Sources Edit State" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_STATE_DESC="Allows the users in this group to update the state of the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_VERSION="External Sources Edit Version" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EXPORT="External Sources Export" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_EXPORT_DESC="Allows the users in this group to export export external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_IMPORT="External Sources Import" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_IMPORT_DESC="Allows the users in this group to import import external sources" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_SUBMENU="External Sources Submenu" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES_SUBMENU_DESC="Allows the users in this group to update the submenu of the external source" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_CLEAR_LOCAL_LISTING_BUTTON_ACCESS="External Source Clear Local Listing Button Access" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_CLEAR_LOCAL_LISTING_BUTTON_ACCESS_DESC=" Allows the users in this group to access the clear local listing button." +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_RESET_UPDATE_STATUS_BUTTON_ACCESS="External Source Reset Update Status Button Access" +COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_RESET_UPDATE_STATUS_BUTTON_ACCESS_DESC=" Allows the users in this group to access the reset update status button." +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_ACCESS="Help Documents Access" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_ACCESS_DESC="Allows the users in this group to access access help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_BATCH_USE="Help Documents Batch Use" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_CREATE="Help Documents Create" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_CREATE_DESC="Allows the users in this group to create create help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_DASHBOARD_LIST="Help Documents Dashboard List" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the help document" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_DELETE="Help Documents Delete" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_DELETE_DESC="Allows the users in this group to delete delete help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT="Help Documents Edit" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_DESC="Allows the users in this group to edit the help document" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_OWN="Help Documents Edit Own" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_OWN_DESC="Allows the users in this group to edit edit own help documents created by them" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_STATE="Help Documents Edit State" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the help document" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_VERSION="Help Documents Edit Version" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EXPORT="Help Documents Export" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_EXPORT_DESC="Allows the users in this group to export export help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_IMPORT="Help Documents Import" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_IMPORT_DESC="Allows the users in this group to import import help documents" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_SUBMENU="Help Documents Submenu" +COM_SERMONDISTRIBUTOR_HELP_DOCUMENTS_SUBMENU_DESC="Allows the users in this group to update the submenu of the help document" +COM_SERMONDISTRIBUTOR_IMPORT_DATA="Import Data" +COM_SERMONDISTRIBUTOR_IMPORT_DATA_DESC=" Allows users in this group to import data." +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_ACCESS="Local Listings Access" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_ACCESS_DESC="Allows the users in this group to access access local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_BATCH_USE="Local Listings Batch Use" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_CREATE="Local Listings Create" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_CREATE_DESC="Allows the users in this group to create create local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_DASHBOARD_LIST="Local Listings Dashboard List" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_DELETE="Local Listings Delete" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_DELETE_DESC="Allows the users in this group to delete delete local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT="Local Listings Edit" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_BUILD="Local Listings Edit Build" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_BUILD_DESC="Allows the users in this group to update the edit build of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_CREATED_BY="Local Listings Edit Created By" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_CREATED_DATE="Local Listings Edit Created Date" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_DESC="Allows the users in this group to edit the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_EXTERNAL_SOURCE="Local Listings Edit External Source" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_EXTERNAL_SOURCE_DESC="Allows the users in this group to update the edit external source of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_KEY="Local Listings Edit Key" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_KEY_DESC="Allows the users in this group to update the edit key of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_NAME="Local Listings Edit Name" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_NAME_DESC="Allows the users in this group to update the edit name of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_OWN="Local Listings Edit Own" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_OWN_DESC="Allows the users in this group to edit edit own local listings created by them" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_SIZE="Local Listings Edit Size" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_SIZE_DESC="Allows the users in this group to update the edit size of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_STATE="Local Listings Edit State" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_STATE_DESC="Allows the users in this group to update the state of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_URL="Local Listings Edit Url" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_URL_DESC="Allows the users in this group to update the edit url of the local listing" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_VERSION="Local Listings Edit Version" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EXPORT="Local Listings Export" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_EXPORT_DESC="Allows the users in this group to export export local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_IMPORT="Local Listings Import" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_IMPORT_DESC="Allows the users in this group to import import local listings" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_SUBMENU="Local Listings Submenu" +COM_SERMONDISTRIBUTOR_LOCAL_LISTINGS_SUBMENU_DESC="Allows the users in this group to update the submenu of the local listing" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_ACCESS="Manual Updater Access" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_ACCESS_DESC="Allows the users in this group to access Manual Updater" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_DASHBOARD_LIST="Manual Updater Dashboard List" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the Manual Updater" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_EXTERNAL_SOURCES_BUTTON_ACCESS="Manual Updater External Sources Button Access" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_EXTERNAL_SOURCES_BUTTON_ACCESS_DESC=" Allows the users in this group to access the external sources button." +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_SUBMENU="Manual Updater Submenu" +COM_SERMONDISTRIBUTOR_MANUAL_UPDATER_SUBMENU_DESC="Allows the users in this group to update the submenu of the Manual Updater" COM_SERMONDISTRIBUTOR_MENU="» Sermon Distributor" COM_SERMONDISTRIBUTOR_MENU_CATEGORIES_DESC="All categories that are published" COM_SERMONDISTRIBUTOR_MENU_CATEGORIES_OPTION="Categories" @@ -22,3 +142,133 @@ COM_SERMONDISTRIBUTOR_MENU_SERIES_LIST="Series List" COM_SERMONDISTRIBUTOR_MENU_SERIES_OPTION="Series" COM_SERMONDISTRIBUTOR_MENU_SERIES_TITLE="Series" COM_SERMONDISTRIBUTOR_MENU_SERMONS="Sermons" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS="Preachers Access" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_DESC="Allows the users in this group to access access preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_SITE="Preachers (Site) Access" +COM_SERMONDISTRIBUTOR_PREACHERS_ACCESS_SITE_DESC=" Allows the users in this group to access site preachers." +COM_SERMONDISTRIBUTOR_PREACHERS_BATCH_USE="Preachers Batch Use" +COM_SERMONDISTRIBUTOR_PREACHERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_CREATE="Preachers Create" +COM_SERMONDISTRIBUTOR_PREACHERS_CREATE_DESC="Allows the users in this group to create create preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_DASHBOARD_ADD="Preachers Dashboard Add" +COM_SERMONDISTRIBUTOR_PREACHERS_DASHBOARD_ADD_DESC="Allows the users in this group to update the dashboard add of the preacher" +COM_SERMONDISTRIBUTOR_PREACHERS_DASHBOARD_LIST="Preachers Dashboard List" +COM_SERMONDISTRIBUTOR_PREACHERS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the preacher" +COM_SERMONDISTRIBUTOR_PREACHERS_DELETE="Preachers Delete" +COM_SERMONDISTRIBUTOR_PREACHERS_DELETE_DESC="Allows the users in this group to delete delete preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT="Preachers Edit" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_CREATED_BY="Preachers Edit Created By" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_CREATED_DATE="Preachers Edit Created Date" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_DESC="Allows the users in this group to edit the preacher" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_OWN="Preachers Edit Own" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_OWN_DESC="Allows the users in this group to edit edit own preachers created by them" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_STATE="Preachers Edit State" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the preacher" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_VERSION="Preachers Edit Version" +COM_SERMONDISTRIBUTOR_PREACHERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_EXPORT="Preachers Export" +COM_SERMONDISTRIBUTOR_PREACHERS_EXPORT_DESC="Allows the users in this group to export export preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_IMPORT="Preachers Import" +COM_SERMONDISTRIBUTOR_PREACHERS_IMPORT_DESC="Allows the users in this group to import import preachers" +COM_SERMONDISTRIBUTOR_PREACHERS_SUBMENU="Preachers Submenu" +COM_SERMONDISTRIBUTOR_PREACHERS_SUBMENU_DESC="Allows the users in this group to update the submenu of the preacher" +COM_SERMONDISTRIBUTOR_PREACHER_ACCESS_SITE="Preacher (Site) Access" +COM_SERMONDISTRIBUTOR_PREACHER_ACCESS_SITE_DESC=" Allows the users in this group to access site preacher." +COM_SERMONDISTRIBUTOR_SERIES_ACCESS_SITE="Series (Site) Access" +COM_SERMONDISTRIBUTOR_SERIES_ACCESS_SITE_DESC=" Allows the users in this group to access site series." +COM_SERMONDISTRIBUTOR_SERIES_LIST_ACCESS="Series List Access" +COM_SERMONDISTRIBUTOR_SERIES_LIST_ACCESS_DESC="Allows the users in this group to access access series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_ACCESS_SITE="Series List (Site) Access" +COM_SERMONDISTRIBUTOR_SERIES_LIST_ACCESS_SITE_DESC=" Allows the users in this group to access site series list." +COM_SERMONDISTRIBUTOR_SERIES_LIST_BATCH_USE="Series List Batch Use" +COM_SERMONDISTRIBUTOR_SERIES_LIST_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_CREATE="Series List Create" +COM_SERMONDISTRIBUTOR_SERIES_LIST_CREATE_DESC="Allows the users in this group to create create series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DASHBOARD_ADD="Series List Dashboard Add" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DASHBOARD_ADD_DESC="Allows the users in this group to update the dashboard add of the series" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DASHBOARD_LIST="Series List Dashboard List" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the series" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DELETE="Series List Delete" +COM_SERMONDISTRIBUTOR_SERIES_LIST_DELETE_DESC="Allows the users in this group to delete delete series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT="Series List Edit" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_CREATED_BY="Series List Edit Created By" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_CREATED_DATE="Series List Edit Created Date" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_DESC="Allows the users in this group to edit the series" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_OWN="Series List Edit Own" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_OWN_DESC="Allows the users in this group to edit edit own series list created by them" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_STATE="Series List Edit State" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_STATE_DESC="Allows the users in this group to update the state of the series" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_VERSION="Series List Edit Version" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EDIT_VERSION_DESC="Allows users in this group to edit versions of version series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EXPORT="Series List Export" +COM_SERMONDISTRIBUTOR_SERIES_LIST_EXPORT_DESC="Allows the users in this group to export export series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_IMPORT="Series List Import" +COM_SERMONDISTRIBUTOR_SERIES_LIST_IMPORT_DESC="Allows the users in this group to import import series list" +COM_SERMONDISTRIBUTOR_SERIES_LIST_SUBMENU="Series List Submenu" +COM_SERMONDISTRIBUTOR_SERIES_LIST_SUBMENU_DESC="Allows the users in this group to update the submenu of the series" +COM_SERMONDISTRIBUTOR_SERMONS_ACCESS="Sermons Access" +COM_SERMONDISTRIBUTOR_SERMONS_ACCESS_DESC="Allows the users in this group to access access sermons" +COM_SERMONDISTRIBUTOR_SERMONS_BATCH_USE="Sermons Batch Use" +COM_SERMONDISTRIBUTOR_SERMONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch sermons" +COM_SERMONDISTRIBUTOR_SERMONS_CREATE="Sermons Create" +COM_SERMONDISTRIBUTOR_SERMONS_CREATE_DESC="Allows the users in this group to create create sermons" +COM_SERMONDISTRIBUTOR_SERMONS_DASHBOARD_ADD="Sermons Dashboard Add" +COM_SERMONDISTRIBUTOR_SERMONS_DASHBOARD_ADD_DESC="Allows the users in this group to update the dashboard add of the sermon" +COM_SERMONDISTRIBUTOR_SERMONS_DASHBOARD_LIST="Sermons Dashboard List" +COM_SERMONDISTRIBUTOR_SERMONS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the sermon" +COM_SERMONDISTRIBUTOR_SERMONS_DELETE="Sermons Delete" +COM_SERMONDISTRIBUTOR_SERMONS_DELETE_DESC="Allows the users in this group to delete delete sermons" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT="Sermons Edit" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_CREATED_BY="Sermons Edit Created By" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by sermons" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_CREATED_DATE="Sermons Edit Created Date" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created sermons" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_DESC="Allows the users in this group to edit the sermon" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_OWN="Sermons Edit Own" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_OWN_DESC="Allows the users in this group to edit edit own sermons created by them" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_STATE="Sermons Edit State" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the sermon" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_VERSION="Sermons Edit Version" +COM_SERMONDISTRIBUTOR_SERMONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version sermons" +COM_SERMONDISTRIBUTOR_SERMONS_EXPORT="Sermons Export" +COM_SERMONDISTRIBUTOR_SERMONS_EXPORT_DESC="Allows the users in this group to export export sermons" +COM_SERMONDISTRIBUTOR_SERMONS_IMPORT="Sermons Import" +COM_SERMONDISTRIBUTOR_SERMONS_IMPORT_DESC="Allows the users in this group to import import sermons" +COM_SERMONDISTRIBUTOR_SERMONS_SUBMENU="Sermons Submenu" +COM_SERMONDISTRIBUTOR_SERMONS_SUBMENU_DESC="Allows the users in this group to update the submenu of the sermon" +COM_SERMONDISTRIBUTOR_SERMON_ACCESS_SITE="Sermon (Site) Access" +COM_SERMONDISTRIBUTOR_SERMON_ACCESS_SITE_DESC=" Allows the users in this group to access site sermon." +COM_SERMONDISTRIBUTOR_STATISTICS_ACCESS="Statistics Access" +COM_SERMONDISTRIBUTOR_STATISTICS_ACCESS_DESC="Allows the users in this group to access access statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_BATCH_USE="Statistics Batch Use" +COM_SERMONDISTRIBUTOR_STATISTICS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_CREATE="Statistics Create" +COM_SERMONDISTRIBUTOR_STATISTICS_CREATE_DESC="Allows the users in this group to create create statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_DASHBOARD_LIST="Statistics Dashboard List" +COM_SERMONDISTRIBUTOR_STATISTICS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the statistic" +COM_SERMONDISTRIBUTOR_STATISTICS_DELETE="Statistics Delete" +COM_SERMONDISTRIBUTOR_STATISTICS_DELETE_DESC="Allows the users in this group to delete delete statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT="Statistics Edit" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_CREATED_BY="Statistics Edit Created By" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_CREATED_DATE="Statistics Edit Created Date" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_DESC="Allows the users in this group to edit the statistic" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_OWN="Statistics Edit Own" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_OWN_DESC="Allows the users in this group to edit edit own statistics created by them" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_STATE="Statistics Edit State" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_STATE_DESC="Allows the users in this group to update the state of the statistic" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_VERSION="Statistics Edit Version" +COM_SERMONDISTRIBUTOR_STATISTICS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_EXPORT="Statistics Export" +COM_SERMONDISTRIBUTOR_STATISTICS_EXPORT_DESC="Allows the users in this group to export export statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_IMPORT="Statistics Import" +COM_SERMONDISTRIBUTOR_STATISTICS_IMPORT_DESC="Allows the users in this group to import import statistics" +COM_SERMONDISTRIBUTOR_STATISTICS_SUBMENU="Statistics Submenu" +COM_SERMONDISTRIBUTOR_STATISTICS_SUBMENU_DESC="Allows the users in this group to update the submenu of the statistic" +COM_SERMONDISTRIBUTOR_USE_BATCH="Use Batch" +COM_SERMONDISTRIBUTOR_USE_BATCH_DESC=" Allows users in this group to use batch copy/update method." diff --git a/admin/layouts/batchselection.php b/admin/layouts/batchselection.php index 69b1923e..8a7e4c1f 100644 --- a/admin/layouts/batchselection.php +++ b/admin/layouts/batchselection.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage batchselection.php diff --git a/admin/layouts/external_source/build_option_fullwidth.php b/admin/layouts/external_source/build_option_fullwidth.php index d08ce6fc..22d06bb4 100644 --- a/admin/layouts/external_source/build_option_fullwidth.php +++ b/admin/layouts/external_source/build_option_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage build_option_fullwidth.php diff --git a/admin/layouts/external_source/details_above.php b/admin/layouts/external_source/details_above.php index 3142a11f..c64f781e 100644 --- a/admin/layouts/external_source/details_above.php +++ b/admin/layouts/external_source/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/external_source/details_fullwidth.php b/admin/layouts/external_source/details_fullwidth.php index 83dd4c80..b0a0b303 100644 --- a/admin/layouts/external_source/details_fullwidth.php +++ b/admin/layouts/external_source/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php @@ -31,7 +31,8 @@ $form = $displayData->getForm(); $fields = $displayData->get('fields') ?: array( 'sharedurl', - 'folder' + 'folder', + 'apicronjob_note' ); ?> diff --git a/admin/layouts/external_source/details_left.php b/admin/layouts/external_source/details_left.php index 861419e5..d95c49a5 100644 --- a/admin/layouts/external_source/details_left.php +++ b/admin/layouts/external_source/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/external_source/details_right.php b/admin/layouts/external_source/details_right.php index 975d1d97..e897fc11 100644 --- a/admin/layouts/external_source/details_right.php +++ b/admin/layouts/external_source/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/external_source/details_under.php b/admin/layouts/external_source/details_under.php index 7fff0692..7dd5c249 100644 --- a/admin/layouts/external_source/details_under.php +++ b/admin/layouts/external_source/details_under.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_under.php diff --git a/admin/layouts/external_source/publishing.php b/admin/layouts/external_source/publishing.php index 0b7d3437..75c08f79 100644 --- a/admin/layouts/external_source/publishing.php +++ b/admin/layouts/external_source/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/external_source/publlshing.php b/admin/layouts/external_source/publlshing.php index 13aa6675..80cfc379 100644 --- a/admin/layouts/external_source/publlshing.php +++ b/admin/layouts/external_source/publlshing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publlshing.php diff --git a/admin/layouts/help_document/details_above.php b/admin/layouts/help_document/details_above.php index 9d67a49f..cd3ebbf8 100644 --- a/admin/layouts/help_document/details_above.php +++ b/admin/layouts/help_document/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/help_document/details_fullwidth.php b/admin/layouts/help_document/details_fullwidth.php index 4d4fc25a..7c621c19 100644 --- a/admin/layouts/help_document/details_fullwidth.php +++ b/admin/layouts/help_document/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php diff --git a/admin/layouts/help_document/details_left.php b/admin/layouts/help_document/details_left.php index 4d20b3ac..a264452c 100644 --- a/admin/layouts/help_document/details_left.php +++ b/admin/layouts/help_document/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/help_document/details_right.php b/admin/layouts/help_document/details_right.php index 492ab01d..2c438976 100644 --- a/admin/layouts/help_document/details_right.php +++ b/admin/layouts/help_document/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/help_document/details_under.php b/admin/layouts/help_document/details_under.php index 7fff0692..7dd5c249 100644 --- a/admin/layouts/help_document/details_under.php +++ b/admin/layouts/help_document/details_under.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_under.php diff --git a/admin/layouts/help_document/metadata.php b/admin/layouts/help_document/metadata.php index 6798cee2..3717c633 100644 --- a/admin/layouts/help_document/metadata.php +++ b/admin/layouts/help_document/metadata.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage metadata.php diff --git a/admin/layouts/help_document/publishing.php b/admin/layouts/help_document/publishing.php index 7380fb91..a672867c 100644 --- a/admin/layouts/help_document/publishing.php +++ b/admin/layouts/help_document/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/local_listing/details_above.php b/admin/layouts/local_listing/details_above.php index 86e3d972..67fcf0b7 100644 --- a/admin/layouts/local_listing/details_above.php +++ b/admin/layouts/local_listing/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/local_listing/details_fullwidth.php b/admin/layouts/local_listing/details_fullwidth.php index 30022a6c..ab89189c 100644 --- a/admin/layouts/local_listing/details_fullwidth.php +++ b/admin/layouts/local_listing/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php diff --git a/admin/layouts/local_listing/details_left.php b/admin/layouts/local_listing/details_left.php index 0da11d1d..48ed306a 100644 --- a/admin/layouts/local_listing/details_left.php +++ b/admin/layouts/local_listing/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/local_listing/details_right.php b/admin/layouts/local_listing/details_right.php index fb1c23a6..6cd37b3c 100644 --- a/admin/layouts/local_listing/details_right.php +++ b/admin/layouts/local_listing/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/local_listing/publishing.php b/admin/layouts/local_listing/publishing.php index 0b7d3437..75c08f79 100644 --- a/admin/layouts/local_listing/publishing.php +++ b/admin/layouts/local_listing/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/local_listing/publlshing.php b/admin/layouts/local_listing/publlshing.php index 13aa6675..80cfc379 100644 --- a/admin/layouts/local_listing/publlshing.php +++ b/admin/layouts/local_listing/publlshing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publlshing.php diff --git a/admin/layouts/preacher/details_above.php b/admin/layouts/preacher/details_above.php index cd4a7034..0566d0d8 100644 --- a/admin/layouts/preacher/details_above.php +++ b/admin/layouts/preacher/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/preacher/details_fullwidth.php b/admin/layouts/preacher/details_fullwidth.php index 4474636b..2bf1cf6e 100644 --- a/admin/layouts/preacher/details_fullwidth.php +++ b/admin/layouts/preacher/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php diff --git a/admin/layouts/preacher/details_left.php b/admin/layouts/preacher/details_left.php index 2de14a1e..28fe4e7a 100644 --- a/admin/layouts/preacher/details_left.php +++ b/admin/layouts/preacher/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/preacher/details_right.php b/admin/layouts/preacher/details_right.php index 5a0dbd71..034de53a 100644 --- a/admin/layouts/preacher/details_right.php +++ b/admin/layouts/preacher/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/preacher/metadata.php b/admin/layouts/preacher/metadata.php index 6798cee2..3717c633 100644 --- a/admin/layouts/preacher/metadata.php +++ b/admin/layouts/preacher/metadata.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage metadata.php diff --git a/admin/layouts/preacher/publishing.php b/admin/layouts/preacher/publishing.php index 7380fb91..a672867c 100644 --- a/admin/layouts/preacher/publishing.php +++ b/admin/layouts/preacher/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/preacher/sermons_fullwidth.php b/admin/layouts/preacher/sermons_fullwidth.php index a789d696..c9488e80 100644 --- a/admin/layouts/preacher/sermons_fullwidth.php +++ b/admin/layouts/preacher/sermons_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermons_fullwidth.php @@ -31,15 +31,19 @@ defined('_JEXEC') or die('Restricted access'); $items = $displayData->vvvsermons; $user = JFactory::getUser(); $id = $displayData->item->id; -$edit = "index.php?option=com_sermondistributor&view=sermons&task=sermon.edit"; -$ref = ($id) ? "&ref=preacher&refid=".$id : ""; -$new = "index.php?option=com_sermondistributor&view=sermon&layout=edit".$ref; -$can = SermondistributorHelper::getActions('sermon'); +$edit = "index.php?option=com_sermondistributor&view=sermons&task=sermon.edit"; +$ref = ($id) ? "&ref=preacher&refid=".$id : ""; +$new = "index.php?option=com_sermondistributor&view=sermon&layout=edit".$ref; +$close_new = "index.php?option=com_sermondistributor&view=sermon&layout=edit"; +$can = SermondistributorHelper::getActions('sermon'); ?> get('sermon.create')): ?> - + + + + @@ -120,26 +124,26 @@ $can = SermondistributorHelper::getActions('sermon'); published == 1):?> - - + + published == 0):?> - - + + published == 2):?> - - + + published == -2):?> - - + + diff --git a/admin/layouts/series/details_above.php b/admin/layouts/series/details_above.php index cd4a7034..0566d0d8 100644 --- a/admin/layouts/series/details_above.php +++ b/admin/layouts/series/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/series/details_fullwidth.php b/admin/layouts/series/details_fullwidth.php index 4474636b..2bf1cf6e 100644 --- a/admin/layouts/series/details_fullwidth.php +++ b/admin/layouts/series/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php diff --git a/admin/layouts/series/details_left.php b/admin/layouts/series/details_left.php index 2de14a1e..28fe4e7a 100644 --- a/admin/layouts/series/details_left.php +++ b/admin/layouts/series/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/series/details_right.php b/admin/layouts/series/details_right.php index 2e59a4af..2659c414 100644 --- a/admin/layouts/series/details_right.php +++ b/admin/layouts/series/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/series/metadata.php b/admin/layouts/series/metadata.php index 6798cee2..3717c633 100644 --- a/admin/layouts/series/metadata.php +++ b/admin/layouts/series/metadata.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage metadata.php diff --git a/admin/layouts/series/publishing.php b/admin/layouts/series/publishing.php index 7380fb91..a672867c 100644 --- a/admin/layouts/series/publishing.php +++ b/admin/layouts/series/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/series/sermons_fullwidth.php b/admin/layouts/series/sermons_fullwidth.php index edfaf617..871fe1a5 100644 --- a/admin/layouts/series/sermons_fullwidth.php +++ b/admin/layouts/series/sermons_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermons_fullwidth.php @@ -31,10 +31,10 @@ defined('_JEXEC') or die('Restricted access'); $items = $displayData->vwcsermons; $user = JFactory::getUser(); $id = $displayData->item->id; -$edit = "index.php?option=com_sermondistributor&view=sermons&task=sermon.edit"; -$ref = ($id) ? "&ref=series&refid=".$id : ""; -$new = "index.php?option=com_sermondistributor&view=sermon&layout=edit".$ref; -$can = SermondistributorHelper::getActions('sermon'); +$edit = "index.php?option=com_sermondistributor&view=sermons&task=sermon.edit"; +$ref = ($id) ? "&ref=series&refid=".$id : ""; +$new = "index.php?option=com_sermondistributor&view=sermon&layout=edit".$ref; +$can = SermondistributorHelper::getActions('sermon'); ?> @@ -120,26 +120,26 @@ $can = SermondistributorHelper::getActions('sermon'); published == 1):?> - - + + published == 0):?> - - + + published == 2):?> - - + + published == -2):?> - - + + diff --git a/admin/layouts/sermon/details_above.php b/admin/layouts/sermon/details_above.php index af0195a3..7fd357af 100644 --- a/admin/layouts/sermon/details_above.php +++ b/admin/layouts/sermon/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/sermon/details_fullwidth.php b/admin/layouts/sermon/details_fullwidth.php index 4474636b..2bf1cf6e 100644 --- a/admin/layouts/sermon/details_fullwidth.php +++ b/admin/layouts/sermon/details_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_fullwidth.php diff --git a/admin/layouts/sermon/details_left.php b/admin/layouts/sermon/details_left.php index cb1d1abd..c44b238b 100644 --- a/admin/layouts/sermon/details_left.php +++ b/admin/layouts/sermon/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/sermon/details_right.php b/admin/layouts/sermon/details_right.php index dedcac22..828962fc 100644 --- a/admin/layouts/sermon/details_right.php +++ b/admin/layouts/sermon/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/sermon/details_under.php b/admin/layouts/sermon/details_under.php index ca575367..9e122dac 100644 --- a/admin/layouts/sermon/details_under.php +++ b/admin/layouts/sermon/details_under.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_under.php diff --git a/admin/layouts/sermon/files_fullwidth.php b/admin/layouts/sermon/files_fullwidth.php index 13a9aa36..7b47f26e 100644 --- a/admin/layouts/sermon/files_fullwidth.php +++ b/admin/layouts/sermon/files_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage files_fullwidth.php diff --git a/admin/layouts/sermon/metadata.php b/admin/layouts/sermon/metadata.php index 6798cee2..3717c633 100644 --- a/admin/layouts/sermon/metadata.php +++ b/admin/layouts/sermon/metadata.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage metadata.php diff --git a/admin/layouts/sermon/publishing.php b/admin/layouts/sermon/publishing.php index 7380fb91..a672867c 100644 --- a/admin/layouts/sermon/publishing.php +++ b/admin/layouts/sermon/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/layouts/sermon/stastics_fullwidth.php b/admin/layouts/sermon/stastics_fullwidth.php index f21f5a3a..6a154a5e 100644 --- a/admin/layouts/sermon/stastics_fullwidth.php +++ b/admin/layouts/sermon/stastics_fullwidth.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage stastics_fullwidth.php @@ -31,7 +31,7 @@ defined('_JEXEC') or die('Restricted access'); $items = $displayData->vwbstastics; $user = JFactory::getUser(); $id = $displayData->item->id; -$edit = "index.php?option=com_sermondistributor&view=statistics&task=statistic.edit"; +$edit = "index.php?option=com_sermondistributor&view=statistics&task=statistic.edit"; ?> @@ -102,26 +102,26 @@ $edit = "index.php?option=com_sermondistributor&view=statistics&task=statistic.e published == 1):?> - - + + published == 0):?> - - + + published == 2):?> - - + + published == -2):?> - - + + diff --git a/admin/layouts/statistic/details_above.php b/admin/layouts/statistic/details_above.php index 9afa42ff..ed28913e 100644 --- a/admin/layouts/statistic/details_above.php +++ b/admin/layouts/statistic/details_above.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_above.php diff --git a/admin/layouts/statistic/details_left.php b/admin/layouts/statistic/details_left.php index deeb0165..b666804b 100644 --- a/admin/layouts/statistic/details_left.php +++ b/admin/layouts/statistic/details_left.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_left.php diff --git a/admin/layouts/statistic/details_right.php b/admin/layouts/statistic/details_right.php index fe161f03..521180c2 100644 --- a/admin/layouts/statistic/details_right.php +++ b/admin/layouts/statistic/details_right.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage details_right.php diff --git a/admin/layouts/statistic/metadata.php b/admin/layouts/statistic/metadata.php index 6798cee2..3717c633 100644 --- a/admin/layouts/statistic/metadata.php +++ b/admin/layouts/statistic/metadata.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage metadata.php diff --git a/admin/layouts/statistic/publishing.php b/admin/layouts/statistic/publishing.php index 7380fb91..a672867c 100644 --- a/admin/layouts/statistic/publishing.php +++ b/admin/layouts/statistic/publishing.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage publishing.php diff --git a/admin/models/ajax.php b/admin/models/ajax.php index a0bf4963..c154c292 100644 --- a/admin/models/ajax.php +++ b/admin/models/ajax.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage ajax.php @@ -44,7 +44,7 @@ class SermondistributorModelAjax extends JModelList } // Used in sermon - + /** * Check and if a vdm notice is new (per/user) **/ @@ -91,569 +91,6 @@ class SermondistributorModelAjax extends JModelList return true; } return false; - } - /** - * The Queue to Update Local Listing of External Source - **/ - public function theQueue($id, $target, $typeID) - { - if (1 == $typeID) - { - $type = 'manual'; - } - elseif (2 == $typeID) - { - $type = 'auto'; - } - // first get the file path - $path_filename = SermondistributorHelper::getFilePath('update', 'error', $id.$target.$typeID, '.txt', JPATH_COMPONENT_ADMINISTRATOR); - // check the type - if (isset($type) && SermondistributorHelper::checkString($type)) - { - // run the updatetype - if (SermondistributorHelper::updateExternalSource($id, $target, $type)) - { - // now update the system if needed - if ('auto' == $type) - { - $this->updateSystemWithExternalSource($id); - } - $this->saveFile('success',$path_filename); - return true; - } - $this->saveFile(SermondistributorHelper::getUpdateError($id),$path_filename); - return false; - } - $this->saveFile(JText::_('COM_SERMONDISTRIBUTOR_BTHERE_WAS_AN_ERRORB'),$path_filename); - return false; - } - - /** - * Update Local Listing of External Source (manually) - **/ - public function updateLocalListingExternal($id, $target, $typeID, $sleutel) - { - if (1 == $typeID) - { - $type = 'manual'; - } - elseif (2 == $typeID) - { - $type = 'auto'; - } - // first get the file path - $path_filename = SermondistributorHelper::getFilePath('update', 'error', $id.$target.$typeID, '.txt', JPATH_COMPONENT_ADMINISTRATOR); - // check "die sleutel" and the type - if (isset($type) && SermondistributorHelper::checkString($sleutel)) - { - // run the update - if (SermondistributorHelper::updateExternalSource($id, $target, $type, true, $sleutel)) - { - // now update the system if needed - if ('auto' == $type) - { - $this->updateSystemWithExternalSource($id); - } - $this->saveFile('success',$path_filename); - return array('success' => true); - } - // store the error - $error = SermondistributorHelper::getUpdateError($id); - $this->saveFile($error,$path_filename); - // return the error - return array('error' => $error); - } - // store the error - $error = JText::_('COM_SERMONDISTRIBUTOR_BCOULD_NOT_USE_THE_GIVEN_TOKEN_OR_THE_GIVEN_BUILD_OPTION_DOES_NOT_EXISTB'); - $this->saveFile($error,$path_filename); - return array('error' => $error); - } - - /** - * Update the System with External Source local listing - **/ - protected function updateSystemWithExternalSource($id) - { - // check if we should update with auto listing - $links_dropbox_auto = SermondistributorHelper::getExternalSourceLink('auto', 2); - if (SermondistributorHelper::checkArray($links_dropbox_auto)) - { - $bucket = array(); - $db = JFactory::getDbo(); - // load system aliases - $this->getSermonAliasesUsed($db); - // set the class var for sermons - $this->sermons = new stdClass(); - // we must first get all the preacher names - foreach ($links_dropbox_auto as $placeholder => $link) - { - // convert the name to get needed info - $name = str_replace('VDM_pLeK_h0uEr/', '', $placeholder); - $chunks = (array) explode('/', $name); - // set some defaults - $preacherName = ''; - $seriesName = ''; - $preacher = 0; - $series = 0; - $nr = 0; - foreach ($chunks as $chunk) - { - if ($nr == 0 && strpos($chunk,'.') === false) - { - $preacherName = str_replace('-', ' ', str_replace('_', ' ', $chunk)); - $preacherName = trim(preg_replace('/\s+/', ' ', urldecode($preacherName))); - $preacher = $this->getIdByName($preacherName,'preacher',$db); - } - elseif ($nr == 1 && strpos($chunk,'.') === false) - { - $seriesName = str_replace('-', ' ', str_replace('_', ' ', $chunk)); - $seriesName = trim(preg_replace('/\s+/', ' ', urldecode($seriesName))); - $series = $this->getIdByName($seriesName,'series',$db); - } - elseif (($nr == 2 || $nr == 1) && strpos($chunk,'.') !== false) - { - $chunk = urldecode($chunk); - // load thise sermon data to the global object - $this->loadSermonData($preacher,$preacherName,$series,$seriesName,$chunk,$placeholder,$db); - } - $nr++; - } - } - return $this->setSermons($db); - } - return false; - } - - protected function setSermons($db) - { - // check if we have values - if (SermondistributorHelper::checkObject($this->sermons)) - { - foreach ($this->sermons as $sermon) - { - // make sure the lock is removed - unset($sermon->lock); - // convert the placeholders to json object - $registry = new JRegistry; - $registry->loadArray($sermon->auto_sermons); - $sermon->auto_sermons = (string) $registry; - // always the same - $sermon->link_type = $this->app_params->get('auto_link_type', 1); - $sermon->source = 2; - $sermon->build = 2; - // reset id - $aId = 0; - if (isset($sermon->id) && $sermon->id) - { - // change to modified - $sermon->modified = $sermon->created; - // make sure we dont change these if - // the sermon is being updated - unset($sermon->created); - unset($sermon->metadesc); - unset($sermon->metakey); - unset($sermon->metadata); - - // update - $done = $db->updateObject('#__sermondistributor_sermon', $sermon, 'id'); - if ($done) - { - $aId = $sermon->id; - } - } - else - { - // add some defaults - $sermon->version = 1; - $sermon->published = $this->app_params->get('sermon_state', 1); - $sermon->access = 1; // TODO must use a global setting here - $sermon->metakey = implode(', ',array_unique($sermon->metakey)); - // insert - $done = $db->insertObject('#__sermondistributor_sermon', $sermon); - if ($done) - { - $aId = $db->insertid(); - // make sure the access of asset is set - SermondistributorHelper::setAsset($aId,'sermon'); - } - } - // set global id list - if ($aId > 0) - { - $this->allSermons[] = $aId; - } - } - } - return $this->allSermonsCheckStatus($db); - } - - protected function allSermonsCheckStatus($db) - { - $query = $db->getQuery(true); - // Fields to update. - $fields = array( - $db->quoteName('published') . ' = 0' - ); - if (isset($this->allSermons) && SermondistributorHelper::checkArray($this->allSermons)) - { - // unpublish those AUTO sermons not found in this id list - $conditions = array( - $db->quoteName('source') . ' = 2', - $db->quoteName('build') . ' = 2', - $db->quoteName('id') . ' NOT IN (' . implode(',',$this->allSermons) . ')' - ); - } - else - { - // unpublish all AUTO sermons - $conditions = array( - $db->quoteName('source') . ' = 2', - $db->quoteName('build') . ' = 2' - ); - } - $query->update($db->quoteName('#__sermondistributor_sermon'))->set($fields)->where($conditions); - $db->setQuery($query); - return $db->execute(); - } - - protected function loadSermonData($preacher,$preacherName,$series,$seriesName,$sermon,$placeholder,$db) - { - // 34key521__the_file_name___tag1_tag-with2_tag-three____Salvation_Messages_____The_short_description_can_only_be_one_sentence.mp3 - $description = ''; - $category = 0; - $tags = false; - $combined = false; - // remove the file type from the string - $fileType = pathinfo($sermon, PATHINFO_EXTENSION); - if ($fileType) - { - $sermon = str_replace('.'.$fileType, '', $sermon); - } - else - { - $fileType = 'error'; - } - // first we check if this file has discription - if (strpos($sermon,'_____') !== false) - { - list($sermon, $description) = explode('_____', $sermon); - $description = preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ', $description))).'.'; - } - // second we check if this file has category - if (strpos($sermon,'____') !== false) - { - list($sermon, $categoryName) = explode('____', $sermon); - $categoryName = preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ',$categoryName))); - $category = $this->getCatogoryId($categoryName,$db); - } - // third we check if this file has tags - if (strpos($sermon,'___') !== false) - { - list($sermon, $tags) = explode('___', $sermon); // TODO not loading the tags yet, soon... - } - // forth we check if this file is combined with another - if (strpos($sermon,'__') !== false) - { - list($key,$sermon) = explode('__', $sermon); - $key = md5($key); - $combined = true; - } - else - { - $key = md5($sermon.$preacher.$series.$category); - } - // set the name of the sermon - $name = trim(preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ', $sermon)))); - // check if this sermon has been set - if (isset($this->sermons->$key)) - { - $SERMON = strtoupper($sermon); - if ($combined && $sermon == $SERMON) - { - $name = ucfirst(strtolower($name)); - $this->sermons->$key->name = $name; - // make sure we always use the new name as alias - $this->sermons->$key->alias = $this->getAlias($name,'sermon'); - // lock item so other will not change the name - $this->sermons->$key->lock = true; - } - elseif ($combined && !isset($this->sermons->$key->lock) && strlen($name) > strlen($this->sermons->$key->name)) - { - $this->sermons->$key->name = $name; - // make sure we always use the new name as alias - $this->sermons->$key->alias = $this->getAlias($name,'sermon'); - } - } - else - { - // load the sermon data - $this->sermons->$key = new stdClass(); - } - // check if this value has been set - if (!isset($this->sermons->$key->alias)) - { - // make sure we always use the new name as alias - $this->sermons->$key->alias = $this->getAlias($name,'sermon'); - } - - // check if this item exist (update if it does) - $id = $this->getSermonId($this->sermons->$key->alias,$preacher,$db); - if ($id) - { - $this->sermons->$key->id = $id; - } - // check if this value has been set - if (!isset($this->sermons->$key->name)) - { - $this->sermons->$key->name = $name; - } - // check if this value has been set - if (!isset($this->sermons->$key->short_description) && SermondistributorHelper::checkString($description)) - { - $this->sermons->$key->short_description = $description; - } - // check if this value has been set - if (!isset($this->sermons->$key->preacher) && $preacher > 0) - { - $this->sermons->$key->preacher = $preacher; - } - // check if this value has been set - if (!isset($this->sermons->$key->series) && $series > 0) - { - $this->sermons->$key->series = $series; - } - // check if this value has been set - if (!isset($this->sermons->$key->catid) && $category > 0) - { - $this->sermons->$key->catid = $category; - } - // check if this value has been set - if (!isset($this->sermons->$key->created)) - { - // set the date object - $date = JFactory::getDate(); - $this->sermons->$key->created = $date->toSql(); - } - // build the Download File NAme - first add the preacher name if set - if ($preacher) - { - $downloadName[] = SermondistributorHelper::safeString($preacherName,'U'); - } - // add the series name if set - if ($series) - { - $downloadName[] = SermondistributorHelper::safeString($seriesName,'F'); - } - // add the category name if set - if ($category) - { - $downloadName[] = SermondistributorHelper::safeString($categoryName, 'F'); - } - // add the main file name - $downloadName[] = SermondistributorHelper::safeString($name,'F'); - // now build the download file name - $downloadName = implode('__', $downloadName).'.'.$fileType; - // load the placeholder to the sermon - $this->sermons->$key->auto_sermons[$downloadName] = $placeholder; - // set default metadate - if (!isset($this->sermons->$key->metadesc) && SermondistributorHelper::checkString($description)) - { - // Only process once per/sermon - $bad_characters = array("\"", "<", ">"); - $this->sermons->$key->metadesc = JString::str_ireplace($bad_characters, "", $description); // just to be save - } - // Array of characters to remove. - $bad_characters = array("\n", "\r", "\"", "<", ">"); - // set the meta key words - $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $name)); // just to be save - if ($series) - { - $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $seriesName)); // just to be save - } - if ($preacher) - { - $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $preacherName)); // just to be save - } - if ($category) - { - $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $categoryName)); // just to be save - } - $author = ($preacher) ? trim($preacherName): ''; - $this->sermons->$key->metadata = '{"robots":"","author":"'.$author.'","rights":"See our site terms."}'; - - return true; - } - - protected function getAlias($name,$type = false) - { - // sanitize the name to an alias - if (JFactory::getConfig()->get('unicodeslugs') == 1) - { - $alias = JFilterOutput::stringURLUnicodeSlug($name); - } - else - { - $alias = JFilterOutput::stringURLSafe($name); - } - if ($type) - { - return $this->getUniqe($alias,'alias',$type); - } - return $alias; - } - - protected function getIdByName($name,$type,$db) - { - // sanitize the name to an alias - $alias = $this->getAlias($name); - // check if there is a recored - if ($id = SermondistributorHelper::getVar($type, $alias, 'alias', 'id')) - { - return $id; - } - else - { - // check if the name is all lowercase - if ($name == strtolower($name)) - { - // the whole name is lowercase then fix - $name = ucwords($name); - } - // create the record - $object = new stdClass(); - // set the date object - $date = JFactory::getDate(); - // build the object - $object->name = $name; - $object->alias = $alias; - $object->published = $this->app_params->get($type.'_state', 1); - $object->created = $date->toSql(); - $object->version = 1; - $object->access = 1; // TODO must use a global setting here - // Insert the object into the table. - $done = $db->insertObject('#__sermondistributor_'.$type, $object); - // if done return last used id - if ($done) - { - $newId = $db->insertid(); - // make sure the access of asset is set - SermondistributorHelper::setAsset($newId,$type); - return $newId; - } - } - return 0; - } - - protected function getSermonId($alias = false,$preacher,$db) - { - if (!$alias) - { - // sanitize the name to an alias - $alias = $this->getAlias($name,'sermon'); - } - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array('id'))); - $query->from($db->quoteName('#__sermondistributor_sermon')); - $query->where($db->quoteName('alias') . ' = '. $db->quote($alias)); - $query->where($db->quoteName('preacher') . ' = '. $preacher); - $query->where($db->quoteName('build') . ' = '. 2); - $query->where($db->quoteName('source') . ' = '. 2); - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - return $db->loadResult(); - } - return 0; - } - - protected $category = array(); - - protected function getCatogoryId($name,$db) - { - // sanitize the name to an alias - $alias = $this->getAlias($name); - if (!isset($this->category[$alias])) - { - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array('id'))); - $query->from($db->quoteName('#__categories')); - $query->where($db->quoteName('alias') . ' = '. $db->quote($alias)); - $query->where($db->quoteName('extension') . ' = '. $db->quote('com_sermondistributor.sermons')); - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - $this->category[$alias] = $db->loadResult(); - } - else - { - // if still not set, then create category - $this->category[$alias] = $this->createCategory($name,$alias); - } - } - return $this->category[$alias]; - } - - protected function createCategory($name,$alias) - { - // load the category table - JTable::addIncludePath(JPATH_LIBRARIES . '/joomla/database/table'); - $category = JTable::getInstance('Category'); - $category->extension = 'com_sermondistributor.sermons'; - $category->title = $name; - $category->alias = $alias; - $category->description = ''; - $category->published = 1; - $category->access = 1; - $category->params = '{"category_layout":"","image":"","image_alt":""}'; - $category->metadata = '{"author":"","robots":""}'; - $category->language = '*'; - $category->setLocation(1, 'last-child'); - $category->store(true); - $category->rebuildPath($category->id); - return $category->id; - } - - /** - * Method to generate a uniqe value. - * - * @param string $field name. - * @param string $value data. - * @param string $type table. - * - * @return string New value. - */ - protected function getUniqe($value,$field,$type) - { - // insure the filed is always uniqe - while (isset($this->uniqeValueArray[$type][$field][$value])) - { - $value = JString::increment($value, 'dash'); - } - $this->uniqeValueArray[$type][$field][$value] = $value; - return $value; - } - - protected function getSermonAliasesUsed($db) - { - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array('alias'))); - $query->from($db->quoteName('#__sermondistributor_sermon')); - $query->where($db->quoteName('build') . ' != 2'); - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - $aliases = $db->loadColumn(); - foreach($aliases as $alias) - { - $this->uniqeValueArray['sermon']['alias'][$alias] = $alias; - } - } } // Used in external_source @@ -784,5 +221,564 @@ class SermondistributorModelAjax extends JModelList public function getSourceStatus($id) { return SermondistributorHelper::getSourceStatus($id); + } + + /** + * get the component details (html) + **/ + public function getCronPath($type) + { + $result = array('error' => '' . JText::_('COM_SERMONDISTRIBUTOR_NO_CRONJOB_PATH_FOUND_SINCE_INCORRECT_TYPE_REQUESTED') . ''); + if ('externalUpdate' === $type) + { + $result['error'] = '' . JText::sprintf('COM_SERMONDISTRIBUTOR_NO_CRONJOB_PATH_FOUND_FOR_S', $type) . ''; + if ($this->hasCurl()) + { + $path = '*/15 * * * * curl -s "' .JURI::root() . 'index.php?option=com_sermondistributor&task=api.externalUpdate" >/dev/null 2>&1'; + } + else + { + $path = '*/15 * * * * wget "' .JURI::root() . 'index.php?option=com_sermondistributor&task=api.externalUpdate" >/dev/null 2>&1'; + } + $result['path'] = '' . $path . ''; + } + return $result; + } + + protected function hasCurl() + { + return function_exists('curl_version'); + } + + // Used in manual_updater + /** + * Update Local Listing of External Source (manually) + **/ + public function updateLocalListingExternal($id, $target, $typeID, $sleutel) + { + if (1 == $typeID) + { + $type = 'manual'; + } + elseif (2 == $typeID) + { + $type = 'auto'; + } + // first get the file path + $path_filename = SermondistributorHelper::getFilePath('update', 'error', $id.$target.$typeID, '.txt', JPATH_COMPONENT_ADMINISTRATOR); + // check "die sleutel" and the type + if (isset($type) && SermondistributorHelper::checkString($sleutel)) + { + // get database object + if (!isset($this->db) || !SermondistributorHelper::checkObject($this->db)) + { + $this->db = JFactory::getDBO(); + } + // run the update + if (SermondistributorHelper::updateExternalSource($id, $target, $type, true, $sleutel)) + { + // now update the system if needed + if ('auto' == $type) + { + $this->updateSystemWithExternalSource(); + } + SermondistributorHelper::writeFile($path_filename,'success'); + return array('success' => true); + } + // store the error + $error = SermondistributorHelper::getUpdateError($id); + SermondistributorHelper::writeFile($path_filename,$error); + // return the error + return array('error' => $error); + } + // store the error + $error = JText::_('COM_SERMONDISTRIBUTOR_BCOULD_NOT_USE_THE_GIVEN_TOKEN_OR_THE_GIVEN_BUILD_OPTION_DOES_NOT_EXISTB'); + SermondistributorHelper::writeFile($path_filename,$error); + return array('error' => $error); + } + + /** + * Update the System with External Source local listing + **/ + public function updateSystemWithExternalSource() + { + // check if we should update with auto listing + $links_dropbox_auto = SermondistributorHelper::getExternalSourceLink('auto', 2); + if (SermondistributorHelper::checkArray($links_dropbox_auto)) + { + // load system aliases + $this->getSermonAliasesUsed(); + // set the class var for sermons + $this->sermons = new stdClass(); + // we must first get all the preacher names + foreach ($links_dropbox_auto as $placeholder => $link) + { + // convert the name to get needed info + $name = str_replace('VDM_pLeK_h0uEr/', '', $placeholder); + $chunks = (array) explode('/', $name); + // set some defaults + $preacherName = ''; + $seriesName = ''; + $preacher = 0; + $series = 0; + $nr = 0; + foreach ($chunks as $chunk) + { + if ($nr == 0 && strpos($chunk,'.') === false) + { + $preacherName = str_replace('-', ' ', str_replace('_', ' ', $chunk)); + $preacherName = trim(preg_replace('/\s+/', ' ', urldecode($preacherName))); + $preacher = $this->getIdByName($preacherName,'preacher'); + } + elseif ($nr == 1 && strpos($chunk,'.') === false) + { + $seriesName = str_replace('-', ' ', str_replace('_', ' ', $chunk)); + $seriesName = trim(preg_replace('/\s+/', ' ', urldecode($seriesName))); + $series = $this->getIdByName($seriesName,'series'); + } + elseif (($nr == 2 || $nr == 1) && strpos($chunk,'.') !== false) + { + $chunk = urldecode($chunk); + // load thise sermon data to the global object + $this->loadSermonData($preacher,$preacherName,$series,$seriesName,$chunk,$placeholder); + } + $nr++; + } + } + return $this->setSermons(); + } + return false; + } + + protected function setSermons() + { + // check if we have values + if (SermondistributorHelper::checkObject($this->sermons)) + { + foreach ($this->sermons as $sermon) + { + // make sure the lock is removed + unset($sermon->lock); + // convert the placeholders to json object + $registry = new JRegistry; + $registry->loadArray($sermon->auto_sermons); + $sermon->auto_sermons = (string) $registry; + // always the same + $sermon->link_type = $this->app_params->get('auto_link_type', 1); + $sermon->source = 2; + $sermon->build = 2; + // reset id + $aId = 0; + if (isset($sermon->id) && $sermon->id) + { + // change to modified + $sermon->modified = $sermon->created; + // make sure we dont change these if + // the sermon is being updated + unset($sermon->created); + unset($sermon->metadesc); + unset($sermon->metakey); + unset($sermon->metadata); + + // update + $done = $this->db->updateObject('#__sermondistributor_sermon', $sermon, 'id'); + if ($done) + { + $aId = $sermon->id; + } + } + else + { + // add some defaults + $sermon->version = 1; + $sermon->published = $this->app_params->get('sermon_state', 1); + $sermon->access = 1; // TODO must use a global setting here + $sermon->metakey = implode(', ',array_unique($sermon->metakey)); + // insert + $done = $this->db->insertObject('#__sermondistributor_sermon', $sermon); + if ($done) + { + $aId = $this->db->insertid(); + // make sure the access of asset is set + SermondistributorHelper::setAsset($aId,'sermon'); + } + } + // set global id list + if ($aId > 0) + { + $this->allSermons[] = $aId; + } + } + } + return $this->allSermonsCheckStatus(); + } + + protected function allSermonsCheckStatus() + { + $query = $this->db->getQuery(true); + // Fields to update. + $fields = array( + $this->db->quoteName('published') . ' = 0' + ); + if (isset($this->allSermons) && SermondistributorHelper::checkArray($this->allSermons)) + { + // unpublish those AUTO sermons not found in this id list + $conditions = array( + $this->db->quoteName('source') . ' = 2', + $this->db->quoteName('build') . ' = 2', + $this->db->quoteName('id') . ' NOT IN (' . implode(',',$this->allSermons) . ')' + ); + } + else + { + // unpublish all AUTO sermons + $conditions = array( + $this->db->quoteName('source') . ' = 2', + $this->db->quoteName('build') . ' = 2' + ); + } + $query->update($this->db->quoteName('#__sermondistributor_sermon'))->set($fields)->where($conditions); + $this->db->setQuery($query); + return $this->db->execute(); + } + + protected function loadSermonData($preacher,$preacherName,$series,$seriesName,$sermon,$placeholder) + { + // 34key521__the_file_name___tag1_tag-with2_tag-three____Salvation_Messages_____The_short_description_can_only_be_one_sentence.mp3 + $description = ''; + $category = 0; + $tags = false; + $combined = false; + // remove the file type from the string + $fileType = pathinfo($sermon, PATHINFO_EXTENSION); + if ($fileType) + { + $sermon = str_replace('.'.$fileType, '', $sermon); + } + else + { + $fileType = 'error'; + } + // first we check if this file has discription + if (strpos($sermon,'_____') !== false) + { + list($sermon, $description) = explode('_____', $sermon); + $description = preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ', $description))).'.'; + } + // second we check if this file has category + if (strpos($sermon,'____') !== false) + { + list($sermon, $categoryName) = explode('____', $sermon); + $categoryName = preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ',$categoryName))); + $category = $this->getCatogoryId($categoryName); + } + // third we check if this file has tags + if (strpos($sermon,'___') !== false) + { + list($sermon, $tags) = explode('___', $sermon); // TODO not loading the tags yet, soon... + } + // forth we check if this file is combined with another + if (strpos($sermon,'__') !== false) + { + list($key,$sermon) = explode('__', $sermon); + $key = md5($key); + $combined = true; + } + else + { + $key = md5($sermon.$preacher.$series.$category); + } + // set the name of the sermon + $name = trim(preg_replace('/\s+/', ' ', str_replace('-', ' ', str_replace('_', ' ', $sermon)))); + // check if this sermon has been set + if (isset($this->sermons->$key)) + { + $SERMON = strtoupper($sermon); + if ($combined && $sermon == $SERMON) + { + $name = ucfirst(strtolower($name)); + $this->sermons->$key->name = $name; + // make sure we always use the new name as alias + $this->sermons->$key->alias = $this->getAlias($name,'sermon'); + // lock item so other will not change the name + $this->sermons->$key->lock = true; + } + elseif ($combined && !isset($this->sermons->$key->lock) && strlen($name) > strlen($this->sermons->$key->name)) + { + $this->sermons->$key->name = $name; + // make sure we always use the new name as alias + $this->sermons->$key->alias = $this->getAlias($name,'sermon'); + } + } + else + { + // load the sermon data + $this->sermons->$key = new stdClass(); + } + // check if this value has been set + if (!isset($this->sermons->$key->alias)) + { + // make sure we always use the new name as alias + $this->sermons->$key->alias = $this->getAlias($name,'sermon'); + } + + // check if this item exist (update if it does) + $id = $this->getSermonId($this->sermons->$key->alias,$preacher); + if ($id) + { + $this->sermons->$key->id = $id; + } + // check if this value has been set + if (!isset($this->sermons->$key->name)) + { + $this->sermons->$key->name = $name; + } + // check if this value has been set + if (!isset($this->sermons->$key->short_description) && SermondistributorHelper::checkString($description)) + { + $this->sermons->$key->short_description = $description; + } + // check if this value has been set + if (!isset($this->sermons->$key->preacher) && $preacher > 0) + { + $this->sermons->$key->preacher = $preacher; + } + // check if this value has been set + if (!isset($this->sermons->$key->series) && $series > 0) + { + $this->sermons->$key->series = $series; + } + // check if this value has been set + if (!isset($this->sermons->$key->catid) && $category > 0) + { + $this->sermons->$key->catid = $category; + } + // check if this value has been set + if (!isset($this->sermons->$key->created)) + { + // set the date object + $date = JFactory::getDate(); + $this->sermons->$key->created = $date->toSql(); + } + // build the Download File NAme - first add the preacher name if set + if ($preacher) + { + $downloadName[] = SermondistributorHelper::safeString($preacherName,'U'); + } + // add the series name if set + if ($series) + { + $downloadName[] = SermondistributorHelper::safeString($seriesName,'F'); + } + // add the category name if set + if ($category) + { + $downloadName[] = SermondistributorHelper::safeString($categoryName, 'F'); + } + // add the main file name + $downloadName[] = SermondistributorHelper::safeString($name,'F'); + // now build the download file name + $downloadName = implode('__', $downloadName).'.'.$fileType; + // load the placeholder to the sermon + $this->sermons->$key->auto_sermons[$downloadName] = $placeholder; + // set default metadate + if (!isset($this->sermons->$key->metadesc) && SermondistributorHelper::checkString($description)) + { + // Only process once per/sermon + $bad_characters = array("\"", "<", ">"); + $this->sermons->$key->metadesc = JString::str_ireplace($bad_characters, "", $description); // just to be save + } + // Array of characters to remove. + $bad_characters = array("\n", "\r", "\"", "<", ">"); + // set the meta key words + $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $name)); // just to be save + if ($series) + { + $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $seriesName)); // just to be save + } + if ($preacher) + { + $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $preacherName)); // just to be save + } + if ($category) + { + $this->sermons->$key->metakey[] = trim(JString::str_ireplace($bad_characters, '', $categoryName)); // just to be save + } + $author = ($preacher) ? trim($preacherName): ''; + $this->sermons->$key->metadata = '{"robots":"","author":"'.$author.'","rights":"See our site terms."}'; + + return true; + } + + protected function getAlias($name,$type = false) + { + // sanitize the name to an alias + if (JFactory::getConfig()->get('unicodeslugs') == 1) + { + $alias = JFilterOutput::stringURLUnicodeSlug($name); + } + else + { + $alias = JFilterOutput::stringURLSafe($name); + } + if ($type) + { + return $this->getUniqe($alias,'alias',$type); + } + return $alias; + } + + protected function getIdByName($name,$type) + { + // sanitize the name to an alias + $alias = $this->getAlias($name); + // check if there is a recored + if ($id = SermondistributorHelper::getVar($type, $alias, 'alias', 'id')) + { + return $id; + } + else + { + // check if the name is all lowercase + if ($name == strtolower($name)) + { + // the whole name is lowercase then fix + $name = ucwords($name); + } + // create the record + $object = new stdClass(); + // set the date object + $date = JFactory::getDate(); + // build the object + $object->name = $name; + $object->alias = $alias; + $object->published = $this->app_params->get($type.'_state', 1); + $object->created = $date->toSql(); + $object->version = 1; + $object->access = 1; // TODO must use a global setting here + // Insert the object into the table. + $done = $this->db->insertObject('#__sermondistributor_'.$type, $object); + // if done return last used id + if ($done) + { + $newId = $this->db->insertid(); + // make sure the access of asset is set + SermondistributorHelper::setAsset($newId,$type); + return $newId; + } + } + return 0; + } + + protected function getSermonId($alias = false,$preacher) + { + if (!$alias) + { + // sanitize the name to an alias + $alias = $this->getAlias($name,'sermon'); + } + // Create a new query object. + $query = $this->db->getQuery(true); + $query->select($this->db->quoteName(array('id'))); + $query->from($this->db->quoteName('#__sermondistributor_sermon')); + $query->where($this->db->quoteName('alias') . ' = '. $this->db->quote($alias)); + $query->where($this->db->quoteName('preacher') . ' = '. $preacher); + $query->where($this->db->quoteName('build') . ' = '. 2); + $query->where($this->db->quoteName('source') . ' = '. 2); + $this->db->setQuery($query); + $this->db->execute(); + if ($this->db->getNumRows()) + { + return $this->db->loadResult(); + } + return 0; + } + + protected $category = array(); + + protected function getCatogoryId($name) + { + // sanitize the name to an alias + $alias = $this->getAlias($name); + if (!isset($this->category[$alias])) + { + // Create a new query object. + $query = $this->db->getQuery(true); + $query->select($this->db->quoteName(array('id'))); + $query->from($this->db->quoteName('#__categories')); + $query->where($this->db->quoteName('alias') . ' = '. $this->db->quote($alias)); + $query->where($this->db->quoteName('extension') . ' = '. $this->db->quote('com_sermondistributor.sermons')); + $this->db->setQuery($query); + $this->db->execute(); + if ($this->db->getNumRows()) + { + $this->category[$alias] = $this->db->loadResult(); + } + else + { + // if still not set, then create category + $this->category[$alias] = $this->createCategory($name,$alias); + } + } + return $this->category[$alias]; + } + + protected function createCategory($name,$alias) + { + // load the category table + JTable::addIncludePath(JPATH_LIBRARIES . '/joomla/database/table'); + $category = JTable::getInstance('Category'); + $category->extension = 'com_sermondistributor.sermons'; + $category->title = $name; + $category->alias = $alias; + $category->description = ''; + $category->published = 1; + $category->access = 1; + $category->params = '{"category_layout":"","image":"","image_alt":""}'; + $category->metadata = '{"author":"","robots":""}'; + $category->language = '*'; + $category->setLocation(1, 'last-child'); + $category->store(true); + $category->rebuildPath($category->id); + return $category->id; + } + + /** + * Method to generate a uniqe value. + * + * @param string $field name. + * @param string $value data. + * @param string $type table. + * + * @return string New value. + */ + protected function getUniqe($value,$field,$type) + { + // insure the filed is always uniqe + while (isset($this->uniqeValueArray[$type][$field][$value])) + { + $value = JString::increment($value, 'dash'); + } + $this->uniqeValueArray[$type][$field][$value] = $value; + return $value; + } + + protected function getSermonAliasesUsed() + { + // Create a new query object. + $query = $this->db->getQuery(true); + $query->select($this->db->quoteName(array('alias'))); + $query->from($this->db->quoteName('#__sermondistributor_sermon')); + $query->where($this->db->quoteName('build') . ' != 2'); + $this->db->setQuery($query); + $this->db->execute(); + if ($this->db->getNumRows()) + { + $aliases = $this->db->loadColumn(); + foreach($aliases as $alias) + { + $this->uniqeValueArray['sermon']['alias'][$alias] = $alias; + } + } } } diff --git a/admin/models/external_source.php b/admin/models/external_source.php index f0b53f47..02ebc0d6 100644 --- a/admin/models/external_source.php +++ b/admin/models/external_source.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_source.php @author Llewellyn van der Merwe @@ -153,7 +153,7 @@ class SermondistributorModelExternal_source extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -175,14 +175,14 @@ class SermondistributorModelExternal_source extends JModelAdmin $item->filetypes = json_decode($item->filetypes); } - // Get the basic encription. + // Get the basic encryption. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object. + // Get the encryption object. $basic = new FOFEncryptAes($basickey, 128); if (!empty($item->oauthtoken) && $basickey && !is_numeric($item->oauthtoken) && $item->oauthtoken === base64_encode(base64_decode($item->oauthtoken, true))) { - // basic decript data oauthtoken. + // basic decrypt data oauthtoken. $item->oauthtoken = rtrim($basic->decryptString($item->oauthtoken), "\0"); } @@ -269,197 +269,6 @@ class SermondistributorModelExternal_source extends JModelAdmin // Disable fields while saving. $form->setFieldAttribute('created', 'filter', 'unset'); } - // Modify the form based on Edit Description access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.description', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.description', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('description', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('description', 'readonly', 'true'); - if (!$form->getValue('description')) - { - // Disable fields while saving. - $form->setFieldAttribute('description', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('description', 'required', 'false'); - } - } - // Modify the form based on Edit Externalsources access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.externalsources', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.externalsources', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('externalsources', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('externalsources', 'readonly', 'true'); - if (!$form->getValue('externalsources')) - { - // Disable fields while saving. - $form->setFieldAttribute('externalsources', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('externalsources', 'required', 'false'); - } - } - // Modify the form based on Edit Update Method access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.update_method', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.update_method', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('update_method', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('update_method', 'readonly', 'true'); - // Disable radio button for display. - $class = $form->getFieldAttribute('update_method', 'class', ''); - $form->setFieldAttribute('update_method', 'class', $class.' disabled no-click'); - if (!$form->getValue('update_method')) - { - // Disable fields while saving. - $form->setFieldAttribute('update_method', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('update_method', 'required', 'false'); - } - } - // Modify the form based on Edit Filetypes access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.filetypes', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.filetypes', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('filetypes', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('filetypes', 'readonly', 'true'); - if (!$form->getValue('filetypes')) - { - // Disable fields while saving. - $form->setFieldAttribute('filetypes', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('filetypes', 'required', 'false'); - } - } - // Modify the form based on Edit Build access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.build', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.build', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('build', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('build', 'readonly', 'true'); - if (!$form->getValue('build')) - { - // Disable fields while saving. - $form->setFieldAttribute('build', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('build', 'required', 'false'); - } - } - // Modify the form based on Edit Dropboxoptions access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.dropboxoptions', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.dropboxoptions', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('dropboxoptions', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('dropboxoptions', 'readonly', 'true'); - // Disable radio button for display. - $class = $form->getFieldAttribute('dropboxoptions', 'class', ''); - $form->setFieldAttribute('dropboxoptions', 'class', $class.' disabled no-click'); - if (!$form->getValue('dropboxoptions')) - { - // Disable fields while saving. - $form->setFieldAttribute('dropboxoptions', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('dropboxoptions', 'required', 'false'); - } - } - // Modify the form based on Edit Update Timer access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.update_timer', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.update_timer', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('update_timer', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('update_timer', 'readonly', 'true'); - if (!$form->getValue('update_timer')) - { - // Disable fields while saving. - $form->setFieldAttribute('update_timer', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('update_timer', 'required', 'false'); - } - } - // Modify the form based on Edit Oauthtoken access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.oauthtoken', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.oauthtoken', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('oauthtoken', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('oauthtoken', 'readonly', 'true'); - if (!$form->getValue('oauthtoken')) - { - // Disable fields while saving. - $form->setFieldAttribute('oauthtoken', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('oauthtoken', 'required', 'false'); - } - } - // Modify the form based on Edit Permissiontype access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.permissiontype', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.permissiontype', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('permissiontype', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('permissiontype', 'readonly', 'true'); - // Disable radio button for display. - $class = $form->getFieldAttribute('permissiontype', 'class', ''); - $form->setFieldAttribute('permissiontype', 'class', $class.' disabled no-click'); - if (!$form->getValue('permissiontype')) - { - // Disable fields while saving. - $form->setFieldAttribute('permissiontype', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('permissiontype', 'required', 'false'); - } - } - // Modify the form based on Edit Sharedurl access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.sharedurl', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.sharedurl', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('sharedurl', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('sharedurl', 'readonly', 'true'); - // Disable radio button for display. - $class = $form->getFieldAttribute('sharedurl', 'class', ''); - $form->setFieldAttribute('sharedurl', 'class', $class.' disabled no-click'); - if (!$form->getValue('sharedurl')) - { - // Disable fields while saving. - $form->setFieldAttribute('sharedurl', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('sharedurl', 'required', 'false'); - } - } - // Modify the form based on Edit Folder access controls. - if ($id != 0 && (!$user->authorise('external_source.edit.folder', 'com_sermondistributor.external_source.' . (int) $id)) - || ($id == 0 && !$user->authorise('external_source.edit.folder', 'com_sermondistributor'))) - { - // Disable fields for display. - $form->setFieldAttribute('folder', 'disabled', 'true'); - // Disable fields for display. - $form->setFieldAttribute('folder', 'readonly', 'true'); - // Disable radio button for display. - $class = $form->getFieldAttribute('folder', 'class', ''); - $form->setFieldAttribute('folder', 'class', $class.' disabled no-click'); - if (!$form->getValue('folder')) - { - // Disable fields while saving. - $form->setFieldAttribute('folder', 'filter', 'unset'); - // Disable fields while saving. - $form->setFieldAttribute('folder', 'required', 'false'); - } - } // Only load these values if no id is found if (0 == $id) { @@ -836,8 +645,6 @@ class SermondistributorModelExternal_source extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('external_source'); } @@ -862,7 +669,6 @@ class SermondistributorModelExternal_source extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -872,17 +678,11 @@ class SermondistributorModelExternal_source extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('external_source.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -892,7 +692,6 @@ class SermondistributorModelExternal_source extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -903,7 +702,11 @@ class SermondistributorModelExternal_source extends JModelAdmin } } - $this->table->description = $this->generateUniqe('description',$this->table->description); + // Only for strings + if (SermondistributorHelper::checkString($this->table->description) && !is_numeric($this->table->description)) + { + $this->table->description = $this->generateUniqe('description',$this->table->description); + } // insert all set values if (SermondistributorHelper::checkArray($values)) @@ -985,8 +788,6 @@ class SermondistributorModelExternal_source extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('external_source'); } @@ -1010,7 +811,6 @@ class SermondistributorModelExternal_source extends JModelAdmin if (!$this->user->authorise('external_source.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -1021,7 +821,6 @@ class SermondistributorModelExternal_source extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -1108,12 +907,12 @@ class SermondistributorModelExternal_source extends JModelAdmin $data['filetypes'] = (string) json_encode($data['filetypes']); } - // Get the basic encription key. + // Get the basic encryption key. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object + // Get the encryption object $basic = new FOFEncryptAes($basickey, 128); - // Encript data oauthtoken. + // Encrypt data oauthtoken. if (isset($data['oauthtoken']) && $basickey) { $data['oauthtoken'] = $basic->encryptString($data['oauthtoken']); diff --git a/admin/models/external_sources.php b/admin/models/external_sources.php index bf4c61b3..bc63e772 100644 --- a/admin/models/external_sources.php +++ b/admin/models/external_sources.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_sources.php @author Llewellyn van der Merwe @@ -368,9 +368,9 @@ class SermondistributorModelExternal_sources extends JModelList { $items = $db->loadObjectList(); - // Get the basic encription key. + // Get the basic encryption key. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object. + // Get the encryption object. $basic = new FOFEncryptAes($basickey, 128); // set values to display correctly. diff --git a/admin/models/fields/adminviewfolderlist.php b/admin/models/fields/adminviewfolderlist.php index 1c835c20..979254ac 100644 --- a/admin/models/fields/adminviewfolderlist.php +++ b/admin/models/fields/adminviewfolderlist.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage adminviewfolderlist.php diff --git a/admin/models/fields/articles.php b/admin/models/fields/articles.php index 9226cc06..1e1bc8a4 100644 --- a/admin/models/fields/articles.php +++ b/admin/models/fields/articles.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage articles.php diff --git a/admin/models/fields/externalsource.php b/admin/models/fields/externalsource.php index cbfc4c22..e5f4c1de 100644 --- a/admin/models/fields/externalsource.php +++ b/admin/models/fields/externalsource.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage externalsource.php @@ -160,7 +160,7 @@ class JFormFieldExternalsource extends JFormFieldList $options = array(); if ($items) { - $model = SermondistributorHelper::getModel('external_sources'); + $model = SermondistributorHelper::getModel('external_sources', JPATH_COMPONENT_ADMINISTRATOR); $options[] = JHtml::_('select.option', '', 'Select an option'); foreach($items as $item) { diff --git a/admin/models/fields/externalsourcefiles.php b/admin/models/fields/externalsourcefiles.php index 080a6ce8..0fcacef7 100644 --- a/admin/models/fields/externalsourcefiles.php +++ b/admin/models/fields/externalsourcefiles.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage externalsourcefiles.php diff --git a/admin/models/fields/localfiles.php b/admin/models/fields/localfiles.php index 9fa69a26..53f6ce04 100644 --- a/admin/models/fields/localfiles.php +++ b/admin/models/fields/localfiles.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage localfiles.php diff --git a/admin/models/fields/preachers.php b/admin/models/fields/preachers.php index 360a6877..576eb685 100644 --- a/admin/models/fields/preachers.php +++ b/admin/models/fields/preachers.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preachers.php diff --git a/admin/models/fields/series.php b/admin/models/fields/series.php index 313711ec..86a0b2ad 100644 --- a/admin/models/fields/series.php +++ b/admin/models/fields/series.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.php diff --git a/admin/models/fields/sermon.php b/admin/models/fields/sermon.php index 0456be79..364bf311 100644 --- a/admin/models/fields/sermon.php +++ b/admin/models/fields/sermon.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.php diff --git a/admin/models/fields/siteviewfolderlist.php b/admin/models/fields/siteviewfolderlist.php index 550d4877..072249a7 100644 --- a/admin/models/fields/siteviewfolderlist.php +++ b/admin/models/fields/siteviewfolderlist.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage siteviewfolderlist.php diff --git a/admin/models/forms/external_source.js b/admin/models/forms/external_source.js index a8ddeaa5..e03ac883 100644 --- a/admin/models/forms/external_source.js +++ b/admin/models/forms/external_source.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_source.js @author Llewellyn van der Merwe @@ -86,6 +86,9 @@ jQuery(document).ready(function() var externalsources_vvvvvwv = jQuery("#jform_externalsources").val(); var dropboxoptions_vvvvvwv = jQuery("#jform_dropboxoptions input[type='radio']:checked").val(); vvvvvwv(permissiontype_vvvvvwv,externalsources_vvvvvwv,dropboxoptions_vvvvvwv); + + var update_method_vvvvvww = jQuery("#jform_update_method input[type='radio']:checked").val(); + vvvvvww(update_method_vvvvvww); }); // the vvvvvwe function @@ -998,6 +1001,20 @@ function dropboxoptions_vvvvvwv_SomeFunc(dropboxoptions_vvvvvwv) return false; } +// the vvvvvww function +function vvvvvww(update_method_vvvvvww) +{ + // set the function logic + if (update_method_vvvvvww == 2) + { + jQuery('.apicronjob_note').closest('.control-group').show(); + } + else + { + jQuery('.apicronjob_note').closest('.control-group').hide(); + } +} + // update required fields function updateFieldRequired(name,status) { diff --git a/admin/models/forms/external_source.xml b/admin/models/forms/external_source.xml index 6598cfdc..f9266b5c 100644 --- a/admin/models/forms/external_source.xml +++ b/admin/models/forms/external_source.xml @@ -4,348 +4,311 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DROPBOX - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MANUAL - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AUTOMATIC - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPTHREE - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MFOURA - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGG - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_WAV - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPFOUR - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MFOURV - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MOV - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_WMV - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AVI - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPG - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGV - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGP - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGTWO - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PDF - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOC - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOCX - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPT - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPTX - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPS - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPSX - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_ODT - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_XLS - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_XLSX - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_ZIP - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_JPG - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_JPEG - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PNG - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_GIF - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MANUAL_LOCAL_SELECTION - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DYNAMIC_AUTOMATIC_BUILD - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHARED_URL - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_PATH - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FULL_DROPBOX - - COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APP_FOLDER - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DROPBOX + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MANUAL + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AUTOMATIC + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPTHREE + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MFOURA + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGG + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_WAV + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPFOUR + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MFOURV + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MOV + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_WMV + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_AVI + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MPG + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_OGV + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGP + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_THREEGTWO + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PDF + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOC + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DOCX + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPT + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPTX + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPS + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PPSX + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_ODT + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_XLS + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_XLSX + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_ZIP + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_JPG + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_JPEG + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_PNG + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_GIF + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_MANUAL_LOCAL_SELECTION + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_DYNAMIC_AUTOMATIC_BUILD + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_SHARED_URL + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FOLDER_PATH + + + + + + + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_FULL_DROPBOX + COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_APP_FOLDER + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/admin/models/forms/help_document.js b/admin/models/forms/help_document.js index 9399f47a..cdf20988 100644 --- a/admin/models/forms/help_document.js +++ b/admin/models/forms/help_document.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_document.js @author Llewellyn van der Merwe @@ -23,24 +23,21 @@ /-----------------------------------------------------------------------------------------------------------------------------*/ // Some Global Values -jform_vvvvvwwvwf_required = false; -jform_vvvvvwxvwg_required = false; -jform_vvvvvwyvwh_required = false; -jform_vvvvvwzvwi_required = false; -jform_vvvvvxavwj_required = false; -jform_vvvvvxbvwk_required = false; +jform_vvvvvwxvwf_required = false; +jform_vvvvvwyvwg_required = false; +jform_vvvvvwzvwh_required = false; +jform_vvvvvxavwi_required = false; +jform_vvvvvxbvwj_required = false; +jform_vvvvvxcvwk_required = false; // Initial Script jQuery(document).ready(function() { - var location_vvvvvww = jQuery("#jform_location input[type='radio']:checked").val(); - vvvvvww(location_vvvvvww); - var location_vvvvvwx = jQuery("#jform_location input[type='radio']:checked").val(); vvvvvwx(location_vvvvvwx); - var type_vvvvvwy = jQuery("#jform_type").val(); - vvvvvwy(type_vvvvvwy); + var location_vvvvvwy = jQuery("#jform_location input[type='radio']:checked").val(); + vvvvvwy(location_vvvvvwy); var type_vvvvvwz = jQuery("#jform_type").val(); vvvvvwz(type_vvvvvwz); @@ -48,127 +45,75 @@ jQuery(document).ready(function() var type_vvvvvxa = jQuery("#jform_type").val(); vvvvvxa(type_vvvvvxa); - var target_vvvvvxb = jQuery("#jform_target input[type='radio']:checked").val(); - vvvvvxb(target_vvvvvxb); + var type_vvvvvxb = jQuery("#jform_type").val(); + vvvvvxb(type_vvvvvxb); + + var target_vvvvvxc = jQuery("#jform_target input[type='radio']:checked").val(); + vvvvvxc(target_vvvvvxc); }); -// the vvvvvww function -function vvvvvww(location_vvvvvww) +// the vvvvvwx function +function vvvvvwx(location_vvvvvwx) { // set the function logic - if (location_vvvvvww == 1) + if (location_vvvvvwx == 1) { jQuery('#jform_admin_view').closest('.control-group').show(); - if (jform_vvvvvwwvwf_required) + if (jform_vvvvvwxvwf_required) { updateFieldRequired('admin_view',0); jQuery('#jform_admin_view').prop('required','required'); jQuery('#jform_admin_view').attr('aria-required',true); jQuery('#jform_admin_view').addClass('required'); - jform_vvvvvwwvwf_required = false; + jform_vvvvvwxvwf_required = false; } } else { jQuery('#jform_admin_view').closest('.control-group').hide(); - if (!jform_vvvvvwwvwf_required) + if (!jform_vvvvvwxvwf_required) { updateFieldRequired('admin_view',1); jQuery('#jform_admin_view').removeAttr('required'); jQuery('#jform_admin_view').removeAttr('aria-required'); jQuery('#jform_admin_view').removeClass('required'); - jform_vvvvvwwvwf_required = true; + jform_vvvvvwxvwf_required = true; } } } -// the vvvvvwx function -function vvvvvwx(location_vvvvvwx) +// the vvvvvwy function +function vvvvvwy(location_vvvvvwy) { // set the function logic - if (location_vvvvvwx == 2) + if (location_vvvvvwy == 2) { jQuery('#jform_site_view').closest('.control-group').show(); - if (jform_vvvvvwxvwg_required) + if (jform_vvvvvwyvwg_required) { updateFieldRequired('site_view',0); jQuery('#jform_site_view').prop('required','required'); jQuery('#jform_site_view').attr('aria-required',true); jQuery('#jform_site_view').addClass('required'); - jform_vvvvvwxvwg_required = false; + jform_vvvvvwyvwg_required = false; } } else { jQuery('#jform_site_view').closest('.control-group').hide(); - if (!jform_vvvvvwxvwg_required) + if (!jform_vvvvvwyvwg_required) { updateFieldRequired('site_view',1); jQuery('#jform_site_view').removeAttr('required'); jQuery('#jform_site_view').removeAttr('aria-required'); jQuery('#jform_site_view').removeClass('required'); - jform_vvvvvwxvwg_required = true; + jform_vvvvvwyvwg_required = true; } } } -// the vvvvvwy function -function vvvvvwy(type_vvvvvwy) -{ - if (isSet(type_vvvvvwy) && type_vvvvvwy.constructor !== Array) - { - var temp_vvvvvwy = type_vvvvvwy; - var type_vvvvvwy = []; - type_vvvvvwy.push(temp_vvvvvwy); - } - else if (!isSet(type_vvvvvwy)) - { - var type_vvvvvwy = []; - } - var type = type_vvvvvwy.some(type_vvvvvwy_SomeFunc); - - - // set this function logic - if (type) - { - jQuery('#jform_url').closest('.control-group').show(); - if (jform_vvvvvwyvwh_required) - { - updateFieldRequired('url',0); - jQuery('#jform_url').prop('required','required'); - jQuery('#jform_url').attr('aria-required',true); - jQuery('#jform_url').addClass('required'); - jform_vvvvvwyvwh_required = false; - } - - } - else - { - jQuery('#jform_url').closest('.control-group').hide(); - if (!jform_vvvvvwyvwh_required) - { - updateFieldRequired('url',1); - jQuery('#jform_url').removeAttr('required'); - jQuery('#jform_url').removeAttr('aria-required'); - jQuery('#jform_url').removeClass('required'); - jform_vvvvvwyvwh_required = true; - } - } -} - -// the vvvvvwy Some function -function type_vvvvvwy_SomeFunc(type_vvvvvwy) -{ - // set the function logic - if (type_vvvvvwy == 3) - { - return true; - } - return false; -} - // the vvvvvwz function function vvvvvwz(type_vvvvvwz) { @@ -188,27 +133,27 @@ function vvvvvwz(type_vvvvvwz) // set this function logic if (type) { - jQuery('#jform_article').closest('.control-group').show(); - if (jform_vvvvvwzvwi_required) + jQuery('#jform_url').closest('.control-group').show(); + if (jform_vvvvvwzvwh_required) { - updateFieldRequired('article',0); - jQuery('#jform_article').prop('required','required'); - jQuery('#jform_article').attr('aria-required',true); - jQuery('#jform_article').addClass('required'); - jform_vvvvvwzvwi_required = false; + updateFieldRequired('url',0); + jQuery('#jform_url').prop('required','required'); + jQuery('#jform_url').attr('aria-required',true); + jQuery('#jform_url').addClass('required'); + jform_vvvvvwzvwh_required = false; } } else { - jQuery('#jform_article').closest('.control-group').hide(); - if (!jform_vvvvvwzvwi_required) + jQuery('#jform_url').closest('.control-group').hide(); + if (!jform_vvvvvwzvwh_required) { - updateFieldRequired('article',1); - jQuery('#jform_article').removeAttr('required'); - jQuery('#jform_article').removeAttr('aria-required'); - jQuery('#jform_article').removeClass('required'); - jform_vvvvvwzvwi_required = true; + updateFieldRequired('url',1); + jQuery('#jform_url').removeAttr('required'); + jQuery('#jform_url').removeAttr('aria-required'); + jQuery('#jform_url').removeClass('required'); + jform_vvvvvwzvwh_required = true; } } } @@ -217,7 +162,7 @@ function vvvvvwz(type_vvvvvwz) function type_vvvvvwz_SomeFunc(type_vvvvvwz) { // set the function logic - if (type_vvvvvwz == 1) + if (type_vvvvvwz == 3) { return true; } @@ -243,27 +188,27 @@ function vvvvvxa(type_vvvvvxa) // set this function logic if (type) { - jQuery('#jform_content-lbl').closest('.control-group').show(); - if (jform_vvvvvxavwj_required) + jQuery('#jform_article').closest('.control-group').show(); + if (jform_vvvvvxavwi_required) { - updateFieldRequired('content',0); - jQuery('#jform_content').prop('required','required'); - jQuery('#jform_content').attr('aria-required',true); - jQuery('#jform_content').addClass('required'); - jform_vvvvvxavwj_required = false; + updateFieldRequired('article',0); + jQuery('#jform_article').prop('required','required'); + jQuery('#jform_article').attr('aria-required',true); + jQuery('#jform_article').addClass('required'); + jform_vvvvvxavwi_required = false; } } else { - jQuery('#jform_content-lbl').closest('.control-group').hide(); - if (!jform_vvvvvxavwj_required) + jQuery('#jform_article').closest('.control-group').hide(); + if (!jform_vvvvvxavwi_required) { - updateFieldRequired('content',1); - jQuery('#jform_content').removeAttr('required'); - jQuery('#jform_content').removeAttr('aria-required'); - jQuery('#jform_content').removeClass('required'); - jform_vvvvvxavwj_required = true; + updateFieldRequired('article',1); + jQuery('#jform_article').removeAttr('required'); + jQuery('#jform_article').removeAttr('aria-required'); + jQuery('#jform_article').removeClass('required'); + jform_vvvvvxavwi_required = true; } } } @@ -272,7 +217,7 @@ function vvvvvxa(type_vvvvvxa) function type_vvvvvxa_SomeFunc(type_vvvvvxa) { // set the function logic - if (type_vvvvvxa == 2) + if (type_vvvvvxa == 1) { return true; } @@ -280,32 +225,87 @@ function type_vvvvvxa_SomeFunc(type_vvvvvxa) } // the vvvvvxb function -function vvvvvxb(target_vvvvvxb) +function vvvvvxb(type_vvvvvxb) +{ + if (isSet(type_vvvvvxb) && type_vvvvvxb.constructor !== Array) + { + var temp_vvvvvxb = type_vvvvvxb; + var type_vvvvvxb = []; + type_vvvvvxb.push(temp_vvvvvxb); + } + else if (!isSet(type_vvvvvxb)) + { + var type_vvvvvxb = []; + } + var type = type_vvvvvxb.some(type_vvvvvxb_SomeFunc); + + + // set this function logic + if (type) + { + jQuery('#jform_content-lbl').closest('.control-group').show(); + if (jform_vvvvvxbvwj_required) + { + updateFieldRequired('content',0); + jQuery('#jform_content').prop('required','required'); + jQuery('#jform_content').attr('aria-required',true); + jQuery('#jform_content').addClass('required'); + jform_vvvvvxbvwj_required = false; + } + + } + else + { + jQuery('#jform_content-lbl').closest('.control-group').hide(); + if (!jform_vvvvvxbvwj_required) + { + updateFieldRequired('content',1); + jQuery('#jform_content').removeAttr('required'); + jQuery('#jform_content').removeAttr('aria-required'); + jQuery('#jform_content').removeClass('required'); + jform_vvvvvxbvwj_required = true; + } + } +} + +// the vvvvvxb Some function +function type_vvvvvxb_SomeFunc(type_vvvvvxb) { // set the function logic - if (target_vvvvvxb == 1) + if (type_vvvvvxb == 2) + { + return true; + } + return false; +} + +// the vvvvvxc function +function vvvvvxc(target_vvvvvxc) +{ + // set the function logic + if (target_vvvvvxc == 1) { jQuery('#jform_groups').closest('.control-group').show(); - if (jform_vvvvvxbvwk_required) + if (jform_vvvvvxcvwk_required) { updateFieldRequired('groups',0); jQuery('#jform_groups').prop('required','required'); jQuery('#jform_groups').attr('aria-required',true); jQuery('#jform_groups').addClass('required'); - jform_vvvvvxbvwk_required = false; + jform_vvvvvxcvwk_required = false; } } else { jQuery('#jform_groups').closest('.control-group').hide(); - if (!jform_vvvvvxbvwk_required) + if (!jform_vvvvvxcvwk_required) { updateFieldRequired('groups',1); jQuery('#jform_groups').removeAttr('required'); jQuery('#jform_groups').removeAttr('aria-required'); jQuery('#jform_groups').removeClass('required'); - jform_vvvvvxbvwk_required = true; + jform_vvvvvxcvwk_required = true; } } } diff --git a/admin/models/forms/help_document.xml b/admin/models/forms/help_document.xml index 8ace18dd..a9bf6743 100644 --- a/admin/models/forms/help_document.xml +++ b/admin/models/forms/help_document.xml @@ -4,285 +4,245 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_JOOMLA_ARTICLE - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TEXT - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL - - - - - - - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_ADMIN - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SITE - - - - - - - - - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SOME - - COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_ALL - - - - - - - - - - - - - - - - - - - JGLOBAL_USE_GLOBAL - JGLOBAL_INDEX_FOLLOW - JGLOBAL_NOINDEX_FOLLOW - JGLOBAL_INDEX_NOFOLLOW - JGLOBAL_NOINDEX_NOFOLLOW - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_JOOMLA_ARTICLE + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_TEXT + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_URL + + + + + + + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_ADMIN + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SITE + + + + + + + + + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_SOME + COM_SERMONDISTRIBUTOR_HELP_DOCUMENT_ALL + + + + + + + + + + + + + + + + + JGLOBAL_USE_GLOBAL + JGLOBAL_INDEX_FOLLOW + JGLOBAL_NOINDEX_FOLLOW + JGLOBAL_INDEX_NOFOLLOW + JGLOBAL_NOINDEX_NOFOLLOW + + + + + + + + diff --git a/admin/models/forms/local_listing.js b/admin/models/forms/local_listing.js index e8613dbf..3820ba48 100644 --- a/admin/models/forms/local_listing.js +++ b/admin/models/forms/local_listing.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listing.js @author Llewellyn van der Merwe diff --git a/admin/models/forms/local_listing.xml b/admin/models/forms/local_listing.xml index ee2fd1a7..02b876f5 100644 --- a/admin/models/forms/local_listing.xml +++ b/admin/models/forms/local_listing.xml @@ -4,170 +4,147 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_LOCAL_LISTING_MANUAL_LOCAL_SELECTION - - COM_SERMONDISTRIBUTOR_LOCAL_LISTING_DYNAMIC_AUTOMATIC_BUILD - - - - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_LOCAL_LISTING_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_LOCAL_LISTING_MANUAL_LOCAL_SELECTION + COM_SERMONDISTRIBUTOR_LOCAL_LISTING_DYNAMIC_AUTOMATIC_BUILD + + + + + + + + + + diff --git a/admin/models/forms/preacher.js b/admin/models/forms/preacher.js index 5437ba1c..1a84dbcf 100644 --- a/admin/models/forms/preacher.js +++ b/admin/models/forms/preacher.js @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preacher.js diff --git a/admin/models/forms/preacher.xml b/admin/models/forms/preacher.xml index cb63f690..69642362 100644 --- a/admin/models/forms/preacher.xml +++ b/admin/models/forms/preacher.xml @@ -4,214 +4,191 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JGLOBAL_USE_GLOBAL - JGLOBAL_INDEX_FOLLOW - JGLOBAL_NOINDEX_FOLLOW - JGLOBAL_INDEX_NOFOLLOW - JGLOBAL_NOINDEX_NOFOLLOW - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JGLOBAL_USE_GLOBAL + JGLOBAL_INDEX_FOLLOW + JGLOBAL_NOINDEX_FOLLOW + JGLOBAL_INDEX_NOFOLLOW + JGLOBAL_NOINDEX_NOFOLLOW + + + + + + + + diff --git a/admin/models/forms/series.js b/admin/models/forms/series.js index 5f7223ce..3a3936e8 100644 --- a/admin/models/forms/series.js +++ b/admin/models/forms/series.js @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.js diff --git a/admin/models/forms/series.xml b/admin/models/forms/series.xml index 4ad4a36e..0e36d609 100644 --- a/admin/models/forms/series.xml +++ b/admin/models/forms/series.xml @@ -4,201 +4,180 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JGLOBAL_USE_GLOBAL - JGLOBAL_INDEX_FOLLOW - JGLOBAL_NOINDEX_FOLLOW - JGLOBAL_INDEX_NOFOLLOW - JGLOBAL_NOINDEX_NOFOLLOW - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JGLOBAL_USE_GLOBAL + JGLOBAL_INDEX_FOLLOW + JGLOBAL_NOINDEX_FOLLOW + JGLOBAL_INDEX_NOFOLLOW + JGLOBAL_NOINDEX_NOFOLLOW + + + + + + + + diff --git a/admin/models/forms/sermon.js b/admin/models/forms/sermon.js index 2b8024c7..242b7e43 100644 --- a/admin/models/forms/sermon.js +++ b/admin/models/forms/sermon.js @@ -9,8 +9,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.js diff --git a/admin/models/forms/sermon.xml b/admin/models/forms/sermon.xml index 115239cb..9d7fbb77 100644 --- a/admin/models/forms/sermon.xml +++ b/admin/models/forms/sermon.xml @@ -4,370 +4,339 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_SERMON_ENCRYPTED - - COM_SERMONDISTRIBUTOR_SERMON_DIRECT - - - - - - COM_SERMONDISTRIBUTOR_SERMON_SELECT_SOURCE - - COM_SERMONDISTRIBUTOR_SERMON_LOCAL_FOLDER - - COM_SERMONDISTRIBUTOR_SERMON_EXTERNAL_SOURCE - - COM_SERMONDISTRIBUTOR_SERMON_URL - - - - - - - - - - - - - - - - - - COM_SERMONDISTRIBUTOR_SERMON_SELECT_AN_OPTION - - COM_SERMONDISTRIBUTOR_SERMON_MANUAL_LOCAL_SELECTION - - COM_SERMONDISTRIBUTOR_SERMON_DYNAMIC_AUTOMATIC_BUILD - - - - - - - - - - - - - - - - - - - - - - - - - JGLOBAL_USE_GLOBAL - JGLOBAL_INDEX_FOLLOW - JGLOBAL_NOINDEX_FOLLOW - JGLOBAL_INDEX_NOFOLLOW - JGLOBAL_NOINDEX_NOFOLLOW - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_SERMON_ENCRYPTED + COM_SERMONDISTRIBUTOR_SERMON_DIRECT + + + + + COM_SERMONDISTRIBUTOR_SERMON_SELECT_SOURCE + COM_SERMONDISTRIBUTOR_SERMON_LOCAL_FOLDER + COM_SERMONDISTRIBUTOR_SERMON_EXTERNAL_SOURCE + COM_SERMONDISTRIBUTOR_SERMON_URL + + + + + + + + + + + + + + + + + COM_SERMONDISTRIBUTOR_SERMON_SELECT_AN_OPTION + COM_SERMONDISTRIBUTOR_SERMON_MANUAL_LOCAL_SELECTION + COM_SERMONDISTRIBUTOR_SERMON_DYNAMIC_AUTOMATIC_BUILD + + + + + + + + + + + + + + + + + + + + + + + JGLOBAL_USE_GLOBAL + JGLOBAL_INDEX_FOLLOW + JGLOBAL_NOINDEX_FOLLOW + JGLOBAL_INDEX_NOFOLLOW + JGLOBAL_NOINDEX_NOFOLLOW + + + + + + + + diff --git a/admin/models/forms/statistic.js b/admin/models/forms/statistic.js index 30b7d78e..86c7e74a 100644 --- a/admin/models/forms/statistic.js +++ b/admin/models/forms/statistic.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistic.js @author Llewellyn van der Merwe diff --git a/admin/models/forms/statistic.xml b/admin/models/forms/statistic.xml index 85e6d2b0..a61ba95d 100644 --- a/admin/models/forms/statistic.xml +++ b/admin/models/forms/statistic.xml @@ -4,201 +4,180 @@ addfieldpath="/administrator/components/com_sermondistributor/models/fields" > - - - - - - - - - - - JPUBLISHED - - JUNPUBLISHED - - JARCHIVED - - JTRASHED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JGLOBAL_USE_GLOBAL - JGLOBAL_INDEX_FOLLOW - JGLOBAL_NOINDEX_FOLLOW - JGLOBAL_INDEX_NOFOLLOW - JGLOBAL_NOINDEX_NOFOLLOW - - - - - - - + + + + + + + + + + JPUBLISHED + JUNPUBLISHED + JARCHIVED + JTRASHED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JGLOBAL_USE_GLOBAL + JGLOBAL_INDEX_FOLLOW + JGLOBAL_NOINDEX_FOLLOW + JGLOBAL_INDEX_NOFOLLOW + JGLOBAL_NOINDEX_NOFOLLOW + + + + + + + + diff --git a/admin/models/help_document.php b/admin/models/help_document.php index 257788ab..275a22ef 100644 --- a/admin/models/help_document.php +++ b/admin/models/help_document.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_document.php @author Llewellyn van der Merwe @@ -79,7 +79,7 @@ class SermondistributorModelHelp_document extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -558,8 +558,6 @@ class SermondistributorModelHelp_document extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('help_document'); } @@ -584,7 +582,6 @@ class SermondistributorModelHelp_document extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -594,17 +591,11 @@ class SermondistributorModelHelp_document extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('help_document.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -614,7 +605,6 @@ class SermondistributorModelHelp_document extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -624,7 +614,6 @@ class SermondistributorModelHelp_document extends JModelAdmin continue; } } - list($this->table->title, $this->table->alias) = $this->_generateNewTitle($this->table->alias, $this->table->title); // insert all set values @@ -707,8 +696,6 @@ class SermondistributorModelHelp_document extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('help_document'); } @@ -732,7 +719,6 @@ class SermondistributorModelHelp_document extends JModelAdmin if (!$this->user->authorise('help_document.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -743,7 +729,6 @@ class SermondistributorModelHelp_document extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else diff --git a/admin/models/help_documents.php b/admin/models/help_documents.php index 14fd4171..71c70db6 100644 --- a/admin/models/help_documents.php +++ b/admin/models/help_documents.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_documents.php @author Llewellyn van der Merwe diff --git a/admin/models/import.php b/admin/models/import.php index 2f0227d9..ab55a142 100644 --- a/admin/models/import.php +++ b/admin/models/import.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage import.php @@ -89,10 +89,10 @@ class SermondistributorModelImport extends JModelLegacy public function import() { $this->setState('action', 'import'); - $app = JFactory::getApplication(); - $session = JFactory::getSession(); - $package = null; - $continue = false; + $app = JFactory::getApplication(); + $session = JFactory::getSession(); + $package = null; + $continue = false; // get import type $this->getType = $app->input->getString('gettype', NULL); // get import type @@ -147,7 +147,7 @@ class SermondistributorModelImport extends JModelLegacy // first link data to table headers if(!$continue){ - $package = json_encode($package); + $package = json_encode($package); $session->set('package', $package); $session->set('dataType', $this->dataType); $session->set('hasPackage', true); @@ -199,8 +199,8 @@ class SermondistributorModelImport extends JModelLegacy protected function _getPackageFromUpload() { // Get the uploaded file information - $app = JFactory::getApplication(); - $input = $app->input; + $app = JFactory::getApplication(); + $input = $app->input; // Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get. $userfile = $input->files->get('import_package', null, 'raw'); @@ -227,9 +227,9 @@ class SermondistributorModelImport extends JModelLegacy } // Build the appropriate paths - $config = JFactory::getConfig(); - $tmp_dest = $config->get('tmp_path') . '/' . $userfile['name']; - $tmp_src = $userfile['tmp_name']; + $config = JFactory::getConfig(); + $tmp_dest = $config->get('tmp_path') . '/' . $userfile['name']; + $tmp_src = $userfile['tmp_name']; // Move uploaded file jimport('joomla.filesystem.file'); @@ -260,8 +260,8 @@ class SermondistributorModelImport extends JModelLegacy */ protected function _getPackageFromFolder() { - $app = JFactory::getApplication(); - $input = $app->input; + $app = JFactory::getApplication(); + $input = $app->input; // Get the path to the package to import $p_dir = $input->getString('import_directory'); @@ -291,8 +291,8 @@ class SermondistributorModelImport extends JModelLegacy } $package['packagename'] = null; - $package['dir'] = $p_dir; - $package['type'] = $type; + $package['dir'] = $p_dir; + $package['type'] = $type; return $package; } @@ -305,8 +305,8 @@ class SermondistributorModelImport extends JModelLegacy */ protected function _getPackageFromUrl() { - $app = JFactory::getApplication(); - $input = $app->input; + $app = JFactory::getApplication(); + $input = $app->input; // Get the URL of the package to import $url = $input->getString('import_url'); @@ -345,7 +345,7 @@ class SermondistributorModelImport extends JModelLegacy */ protected function check($archivename) { - $app = JFactory::getApplication(); + $app = JFactory::getApplication(); // Clean the name $archivename = JPath::clean($archivename); @@ -358,15 +358,15 @@ class SermondistributorModelImport extends JModelLegacy return false; } - $config = JFactory::getConfig(); + $config = JFactory::getConfig(); // set Package Name - $check['packagename'] = $archivename; + $check['packagename'] = $archivename; // set directory - $check['dir'] = $config->get('tmp_path'). '/' .$archivename; + $check['dir'] = $config->get('tmp_path'). '/' .$archivename; // set type - $check['type'] = $this->getType; + $check['type'] = $this->getType; return $check; } @@ -405,8 +405,8 @@ class SermondistributorModelImport extends JModelLegacy { jimport('joomla.filesystem.file'); - $config = JFactory::getConfig(); - $package = $config->get('tmp_path'). '/' .$package; + $config = JFactory::getConfig(); + $package = $config->get('tmp_path'). '/' .$package; // Is the package file a valid file? if (is_file($package)) @@ -469,11 +469,11 @@ class SermondistributorModelImport extends JModelLegacy if(SermondistributorHelper::checkArray($data['array'])) { // get user object - $user = JFactory::getUser(); + $user = JFactory::getUser(); // remove header if it has headers - $id_key = $data['target_headers']['id']; - $published_key = $data['target_headers']['published']; - $ordering_key = $data['target_headers']['ordering']; + $id_key = $data['target_headers']['id']; + $published_key = $data['target_headers']['published']; + $ordering_key = $data['target_headers']['ordering']; // get the first array set $firstSet = reset($data['array']); @@ -491,13 +491,13 @@ class SermondistributorModelImport extends JModelLegacy // Get a db connection. $db = JFactory::getDbo(); // set some defaults - $todayDate = JFactory::getDate()->toSql(); + $todayDate = JFactory::getDate()->toSql(); // get global action permissions - $canDo = SermondistributorHelper::getActions($table); - $canEdit = $canDo->get('core.edit'); - $canState = $canDo->get('core.edit.state'); - $canCreate = $canDo->get('core.create'); - $hasAlias = $this->getAliasesUsed($table); + $canDo = SermondistributorHelper::getActions($table); + $canEdit = $canDo->get('core.edit'); + $canState = $canDo->get('core.edit.state'); + $canCreate = $canDo->get('core.create'); + $hasAlias = $this->getAliasesUsed($table); // prosses the data foreach($data['array'] as $row) { @@ -519,11 +519,11 @@ class SermondistributorModelImport extends JModelLegacy if($found && $canEdit) { // update item - $id = $row[$id_key]; - $version = $db->loadResult(); + $id = $row[$id_key]; + $version = $db->loadResult(); // reset all buckets - $query = $db->getQuery(true); - $fields = array(); + $query = $db->getQuery(true); + $fields = array(); // Fields to update. foreach($row as $key => $cell) { @@ -568,8 +568,8 @@ class SermondistributorModelImport extends JModelLegacy } } // load the defaults - $fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id); - $fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate); + $fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id); + $fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate); // Conditions for which records should be updated. $conditions = array( $db->quoteName('id') . ' = ' . $id @@ -584,9 +584,9 @@ class SermondistributorModelImport extends JModelLegacy // insert item $query = $db->getQuery(true); // reset all buckets - $columns = array(); - $values = array(); - $version = false; + $columns = array(); + $values = array(); + $version = false; // Insert columns. Insert values. foreach($row as $key => $cell) { @@ -624,30 +624,30 @@ class SermondistributorModelImport extends JModelLegacy // set to insert array if(in_array($key, $data['target_headers']) && is_numeric($cell)) { - $columns[] = $target[$key]; - $values[] = $cell; + $columns[] = $target[$key]; + $values[] = $cell; } elseif(in_array($key, $data['target_headers']) && is_string($cell)) { - $columns[] = $target[$key]; - $values[] = $db->quote($cell); + $columns[] = $target[$key]; + $values[] = $db->quote($cell); } elseif(in_array($key, $data['target_headers']) && is_null($cell)) { // if import data is null then set empty - $columns[] = $target[$key]; - $values[] = "''"; + $columns[] = $target[$key]; + $values[] = "''"; } } // load the defaults - $columns[] = 'created_by'; - $values[] = $db->quote($user->id); - $columns[] = 'created'; - $values[] = $db->quote($todayDate); + $columns[] = 'created_by'; + $values[] = $db->quote($user->id); + $columns[] = 'created'; + $values[] = $db->quote($todayDate); if (!$version) { - $columns[] = 'version'; - $values[] = 1; + $columns[] = 'version'; + $values[] = 1; } // Prepare the insert query. $query diff --git a/admin/models/local_listing.php b/admin/models/local_listing.php index 61384dfe..808d5932 100644 --- a/admin/models/local_listing.php +++ b/admin/models/local_listing.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listing.php @author Llewellyn van der Merwe @@ -111,7 +111,7 @@ class SermondistributorModelLocal_listing extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -127,14 +127,14 @@ class SermondistributorModelLocal_listing extends JModelAdmin $item->metadata = $registry->toArray(); } - // Get the basic encription. + // Get the basic encryption. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object. + // Get the encryption object. $basic = new FOFEncryptAes($basickey, 128); if (!empty($item->url) && $basickey && !is_numeric($item->url) && $item->url === base64_encode(base64_decode($item->url, true))) { - // basic decript data url. + // basic decrypt data url. $item->url = rtrim($basic->decryptString($item->url), "\0"); } @@ -657,8 +657,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('local_listing'); } @@ -683,7 +681,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -693,17 +690,11 @@ class SermondistributorModelLocal_listing extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('local_listing.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -713,7 +704,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -724,7 +714,11 @@ class SermondistributorModelLocal_listing extends JModelAdmin } } - $this->table->name = $this->generateUniqe('name',$this->table->name); + // Only for strings + if (SermondistributorHelper::checkString($this->table->name) && !is_numeric($this->table->name)) + { + $this->table->name = $this->generateUniqe('name',$this->table->name); + } // insert all set values if (SermondistributorHelper::checkArray($values)) @@ -806,8 +800,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('local_listing'); } @@ -831,7 +823,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin if (!$this->user->authorise('local_listing.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -842,7 +833,6 @@ class SermondistributorModelLocal_listing extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -923,12 +913,12 @@ class SermondistributorModelLocal_listing extends JModelAdmin $data['metadata'] = (string) $metadata; } - // Get the basic encription key. + // Get the basic encryption key. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object + // Get the encryption object $basic = new FOFEncryptAes($basickey, 128); - // Encript data url. + // Encrypt data url. if (isset($data['url']) && $basickey) { $data['url'] = $basic->encryptString($data['url']); diff --git a/admin/models/local_listings.php b/admin/models/local_listings.php index 0694485d..1f822c05 100644 --- a/admin/models/local_listings.php +++ b/admin/models/local_listings.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listings.php @author Llewellyn van der Merwe @@ -280,9 +280,9 @@ class SermondistributorModelLocal_listings extends JModelList { $items = $db->loadObjectList(); - // Get the basic encription key. + // Get the basic encryption key. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object. + // Get the encryption object. $basic = new FOFEncryptAes($basickey, 128); // set values to display correctly. diff --git a/admin/models/manual_updater.php b/admin/models/manual_updater.php index 83bf8cbf..7db47d72 100644 --- a/admin/models/manual_updater.php +++ b/admin/models/manual_updater.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 45 of this MVC - @build 7th July, 2017 - @created 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage manual_updater.php @author Llewellyn van der Merwe @@ -34,16 +34,16 @@ jimport('joomla.application.component.modellist'); */ class SermondistributorModelManual_updater extends JModelList { - /** + /** * Model user data. * - * @var strings + * @var strings */ - protected $user; - protected $userId; - protected $guest; - protected $groups; - protected $levels; + protected $user; + protected $userId; + protected $guest; + protected $groups; + protected $levels; protected $app; protected $input; protected $uikitComp; @@ -55,16 +55,16 @@ class SermondistributorModelManual_updater extends JModelList */ protected function getListQuery() { - // Get the current user for authorisation checks - $this->user = JFactory::getUser(); - $this->userId = $this->user->get('id'); - $this->guest = $this->user->get('guest'); - $this->groups = $this->user->get('groups'); - $this->authorisedGroups = $this->user->getAuthorisedGroups(); - $this->levels = $this->user->getAuthorisedViewLevels(); - $this->app = JFactory::getApplication(); - $this->input = $this->app->input; - $this->initSet = true; + // Get the current user for authorisation checks + $this->user = JFactory::getUser(); + $this->userId = $this->user->get('id'); + $this->guest = $this->user->get('guest'); + $this->groups = $this->user->get('groups'); + $this->authorisedGroups = $this->user->getAuthorisedGroups(); + $this->levels = $this->user->getAuthorisedViewLevels(); + $this->app = JFactory::getApplication(); + $this->input = $this->app->input; + $this->initSet = true; // Make sure all records load, since no pagination allowed. $this->setState('list.limit', 0); // Get a db connection. @@ -95,28 +95,28 @@ class SermondistributorModelManual_updater extends JModelList */ public function getItems() { - $user = JFactory::getUser(); - // check if this user has permission to access items - if (!$user->authorise('manual_updater.access', 'com_sermondistributor')) - { + $user = JFactory::getUser(); + // check if this user has permission to access items + if (!$user->authorise('manual_updater.access', 'com_sermondistributor')) + { $app = JFactory::getApplication(); $app->enqueueMessage(JText::_('Not authorised!'), 'error'); // redirect away if not a correct (TODO for now we go to default view) $app->redirect('index.php?option=com_sermondistributor'); return false; - } + } // load parent items $items = parent::getItems(); // Get the global params $globalParams = JComponentHelper::getParams('com_sermondistributor', true); - // Get the basic encription. + // Get the basic encryption. $basickey = SermondistributorHelper::getCryptKey('basic'); - // Get the encription object. + // Get the encryption object. $basic = new FOFEncryptAes($basickey, 128); - // Convert the parameter fields into objects. + // Insure all item fields are adapted where needed. if (SermondistributorHelper::checkArray($items)) { foreach ($items as $nr => &$item) diff --git a/admin/models/preacher.php b/admin/models/preacher.php index 3f53e003..09af9409 100644 --- a/admin/models/preacher.php +++ b/admin/models/preacher.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preacher.php @@ -79,7 +79,7 @@ class SermondistributorModelPreacher extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -661,8 +661,6 @@ class SermondistributorModelPreacher extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('preacher'); } @@ -687,7 +685,6 @@ class SermondistributorModelPreacher extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -697,17 +694,11 @@ class SermondistributorModelPreacher extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('preacher.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -717,7 +708,6 @@ class SermondistributorModelPreacher extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -727,7 +717,6 @@ class SermondistributorModelPreacher extends JModelAdmin continue; } } - list($this->table->name, $this->table->alias) = $this->_generateNewTitle($this->table->alias, $this->table->name); // insert all set values @@ -810,8 +799,6 @@ class SermondistributorModelPreacher extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('preacher'); } @@ -835,7 +822,6 @@ class SermondistributorModelPreacher extends JModelAdmin if (!$this->user->authorise('preacher.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -846,7 +832,6 @@ class SermondistributorModelPreacher extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else diff --git a/admin/models/preachers.php b/admin/models/preachers.php index 5a93cb8f..efad2d9a 100644 --- a/admin/models/preachers.php +++ b/admin/models/preachers.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preachers.php diff --git a/admin/models/series.php b/admin/models/series.php index e9740963..deb71d5c 100644 --- a/admin/models/series.php +++ b/admin/models/series.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.php @@ -79,7 +79,7 @@ class SermondistributorModelSeries extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -661,8 +661,6 @@ class SermondistributorModelSeries extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('series'); } @@ -687,7 +685,6 @@ class SermondistributorModelSeries extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -697,17 +694,11 @@ class SermondistributorModelSeries extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('series.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -717,7 +708,6 @@ class SermondistributorModelSeries extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -727,7 +717,6 @@ class SermondistributorModelSeries extends JModelAdmin continue; } } - list($this->table->name, $this->table->alias) = $this->_generateNewTitle($this->table->alias, $this->table->name); // insert all set values @@ -810,8 +799,6 @@ class SermondistributorModelSeries extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('series'); } @@ -835,7 +822,6 @@ class SermondistributorModelSeries extends JModelAdmin if (!$this->user->authorise('series.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -846,7 +832,6 @@ class SermondistributorModelSeries extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else diff --git a/admin/models/series_list.php b/admin/models/series_list.php index 141a1b7e..0502df52 100644 --- a/admin/models/series_list.php +++ b/admin/models/series_list.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series_list.php diff --git a/admin/models/sermon.php b/admin/models/sermon.php index 1f452140..198b0d36 100644 --- a/admin/models/sermon.php +++ b/admin/models/sermon.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.php @@ -79,7 +79,7 @@ class SermondistributorModelSermon extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -660,8 +660,6 @@ class SermondistributorModelSermon extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('sermon'); } @@ -701,7 +699,6 @@ class SermondistributorModelSermon extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -711,17 +708,11 @@ class SermondistributorModelSermon extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('sermon.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -731,7 +722,6 @@ class SermondistributorModelSermon extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -831,8 +821,6 @@ class SermondistributorModelSermon extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('sermon'); } @@ -872,7 +860,6 @@ class SermondistributorModelSermon extends JModelAdmin if (!$this->user->authorise('sermon.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -883,7 +870,6 @@ class SermondistributorModelSermon extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else diff --git a/admin/models/sermondistributor.php b/admin/models/sermondistributor.php index ee0bad0f..e38e5eee 100644 --- a/admin/models/sermondistributor.php +++ b/admin/models/sermondistributor.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermondistributor.php @@ -37,11 +37,11 @@ class SermondistributorModelSermondistributor extends JModelList { public function getIcons() { - // load user for access menus - $user = JFactory::getUser(); - // reset icon array + // load user for access menus + $user = JFactory::getUser(); + // reset icon array $icons = array(); - // view groups array + // view groups array $viewGroups = array( 'main' => array('png.preacher.add', 'png.preachers', 'png.sermon.add', 'png.sermons', 'png.sermons.catid', 'png.series.add', 'png.series_list', 'png.statistics', 'png.external_source.add', 'png.external_sources', 'png.manual_updater', 'png.local_listings', 'png.help_documents') ); @@ -90,92 +90,92 @@ class SermondistributorModelSermondistributor extends JModelList 'help_documents.submenu' => 'help_document.submenu', 'help_documents.dashboard_list' => 'help_document.dashboard_list'); foreach($viewGroups as $group => $views) - { + { $i = 0; if (SermondistributorHelper::checkArray($views)) - { + { foreach($views as $view) { $add = false; if (strpos($view,'.') !== false) - { - $dwd = explode('.', $view); - if (count($dwd) == 3) - { - list($type, $name, $action) = $dwd; - } - elseif (count($dwd) == 2) - { - list($type, $name) = $dwd; - $action = false; - } - if ($action) - { - $viewName = $name; - switch($action) - { - case 'add': - $url ='index.php?option=com_sermondistributor&view='.$name.'&layout=edit'; - $image = $name.'_'.$action.'.'.$type; - $alt = $name.' '.$action; - $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U').'_ADD'; - $add = true; - break; - default: - $url = 'index.php?option=com_categories&view=categories&extension=com_sermondistributor.'.$name; - $image = $name.'_'.$action.'.'.$type; - $alt = $name.' '.$action; - $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U').'_'.SermondistributorHelper::safeString($action,'U'); - break; - } - } - else - { - $viewName = $name; - $alt = $name; - $url = 'index.php?option=com_sermondistributor&view='.$name; - $image = $name.'.'.$type; - $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U'); - $hover = false; - } - } - else - { - $viewName = $view; - $alt = $view; - $url = 'index.php?option=com_sermondistributor&view='.$view; - $image = $view.'.png'; - $name = ucwords($view).''; - $hover = false; - } - // first make sure the view access is set - if (SermondistributorHelper::checkArray($viewAccess)) - { + { + $dwd = explode('.', $view); + if (count($dwd) == 3) + { + list($type, $name, $action) = $dwd; + } + elseif (count($dwd) == 2) + { + list($type, $name) = $dwd; + $action = false; + } + if ($action) + { + $viewName = $name; + switch($action) + { + case 'add': + $url ='index.php?option=com_sermondistributor&view='.$name.'&layout=edit'; + $image = $name.'_'.$action.'.'.$type; + $alt = $name.' '.$action; + $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U').'_ADD'; + $add = true; + break; + default: + $url = 'index.php?option=com_categories&view=categories&extension=com_sermondistributor.'.$name; + $image = $name.'_'.$action.'.'.$type; + $alt = $name.' '.$action; + $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U').'_'.SermondistributorHelper::safeString($action,'U'); + break; + } + } + else + { + $viewName = $name; + $alt = $name; + $url = 'index.php?option=com_sermondistributor&view='.$name; + $image = $name.'.'.$type; + $name = 'COM_SERMONDISTRIBUTOR_DASHBOARD_'.SermondistributorHelper::safeString($name,'U'); + $hover = false; + } + } + else + { + $viewName = $view; + $alt = $view; + $url = 'index.php?option=com_sermondistributor&view='.$view; + $image = $view.'.png'; + $name = ucwords($view).''; + $hover = false; + } + // first make sure the view access is set + if (SermondistributorHelper::checkArray($viewAccess)) + { // setup some defaults $dashboard_add = false; $dashboard_list = false; - $accessTo = ''; - $accessAdd = ''; - // acces checking start - $accessCreate = (isset($viewAccess[$viewName.'.create'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.create']):false; - $accessAccess = (isset($viewAccess[$viewName.'.access'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.access']):false; + $accessTo = ''; + $accessAdd = ''; + // acces checking start + $accessCreate = (isset($viewAccess[$viewName.'.create'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.create']):false; + $accessAccess = (isset($viewAccess[$viewName.'.access'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.access']):false; // set main controllers $accessDashboard_add = (isset($viewAccess[$viewName.'.dashboard_add'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.dashboard_add']):false; $accessDashboard_list = (isset($viewAccess[$viewName.'.dashboard_list'])) ? SermondistributorHelper::checkString($viewAccess[$viewName.'.dashboard_list']):false; - // check for adding access - if ($add && $accessCreate) - { - $accessAdd = $viewAccess[$viewName.'.create']; - } - elseif ($add) - { - $accessAdd = 'core.create'; - } - // check if acces to view is set - if ($accessAccess) - { - $accessTo = $viewAccess[$viewName.'.access']; - } + // check for adding access + if ($add && $accessCreate) + { + $accessAdd = $viewAccess[$viewName.'.create']; + } + elseif ($add) + { + $accessAdd = 'core.create'; + } + // check if acces to view is set + if ($accessAccess) + { + $accessTo = $viewAccess[$viewName.'.access']; + } // set main access controllers if ($accessDashboard_add) { @@ -185,71 +185,71 @@ class SermondistributorModelSermondistributor extends JModelList { $dashboard_list = $user->authorise($viewAccess[$viewName.'.dashboard_list'], 'com_sermondistributor'); } - if (SermondistributorHelper::checkString($accessAdd) && SermondistributorHelper::checkString($accessTo)) - { - // check access - if($user->authorise($accessAdd, 'com_sermondistributor') && $user->authorise($accessTo, 'com_sermondistributor') && $dashboard_add) - { - $icons[$group][$i] = new StdClass; - $icons[$group][$i]->url = $url; - $icons[$group][$i]->name = $name; - $icons[$group][$i]->image = $image; - $icons[$group][$i]->alt = $alt; - } - } - elseif (SermondistributorHelper::checkString($accessTo)) - { - // check access - if($user->authorise($accessTo, 'com_sermondistributor') && $dashboard_list) - { - $icons[$group][$i] = new StdClass; - $icons[$group][$i]->url = $url; - $icons[$group][$i]->name = $name; - $icons[$group][$i]->image = $image; - $icons[$group][$i]->alt = $alt; - } - } - elseif (SermondistributorHelper::checkString($accessAdd)) - { - // check access - if($user->authorise($accessAdd, 'com_sermondistributor') && $dashboard_add) - { - $icons[$group][$i] = new StdClass; - $icons[$group][$i]->url = $url; - $icons[$group][$i]->name = $name; - $icons[$group][$i]->image = $image; - $icons[$group][$i]->alt = $alt; - } - } - else - { - $icons[$group][$i] = new StdClass; - $icons[$group][$i]->url = $url; - $icons[$group][$i]->name = $name; - $icons[$group][$i]->image = $image; - $icons[$group][$i]->alt = $alt; - } - } - else - { - $icons[$group][$i] = new StdClass; - $icons[$group][$i]->url = $url; - $icons[$group][$i]->name = $name; - $icons[$group][$i]->image = $image; - $icons[$group][$i]->alt = $alt; - } - $i++; - } - } - else - { - $icons[$group][$i] = false; + if (SermondistributorHelper::checkString($accessAdd) && SermondistributorHelper::checkString($accessTo)) + { + // check access + if($user->authorise($accessAdd, 'com_sermondistributor') && $user->authorise($accessTo, 'com_sermondistributor') && $dashboard_add) + { + $icons[$group][$i] = new StdClass; + $icons[$group][$i]->url = $url; + $icons[$group][$i]->name = $name; + $icons[$group][$i]->image = $image; + $icons[$group][$i]->alt = $alt; + } + } + elseif (SermondistributorHelper::checkString($accessTo)) + { + // check access + if($user->authorise($accessTo, 'com_sermondistributor') && $dashboard_list) + { + $icons[$group][$i] = new StdClass; + $icons[$group][$i]->url = $url; + $icons[$group][$i]->name = $name; + $icons[$group][$i]->image = $image; + $icons[$group][$i]->alt = $alt; + } + } + elseif (SermondistributorHelper::checkString($accessAdd)) + { + // check access + if($user->authorise($accessAdd, 'com_sermondistributor') && $dashboard_add) + { + $icons[$group][$i] = new StdClass; + $icons[$group][$i]->url = $url; + $icons[$group][$i]->name = $name; + $icons[$group][$i]->image = $image; + $icons[$group][$i]->alt = $alt; + } + } + else + { + $icons[$group][$i] = new StdClass; + $icons[$group][$i]->url = $url; + $icons[$group][$i]->name = $name; + $icons[$group][$i]->image = $image; + $icons[$group][$i]->alt = $alt; + } + } + else + { + $icons[$group][$i] = new StdClass; + $icons[$group][$i]->url = $url; + $icons[$group][$i]->name = $name; + $icons[$group][$i]->image = $image; + $icons[$group][$i]->alt = $alt; + } + $i++; + } + } + else + { + $icons[$group][$i] = false; } } return $icons; } - + public function getGithub() { // load jquery (not sure why... but else the timeago breaks) @@ -270,7 +270,7 @@ class SermondistributorModelSermondistributor extends JModelList jQuery("#openissues") .append("" + issue.title + "") .append(" ") - .append("" + issue.user.login + " '.JText::_('COM_SERMONDISTRIBUTOR_OPENED_THIS').' '.JText::_('COM_SERMONDISTRIBUTOR_ISSUE').'-" + issue.number + " (" + timeago + ")") + .append("" + issue.user.login + " '.JText::_('COM_SERMONDISTRIBUTOR_OPENED_THIS').' '.JText::_('COM_SERMONDISTRIBUTOR_ISSUE').'-" + issue.number + " (" + timeago + ") ") .append(marked(issue.body)) .append("'.JText::_('COM_SERMONDISTRIBUTOR_RESPOND_TO_THIS_ISSUE_ON_GITHUB').'..."); }); @@ -292,9 +292,21 @@ class SermondistributorModelSermondistributor extends JModelList // set the update notice while we are at it var activeVersion = tagreleases[0].tag_name.substring(1); if (activeVersion === manifest.version) { + // local version is in sync with latest release jQuery(".update-notice").html("'.JText::_('COM_SERMONDISTRIBUTOR_UP_TO_DATE').'"); } else { - jQuery(".update-notice").html("'.JText::_('COM_SERMONDISTRIBUTOR_OUT_OF_DATE').'"); + // split versions in to array + var activeVersionArray = activeVersion.split("."); + var localVersionArray = manifest.version.split("."); + if ((+localVersionArray[0] > +activeVersionArray[0]) || + (+localVersionArray[0] == +activeVersionArray[0] && +localVersionArray[1] > +activeVersionArray[1]) || + (+localVersionArray[0] == +activeVersionArray[0] && +localVersionArray[1] == +activeVersionArray[1] && +localVersionArray[2] > +activeVersionArray[2])) { + // local version head latest release + jQuery(".update-notice").html("'.JText::_('COM_SERMONDISTRIBUTOR_BETA_RELEASE').'"); + } else { + // local version behind latest release + jQuery(".update-notice").html("'.JText::_('COM_SERMONDISTRIBUTOR_OUT_OF_DATE').'"); + } } // set the taged releases jQuery("#tagreleases").html(""); @@ -329,8 +341,8 @@ class SermondistributorModelSermondistributor extends JModelList 'closedissues' => $create.''.JText::_('COM_SERMONDISTRIBUTOR_A_FEW_CLOSED_ISSUES_FROM_GITHUB_IS_LOADING').'..'.$moreclosed, 'tagreleases' => ''.JText::_('COM_SERMONDISTRIBUTOR_LAST_FEW_RELEASES_FROM_GITHUB_IS_LOADING').'..'.$viewissues ); - } - + } + public function getWiki() { $document = JFactory::getDocument(); @@ -349,8 +361,8 @@ class SermondistributorModelSermondistributor extends JModelList return ''.JText::_('COM_SERMONDISTRIBUTOR_THE_WIKI_IS_LOADING').'..'; } - - + + public function getNoticeboard() { // get the document to load the scripts @@ -367,7 +379,7 @@ class SermondistributorModelSermondistributor extends JModelList getIS(1,board).done(function(result) { if (result){ jQuery("#cpanel_tabTabs a").each(function() { - if (this.href.indexOf("#vast_development_method") >= 0) { + if (this.href.indexOf("#vast_development_method") >= 0 || this.href.indexOf("#notice_board") >= 0) { var textVDM = jQuery(this).text(); jQuery(this).html("1 "+textVDM); jQuery(this).attr("id","vdm-new-notice"); @@ -422,8 +434,8 @@ class SermondistributorModelSermondistributor extends JModelList });'); return ''.JText::_('COM_SERMONDISTRIBUTOR_THE_NOTICE_BOARD_IS_LOADING').'..'; - } - + } + public function getReadme() { $document = JFactory::getDocument(); @@ -440,5 +452,5 @@ class SermondistributorModelSermondistributor extends JModelList });'); return ''.JText::_('COM_SERMONDISTRIBUTOR_THE_README_IS_LOADING').'..'; - } + } } diff --git a/admin/models/sermons.php b/admin/models/sermons.php index 7e7e8b8e..80e714aa 100644 --- a/admin/models/sermons.php +++ b/admin/models/sermons.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermons.php diff --git a/admin/models/statistic.php b/admin/models/statistic.php index 0e20f3aa..e867bc7f 100644 --- a/admin/models/statistic.php +++ b/admin/models/statistic.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistic.php @author Llewellyn van der Merwe @@ -79,7 +79,7 @@ class SermondistributorModelStatistic extends JModelAdmin { if ($item = parent::getItem($pk)) { - if (!empty($item->params)) + if (!empty($item->params) && !is_array($item->params)) { // Convert the params field to an array. $registry = new Registry; @@ -518,8 +518,6 @@ class SermondistributorModelStatistic extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('statistic'); } @@ -544,7 +542,6 @@ class SermondistributorModelStatistic extends JModelAdmin } $newIds = array(); - // Parent exists so let's proceed while (!empty($pks)) { @@ -554,17 +551,11 @@ class SermondistributorModelStatistic extends JModelAdmin $this->table->reset(); // only allow copy if user may edit this item. - if (!$this->user->authorise('statistic.edit', $contexts[$pk])) - { - // Not fatal error - $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); - continue; - } // Check that the row actually exists @@ -574,7 +565,6 @@ class SermondistributorModelStatistic extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else @@ -585,7 +575,11 @@ class SermondistributorModelStatistic extends JModelAdmin } } - $this->table->filename = $this->generateUniqe('filename',$this->table->filename); + // Only for strings + if (SermondistributorHelper::checkString($this->table->filename) && !is_numeric($this->table->filename)) + { + $this->table->filename = $this->generateUniqe('filename',$this->table->filename); + } // insert all set values if (SermondistributorHelper::checkArray($values)) @@ -667,8 +661,6 @@ class SermondistributorModelStatistic extends JModelAdmin $this->user = JFactory::getUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); - $this->contentType = new JUcmType; - $this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->canDo = SermondistributorHelper::getActions('statistic'); } @@ -692,7 +684,6 @@ class SermondistributorModelStatistic extends JModelAdmin if (!$this->user->authorise('statistic.edit', $contexts[$pk])) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); - return false; } @@ -703,7 +694,6 @@ class SermondistributorModelStatistic extends JModelAdmin { // Fatal error $this->setError($error); - return false; } else diff --git a/admin/models/statistics.php b/admin/models/statistics.php index 2ef053ad..68d97e1e 100644 --- a/admin/models/statistics.php +++ b/admin/models/statistics.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistics.php @author Llewellyn van der Merwe diff --git a/admin/sermondistributor.php b/admin/sermondistributor.php index b3318150..2a9537ee 100644 --- a/admin/sermondistributor.php +++ b/admin/sermondistributor.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version 1.4.1 - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermondistributor.php @@ -44,10 +44,7 @@ $document->addScript('components/com_sermondistributor/assets/js/admin.js'); // require helper files JLoader::register('SermondistributorHelper', dirname(__FILE__) . '/helpers/sermondistributor.php'); -JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php'); - -// Triger the Global Admin Event -SermondistributorHelper::globalEvent($document); +JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php'); // import joomla controller library jimport('joomla.application.component.controller'); diff --git a/admin/sql/updates/mysql/1.3.8.sql b/admin/sql/updates/mysql/1.3.8.sql index 12931b31..a277d7b8 100644 --- a/admin/sql/updates/mysql/1.3.8.sql +++ b/admin/sql/updates/mysql/1.3.8.sql @@ -1,68 +1,68 @@ -CREATE TABLE IF NOT EXISTS `#__sermondistributor_external_source` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `asset_id` INT(255) UNSIGNED NOT NULL DEFAULT '0', - `build` TINYINT(1) NOT NULL DEFAULT '0', - `description` VARCHAR(255) NOT NULL DEFAULT '', - `dropboxoptions` TINYINT(1) NOT NULL DEFAULT '1', - `externalsources` INT(11) NOT NULL DEFAULT '0', - `filetypes` TEXT NOT NULL, - `folder` TEXT NOT NULL, - `not_required` INT(1) NOT NULL DEFAULT '0', - `oauthtoken` TEXT NOT NULL, - `permissiontype` VARCHAR(64) NOT NULL DEFAULT '', - `sharedurl` TEXT NOT NULL, - `update_method` TINYINT NOT NULL DEFAULT '0', - `update_timer` INT(1) NOT NULL DEFAULT '0', - `params` TEXT NOT NULL, - `published` tinyint(1) NOT NULL DEFAULT '1', - `created_by` int(11) NOT NULL DEFAULT '0', - `modified_by` int(11) NOT NULL DEFAULT '0', - `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `checked_out` int(11) NOT NULL, - `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `version` int(11) NOT NULL DEFAULT '1', - `hits` int(11) NOT NULL DEFAULT '0', - `ordering` int(11) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - KEY `idx_checkout` (`checked_out`), - KEY `idx_createdby` (`created_by`), - KEY `idx_modifiedby` (`modified_by`), - KEY `idx_state` (`published`), - KEY `idx_description` (`description`), - KEY `idx_externalsources` (`externalsources`), - KEY `idx_update_method` (`update_method`), - KEY `idx_build` (`build`), - KEY `idx_dropboxoptions` (`dropboxoptions`), - KEY `idx_permissiontype` (`permissiontype`) -) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8; - -CREATE TABLE IF NOT EXISTS `#__sermondistributor_local_listing` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `asset_id` INT(255) UNSIGNED NOT NULL DEFAULT '0', - `build` TINYINT(1) NOT NULL DEFAULT '0', - `external_source` int(11) NOT NULL DEFAULT '0', - `key` VARCHAR(255) NOT NULL DEFAULT '', - `name` VARCHAR(255) NOT NULL DEFAULT '', - `size` INT(50) NOT NULL DEFAULT '0', - `url` TEXT NOT NULL, - `params` TEXT NOT NULL, - `published` tinyint(1) NOT NULL DEFAULT '1', - `created_by` int(11) NOT NULL DEFAULT '0', - `modified_by` int(11) NOT NULL DEFAULT '0', - `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `checked_out` int(11) NOT NULL, - `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', - `version` int(11) NOT NULL DEFAULT '1', - `hits` int(11) NOT NULL DEFAULT '0', - `ordering` int(11) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - KEY `idx_checkout` (`checked_out`), - KEY `idx_createdby` (`created_by`), - KEY `idx_modifiedby` (`modified_by`), - KEY `idx_state` (`published`), - KEY `idx_name` (`name`), - KEY `idx_build` (`build`), - KEY `idx_key` (`key`) +CREATE TABLE IF NOT EXISTS `#__sermondistributor_external_source` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `asset_id` INT(255) UNSIGNED NOT NULL DEFAULT '0', + `build` TINYINT(1) NOT NULL DEFAULT '0', + `description` VARCHAR(255) NOT NULL DEFAULT '', + `dropboxoptions` TINYINT(1) NOT NULL DEFAULT '1', + `externalsources` INT(11) NOT NULL DEFAULT '0', + `filetypes` TEXT NOT NULL, + `folder` TEXT NOT NULL, + `not_required` INT(1) NOT NULL DEFAULT '0', + `oauthtoken` TEXT NOT NULL, + `permissiontype` VARCHAR(64) NOT NULL DEFAULT '', + `sharedurl` TEXT NOT NULL, + `update_method` TINYINT NOT NULL DEFAULT '0', + `update_timer` INT(1) NOT NULL DEFAULT '0', + `params` TEXT NOT NULL, + `published` tinyint(1) NOT NULL DEFAULT '1', + `created_by` int(11) NOT NULL DEFAULT '0', + `modified_by` int(11) NOT NULL DEFAULT '0', + `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `checked_out` int(11) NOT NULL, + `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `version` int(11) NOT NULL DEFAULT '1', + `hits` int(11) NOT NULL DEFAULT '0', + `ordering` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `idx_checkout` (`checked_out`), + KEY `idx_createdby` (`created_by`), + KEY `idx_modifiedby` (`modified_by`), + KEY `idx_state` (`published`), + KEY `idx_description` (`description`), + KEY `idx_externalsources` (`externalsources`), + KEY `idx_update_method` (`update_method`), + KEY `idx_build` (`build`), + KEY `idx_dropboxoptions` (`dropboxoptions`), + KEY `idx_permissiontype` (`permissiontype`) +) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `#__sermondistributor_local_listing` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `asset_id` INT(255) UNSIGNED NOT NULL DEFAULT '0', + `build` TINYINT(1) NOT NULL DEFAULT '0', + `external_source` int(11) NOT NULL DEFAULT '0', + `key` VARCHAR(255) NOT NULL DEFAULT '', + `name` VARCHAR(255) NOT NULL DEFAULT '', + `size` INT(50) NOT NULL DEFAULT '0', + `url` TEXT NOT NULL, + `params` TEXT NOT NULL, + `published` tinyint(1) NOT NULL DEFAULT '1', + `created_by` int(11) NOT NULL DEFAULT '0', + `modified_by` int(11) NOT NULL DEFAULT '0', + `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `checked_out` int(11) NOT NULL, + `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', + `version` int(11) NOT NULL DEFAULT '1', + `hits` int(11) NOT NULL DEFAULT '0', + `ordering` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `idx_checkout` (`checked_out`), + KEY `idx_createdby` (`created_by`), + KEY `idx_modifiedby` (`modified_by`), + KEY `idx_state` (`published`), + KEY `idx_name` (`name`), + KEY `idx_build` (`build`), + KEY `idx_key` (`key`) ) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8; diff --git a/admin/tables/external_source.php b/admin/tables/external_source.php index a01f8ff3..5e90f429 100644 --- a/admin/tables/external_source.php +++ b/admin/tables/external_source.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage external_source.php @author Llewellyn van der Merwe diff --git a/admin/tables/help_document.php b/admin/tables/help_document.php index 1a1fdf89..79321254 100644 --- a/admin/tables/help_document.php +++ b/admin/tables/help_document.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage help_document.php @author Llewellyn van der Merwe diff --git a/admin/tables/local_listing.php b/admin/tables/local_listing.php index f845e14a..aea329c1 100644 --- a/admin/tables/local_listing.php +++ b/admin/tables/local_listing.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 11 of this MVC - @build 31st March, 2017 - @created 20th November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage local_listing.php @author Llewellyn van der Merwe diff --git a/admin/tables/preacher.php b/admin/tables/preacher.php index 0326a208..4cfc6efb 100644 --- a/admin/tables/preacher.php +++ b/admin/tables/preacher.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage preacher.php diff --git a/admin/tables/series.php b/admin/tables/series.php index 3e796933..59a9946e 100644 --- a/admin/tables/series.php +++ b/admin/tables/series.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 16 of this MVC - @build 4th November, 2016 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage series.php diff --git a/admin/tables/sermon.php b/admin/tables/sermon.php index dfb007cc..87fb7a61 100644 --- a/admin/tables/sermon.php +++ b/admin/tables/sermon.php @@ -10,8 +10,8 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 90 of this MVC - @build 24th August, 2017 + @version 2.0.x + @build 3rd March, 2018 @created 22nd October, 2015 @package Sermon Distributor @subpackage sermon.php diff --git a/admin/tables/statistic.php b/admin/tables/statistic.php index dfffb34f..a1b333ab 100644 --- a/admin/tables/statistic.php +++ b/admin/tables/statistic.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 9 of this MVC - @build 9th July, 2017 - @created 29th October, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage statistic.php @author Llewellyn van der Merwe diff --git a/admin/views/external_source/submitbutton.js b/admin/views/external_source/submitbutton.js index 8da9dcc3..d06c1cd6 100644 --- a/admin/views/external_source/submitbutton.js +++ b/admin/views/external_source/submitbutton.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage submitbutton.js @author Llewellyn van der Merwe diff --git a/admin/views/external_source/tmpl/edit.php b/admin/views/external_source/tmpl/edit.php index 61016765..e82934af 100644 --- a/admin/views/external_source/tmpl/edit.php +++ b/admin/views/external_source/tmpl/edit.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage edit.php @author Llewellyn van der Merwe @@ -675,6 +675,21 @@ jQuery('#adminForm').on('change', '#jform_dropboxoptions',function (e) }); +// #jform_update_method listeners for update_method_vvvvvww function +jQuery('#jform_update_method').on('keyup',function() +{ + var update_method_vvvvvww = jQuery("#jform_update_method input[type='radio']:checked").val(); + vvvvvww(update_method_vvvvvww); + +}); +jQuery('#adminForm').on('change', '#jform_update_method',function (e) +{ + e.preventDefault(); + var update_method_vvvvvww = jQuery("#jform_update_method input[type='radio']:checked").val(); + vvvvvww(update_method_vvvvvww); + +}); + jQuery('input.form-field-repeatable').on('value-update', function(e, value){ if (value) diff --git a/admin/views/external_source/view.html.php b/admin/views/external_source/view.html.php index d9b3b96d..029ad593 100644 --- a/admin/views/external_source/view.html.php +++ b/admin/views/external_source/view.html.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage view.html.php @author Llewellyn van der Merwe @@ -40,38 +40,37 @@ class SermondistributorViewExternal_source extends JViewLegacy */ public function display($tpl = null) { - // Check for errors. - if (count($errors = $this->get('Errors'))) - { - JError::raiseError(500, implode('', $errors)); - return false; - } - // Assign the variables - $this->form = $this->get('Form'); - $this->item = $this->get('Item'); - $this->script = $this->get('Script'); - $this->state = $this->get('State'); - // get action permissions - $this->canDo = SermondistributorHelper::getActions('external_source',$this->item); + $this->form = $this->get('Form'); + $this->item = $this->get('Item'); + $this->script = $this->get('Script'); + $this->state = $this->get('State'); + // get action permissions + $this->canDo = SermondistributorHelper::getActions('external_source',$this->item); // get input $jinput = JFactory::getApplication()->input; - $this->ref = $jinput->get('ref', 0, 'word'); - $this->refid = $jinput->get('refid', 0, 'int'); - $this->referral = ''; + $this->ref = $jinput->get('ref', 0, 'word'); + $this->refid = $jinput->get('refid', 0, 'int'); + $this->referral = ''; if ($this->refid) - { - // return to the item that refered to this item - $this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid; - } - elseif($this->ref) - { - // return to the list view that refered to this item - $this->referral = '&ref='.(string)$this->ref; - } + { + // return to the item that refered to this item + $this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid; + } + elseif($this->ref) + { + // return to the list view that refered to this item + $this->referral = '&ref='.(string)$this->ref; + } // Set the toolbar $this->addToolBar(); + + // Check for errors. + if (count($errors = $this->get('Errors'))) + { + throw new Exception(implode("\n", $errors), 500); + } // Display the template parent::display($tpl); @@ -174,7 +173,7 @@ class SermondistributorViewExternal_source extends JViewLegacy } } - /** + /** * Escapes a value for output in a view script. * * @param mixed $var The output to escape. @@ -188,7 +187,7 @@ class SermondistributorViewExternal_source extends JViewLegacy // use the helper htmlEscape method instead and shorten the string return SermondistributorHelper::htmlEscape($var, $this->_charset, true, 30); } - // use the helper htmlEscape method instead. + // use the helper htmlEscape method instead. return SermondistributorHelper::htmlEscape($var, $this->_charset); } @@ -200,13 +199,16 @@ class SermondistributorViewExternal_source extends JViewLegacy protected function setDocument() { $isNew = ($this->item->id < 1); - $document = JFactory::getDocument(); - $document->setTitle(JText::_($isNew ? 'COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_NEW' : 'COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_EDIT')); - $document->addStyleSheet(JURI::root() . "administrator/components/com_sermondistributor/assets/css/external_source.css"); + if (!isset($this->document)) + { + $this->document = JFactory::getDocument(); + } + $this->document->setTitle(JText::_($isNew ? 'COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_NEW' : 'COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_EDIT')); + $this->document->addStyleSheet(JURI::root() . "administrator/components/com_sermondistributor/assets/css/external_source.css", (SermondistributorHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css'); // Add Ajax Token - $document->addScriptDeclaration("var token = '".JSession::getFormToken()."';"); - $document->addScript(JURI::root() . $this->script); - $document->addScript(JURI::root() . "administrator/components/com_sermondistributor/views/external_source/submitbutton.js"); + $this->document->addScriptDeclaration("var token = '".JSession::getFormToken()."';"); + $this->document->addScript(JURI::root() . $this->script, (SermondistributorHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); + $this->document->addScript(JURI::root() . "administrator/components/com_sermondistributor/views/external_source/submitbutton.js", (SermondistributorHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); JText::script('view not acceptable. Error'); } } diff --git a/admin/views/external_sources/tmpl/default.php b/admin/views/external_sources/tmpl/default.php index 45077999..21846c4e 100644 --- a/admin/views/external_sources/tmpl/default.php +++ b/admin/views/external_sources/tmpl/default.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_batch_body.php b/admin/views/external_sources/tmpl/default_batch_body.php index e0eeb28d..e5eaaaad 100644 --- a/admin/views/external_sources/tmpl/default_batch_body.php +++ b/admin/views/external_sources/tmpl/default_batch_body.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_batch_body.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_batch_footer.php b/admin/views/external_sources/tmpl/default_batch_footer.php index 99dbaabd..a7ec5ec8 100644 --- a/admin/views/external_sources/tmpl/default_batch_footer.php +++ b/admin/views/external_sources/tmpl/default_batch_footer.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_batch_footer.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_body.php b/admin/views/external_sources/tmpl/default_body.php index 051a9123..56d96650 100644 --- a/admin/views/external_sources/tmpl/default_body.php +++ b/admin/views/external_sources/tmpl/default_body.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_body.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_foot.php b/admin/views/external_sources/tmpl/default_foot.php index 1cac90f1..53e4f96c 100644 --- a/admin/views/external_sources/tmpl/default_foot.php +++ b/admin/views/external_sources/tmpl/default_foot.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_foot.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_head.php b/admin/views/external_sources/tmpl/default_head.php index 3e1e449c..918ff8a0 100644 --- a/admin/views/external_sources/tmpl/default_head.php +++ b/admin/views/external_sources/tmpl/default_head.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_head.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/tmpl/default_toolbar.php b/admin/views/external_sources/tmpl/default_toolbar.php index 34b4dae6..8231b9a2 100644 --- a/admin/views/external_sources/tmpl/default_toolbar.php +++ b/admin/views/external_sources/tmpl/default_toolbar.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage default_toolbar.php @author Llewellyn van der Merwe diff --git a/admin/views/external_sources/view.html.php b/admin/views/external_sources/view.html.php index bceb6dcb..33dcd735 100644 --- a/admin/views/external_sources/view.html.php +++ b/admin/views/external_sources/view.html.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 55 of this MVC - @build 17th July, 2017 - @created 3rd November, 2016 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage view.html.php @author Llewellyn van der Merwe @@ -46,39 +46,38 @@ class SermondistributorViewExternal_sources extends JViewLegacy SermondistributorHelper::addSubmenu('external_sources'); } - // Check for errors. - if (count($errors = $this->get('Errors'))) - { - JError::raiseError(500, implode('', $errors)); - return false; - } - // Assign data to the view - $this->items = $this->get('Items'); - $this->pagination = $this->get('Pagination'); - $this->state = $this->get('State'); - $this->user = JFactory::getUser(); - $this->listOrder = $this->escape($this->state->get('list.ordering')); - $this->listDirn = $this->escape($this->state->get('list.direction')); - $this->saveOrder = $this->listOrder == 'ordering'; - // get global action permissions - $this->canDo = SermondistributorHelper::getActions('external_source'); - $this->canEdit = $this->canDo->get('external_source.edit'); - $this->canState = $this->canDo->get('external_source.edit.state'); - $this->canCreate = $this->canDo->get('external_source.create'); - $this->canDelete = $this->canDo->get('external_source.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->items = $this->get('Items'); + $this->pagination = $this->get('Pagination'); + $this->state = $this->get('State'); + $this->user = JFactory::getUser(); + $this->listOrder = $this->escape($this->state->get('list.ordering')); + $this->listDirn = $this->escape($this->state->get('list.direction')); + $this->saveOrder = $this->listOrder == 'ordering'; + // get global action permissions + $this->canDo = SermondistributorHelper::getActions('external_source'); + $this->canEdit = $this->canDo->get('external_source.edit'); + $this->canState = $this->canDo->get('external_source.edit.state'); + $this->canCreate = $this->canDo->get('external_source.create'); + $this->canDelete = $this->canDo->get('external_source.delete'); + $this->canBatch = $this->canDo->get('core.batch'); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') { $this->addToolbar(); $this->sidebar = JHtmlSidebar::render(); - // load the batch html - if ($this->canCreate && $this->canEdit && $this->canState) - { - $this->batchDisplay = JHtmlBatch_::render(); - } + // load the batch html + if ($this->canCreate && $this->canEdit && $this->canState) + { + $this->batchDisplay = JHtmlBatch_::render(); + } + } + + // Check for errors. + if (count($errors = $this->get('Errors'))) + { + throw new Exception(implode("\n", $errors), 500); } // Display the template @@ -95,96 +94,96 @@ class SermondistributorViewExternal_sources extends JViewLegacy { JToolBarHelper::title(JText::_('COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES'), 'puzzle'); JHtmlSidebar::setAction('index.php?option=com_sermondistributor&view=external_sources'); - JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields'); + JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields'); if ($this->canCreate) - { + { JToolBarHelper::addNew('external_source.add'); } - // Only load if there are items - if (SermondistributorHelper::checkArray($this->items)) + // Only load if there are items + if (SermondistributorHelper::checkArray($this->items)) { - if ($this->canEdit) - { - JToolBarHelper::editList('external_source.edit'); - } + if ($this->canEdit) + { + JToolBarHelper::editList('external_source.edit'); + } - if ($this->canState) - { - JToolBarHelper::publishList('external_sources.publish'); - JToolBarHelper::unpublishList('external_sources.unpublish'); - JToolBarHelper::archiveList('external_sources.archive'); + if ($this->canState) + { + JToolBarHelper::publishList('external_sources.publish'); + JToolBarHelper::unpublishList('external_sources.unpublish'); + JToolBarHelper::archiveList('external_sources.archive'); - if ($this->canDo->get('core.admin')) - { - JToolBarHelper::checkin('external_sources.checkin'); - } - } + if ($this->canDo->get('core.admin')) + { + JToolBarHelper::checkin('external_sources.checkin'); + } + } - // Add a batch button - if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState) - { - // Get the toolbar object instance - $bar = JToolBar::getInstance('toolbar'); - // set the batch button name - $title = JText::_('JTOOLBAR_BATCH'); - // Instantiate a new JLayoutFile instance and render the batch button - $layout = new JLayoutFile('joomla.toolbar.batch'); - // add the button to the page - $dhtml = $layout->render(array('title' => $title)); - $bar->appendButton('Custom', $dhtml, 'batch'); - } + // Add a batch button + if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState) + { + // Get the toolbar object instance + $bar = JToolBar::getInstance('toolbar'); + // set the batch button name + $title = JText::_('JTOOLBAR_BATCH'); + // Instantiate a new JLayoutFile instance and render the batch button + $layout = new JLayoutFile('joomla.toolbar.batch'); + // add the button to the page + $dhtml = $layout->render(array('title' => $title)); + $bar->appendButton('Custom', $dhtml, 'batch'); + } - if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete)) - { - JToolbarHelper::deleteList('', 'external_sources.delete', 'JTOOLBAR_EMPTY_TRASH'); - } - elseif ($this->canState && $this->canDelete) - { - JToolbarHelper::trash('external_sources.trash'); - } + if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete)) + { + JToolbarHelper::deleteList('', 'external_sources.delete', 'JTOOLBAR_EMPTY_TRASH'); + } + elseif ($this->canState && $this->canDelete) + { + JToolbarHelper::trash('external_sources.trash'); + } if ($this->canDo->get('core.export') && $this->canDo->get('external_source.export')) { JToolBarHelper::custom('external_sources.exportData', 'download', '', 'COM_SERMONDISTRIBUTOR_EXPORT_DATA', true); } - } + } if ($this->canDo->get('core.import') && $this->canDo->get('external_source.import')) { JToolBarHelper::custom('external_sources.importData', 'upload', '', 'COM_SERMONDISTRIBUTOR_IMPORT_DATA', false); } - // set help url for this view if found - $help_url = SermondistributorHelper::getHelpUrl('external_sources'); - if (SermondistributorHelper::checkString($help_url)) - { - JToolbarHelper::help('COM_SERMONDISTRIBUTOR_HELP_MANAGER', false, $help_url); - } + // set help url for this view if found + $help_url = SermondistributorHelper::getHelpUrl('external_sources'); + if (SermondistributorHelper::checkString($help_url)) + { + JToolbarHelper::help('COM_SERMONDISTRIBUTOR_HELP_MANAGER', false, $help_url); + } - // add the options comp button - if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) - { - JToolBarHelper::preferences('com_sermondistributor'); - } + // add the options comp button + if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) + { + JToolBarHelper::preferences('com_sermondistributor'); + } - if ($this->canState) - { + if ($this->canState) + { JHtmlSidebar::addFilter( JText::_('JOPTION_SELECT_PUBLISHED'), 'filter_published', JHtml::_('select.options', JHtml::_('jgrid.publishedOptions'), 'value', 'text', $this->state->get('filter.published'), true) ); - // only load if batch allowed - if ($this->canBatch) - { - JHtmlBatch_::addListSelection( - JText::_('COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_STATE'), - 'batch[published]', - JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true) - ); - } + // only load if batch allowed + if ($this->canBatch) + { + JHtmlBatch_::addListSelection( + JText::_('COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_STATE'), + 'batch[published]', + JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true) + ); + } } JHtmlSidebar::addFilter( @@ -196,11 +195,11 @@ class SermondistributorViewExternal_sources extends JViewLegacy if ($this->canBatch && $this->canCreate && $this->canEdit) { JHtmlBatch_::addListSelection( - JText::_('COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_ACCESS'), - 'batch[access]', - JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text') + JText::_('COM_SERMONDISTRIBUTOR_KEEP_ORIGINAL_ACCESS'), + 'batch[access]', + JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text') ); - } + } // Set Externalsources Selection $this->externalsourcesOptions = $this->getTheExternalsourcesSelections(); @@ -276,12 +275,15 @@ class SermondistributorViewExternal_sources extends JViewLegacy */ protected function setDocument() { - $document = JFactory::getDocument(); - $document->setTitle(JText::_('COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES')); - $document->addStyleSheet(JURI::root() . "administrator/components/com_sermondistributor/assets/css/external_sources.css"); + if (!isset($this->document)) + { + $this->document = JFactory::getDocument(); + } + $this->document->setTitle(JText::_('COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCES')); + $this->document->addStyleSheet(JURI::root() . "administrator/components/com_sermondistributor/assets/css/external_sources.css", (SermondistributorHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css'); } - /** + /** * Escapes a value for output in a view script. * * @param mixed $var The output to escape. @@ -292,10 +294,10 @@ class SermondistributorViewExternal_sources extends JViewLegacy { if(strlen($var) > 50) { - // use the helper htmlEscape method instead and shorten the string + // use the helper htmlEscape method instead and shorten the string return SermondistributorHelper::htmlEscape($var, $this->_charset, true); } - // use the helper htmlEscape method instead. + // use the helper htmlEscape method instead. return SermondistributorHelper::htmlEscape($var, $this->_charset); } @@ -315,7 +317,7 @@ class SermondistributorViewExternal_sources extends JViewLegacy 'a.build' => JText::_('COM_SERMONDISTRIBUTOR_EXTERNAL_SOURCE_BUILD_LABEL'), 'a.id' => JText::_('JGRID_HEADING_ID') ); - } + } protected function getTheExternalsourcesSelections() { diff --git a/admin/views/help_document/submitbutton.js b/admin/views/help_document/submitbutton.js index c6044af1..32fd60dc 100644 --- a/admin/views/help_document/submitbutton.js +++ b/admin/views/help_document/submitbutton.js @@ -9,9 +9,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage submitbutton.js @author Llewellyn van der Merwe diff --git a/admin/views/help_document/tmpl/edit.php b/admin/views/help_document/tmpl/edit.php index 2d5a43ad..ca4252e7 100644 --- a/admin/views/help_document/tmpl/edit.php +++ b/admin/views/help_document/tmpl/edit.php @@ -10,9 +10,9 @@ |_| /-------------------------------------------------------------------------------------------------------------------------------/ - @version @update number 20 of this MVC - @build 18th October, 2016 - @created 13th July, 2015 + @version 2.0.x + @build 3rd March, 2018 + @created 22nd October, 2015 @package Sermon Distributor @subpackage edit.php @author Llewellyn van der Merwe @@ -127,21 +127,6 @@ $componentParams = JComponentHelper::getParams('com_sermondistributor');
Please setup curl on your system, or sermondistributor will not function correctly!
' . $path . '