Compare commits
37 Commits
Author | SHA1 | Date | |
---|---|---|---|
7f52decf16 | |||
d2aa1fce0b | |||
3b774a8385 | |||
ee2fea1db8 | |||
c9150e930d | |||
e21980bbea | |||
32e3f6b86e | |||
0fd9d9d169 | |||
e7572e0557 | |||
6b70aa45e6 | |||
951e0c1f5d | |||
57bf464111 | |||
6871bfd9a2 | |||
3bc71a935c | |||
1cad434a39 | |||
a2224e3ad9 | |||
4bdb503973 | |||
4424179425 | |||
306b6b9787 | |||
0c30fa7f68 | |||
86624770b1 | |||
21756c3e55 | |||
ef8578104c | |||
80670beada | |||
3efbb7b4af | |||
36d45f2ff6 | |||
5a541340c8 | |||
15e3c82dd2 | |||
2ecf186846 | |||
fa199947d2 | |||
dea8ca3cae | |||
36d3a10ef8 | |||
4e65696d40 | |||
737785ea33 | |||
41defc9e7a | |||
5ca3d0b533 | |||
5331e32e11 |
57
README.md
57
README.md
@ -1,4 +1,4 @@
|
|||||||
# Component Builder (2.0.8)
|
# Component Builder (2.1.10)
|
||||||
|
|
||||||
This is a [Joomla 3.x] (http://www.joomla.org/) component.
|
This is a [Joomla 3.x] (http://www.joomla.org/) component.
|
||||||
|
|
||||||
@ -6,31 +6,25 @@ This is a [Joomla 3.x] (http://www.joomla.org/) component.
|
|||||||
|
|
||||||
The Component Builder for Joomla that is highly advanced, truly able to build extremely complex components in a fraction of the time.
|
The Component Builder for Joomla that is highly advanced, truly able to build extremely complex components in a fraction of the time.
|
||||||
|
|
||||||
> **You can purchase Component Builder with the following components as demo setup inside Component Builder:**
|
> **You can purchase demo content inside Component Builder:**
|
||||||
|
|
||||||
+ **Basic Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
|
+ **Development Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
|
||||||
|
|
||||||
*Help View Integration*
|
*Help View Integration*
|
||||||
|
|
||||||
+ **Medium Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
|
|
||||||
|
|
||||||
*Demo Component* see the build on [github] (https://github.com/namibia/demo-joomla-3-component)
|
*Demo Component* see the build on [github] (https://github.com/namibia/demo-joomla-3-component)
|
||||||
|
|
||||||
*Sermon Distributor* see the build on [github] (https://github.com/SermonDistributor/Joomla-3-Component)
|
+ **Dev + Howtos Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
|
||||||
|
|
||||||
+ **Advanced Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
|
|
||||||
|
|
||||||
*All the above*
|
*All the above*
|
||||||
|
|
||||||
*Component Builder* see the build on [github] (https://github.com/vdm-io/Joomla-Component-Builder)
|
*Sermon Distributor* see the build on [github] (https://github.com/SermonDistributor/Joomla-3-Component)
|
||||||
|
|
||||||
## Training & Help Videos
|
*Training & Help Videos* tutorials in the component included.
|
||||||
|
|
||||||
The Medium and Advanced Versions come with video tutorials in the component included.
|
# gitHub Support
|
||||||
|
|
||||||
# Extra Support
|
Would you require more help please open and issue here on [gitHub today](https://github.com/vdm-io/Joomla-Component-Builder/issues)!
|
||||||
|
|
||||||
Would you require more help VDM.io has a number of support plans available [visit us today!](https://www.vdm.io/joomla-component-builder).
|
|
||||||
|
|
||||||
# Build Details
|
# Build Details
|
||||||
|
|
||||||
@ -38,38 +32,13 @@ Would you require more help VDM.io has a number of support plans available [visi
|
|||||||
+ *Author*: [Llewellyn van der Merwe] (mailto:info@vdm.io)
|
+ *Author*: [Llewellyn van der Merwe] (mailto:info@vdm.io)
|
||||||
+ *Name*: [Component Builder] (https://www.vdm.io/joomla-component-builder)
|
+ *Name*: [Component Builder] (https://www.vdm.io/joomla-component-builder)
|
||||||
+ *First Build*: 30th April, 2015
|
+ *First Build*: 30th April, 2015
|
||||||
+ *Last Build*: 30th January, 2016
|
+ *Last Build*: 31st May, 2016
|
||||||
+ *Version*: 2.0.8
|
+ *Version*: 2.1.10
|
||||||
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
|
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
|
||||||
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
+ *Line count*: **82827**
|
||||||
## Build Time
|
+ *File count*: **503**
|
||||||
|
+ *Folder count*: **99**
|
||||||
**221 Hours** or **28 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*: **79362**
|
|
||||||
+ *File count*: **489**
|
|
||||||
+ *Folder count*: **95**
|
|
||||||
|
|
||||||
**146 Hours** or **18 Eight Hour Days** (the actual time the author spent)
|
|
||||||
|
|
||||||
> (with the following break down:
|
|
||||||
> **debugging @55hours** = codingtime / 4;
|
|
||||||
> **planning @32hours** = codingtime / 7;
|
|
||||||
> **mapping @22hours** = codingtime / 10;
|
|
||||||
> **office @37hours** = codingtime / 6;)
|
|
||||||
|
|
||||||
**367 Hours** or **46 Eight Hour Days**
|
|
||||||
(a total of the realistic time frame for this project)
|
|
||||||
|
|
||||||
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
|
|
||||||
> with the normal everyday realities at the office, that includes the component planning, mapping & debugging.)
|
|
||||||
|
|
||||||
Project duration: **9.2 weeks** or **1.9 months**
|
|
||||||
|
|
||||||
> This **component** was build with a Joomla [Automated Component Builder] (https://www.vdm.io/joomla-component-builder).
|
> This **component** was build with a Joomla [Automated Component Builder] (https://www.vdm.io/joomla-component-builder).
|
||||||
> Developed by [Llewellyn van der Merwe] (mailto:joomla@vdm.io)
|
> Developed by [Llewellyn van der Merwe] (mailto:joomla@vdm.io)
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin.css
|
@subpackage admin.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin_view.css
|
@subpackage admin_view.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin_views.css
|
@subpackage admin_views.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage component.css
|
@subpackage component.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage components.css
|
@subpackage components.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_admin_view.css
|
@subpackage custom_admin_view.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_admin_views.css
|
@subpackage custom_admin_views.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dashboard.css
|
@subpackage dashboard.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_get.css
|
@subpackage dynamic_get.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_gets.css
|
@subpackage dynamic_gets.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage field.css
|
@subpackage field.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fields.css
|
@subpackage fields.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fieldtype.css
|
@subpackage fieldtype.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fieldtypes.css
|
@subpackage fieldtypes.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help_document.css
|
@subpackage help_document.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help_documents.css
|
@subpackage help_documents.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layout.css
|
@subpackage layout.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layouts.css
|
@subpackage layouts.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage site_view.css
|
@subpackage site_view.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage site_views.css
|
@subpackage site_views.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage snippet.css
|
@subpackage snippet.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage snippets.css
|
@subpackage snippets.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage template.css
|
@subpackage template.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage templates.css
|
@subpackage templates.css
|
||||||
|
@ -206,5 +206,5 @@ class ###Component###Model###Component### extends JModelList
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $icons;
|
return $icons;
|
||||||
}
|
}###DASH_MODEL_METHODS###
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ class ###Component###View###Component### extends JViewLegacy
|
|||||||
};
|
};
|
||||||
// Assign data to the view
|
// Assign data to the view
|
||||||
$this->icons = $this->get('Icons');
|
$this->icons = $this->get('Icons');
|
||||||
$this->contributors = ###Component###Helper::getContributors();
|
$this->contributors = ###Component###Helper::getContributors();###DASH_GET_CUSTOM_DATA###
|
||||||
|
|
||||||
// Set the toolbar
|
// Set the toolbar
|
||||||
$this->addToolBar();
|
$this->addToolBar();
|
||||||
|
@ -29,22 +29,6 @@ defined('_JEXEC') or die('Restricted access');
|
|||||||
// No direct access to this file
|
// No direct access to this file
|
||||||
defined('_JEXEC') or die('Restricted access');
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
|
||||||
?>
|
JHtml::_('behavior.tooltip');
|
||||||
<div id="j-main-container" class="span9">
|
|
||||||
<?php echo JHtml::_('bootstrap.startAccordion', 'dashboard_left', array('active' => 'main')); ?>
|
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.addSlide', 'dashboard_left', 'cPanel', 'main'); ?>
|
?>###DASH_DISPLAY_DATA###
|
||||||
<?php echo $this->loadTemplate('main');?>
|
|
||||||
<?php echo JHtml::_('bootstrap.endSlide'); ?>
|
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.endAccordion'); ?>
|
|
||||||
</div>
|
|
||||||
<div id="j-main-container" class="span3">
|
|
||||||
<?php echo JHtml::_('bootstrap.startAccordion', 'dashboard_right', array('active' => 'vdm')); ?>
|
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.addSlide', 'dashboard_right', '###COMPANYNAME###', 'vdm'); ?>
|
|
||||||
<?php echo $this->loadTemplate('vdm');?>
|
|
||||||
<?php echo JHtml::_('bootstrap.endSlide'); ?>
|
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.endAccordion'); ?>
|
|
||||||
</div>
|
|
@ -162,31 +162,33 @@ abstract class ###Component###Helper
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function jsonToString($value, $sperator = ", ")
|
public static function jsonToString($value, $sperator = ", ", $table = null)
|
||||||
{
|
{
|
||||||
// check if string is JSON
|
// check if string is JSON
|
||||||
$result = json_decode($value, true);
|
$result = json_decode($value, true);
|
||||||
if (json_last_error() === JSON_ERROR_NONE) {
|
if (json_last_error() === JSON_ERROR_NONE)
|
||||||
// is JSON
|
{
|
||||||
|
// is JSON
|
||||||
if (self::checkArray($result))
|
if (self::checkArray($result))
|
||||||
{
|
{
|
||||||
$value = '';
|
if (self::checkString($table))
|
||||||
$counter = 0;
|
|
||||||
foreach ($result as $string)
|
|
||||||
{
|
{
|
||||||
if ($counter)
|
$names = array();
|
||||||
|
foreach ($result as $val)
|
||||||
{
|
{
|
||||||
$value .= $sperator.$string;
|
if ($name = self::getVar($table, $val, 'id', 'name'))
|
||||||
|
{
|
||||||
|
$names[] = $name;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
if (self::checkArray($names))
|
||||||
{
|
{
|
||||||
$value .= $string;
|
return (string) implode($sperator,$names);
|
||||||
}
|
}
|
||||||
$counter++;
|
|
||||||
}
|
}
|
||||||
return $value;
|
return (string) implode($sperator,$result);
|
||||||
}
|
}
|
||||||
return json_decode($value);
|
return (string) json_decode($value);
|
||||||
}
|
}
|
||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
@ -201,7 +203,7 @@ abstract class ###Component###Helper
|
|||||||
$query = $db->getQuery(true);
|
$query = $db->getQuery(true);
|
||||||
$query->select(array('a.published'));
|
$query->select(array('a.published'));
|
||||||
$query->from('#__###component###_'.$type.' AS a');
|
$query->from('#__###component###_'.$type.' AS a');
|
||||||
$query->where('a.id = '.$id);
|
$query->where('a.id = '. (int) $id);
|
||||||
$query->where('a.published = 1');
|
$query->where('a.published = 1');
|
||||||
$db->setQuery($query);
|
$db->setQuery($query);
|
||||||
$db->execute();
|
$db->execute();
|
||||||
@ -219,7 +221,7 @@ abstract class ###Component###Helper
|
|||||||
$query = $db->getQuery(true);
|
$query = $db->getQuery(true);
|
||||||
$query->select(array('a.title'));
|
$query->select(array('a.title'));
|
||||||
$query->from('#__usergroups AS a');
|
$query->from('#__usergroups AS a');
|
||||||
$query->where('a.id = '.$id);
|
$query->where('a.id = '. (int) $id);
|
||||||
$db->setQuery($query);
|
$db->setQuery($query);
|
||||||
$db->execute();
|
$db->execute();
|
||||||
$found = $db->getNumRows();
|
$found = $db->getNumRows();
|
||||||
@ -252,7 +254,7 @@ abstract class ###Component###Helper
|
|||||||
foreach ($actions as $action)
|
foreach ($actions as $action)
|
||||||
{
|
{
|
||||||
// set to use component default
|
// set to use component default
|
||||||
$allow = true;
|
$fallback= true;
|
||||||
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions))
|
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions))
|
||||||
{
|
{
|
||||||
// The record has been set. Check the record permissions.
|
// The record has been set. Check the record permissions.
|
||||||
@ -268,13 +270,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$view.'.' . (int) $record->id))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$view.'.' . (int) $record->id))
|
||||||
@ -284,13 +286,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
||||||
@ -300,13 +302,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
||||||
@ -316,13 +318,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -352,13 +354,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$views.'.category.' . (int) $record->catid))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$views.'.category.' . (int) $record->catid))
|
||||||
@ -368,13 +370,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
||||||
@ -384,13 +386,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
||||||
@ -400,21 +402,21 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback= false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// if allowed then fall back on component global settings
|
// if allowed then fallback on component global settings
|
||||||
if ($allow)
|
if ($fallback)
|
||||||
{
|
{
|
||||||
$result->set($action->name, $user->authorise($action->name, 'com_###component###'));
|
$result->set($action->name, $user->authorise($action->name, 'com_###component###'));
|
||||||
}
|
}
|
||||||
@ -572,6 +574,16 @@ abstract class ###Component###Helper
|
|||||||
return $button->input;
|
return $button->input;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function checkJson($string)
|
||||||
|
{
|
||||||
|
if (self::checkString($string))
|
||||||
|
{
|
||||||
|
json_decode($string);
|
||||||
|
return (json_last_error() === JSON_ERROR_NONE);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public static function checkObject($object)
|
public static function checkObject($object)
|
||||||
{
|
{
|
||||||
@ -831,7 +843,7 @@ abstract class ###Component###Helper
|
|||||||
$w .= ' ';
|
$w .= ' ';
|
||||||
if($r < 100)
|
if($r < 100)
|
||||||
{
|
{
|
||||||
$word .= 'and ';
|
$w .= 'and ';
|
||||||
}
|
}
|
||||||
$w .= self::numberToString($r);
|
$w .= self::numberToString($r);
|
||||||
}
|
}
|
||||||
|
261
admin/compiler/joomla_3/Helper_email.php
Normal file
261
admin/compiler/joomla_3/Helper_email.php
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @version 2.0.0 - September 03, 2014
|
||||||
|
* @package Component Builder
|
||||||
|
* @author Llewellyn van de Merwe <http://www.vdm.io>
|
||||||
|
* @copyright Copyright (C) 2014. All Rights Reserved
|
||||||
|
* @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
*
|
||||||
|
**/
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
?>
|
||||||
|
###BOM###
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ###Component### component email helper
|
||||||
|
*/
|
||||||
|
abstract class ###Component###Email
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Configuraiton object
|
||||||
|
*
|
||||||
|
* @var JConfig
|
||||||
|
*/
|
||||||
|
public static $config = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mailer object
|
||||||
|
*
|
||||||
|
* @var JMail
|
||||||
|
*/
|
||||||
|
public static $mailer = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a configuration object
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getConfig()
|
||||||
|
{
|
||||||
|
if (!self::$config)
|
||||||
|
{
|
||||||
|
self::$config = JComponentHelper::getParams('com_###component###');
|
||||||
|
}
|
||||||
|
|
||||||
|
return self::$config;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a mailer object.
|
||||||
|
*
|
||||||
|
* Returns the global {@link JMail} object, only creating it if it doesn't already exist.
|
||||||
|
*
|
||||||
|
* @return JMail object
|
||||||
|
*
|
||||||
|
* @see JMail
|
||||||
|
*/
|
||||||
|
public static function getMailer()
|
||||||
|
{
|
||||||
|
if (!self::$mailer)
|
||||||
|
{
|
||||||
|
self::$mailer = self::createMailer();
|
||||||
|
}
|
||||||
|
|
||||||
|
$copy = clone self::$mailer;
|
||||||
|
|
||||||
|
return $copy;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a mailer object
|
||||||
|
*
|
||||||
|
* @return JMail object
|
||||||
|
*
|
||||||
|
* @see JMail
|
||||||
|
*/
|
||||||
|
protected static function createMailer()
|
||||||
|
{
|
||||||
|
// set component params
|
||||||
|
$conf = self::getConfig();
|
||||||
|
|
||||||
|
// now load the mailer
|
||||||
|
$mailer = $conf->get('mailer', 'global');
|
||||||
|
|
||||||
|
// Create a JMail object
|
||||||
|
$mail = JMail::getInstance();
|
||||||
|
|
||||||
|
// check if set to global
|
||||||
|
if ('global' == $mailer)
|
||||||
|
{
|
||||||
|
// get the global details
|
||||||
|
$globalConf = JFactory::getConfig();
|
||||||
|
|
||||||
|
$mailer = $globalConf->get('mailer');
|
||||||
|
$smtpauth = ($globalConf->get('smtpauth') == 0) ? null : 1;
|
||||||
|
$smtpuser = $globalConf->get('smtpuser');
|
||||||
|
$smtppass = $globalConf->get('smtppass');
|
||||||
|
$smtphost = $globalConf->get('smtphost');
|
||||||
|
$smtpsecure = $globalConf->get('smtpsecure');
|
||||||
|
$smtpport = $globalConf->get('smtpport');
|
||||||
|
$sendmail = $globalConf->get('sendmail');
|
||||||
|
$mailfrom = $globalConf->get('mailfrom');
|
||||||
|
$fromname = $globalConf->get('fromname');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$smtpauth = ($conf->get('smtpauth') == 0) ? null : 1;
|
||||||
|
$smtpuser = $conf->get('smtpuser');
|
||||||
|
$smtppass = $conf->get('smtppass');
|
||||||
|
$smtphost = $conf->get('smtphost');
|
||||||
|
$smtpsecure = $conf->get('smtpsecure');
|
||||||
|
$smtpport = $conf->get('smtpport');
|
||||||
|
$sendmail = $conf->get('sendmail');
|
||||||
|
$mailfrom = $conf->get('mailfrom');
|
||||||
|
$fromname = $conf->get('fromname');
|
||||||
|
$mailreply = $conf->get('mailreply');
|
||||||
|
$replyname = $conf->get('replyname');
|
||||||
|
|
||||||
|
// set the global reply-to
|
||||||
|
if ($mailreply && $fromname)
|
||||||
|
{
|
||||||
|
$mail->ClearReplyTos();
|
||||||
|
$mail->addReplyTo( array( $mailreply, $replyname ) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set global sender
|
||||||
|
$mail->setSender(array($mailfrom, $fromname));
|
||||||
|
|
||||||
|
// Default mailer is to use PHP's mail function
|
||||||
|
switch ($mailer)
|
||||||
|
{
|
||||||
|
case 'smtp':
|
||||||
|
// set the SMTP option
|
||||||
|
$mail->useSMTP($smtpauth, $smtphost, $smtpuser, $smtppass, $smtpsecure, $smtpport);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'sendmail':
|
||||||
|
// set the sendmail option
|
||||||
|
$mail->useSendmail($sendmail);
|
||||||
|
$mail->IsSendmail();
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
$mail->IsMail();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $mail;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send an email
|
||||||
|
*
|
||||||
|
* @return bool on success
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function send($recipient, $subject, $body, $textonly, $mode = 0, $bounce_email = null, $idsession = null, $mailreply = null, $replyname = null , $mailfrom = null, $fromname = null, $cc = null, $bcc = null, $attachment = null, $embeded = null , $embeds = null)
|
||||||
|
{
|
||||||
|
|
||||||
|
// Get a JMail instance
|
||||||
|
$mail = self::getMailer();
|
||||||
|
|
||||||
|
// set component params
|
||||||
|
$conf = self::getConfig();
|
||||||
|
|
||||||
|
// do some house cleaning
|
||||||
|
$mail->ClearReplyTos();
|
||||||
|
|
||||||
|
// set if we have override
|
||||||
|
if ($mailfrom && $fromname)
|
||||||
|
{
|
||||||
|
$mail->setSender(array($mailfrom, $fromname));
|
||||||
|
}
|
||||||
|
|
||||||
|
// load the bounce email as sender if set
|
||||||
|
if (!is_null($bounce_email))
|
||||||
|
{
|
||||||
|
|
||||||
|
$mail->Sender = $bounce_email;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add tag to email to identify it
|
||||||
|
if (!is_null($idsession))
|
||||||
|
{
|
||||||
|
$mail->addCustomHeader('X-VDMmethodID:'.$idsession);
|
||||||
|
}
|
||||||
|
|
||||||
|
// set the subject & Body
|
||||||
|
$mail->setSubject($subject);
|
||||||
|
$mail->setBody($body);
|
||||||
|
|
||||||
|
// Are we sending the email as HTML?
|
||||||
|
if ($mode)
|
||||||
|
{
|
||||||
|
$mail->IsHTML(true);
|
||||||
|
$mail->AltBody = $textonly;
|
||||||
|
}
|
||||||
|
|
||||||
|
//embed images
|
||||||
|
if ($embeded)
|
||||||
|
{
|
||||||
|
if(###Component###Helper::checkArray($embeds))
|
||||||
|
{
|
||||||
|
foreach($embeds as $embed)
|
||||||
|
{
|
||||||
|
$mail->AddEmbeddedImage($embed->Path,$embed->FileName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$mail->addRecipient($recipient);
|
||||||
|
$mail->addCC($cc);
|
||||||
|
$mail->addBCC($bcc);
|
||||||
|
$mail->addAttachment($attachment);
|
||||||
|
|
||||||
|
// Take care of reply email addresses
|
||||||
|
if (is_array($mailreply))
|
||||||
|
{
|
||||||
|
$mail->ClearReplyTos();
|
||||||
|
$numReplyTo = count($mailreply);
|
||||||
|
for ($i=0; $i < $numReplyTo; $i++)
|
||||||
|
{
|
||||||
|
$mail->addReplyTo( array($mailreply[$i], $replyname[$i]) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elseif (!empty($mailreply))
|
||||||
|
{
|
||||||
|
$mail->ClearReplyTos();
|
||||||
|
$mail->addReplyTo( array( $mailreply, $replyname ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if we can add the DKIM to email
|
||||||
|
if ($conf->get('enable_dkim'))
|
||||||
|
{
|
||||||
|
if (!empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public')))
|
||||||
|
{
|
||||||
|
$mail->DKIM_domain = $conf->get('dkim_domain');
|
||||||
|
$mail->DKIM_selector = $conf->get('dkim_selector');
|
||||||
|
$mail->DKIM_identity = $conf->get('dkim_identity');
|
||||||
|
$mail->DKIM_passphrase = $conf->get('dkim_passphrase');
|
||||||
|
|
||||||
|
$tmp = tempnam(sys_get_temp_dir(), 'VDM');
|
||||||
|
$h = fopen($tmp, 'w');
|
||||||
|
fwrite($h, $conf->get('dkim_private'));
|
||||||
|
fclose($h);
|
||||||
|
$mail->DKIM_private = $tmp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$sendmail = $mail->Send();
|
||||||
|
|
||||||
|
if ($conf->get('enable_dkim') && !empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public')))
|
||||||
|
{
|
||||||
|
@unlink($tmp);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $sendmail;
|
||||||
|
}
|
||||||
|
}
|
@ -34,34 +34,37 @@ defined('_JEXEC') or die('Restricted access');
|
|||||||
*/
|
*/
|
||||||
abstract class ###Component###Helper
|
abstract class ###Component###Helper
|
||||||
{###SITE_GLOBAL_EVENT_HELPER### ###SITE_CUSTOM_HELPER_SCRIPT###
|
{###SITE_GLOBAL_EVENT_HELPER### ###SITE_CUSTOM_HELPER_SCRIPT###
|
||||||
|
|
||||||
public static function jsonToString($value)
|
public static function jsonToString($value, $sperator = ", ", $table = null)
|
||||||
{
|
{
|
||||||
// check if string is JSON
|
// check if string is JSON
|
||||||
$result = json_decode($value, true);
|
$result = json_decode($value, true);
|
||||||
if (json_last_error() === JSON_ERROR_NONE) {
|
if (json_last_error() === JSON_ERROR_NONE)
|
||||||
|
{
|
||||||
// is JSON
|
// is JSON
|
||||||
if (self::checkArray($result))
|
if (self::checkArray($result))
|
||||||
|
{
|
||||||
|
if (self::checkString($table))
|
||||||
{
|
{
|
||||||
$value = '';
|
$names = array();
|
||||||
$counter = 0;
|
foreach ($result as $val)
|
||||||
foreach ($result as $string)
|
|
||||||
{
|
{
|
||||||
if ($counter)
|
if ($name = self::getVar($table, $val, 'id', 'name'))
|
||||||
{
|
{
|
||||||
$value .= ", ".$string;
|
$names[] = $name;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
$value .= $string;
|
|
||||||
}
|
|
||||||
$counter++;
|
|
||||||
}
|
}
|
||||||
|
if (self::checkArray($names))
|
||||||
|
{
|
||||||
|
return (string) implode($sperator,$names);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return json_decode($value);
|
return (string) implode($sperator,$result);
|
||||||
}
|
}
|
||||||
return $value;
|
return (string) json_decode($value);
|
||||||
}
|
}
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load the Component xml manifest.
|
* Load the Component xml manifest.
|
||||||
@ -332,6 +335,45 @@ abstract class ###Component###Helper
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function isPublished($id,$type)
|
||||||
|
{
|
||||||
|
if ($type == 'raw')
|
||||||
|
{
|
||||||
|
$type = 'item';
|
||||||
|
}
|
||||||
|
$db = JFactory::getDbo();
|
||||||
|
$query = $db->getQuery(true);
|
||||||
|
$query->select(array('a.published'));
|
||||||
|
$query->from('#__###component###_'.$type.' AS a');
|
||||||
|
$query->where('a.id = '. (int) $id);
|
||||||
|
$query->where('a.published = 1');
|
||||||
|
$db->setQuery($query);
|
||||||
|
$db->execute();
|
||||||
|
$found = $db->getNumRows();
|
||||||
|
if($found)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getGroupName($id)
|
||||||
|
{
|
||||||
|
$db = JFactory::getDBO();
|
||||||
|
$query = $db->getQuery(true);
|
||||||
|
$query->select(array('a.title'));
|
||||||
|
$query->from('#__usergroups AS a');
|
||||||
|
$query->where('a.id = '. (int) $id);
|
||||||
|
$db->setQuery($query);
|
||||||
|
$db->execute();
|
||||||
|
$found = $db->getNumRows();
|
||||||
|
if($found)
|
||||||
|
{
|
||||||
|
return $db->loadResult();
|
||||||
|
}
|
||||||
|
return $id;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the actions permissions
|
* Get the actions permissions
|
||||||
@ -355,7 +397,7 @@ abstract class ###Component###Helper
|
|||||||
foreach ($actions as $action)
|
foreach ($actions as $action)
|
||||||
{
|
{
|
||||||
// set to use component default
|
// set to use component default
|
||||||
$allow = true;
|
$fallback = true;
|
||||||
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions))
|
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions))
|
||||||
{
|
{
|
||||||
// The record has been set. Check the record permissions.
|
// The record has been set. Check the record permissions.
|
||||||
@ -371,13 +413,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$view.'.' . (int) $record->id))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$view.'.' . (int) $record->id))
|
||||||
@ -387,13 +429,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
||||||
@ -403,13 +445,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
||||||
@ -419,13 +461,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -455,13 +497,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$views.'.category.' . (int) $record->catid))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###.'.$views.'.category.' . (int) $record->catid))
|
||||||
@ -471,13 +513,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
elseif ($user->authorise('core.edit.own', 'com_###component###'))
|
||||||
@ -487,13 +529,13 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
elseif ($user->authorise($view.'edit.own', 'com_###component###'))
|
||||||
@ -503,27 +545,37 @@ abstract class ###Component###Helper
|
|||||||
{
|
{
|
||||||
$result->set($action->name, true);
|
$result->set($action->name, true);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$result->set($action->name, false);
|
$result->set($action->name, false);
|
||||||
// set not to use component default
|
// set not to use component default
|
||||||
$allow = false;
|
$fallback = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// if allowed then fall back on component global settings
|
// if allowed then fallback on component global settings
|
||||||
if ($allow)
|
if ($fallback)
|
||||||
{
|
{
|
||||||
$result->set($action->name, $user->authorise($action->name, 'com_###component###'));
|
$result->set($action->name, $user->authorise($action->name, 'com_###component###'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function checkJson($string)
|
||||||
|
{
|
||||||
|
if (self::checkString($string))
|
||||||
|
{
|
||||||
|
json_decode($string);
|
||||||
|
return (json_last_error() === JSON_ERROR_NONE);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public static function checkObject($object)
|
public static function checkObject($object)
|
||||||
{
|
{
|
||||||
@ -783,7 +835,7 @@ abstract class ###Component###Helper
|
|||||||
$w .= ' ';
|
$w .= ' ';
|
||||||
if($r < 100)
|
if($r < 100)
|
||||||
{
|
{
|
||||||
$word .= 'and ';
|
$w .= 'and ';
|
||||||
}
|
}
|
||||||
$w .= self::numberToString($r);
|
$w .= self::numberToString($r);
|
||||||
}
|
}
|
||||||
|
@ -264,7 +264,7 @@ class ###Component###Controller###View### extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{###POSTSAVEHOOK###
|
{###POSTSAVEHOOK###
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -264,7 +264,7 @@ class ###Component###Controller###View### extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{###POSTSAVEHOOK###
|
{###POSTSAVEHOOK###
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,10 +117,10 @@ class ###Component###ControllerHelp extends JControllerLegacy
|
|||||||
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
||||||
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
||||||
// build the help text
|
// build the help text
|
||||||
$text[] = '<h3 class="uk-panel-title">'.$document->title."</h3>";
|
$text[] = '<h1 class="uk-panel-title">'.$document->title."</h1>";
|
||||||
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
||||||
// end template
|
// end template
|
||||||
$text[] = '</div>';
|
$text[] = '</div><br /><br />';
|
||||||
$text[] = '</div>';
|
$text[] = '</div>';
|
||||||
$text[] = "</body>";
|
$text[] = "</body>";
|
||||||
$text[] = "</html>";
|
$text[] = "</html>";
|
||||||
|
@ -118,10 +118,10 @@ class ###Component###ControllerHelp extends JControllerLegacy
|
|||||||
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
||||||
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
||||||
// build the help text
|
// build the help text
|
||||||
$text[] = '<h3 class="uk-panel-title">'.$document->title."</h3>";
|
$text[] = '<h1 class="uk-panel-title">'.$document->title."</h1>";
|
||||||
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
||||||
// end template
|
// end template
|
||||||
$text[] = '</div>';
|
$text[] = '</div><br /><br />';
|
||||||
$text[] = '</div>';
|
$text[] = '</div>';
|
||||||
$text[] = "</body>";
|
$text[] = "</body>";
|
||||||
$text[] = "</html>";
|
$text[] = "</html>";
|
||||||
|
70
admin/compiler/joomla_3/JControllerLegacy_import_custom.php
Normal file
70
admin/compiler/joomla_3/JControllerLegacy_import_custom.php
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
<?php
|
||||||
|
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
|
||||||
|
__ __ _ _____ _ _ __ __ _ _ _
|
||||||
|
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
|
||||||
|
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
|
||||||
|
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
|
||||||
|
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
|
||||||
|
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
|
||||||
|
| |
|
||||||
|
|_|
|
||||||
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
|
@package Component Builder
|
||||||
|
@subpackage componentbuilder.php
|
||||||
|
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
|
||||||
|
@my wife Roline van der Merwe <http://www.vdm.io/>
|
||||||
|
@copyright Copyright (C) 2015. All Rights Reserved
|
||||||
|
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Builds Complex Joomla Components
|
||||||
|
|
||||||
|
/-----------------------------------------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
?>
|
||||||
|
###BOM###
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ###Component### ###View### Controller
|
||||||
|
*/
|
||||||
|
class ###Component###Controller###View### extends JControllerLegacy
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Import an spreadsheet.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function import()
|
||||||
|
{
|
||||||
|
// Check for request forgeries
|
||||||
|
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN'));
|
||||||
|
|
||||||
|
$model = $this->getModel('###View###');
|
||||||
|
if ($model->import())
|
||||||
|
{
|
||||||
|
$cache = JFactory::getCache('mod_menu');
|
||||||
|
$cache->clean();
|
||||||
|
// TODO: Reset the users acl here as well to kill off any missing bits
|
||||||
|
}
|
||||||
|
|
||||||
|
$app = JFactory::getApplication();
|
||||||
|
$redirect_url = $app->getUserState('com_###component###.redirect_url');
|
||||||
|
if (empty($redirect_url))
|
||||||
|
{
|
||||||
|
$redirect_url = JRoute::_('index.php?option=com_###component###&view=###view###', false);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// wipe out the user state when we're going to redirect
|
||||||
|
$app->setUserState('com_###component###.redirect_url', '');
|
||||||
|
$app->setUserState('com_###component###.message', '');
|
||||||
|
$app->setUserState('com_###component###.extension_message', '');
|
||||||
|
}
|
||||||
|
$this->setRedirect($redirect_url);
|
||||||
|
}
|
||||||
|
}
|
@ -199,7 +199,7 @@ class ###Component###Model###View### extends JModelAdmin
|
|||||||
{
|
{
|
||||||
$table->created = $date->toSql();
|
$table->created = $date->toSql();
|
||||||
// set the user
|
// set the user
|
||||||
if ($table->created_by == 0)
|
if ($table->created_by == 0 || empty($table->created_by))
|
||||||
{
|
{
|
||||||
$table->created_by = $user->id;
|
$table->created_by = $user->id;
|
||||||
}
|
}
|
||||||
|
@ -199,7 +199,7 @@ class ###Component###Model###View### extends JModelAdmin
|
|||||||
{
|
{
|
||||||
$table->created = $date->toSql();
|
$table->created = $date->toSql();
|
||||||
// set the user
|
// set the user
|
||||||
if ($table->created_by == 0)
|
if ($table->created_by == 0 || empty($table->created_by))
|
||||||
{
|
{
|
||||||
$table->created_by = $user->id;
|
$table->created_by = $user->id;
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,7 @@ class ###Component###ModelImport extends JModelLegacy
|
|||||||
* Import Settings
|
* Import Settings
|
||||||
*/
|
*/
|
||||||
protected $getType = NULL;
|
protected $getType = NULL;
|
||||||
protected $dataType = NULL;
|
protected $dataType = NULL;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method to auto-populate the model state.
|
* Method to auto-populate the model state.
|
||||||
@ -511,7 +511,6 @@ class ###Component###ModelImport extends JModelLegacy
|
|||||||
// reset all buckets
|
// reset all buckets
|
||||||
$query = $db->getQuery(true);
|
$query = $db->getQuery(true);
|
||||||
$fields = array();
|
$fields = array();
|
||||||
$version = false;
|
|
||||||
// Fields to update.
|
// Fields to update.
|
||||||
foreach($row as $key => $cell)
|
foreach($row as $key => $cell)
|
||||||
{
|
{
|
||||||
@ -534,7 +533,6 @@ class ###Component###ModelImport extends JModelLegacy
|
|||||||
if ('version' == $target[$key])
|
if ('version' == $target[$key])
|
||||||
{
|
{
|
||||||
$cell = (int) $version + 1;
|
$cell = (int) $version + 1;
|
||||||
$version = true;
|
|
||||||
}
|
}
|
||||||
// verify publish authority
|
// verify publish authority
|
||||||
if ('published' == $target[$key] && !$canState)
|
if ('published' == $target[$key] && !$canState)
|
||||||
@ -559,10 +557,6 @@ class ###Component###ModelImport extends JModelLegacy
|
|||||||
// load the defaults
|
// load the defaults
|
||||||
$fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id);
|
$fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id);
|
||||||
$fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate);
|
$fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate);
|
||||||
if (!$version)
|
|
||||||
{
|
|
||||||
$fields[] = $db->quoteName('version') . " = " . (int) $version + 1;
|
|
||||||
}
|
|
||||||
// Conditions for which records should be updated.
|
// Conditions for which records should be updated.
|
||||||
$conditions = array(
|
$conditions = array(
|
||||||
$db->quoteName('id') . ' = ' . $id
|
$db->quoteName('id') . ' = ' . $id
|
||||||
|
366
admin/compiler/joomla_3/JModelLegacy_import_custom.php
Normal file
366
admin/compiler/joomla_3/JModelLegacy_import_custom.php
Normal file
@ -0,0 +1,366 @@
|
|||||||
|
<?php
|
||||||
|
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
|
||||||
|
__ __ _ _____ _ _ __ __ _ _ _
|
||||||
|
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
|
||||||
|
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
|
||||||
|
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
|
||||||
|
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
|
||||||
|
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
|
||||||
|
| |
|
||||||
|
|_|
|
||||||
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
|
@package Component Builder
|
||||||
|
@subpackage componentbuilder.php
|
||||||
|
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
|
||||||
|
@my wife Roline van der Merwe <http://www.vdm.io/>
|
||||||
|
@copyright Copyright (C) 2015. All Rights Reserved
|
||||||
|
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Builds Complex Joomla Components
|
||||||
|
|
||||||
|
/-----------------------------------------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
?>
|
||||||
|
###BOM###
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ###Component### ###View### Model
|
||||||
|
*/
|
||||||
|
class ###Component###Model###View### extends JModelLegacy
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var object JTable object
|
||||||
|
*/
|
||||||
|
protected $_table = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var object JTable object
|
||||||
|
*/
|
||||||
|
protected $_url = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Model context string.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $_context = 'com_###component###.###view###';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Import Settings
|
||||||
|
*/
|
||||||
|
protected $getType = NULL;
|
||||||
|
protected $dataType = NULL;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to auto-populate the model state.
|
||||||
|
*
|
||||||
|
* Note. Calling getState in this method will result in recursion.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function populateState()
|
||||||
|
{
|
||||||
|
$app = JFactory::getApplication('administrator');
|
||||||
|
|
||||||
|
$this->setState('message', $app->getUserState('com_###component###.message'));
|
||||||
|
$app->setUserState('com_###component###.message', '');
|
||||||
|
|
||||||
|
// Recall the 'Import from Directory' path.
|
||||||
|
$path = $app->getUserStateFromRequest($this->_context . '.import_directory', 'import_directory', $app->get('tmp_path'));
|
||||||
|
$this->setState('import.directory', $path);
|
||||||
|
// set uploading values
|
||||||
|
$this->use_streams = false;
|
||||||
|
$this->allow_unsafe = false;
|
||||||
|
$this->safeFileOptions = array();
|
||||||
|
parent::populateState();
|
||||||
|
}
|
||||||
|
###IMPORT_METHOD_CUSTOM###
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Works out an importation spreadsheet from a HTTP upload
|
||||||
|
*
|
||||||
|
* @return spreadsheet definition or false on failure
|
||||||
|
*/
|
||||||
|
protected function _getPackageFromUpload()
|
||||||
|
{
|
||||||
|
// Get the uploaded file information
|
||||||
|
$input = JFactory::getApplication()->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');
|
||||||
|
|
||||||
|
// Make sure that file uploads are enabled in php
|
||||||
|
if (!(bool) ini_get('file_uploads'))
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If there is no uploaded file, we have a problem...
|
||||||
|
if (!is_array($userfile))
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if there was a problem uploading the file.
|
||||||
|
if ($userfile['error'] || $userfile['size'] < 1)
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Build the appropriate paths
|
||||||
|
$config = JFactory::getConfig();
|
||||||
|
$tmp_dest = $config->get('tmp_path') . '/' . $userfile['name'];
|
||||||
|
$tmp_src = $userfile['tmp_name'];
|
||||||
|
|
||||||
|
// Move uploaded file
|
||||||
|
jimport('joomla.filesystem.file');
|
||||||
|
$p_file = JFile::upload($tmp_src, $tmp_dest, $this->use_streams, $this->allow_unsafe, $this->safeFileOptions);
|
||||||
|
|
||||||
|
// Was the package downloaded?
|
||||||
|
if (!$p_file)
|
||||||
|
{
|
||||||
|
$session = JFactory::getSession();
|
||||||
|
$session->clear('package');
|
||||||
|
$session->clear('dataType');
|
||||||
|
$session->clear('hasPackage');
|
||||||
|
// was not uploaded
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// check that this is a valid spreadsheet
|
||||||
|
$package = $this->check($userfile['name']);
|
||||||
|
|
||||||
|
return $package;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Import an spreadsheet from a directory
|
||||||
|
*
|
||||||
|
* @return array Spreadsheet details or false on failure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function _getPackageFromFolder()
|
||||||
|
{
|
||||||
|
$input = JFactory::getApplication()->input;
|
||||||
|
|
||||||
|
// Get the path to the package to import
|
||||||
|
$p_dir = $input->getString('import_directory');
|
||||||
|
$p_dir = JPath::clean($p_dir);
|
||||||
|
// Did you give us a valid path?
|
||||||
|
if (!file_exists($p_dir))
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Detect the package type
|
||||||
|
$type = $this->getType;
|
||||||
|
|
||||||
|
// Did you give us a valid package?
|
||||||
|
if (!$type)
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'));
|
||||||
|
}
|
||||||
|
|
||||||
|
// check the extention
|
||||||
|
switch(strtolower(pathinfo($p_dir, PATHINFO_EXTENSION))){
|
||||||
|
case 'xls':
|
||||||
|
case 'ods':
|
||||||
|
case 'csv':
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
|
||||||
|
return false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
$package['packagename'] = null;
|
||||||
|
$package['dir'] = $p_dir;
|
||||||
|
$package['type'] = $type;
|
||||||
|
|
||||||
|
return $package;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Import an spreadsheet from a URL
|
||||||
|
*
|
||||||
|
* @return Package details or false on failure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function _getPackageFromUrl()
|
||||||
|
{
|
||||||
|
$input = JFactory::getApplication()->input;
|
||||||
|
|
||||||
|
// Get the URL of the package to import
|
||||||
|
$url = $input->getString('import_url');
|
||||||
|
|
||||||
|
// Did you give us a URL?
|
||||||
|
if (!$url)
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Download the package at the URL given
|
||||||
|
$p_file = JInstallerHelper::downloadPackage($url);
|
||||||
|
|
||||||
|
// Was the package downloaded?
|
||||||
|
if (!$p_file)
|
||||||
|
{
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// check that this is a valid spreadsheet
|
||||||
|
$package = $this->check($p_file);
|
||||||
|
|
||||||
|
return $package;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check a file and verifies it as a spreadsheet file
|
||||||
|
* Supports .csv .xlsx .xls and .ods
|
||||||
|
*
|
||||||
|
* @param string $p_filename The uploaded package filename or import directory
|
||||||
|
*
|
||||||
|
* @return array of elements
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function check($archivename)
|
||||||
|
{
|
||||||
|
// Clean the name
|
||||||
|
$archivename = JPath::clean($archivename);
|
||||||
|
|
||||||
|
// check the extention
|
||||||
|
switch(strtolower(pathinfo($archivename, PATHINFO_EXTENSION))){
|
||||||
|
case 'xls':
|
||||||
|
case 'ods':
|
||||||
|
case 'csv':
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
// Cleanup the import files
|
||||||
|
$this->remove($archivename);
|
||||||
|
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
|
||||||
|
return false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
$config = JFactory::getConfig();
|
||||||
|
// set Package Name
|
||||||
|
$check['packagename'] = $archivename;
|
||||||
|
|
||||||
|
// set directory
|
||||||
|
$check['dir'] = $config->get('tmp_path'). '/' .$archivename;
|
||||||
|
|
||||||
|
// set type
|
||||||
|
$check['type'] = $this->getType;
|
||||||
|
|
||||||
|
return $check;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clean up temporary uploaded spreadsheet
|
||||||
|
*
|
||||||
|
* @param string $package Name of the uploaded spreadsheet file
|
||||||
|
*
|
||||||
|
* @return boolean True on success
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function remove($package)
|
||||||
|
{
|
||||||
|
jimport('joomla.filesystem.file');
|
||||||
|
|
||||||
|
$config = JFactory::getConfig();
|
||||||
|
$package = $config->get('tmp_path'). '/' .$package;
|
||||||
|
|
||||||
|
// Is the package file a valid file?
|
||||||
|
if (is_file($package))
|
||||||
|
{
|
||||||
|
JFile::delete($package);
|
||||||
|
}
|
||||||
|
elseif (is_file(JPath::clean($package)))
|
||||||
|
{
|
||||||
|
// It might also be just a base filename
|
||||||
|
JFile::delete(JPath::clean($package));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
###IMPORT_SETDATE_METHOD_CUSTOM###
|
||||||
|
###IMPORT_SAVE_METHOD_CUSTOM###
|
||||||
|
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
// must be a uniqe alias
|
||||||
|
if ($type)
|
||||||
|
{
|
||||||
|
return $this->getUniqe($alias,'alias',$type);
|
||||||
|
}
|
||||||
|
return $alias;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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 getAliasesUsed($table)
|
||||||
|
{
|
||||||
|
// Get a db connection.
|
||||||
|
$db = JFactory::getDbo();
|
||||||
|
// first we check if there is a alias column
|
||||||
|
$columns = $db->getTableColumns('#__###component###_'.$table);
|
||||||
|
if(isset($columns['alias'])){
|
||||||
|
// Create a new query object.
|
||||||
|
$query = $db->getQuery(true);
|
||||||
|
$query->select($db->quoteName(array('alias')));
|
||||||
|
$query->from($db->quoteName('#__###component###_'.$table));
|
||||||
|
$db->setQuery($query);
|
||||||
|
$db->execute();
|
||||||
|
if ($db->getNumRows())
|
||||||
|
{
|
||||||
|
$aliases = $db->loadColumn();
|
||||||
|
foreach($aliases as $alias)
|
||||||
|
{
|
||||||
|
$this->uniqeValueArray[$table]['alias'][$alias] = $alias;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
@ -67,7 +67,7 @@ class ###Component###Model###SViews### extends JModelList
|
|||||||
$this->levels = $this->user->getAuthorisedViewLevels();
|
$this->levels = $this->user->getAuthorisedViewLevels();
|
||||||
$this->app = JFactory::getApplication();
|
$this->app = JFactory::getApplication();
|
||||||
$this->input = $this->app->input;
|
$this->input = $this->app->input;
|
||||||
$this->initSet = true;###CUSTOM_ADMIN_CUSTOM_BEFORE_LIST_QUERY### ###CUSTOM_ADMIN_GET_LIST_QUERY###
|
$this->initSet = true; ###CUSTOM_ADMIN_GET_LIST_QUERY###
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -67,7 +67,7 @@ class ###Component###Model###SViews### extends JModelList
|
|||||||
$this->levels = $this->user->getAuthorisedViewLevels();
|
$this->levels = $this->user->getAuthorisedViewLevels();
|
||||||
$this->app = JFactory::getApplication();
|
$this->app = JFactory::getApplication();
|
||||||
$this->input = $this->app->input;
|
$this->input = $this->app->input;
|
||||||
$this->initSet = true;###SITE_CUSTOM_BEFORE_LIST_QUERY### ###SITE_GET_LIST_QUERY###
|
$this->initSet = true; ###SITE_GET_LIST_QUERY###
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -67,7 +67,7 @@ class ###Component###View###SView### extends JViewLegacy
|
|||||||
// hide the main menu
|
// hide the main menu
|
||||||
$this->app->input->set('hidemainmenu', true);
|
$this->app->input->set('hidemainmenu', true);
|
||||||
// set the title
|
// set the title
|
||||||
if ($this->item->name)
|
if (isset($this->item->name) && $this->item->name)
|
||||||
{
|
{
|
||||||
$title = $this->item->name;
|
$title = $this->item->name;
|
||||||
}
|
}
|
||||||
|
@ -122,7 +122,7 @@ class ###Component###View###View### extends JViewLegacy
|
|||||||
$document->setTitle(JText::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT'));
|
$document->setTitle(JText::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT'));
|
||||||
$document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/###view###.css");###AJAXTOKE### ###LINKEDVIEWTABLESCRIPTS###
|
$document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/###view###.css");###AJAXTOKE### ###LINKEDVIEWTABLESCRIPTS###
|
||||||
$document->addScript(JURI::root() . $this->script);
|
$document->addScript(JURI::root() . $this->script);
|
||||||
$document->addScript(JURI::root() . "administrator/components/com_###component###/views/###view###/submitbutton.js");
|
$document->addScript(JURI::root() . "administrator/components/com_###component###/views/###view###/submitbutton.js"); ###DOCUMENT_CUSTOM_PHP###
|
||||||
JText::script('view not acceptable. Error');
|
JText::script('view not acceptable. Error');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -131,7 +131,7 @@ class ###Component###View###View### extends JViewLegacy
|
|||||||
$document->addStyleSheet(JURI::root()."components/com_###component###/assets/css/###view###.css");###AJAXTOKE### ###LINKEDVIEWTABLESCRIPTS###
|
$document->addStyleSheet(JURI::root()."components/com_###component###/assets/css/###view###.css");###AJAXTOKE### ###LINKEDVIEWTABLESCRIPTS###
|
||||||
// default javascript of this view
|
// default javascript of this view
|
||||||
$document->addScript(JURI::root().$this->script);
|
$document->addScript(JURI::root().$this->script);
|
||||||
$document->addScript(JURI::root(). "components/com_###component###/views/###view###/submitbutton.js");
|
$document->addScript(JURI::root(). "components/com_###component###/views/###view###/submitbutton.js"); ###DOCUMENT_CUSTOM_PHP###
|
||||||
JText::script('view not acceptable. Error');
|
JText::script('view not acceptable. Error');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
61
admin/compiler/joomla_3/JViewLegacy_import_custom.php
Normal file
61
admin/compiler/joomla_3/JViewLegacy_import_custom.php
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
<?php
|
||||||
|
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
|
||||||
|
__ __ _ _____ _ _ __ __ _ _ _
|
||||||
|
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
|
||||||
|
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
|
||||||
|
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
|
||||||
|
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
|
||||||
|
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
|
||||||
|
| |
|
||||||
|
|_|
|
||||||
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
|
@package Component Builder
|
||||||
|
@subpackage componentbuilder.php
|
||||||
|
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
|
||||||
|
@my wife Roline van der Merwe <http://www.vdm.io/>
|
||||||
|
@copyright Copyright (C) 2015. All Rights Reserved
|
||||||
|
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Builds Complex Joomla Components
|
||||||
|
|
||||||
|
/-----------------------------------------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
?>
|
||||||
|
###BOM###
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
|
||||||
|
|
||||||
|
// import Joomla view library
|
||||||
|
jimport('joomla.application.component.view');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ###Component### ###View### View
|
||||||
|
*/
|
||||||
|
class ###Component###View###View### extends JViewLegacy
|
||||||
|
{###IMPORT_DISPLAY_METHOD_CUSTOM###
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Setting the toolbar
|
||||||
|
*/
|
||||||
|
protected function addToolBar()
|
||||||
|
{
|
||||||
|
JToolBarHelper::title(JText::_('COM_###COMPONENT###_IMPORT_TITLE'), 'upload');
|
||||||
|
JHtmlSidebar::setAction('index.php?option=com_###component###&view=###view###');
|
||||||
|
|
||||||
|
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
|
||||||
|
{
|
||||||
|
JToolBarHelper::preferences('com_###component###');
|
||||||
|
}
|
||||||
|
|
||||||
|
// set help url for this view if found
|
||||||
|
$help_url = ###Component###Helper::getHelpUrl('###view###');
|
||||||
|
if (###Component###Helper::checkString($help_url))
|
||||||
|
{
|
||||||
|
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $help_url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -46,7 +46,7 @@ $document->addStyleSheet('components/com_###component###/assets/css/admin.css');
|
|||||||
$document->addScript('components/com_###component###/assets/js/admin.js');
|
$document->addScript('components/com_###component###/assets/js/admin.js');
|
||||||
|
|
||||||
// require helper files
|
// require helper files
|
||||||
JLoader::register('###Component###Helper', dirname(__FILE__) . '/helpers/###component###.php');
|
JLoader::register('###Component###Helper', dirname(__FILE__) . '/helpers/###component###.php'); ###HELPER_EMAIL###
|
||||||
JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php');###LICENSE_LOCKED_INT### ###ADMIN_GLOBAL_EVENT###
|
JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php');###LICENSE_LOCKED_INT### ###ADMIN_GLOBAL_EVENT###
|
||||||
|
|
||||||
// import joomla controller library
|
// import joomla controller library
|
||||||
|
@ -35,7 +35,7 @@ $document->addStyleSheet('components/com_###component###/assets/css/site.css');
|
|||||||
$document->addScript('components/com_###component###/assets/js/site.js');
|
$document->addScript('components/com_###component###/assets/js/site.js');
|
||||||
|
|
||||||
// Require helper files
|
// Require helper files
|
||||||
JLoader::register('###Component###Helper', dirname(__FILE__) . '/helpers/###component###.php');
|
JLoader::register('###Component###Helper', dirname(__FILE__) . '/helpers/###component###.php'); ###HELPER_EMAIL###
|
||||||
JLoader::register('###Component###HelperRoute', dirname(__FILE__) . '/helpers/route.php');###LICENSE_LOCKED_INT### ###SITE_GLOBAL_EVENT###
|
JLoader::register('###Component###HelperRoute', dirname(__FILE__) . '/helpers/route.php');###LICENSE_LOCKED_INT### ###SITE_GLOBAL_EVENT###
|
||||||
|
|
||||||
// import joomla controller library
|
// import joomla controller library
|
||||||
|
@ -34,8 +34,7 @@ JHtml::_('bootstrap.tooltip');
|
|||||||
JHtml::_('script', 'system/core.js', false, true);
|
JHtml::_('script', 'system/core.js', false, true);
|
||||||
?>
|
?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList)) : ?>
|
||||||
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList)) : ?>
|
|
||||||
Joomla.continueImport = function()
|
Joomla.continueImport = function()
|
||||||
{
|
{
|
||||||
var form = document.getElementById('adminForm');
|
var form = document.getElementById('adminForm');
|
||||||
@ -62,7 +61,7 @@ JHtml::_('script', 'system/core.js', false, true);
|
|||||||
form.submit();
|
form.submit();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
Joomla.submitbutton = function()
|
Joomla.submitbutton = function()
|
||||||
{
|
{
|
||||||
var form = document.getElementById('adminForm');
|
var form = document.getElementById('adminForm');
|
||||||
@ -115,25 +114,25 @@ JHtml::_('script', 'system/core.js', false, true);
|
|||||||
form.submit();
|
form.submit();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
// Add spindle-wheel for importations:
|
// Add spindle-wheel for importations:
|
||||||
jQuery(document).ready(function($) {
|
jQuery(document).ready(function($) {
|
||||||
var outerDiv = $('body');
|
var outerDiv = $('body');
|
||||||
|
|
||||||
$('<div id="loading"></div>')
|
$('<div id="loading"></div>')
|
||||||
.css("background", "rgba(255, 255, 255, .8) url('components/com_###component###/assets/images/import.gif') 50% 15% no-repeat")
|
.css("background", "rgba(255, 255, 255, .8) url('components/com_###component###/assets/images/import.gif') 50% 15% no-repeat")
|
||||||
.css("top", outerDiv.position().top - $(window).scrollTop())
|
.css("top", outerDiv.position().top - $(window).scrollTop())
|
||||||
.css("left", outerDiv.position().left - $(window).scrollLeft())
|
.css("left", outerDiv.position().left - $(window).scrollLeft())
|
||||||
.css("width", outerDiv.width())
|
.css("width", outerDiv.width())
|
||||||
.css("height", outerDiv.height())
|
.css("height", outerDiv.height())
|
||||||
.css("position", "fixed")
|
.css("position", "fixed")
|
||||||
.css("opacity", "0.80")
|
.css("opacity", "0.80")
|
||||||
.css("-ms-filter", "progid:DXImageTransform.Microsoft.Alpha(Opacity = 80)")
|
.css("-ms-filter", "progid:DXImageTransform.Microsoft.Alpha(Opacity = 80)")
|
||||||
.css("filter", "alpha(opacity = 80)")
|
.css("filter", "alpha(opacity = 80)")
|
||||||
.css("display", "none")
|
.css("display", "none")
|
||||||
.appendTo(outerDiv);
|
.appendTo(outerDiv);
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -148,89 +147,87 @@ JHtml::_('script', 'system/core.js', false, true);
|
|||||||
<?php else : ?>
|
<?php else : ?>
|
||||||
<div id="j-main-container">
|
<div id="j-main-container">
|
||||||
<?php endif;?>
|
<?php endif;?>
|
||||||
|
|
||||||
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList) && ###Component###Helper::checkArray($this->headers)) : ?>
|
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList) && ###Component###Helper::checkArray($this->headers)) : ?>
|
||||||
<fieldset class="uploadform">
|
<fieldset class="uploadform">
|
||||||
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_LINK_FILE_TO_TABLE_COLUMNS'); ?></legend>
|
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_LINK_FILE_TO_TABLE_COLUMNS'); ?></legend>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_TABLE_COLUMNS'); ?></h4></label>
|
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_TABLE_COLUMNS'); ?></h4></label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_FILE_COLUMNS'); ?></h4></label>
|
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_FILE_COLUMNS'); ?></h4></label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php foreach($this->headerList as $name => $title): ?>
|
<?php foreach($this->headerList as $name => $title): ?>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label for="<?php echo $name; ?>" class="control-label" ><?php echo $title; ?></label>
|
<label for="<?php echo $name; ?>" class="control-label" ><?php echo $title; ?></label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<select name="<?php echo $name; ?>" id="vdm_<?php echo $name; ?>" required class="required input_box" >
|
<select name="<?php echo $name; ?>" id="vdm_<?php echo $name; ?>" required class="required input_box" >
|
||||||
<option value=""><?php echo JText::_('COM_###COMPONENT###_IMPORT_PLEASE_SELECT_COLUMN'); ?></option>
|
<option value=""><?php echo JText::_('COM_###COMPONENT###_IMPORT_PLEASE_SELECT_COLUMN'); ?></option>
|
||||||
<option value="IGNORE"><?php echo JText::_('COM_###COMPONENT###_IMPORT_IGNORE_COLUMN'); ?></option>
|
<option value="IGNORE"><?php echo JText::_('COM_###COMPONENT###_IMPORT_IGNORE_COLUMN'); ?></option>
|
||||||
<?php foreach($this->headers as $value => $option): ?>
|
<?php foreach($this->headers as $value => $option): ?>
|
||||||
<?php $selected = (strtolower($option) == strtolower ($title) || strtolower($option) == strtolower($name))? 'selected="selected"':''; ?>
|
<?php $selected = (strtolower($option) == strtolower ($title) || strtolower($option) == strtolower($name))? 'selected="selected"':''; ?>
|
||||||
<option value="<?php echo ###Component###Helper::htmlEscape($value); ?>" class="required" <?php echo $selected ?>><?php echo ###Component###Helper::htmlEscape($option); ?></option>
|
<option value="<?php echo ###Component###Helper::htmlEscape($value); ?>" class="required" <?php echo $selected ?>><?php echo ###Component###Helper::htmlEscape($option); ?></option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_CONTINUE'); ?>" onclick="Joomla.continueImport()" />
|
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_CONTINUE'); ?>" onclick="Joomla.continueImport()" />
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<input type="hidden" name="gettype" value="continue" />
|
<input type="hidden" name="gettype" value="continue" />
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<?php echo JHtml::_('bootstrap.startTabSet', 'myTab', array('active' => 'upload')); ?>
|
<?php echo JHtml::_('bootstrap.startTabSet', 'myTab', array('active' => 'upload')); ?>
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'upload', JText::_('COM_###COMPONENT###_IMPORT_FROM_UPLOAD', true)); ?>
|
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'upload', JText::_('COM_###COMPONENT###_IMPORT_FROM_UPLOAD', true)); ?>
|
||||||
<fieldset class="uploadform">
|
<fieldset class="uploadform">
|
||||||
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label for="import_package" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE'); ?></label>
|
<label for="import_package" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE'); ?></label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<input class="input_box" id="import_package" name="import_package" type="file" size="57" />
|
<input class="input_box" id="import_package" name="import_package" type="file" size="57" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_UPLOAD_BOTTON'); ?>" onclick="Joomla.submitbutton()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_UPLOAD_BOTTON'); ?>" onclick="Joomla.submitbutton()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'directory', JText::_('COM_###COMPONENT###_IMPORT_FROM_DIRECTORY', true)); ?>
|
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'directory', JText::_('COM_###COMPONENT###_IMPORT_FROM_DIRECTORY', true)); ?>
|
||||||
<fieldset class="uploadform">
|
<fieldset class="uploadform">
|
||||||
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label for="import_directory" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_DIRECTORY'); ?></label>
|
<label for="import_directory" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_DIRECTORY'); ?></label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<input type="text" id="import_directory" name="import_directory" class="span5 input_box" size="70" value="<?php echo $this->state->get('import.directory'); ?>" />
|
<input type="text" id="import_directory" name="import_directory" class="span5 input_box" size="70" value="<?php echo $this->state->get('import.directory'); ?>" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton3()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton3()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'url', JText::_('COM_###COMPONENT###_IMPORT_FROM_URL', true)); ?>
|
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'url', JText::_('COM_###COMPONENT###_IMPORT_FROM_URL', true)); ?>
|
||||||
<fieldset class="uploadform">
|
<fieldset class="uploadform">
|
||||||
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label for="import_url" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_URL'); ?></label>
|
<label for="import_url" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_URL'); ?></label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<input type="text" id="import_url" name="import_url" class="span5 input_box" size="70" value="http://" />
|
<input type="text" id="import_url" name="import_url" class="span5 input_box" size="70" value="http://" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton4()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton4()" /> <small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
||||||
<?php echo JHtml::_('bootstrap.endTab'); ?>
|
<?php echo JHtml::_('bootstrap.endTabSet'); ?>
|
||||||
|
|
||||||
<?php echo JHtml::_('bootstrap.endTabSet'); ?>
|
|
||||||
<input type="hidden" name="gettype" value="upload" />
|
<input type="hidden" name="gettype" value="upload" />
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<input type="hidden" name="task" value="import.import" />
|
<input type="hidden" name="task" value="import.import" />
|
||||||
<?php echo JHtml::_('form.token'); ?>
|
<?php echo JHtml::_('form.token'); ?>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
35
admin/compiler/joomla_3/default_import_custom.php
Normal file
35
admin/compiler/joomla_3/default_import_custom.php
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
|
||||||
|
__ __ _ _____ _ _ __ __ _ _ _
|
||||||
|
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
|
||||||
|
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
|
||||||
|
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
|
||||||
|
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
|
||||||
|
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
|
||||||
|
| |
|
||||||
|
|_|
|
||||||
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
|
@package Component Builder
|
||||||
|
@subpackage componentbuilder.php
|
||||||
|
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
|
||||||
|
@my wife Roline van der Merwe <http://www.vdm.io/>
|
||||||
|
@copyright Copyright (C) 2015. All Rights Reserved
|
||||||
|
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Builds Complex Joomla Components
|
||||||
|
|
||||||
|
/-----------------------------------------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
?>
|
||||||
|
###BOM###
|
||||||
|
|
||||||
|
// No direct access to this file
|
||||||
|
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
|
||||||
|
|
||||||
|
JHtml::_('jquery.framework');
|
||||||
|
JHtml::_('bootstrap.tooltip');
|
||||||
|
JHtml::_('script', 'system/core.js', false, true);
|
||||||
|
?>###IMPORT_DEFAULT_VIEW_CUSTOM###
|
@ -30,16 +30,18 @@ defined('_JEXEC') or die('Restricted access');
|
|||||||
defined('_JEXEC') or die('Restricted access');
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<?php if(is_array($this->icons['main'])) :?>
|
<?php if(isset($this->icons['main']) && is_array($this->icons['main'])) :?>
|
||||||
<?php foreach($this->icons['main'] as $icon): ?>
|
<?php foreach($this->icons['main'] as $icon): ?>
|
||||||
<div class="dashboard-wraper">
|
<div class="dashboard-wraper">
|
||||||
<div class="dashboard-content">
|
<div class="dashboard-content">
|
||||||
<a class="icon hasTip" href="<?php echo $icon->url; ?>">
|
<a class="icon" href="<?php echo $icon->url; ?>">
|
||||||
<img alt="<?php echo $icon->alt; ?>" src="components/com_###component###/assets/images/icons/<?php echo $icon->image; ?>">
|
<img alt="<?php echo $icon->alt; ?>" src="components/com_###component###/assets/images/icons/<?php echo $icon->image; ?>">
|
||||||
<span class="dashboard-title"><?php echo JText::_($icon->name); ?></span>
|
<span class="dashboard-title"><?php echo JText::_($icon->name); ?></span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
|
<?php else: ?>
|
||||||
|
<div class="alert alert-error"><h4 class="alert-heading"><?php echo JText::_("Permission denied, or not correctly set"); ?></h4><div class="alert-message"><?php echo JText::_("Please notify your System Administrator if result is unexpected."); ?></div></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
@ -36,7 +36,8 @@ JHtml::_('formbehavior.chosen', 'select');
|
|||||||
JHtml::_('behavior.keepalive');
|
JHtml::_('behavior.keepalive');
|
||||||
$componentParams = JComponentHelper::getParams('com_###component###');
|
$componentParams = JComponentHelper::getParams('com_###component###');
|
||||||
?>
|
?>
|
||||||
|
###EDITBODYFADEIN###
|
||||||
<form action="<?php echo JRoute::_('index.php?option=com_###component###&layout=edit&id='.(int) $this->item->id.$this->referral); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
|
<form action="<?php echo JRoute::_('index.php?option=com_###component###&layout=edit&id='.(int) $this->item->id.$this->referral); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
|
||||||
###EDITBODY###
|
###EDITBODY###
|
||||||
</form>###EDITBODYSCRIPT###
|
</form>
|
||||||
|
</div>###EDITBODYSCRIPT###
|
||||||
|
@ -225,6 +225,11 @@
|
|||||||
"rename": false,
|
"rename": false,
|
||||||
"type": "encrypt"
|
"type": "encrypt"
|
||||||
},
|
},
|
||||||
|
"Helper_email.php": {
|
||||||
|
"path": "c0mp0n3nt/admin/helpers",
|
||||||
|
"rename": "Helper_",
|
||||||
|
"type": "emailer"
|
||||||
|
},
|
||||||
"DASHJControllerAdmin.php": {
|
"DASHJControllerAdmin.php": {
|
||||||
"path": "c0mp0n3nt/admin/controllers",
|
"path": "c0mp0n3nt/admin/controllers",
|
||||||
"rename": "DASHJControllerAdmin",
|
"rename": "DASHJControllerAdmin",
|
||||||
@ -460,6 +465,28 @@
|
|||||||
"rename": false,
|
"rename": false,
|
||||||
"type": "import"
|
"type": "import"
|
||||||
},
|
},
|
||||||
|
"JControllerLegacy_import_custom.php": {
|
||||||
|
"path": "c0mp0n3nt/admin/controllers",
|
||||||
|
"rename": "JControllerLegacy_import_custom",
|
||||||
|
"type": "customimport"
|
||||||
|
},
|
||||||
|
"JModelLegacy_import_custom.php": {
|
||||||
|
"path": "c0mp0n3nt/admin/models",
|
||||||
|
"rename": "JModelLegacy_import_custom",
|
||||||
|
"type": "customimport"
|
||||||
|
},
|
||||||
|
"JViewLegacy_import_custom.php": {
|
||||||
|
"path": "c0mp0n3nt/admin/views/VIEW",
|
||||||
|
"rename": "new",
|
||||||
|
"newName": "view.html.php",
|
||||||
|
"type": "customimport"
|
||||||
|
},
|
||||||
|
"default_import_custom.php": {
|
||||||
|
"path": "c0mp0n3nt/admin/views/VIEW/tmpl",
|
||||||
|
"rename": "new",
|
||||||
|
"newName": "default.php",
|
||||||
|
"type": "customimport"
|
||||||
|
},
|
||||||
"JControllerLegacyHelp.php": {
|
"JControllerLegacyHelp.php": {
|
||||||
"path": "c0mp0n3nt/admin/controllers",
|
"path": "c0mp0n3nt/admin/controllers",
|
||||||
"rename": "new",
|
"rename": "new",
|
||||||
@ -700,7 +727,7 @@
|
|||||||
"type": "template"
|
"type": "template"
|
||||||
},
|
},
|
||||||
"layout_custom_admin.php": {
|
"layout_custom_admin.php": {
|
||||||
"path": "c0mp0n3nt/admin/layouts/VIEW",
|
"path": "c0mp0n3nt/admin/layouts",
|
||||||
"rename": "layout_custom_admin",
|
"rename": "layout_custom_admin",
|
||||||
"type": "layout"
|
"type": "layout"
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage componentbuilder.php
|
@subpackage componentbuilder.php
|
||||||
@ -44,7 +44,7 @@ $document->addStyleSheet('components/com_componentbuilder/assets/css/admin.css')
|
|||||||
$document->addScript('components/com_componentbuilder/assets/js/admin.js');
|
$document->addScript('components/com_componentbuilder/assets/js/admin.js');
|
||||||
|
|
||||||
// require helper files
|
// require helper files
|
||||||
JLoader::register('ComponentbuilderHelper', dirname(__FILE__) . '/helpers/componentbuilder.php');
|
JLoader::register('ComponentbuilderHelper', dirname(__FILE__) . '/helpers/componentbuilder.php');
|
||||||
JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php');
|
JLoader::register('JHtmlBatch_', dirname(__FILE__) . '/helpers/html/batch_.php');
|
||||||
|
|
||||||
// import joomla controller library
|
// import joomla controller library
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<config>
|
<config>
|
||||||
<fieldset
|
<fieldset
|
||||||
|
addrulepath="/administrator/components/com_componentbuilder/models/rules"
|
||||||
|
addfieldpath="/administrator/components/com_componentbuilder/models/fields"
|
||||||
name="global_config"
|
name="global_config"
|
||||||
label="COM_COMPONENTBUILDER_CONFIG_GLOBAL_LABEL"
|
label="COM_COMPONENTBUILDER_CONFIG_GLOBAL_LABEL"
|
||||||
description="COM_COMPONENTBUILDER_CONFIG_GLOBAL_DESC">
|
description="COM_COMPONENTBUILDER_CONFIG_GLOBAL_DESC">
|
||||||
@ -28,7 +30,7 @@
|
|||||||
name="save_history"
|
name="save_history"
|
||||||
type="radio"
|
type="radio"
|
||||||
class="btn-group btn-group-yesno"
|
class="btn-group btn-group-yesno"
|
||||||
default="0"
|
default="1"
|
||||||
label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL"
|
label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL"
|
||||||
description="JGLOBAL_SAVE_HISTORY_OPTIONS_DESC"
|
description="JGLOBAL_SAVE_HISTORY_OPTIONS_DESC"
|
||||||
>
|
>
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage controller.php
|
@subpackage controller.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin_view.php
|
@subpackage admin_view.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerAdmin_view extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin_views.php
|
@subpackage admin_views.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage ajax.json.php
|
@subpackage ajax.json.php
|
||||||
@ -45,6 +45,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
// load the tasks
|
// load the tasks
|
||||||
$this->registerTask('tableColumns', 'ajax');
|
$this->registerTask('tableColumns', 'ajax');
|
||||||
$this->registerTask('fieldSelectOptions', 'ajax');
|
$this->registerTask('fieldSelectOptions', 'ajax');
|
||||||
|
$this->registerTask('getImportScripts', 'ajax');
|
||||||
$this->registerTask('layoutDetails', 'ajax');
|
$this->registerTask('layoutDetails', 'ajax');
|
||||||
$this->registerTask('templateDetails', 'ajax');
|
$this->registerTask('templateDetails', 'ajax');
|
||||||
$this->registerTask('snippetDetails', 'ajax');
|
$this->registerTask('snippetDetails', 'ajax');
|
||||||
@ -70,6 +71,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'tableColumns':
|
case 'tableColumns':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$tableValue = $jinput->get('table', NULL, 'WORD');
|
$tableValue = $jinput->get('table', NULL, 'WORD');
|
||||||
if($tableValue && $user->id != 0)
|
if($tableValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -83,6 +85,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -103,6 +109,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'fieldSelectOptions':
|
case 'fieldSelectOptions':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -116,6 +123,48 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
echo "(".json_encode($result).");";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
if(array_key_exists('callback',$_GET))
|
||||||
|
{
|
||||||
|
echo $_GET['callback']."(".json_encode($e).");";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
echo "(".json_encode($e).");";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'getImportScripts':
|
||||||
|
try
|
||||||
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
|
$typeValue = $jinput->get('type', NULL, 'WORD');
|
||||||
|
if($typeValue && $user->id != 0)
|
||||||
|
{
|
||||||
|
$result = $this->getModel('ajax')->getImportScripts($typeValue);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$result = false;
|
||||||
|
}
|
||||||
|
if(array_key_exists('callback',$_GET))
|
||||||
|
{
|
||||||
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -136,6 +185,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'layoutDetails':
|
case 'layoutDetails':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', null, 'INT');
|
$idValue = $jinput->get('id', null, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -149,6 +199,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -169,6 +223,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'templateDetails':
|
case 'templateDetails':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', null, 'INT');
|
$idValue = $jinput->get('id', null, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -182,6 +237,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -202,6 +261,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'snippetDetails':
|
case 'snippetDetails':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -215,6 +275,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -235,6 +299,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'dynamicValues':
|
case 'dynamicValues':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
$viewValue = $jinput->get('view', NULL, 'WORD');
|
$viewValue = $jinput->get('view', NULL, 'WORD');
|
||||||
if($idValue && $viewValue && $user->id != 0)
|
if($idValue && $viewValue && $user->id != 0)
|
||||||
@ -249,6 +314,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -269,6 +338,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'dynamicFormDetails':
|
case 'dynamicFormDetails':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -282,6 +352,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -302,6 +376,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'dbTableColumns':
|
case 'dbTableColumns':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$nameValue = $jinput->get('name', NULL, 'WORD');
|
$nameValue = $jinput->get('name', NULL, 'WORD');
|
||||||
$asValue = $jinput->get('as', NULL, 'WORD');
|
$asValue = $jinput->get('as', NULL, 'WORD');
|
||||||
$typeValue = $jinput->get('type', NULL, 'INT');
|
$typeValue = $jinput->get('type', NULL, 'INT');
|
||||||
@ -317,6 +392,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -337,6 +416,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'viewTableColumns':
|
case 'viewTableColumns':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
$asValue = $jinput->get('as', NULL, 'WORD');
|
$asValue = $jinput->get('as', NULL, 'WORD');
|
||||||
$typeValue = $jinput->get('type', NULL, 'INT');
|
$typeValue = $jinput->get('type', NULL, 'INT');
|
||||||
@ -352,6 +432,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
@ -372,6 +456,7 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
case 'fieldOptions':
|
case 'fieldOptions':
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
$returnRaw = $jinput->get('raw', false, 'BOOLEAN');
|
||||||
$idValue = $jinput->get('id', NULL, 'INT');
|
$idValue = $jinput->get('id', NULL, 'INT');
|
||||||
if($idValue && $user->id != 0)
|
if($idValue && $user->id != 0)
|
||||||
{
|
{
|
||||||
@ -385,6 +470,10 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
|
|||||||
{
|
{
|
||||||
echo $_GET['callback'] . "(".json_encode($result).");";
|
echo $_GET['callback'] . "(".json_encode($result).");";
|
||||||
}
|
}
|
||||||
|
elseif($returnRaw)
|
||||||
|
{
|
||||||
|
echo json_encode($result);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo "(".json_encode($result).");";
|
echo "(".json_encode($result).");";
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage compiler.php
|
@subpackage compiler.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage component.php
|
@subpackage component.php
|
||||||
@ -305,7 +305,7 @@ class ComponentbuilderControllerComponent extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage componentbuilder.php
|
@subpackage componentbuilder.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage components.php
|
@subpackage components.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_admin_view.php
|
@subpackage custom_admin_view.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerCustom_admin_view extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_admin_views.php
|
@subpackage custom_admin_views.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_get.php
|
@subpackage dynamic_get.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerDynamic_get extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_gets.php
|
@subpackage dynamic_gets.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage field.php
|
@subpackage field.php
|
||||||
@ -349,7 +349,7 @@ class ComponentbuilderControllerField extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fields.php
|
@subpackage fields.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fieldtype.php
|
@subpackage fieldtype.php
|
||||||
@ -349,7 +349,7 @@ class ComponentbuilderControllerFieldtype extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fieldtypes.php
|
@subpackage fieldtypes.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help.php
|
@subpackage help.php
|
||||||
@ -115,10 +115,10 @@ class ComponentbuilderControllerHelp extends JControllerLegacy
|
|||||||
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';
|
||||||
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
$text[] = '<div class="uk-panel uk-width-1-1 uk-panel-box uk-panel-box-primary">';
|
||||||
// build the help text
|
// build the help text
|
||||||
$text[] = '<h3 class="uk-panel-title">'.$document->title."</h3>";
|
$text[] = '<h1 class="uk-panel-title">'.$document->title."</h1>";
|
||||||
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
$text[] = str_replace(array_keys($images),array_values($images),$document->content);
|
||||||
// end template
|
// end template
|
||||||
$text[] = '</div>';
|
$text[] = '</div><br /><br />';
|
||||||
$text[] = '</div>';
|
$text[] = '</div>';
|
||||||
$text[] = "</body>";
|
$text[] = "</body>";
|
||||||
$text[] = "</html>";
|
$text[] = "</html>";
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help_document.php
|
@subpackage help_document.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerHelp_document extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help_documents.php
|
@subpackage help_documents.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage import.php
|
@subpackage import.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layout.php
|
@subpackage layout.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerLayout extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layouts.php
|
@subpackage layouts.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage site_view.php
|
@subpackage site_view.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerSite_view extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage site_views.php
|
@subpackage site_views.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage snippet.php
|
@subpackage snippet.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerSnippet extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage snippets.php
|
@subpackage snippets.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage template.php
|
@subpackage template.php
|
||||||
@ -319,7 +319,7 @@ class ComponentbuilderControllerTemplate extends JControllerForm
|
|||||||
*
|
*
|
||||||
* @since 11.1
|
* @since 11.1
|
||||||
*/
|
*/
|
||||||
protected function postSaveHook(JModelLegacy &$model, $validData = array())
|
protected function postSaveHook(JModelLegacy $model, $validData = array())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.0.8
|
@version 2.1.10
|
||||||
@build 30th January, 2016
|
@build 31st May, 2016
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage templates.php
|
@subpackage templates.php
|
||||||
|
49
admin/custom/PHPExcel/Reader/ChunkReadFilter.php
Normal file
49
admin/custom/PHPExcel/Reader/ChunkReadFilter.php
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
|
||||||
|
__ __ _ _____ _ _ __ __ _ _ _
|
||||||
|
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
|
||||||
|
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
|
||||||
|
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
|
||||||
|
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
|
||||||
|
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
|
||||||
|
| |
|
||||||
|
|_|
|
||||||
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
|
@author Llewellyn van der Merwe <http://www.vdm.io>
|
||||||
|
@copyright Copyright (C) 2015. All Rights Reserved
|
||||||
|
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
/-----------------------------------------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/** PHPExcel root directory */
|
||||||
|
if (!defined('PHPEXCEL_ROOT')) {
|
||||||
|
/**
|
||||||
|
* @ignore
|
||||||
|
*/
|
||||||
|
define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../');
|
||||||
|
require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php');
|
||||||
|
}
|
||||||
|
|
||||||
|
class PHPExcel_Reader_chunkReadFilter implements PHPExcel_Reader_IReadFilter
|
||||||
|
{
|
||||||
|
private $_startRow = 0;
|
||||||
|
private $_endRow = 0;
|
||||||
|
|
||||||
|
/** Set the list of rows that we want to read */
|
||||||
|
public function setRows($startRow, $chunkSize)
|
||||||
|
{
|
||||||
|
$this->_startRow = $startRow;
|
||||||
|
$this->_endRow = $startRow + $chunkSize;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function readCell($column, $row, $worksheetName = '')
|
||||||
|
{
|
||||||
|
// Only read the heading row, and the rows that are configured in $this->_startRow and $this->_endRow
|
||||||
|
if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
@ -7,8 +7,8 @@
|
|||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
|
|
||||||
// No direct access.
|
// No direct access to this file
|
||||||
defined('_JEXEC') or die;
|
defined('_JEXEC') or die('Restricted access');
|
||||||
|
|
||||||
class Chartbuilder
|
class Chartbuilder
|
||||||
{
|
{
|
||||||
|
4
admin/custom/footable2/LICENSE
Normal file
4
admin/custom/footable2/LICENSE
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
Copyright 2012 Steven Usher & Brad Vincent
|
||||||
|
|
||||||
|
Released under the MIT license
|
||||||
|
You are free to use FooTable in commercial projects as long as this copyright header is left intact.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user