Compare commits
21 Commits
Author | SHA1 | Date | |
---|---|---|---|
e037d29935 | |||
b60803ef7b | |||
aceda7bae2 | |||
111aa4a3de | |||
9742991690 | |||
2c1903508c | |||
384c403ae4 | |||
6e0bcc0ae2 | |||
3ad9ae8b8f | |||
5e36ede2ac | |||
cb355feaf4 | |||
9b1f111251 | |||
4cead46ac4 | |||
25c632065a | |||
ea1edebc05 | |||
498c75dfcf | |||
f39a877db2 | |||
7afbb131ce | |||
6bba258fec | |||
1cf259a54d | |||
d113d7b91b |
29
README.md
29
README.md
@ -1,4 +1,4 @@
|
|||||||
# Component Builder (2.4.2)
|
# Component Builder (2.4.8)
|
||||||
|
|
||||||
This is a [Joomla 3.x](http://www.joomla.org/) component.
|
This is a [Joomla 3.x](http://www.joomla.org/) component.
|
||||||
|
|
||||||
@ -8,7 +8,7 @@ The Component Builder for [Joomla](http://www.joomla.org/) that is highly advanc
|
|||||||
|
|
||||||
Whether you're a seasoned [Joomla](http://www.joomla.org/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!
|
Whether you're a seasoned [Joomla](http://www.joomla.org/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!
|
||||||
|
|
||||||
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.4.2) with **ALL** its features and **ALL** concepts totally open-source and free!
|
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.4.8) with **ALL** its features and **ALL** concepts totally open-source and free!
|
||||||
|
|
||||||
Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
||||||
|
|
||||||
@ -75,12 +75,14 @@ Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
|||||||
|
|
||||||
# Get Access to Video Tutorials
|
# Get Access to Video Tutorials
|
||||||
|
|
||||||
> **You can purchase more demo content for Component Builder including access to training & help video tutorials:**
|
> **You can purchase more [demo content](http://vdm.bz/jcb-packages) for Component Builder including access to training & help video tutorials:**
|
||||||
|
|
||||||
+ 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) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_demo.zip) _(free)_
|
||||||
+ Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component)
|
+ *Advance Demo Component* get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_demoAdvanced.zip) _([buy key](http://vdm.bz/get-advance-demo-key))_
|
||||||
+ Help View Integration*
|
+ *Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_sermondistributor.zip) _([buy key](http://vdm.bz/get-sermon-distributor-key))_
|
||||||
+ Training & Help Videos* tutorials in the component included.
|
+ *Location Data* see the build on [github](https://github.com/vdm-io/Joomla-Location-Data) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_locationData.zip) _([buy key](http://vdm.bz/get-location-data-key))_
|
||||||
|
+ *Help View Integration*
|
||||||
|
+ *Training & Help Videos* tutorials in the component included.
|
||||||
|
|
||||||
[**GET ACCESS NOW!**](http://vdm.bz/component-builder)
|
[**GET ACCESS NOW!**](http://vdm.bz/component-builder)
|
||||||
|
|
||||||
@ -105,12 +107,12 @@ Component Builder is mapped as a component in itself on my local development env
|
|||||||
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
||||||
+ *Name*: [Component Builder](http://vdm.bz/component-builder)
|
+ *Name*: [Component Builder](http://vdm.bz/component-builder)
|
||||||
+ *First Build*: 30th April, 2015
|
+ *First Build*: 30th April, 2015
|
||||||
+ *Last Build*: 6th April, 2017
|
+ *Last Build*: 3rd July, 2017
|
||||||
+ *Version*: 2.4.2
|
+ *Version*: 2.4.8
|
||||||
+ *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*: **105639**
|
+ *Line count*: **106184**
|
||||||
+ *File count*: **639**
|
+ *File count*: **647**
|
||||||
+ *Folder count*: **115**
|
+ *Folder count*: **115**
|
||||||
|
|
||||||
> This **component** was build with a Joomla [Automated Component Builder](http://vdm.bz/component-builder).
|
> This **component** was build with a Joomla [Automated Component Builder](http://vdm.bz/component-builder).
|
||||||
@ -119,5 +121,6 @@ Component Builder is mapped as a component in itself on my local development env
|
|||||||
## Donations
|
## Donations
|
||||||
|
|
||||||
Come on buy me a coffee :)
|
Come on buy me a coffee :)
|
||||||
* PayPal: pay@vdm.io
|
* PayPal: [paypal.me/payvdm](https://www.paypal.me/payvdm)
|
||||||
* Bitcoin: 3H35PYwikEosvcjxHXGPLS1GufZ4b4iFu3
|
* Bitcoin: 1N45VjnZSNmDK64xRrQYGRRi56rgpnze3s
|
||||||
|
* Ethereum: 0x243392daa3c9c8bc841fcacf7c7f72541cb16823
|
@ -1,4 +1,4 @@
|
|||||||
# Component Builder (2.4.2)
|
# Component Builder (2.4.8)
|
||||||
|
|
||||||
This is a [Joomla 3.x](http://www.joomla.org/) component.
|
This is a [Joomla 3.x](http://www.joomla.org/) component.
|
||||||
|
|
||||||
@ -8,7 +8,7 @@ The Component Builder for [Joomla](http://www.joomla.org/) that is highly advanc
|
|||||||
|
|
||||||
Whether you're a seasoned [Joomla](http://www.joomla.org/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!
|
Whether you're a seasoned [Joomla](http://www.joomla.org/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!
|
||||||
|
|
||||||
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.4.2) with **ALL** its features and **ALL** concepts totally open-source and free!
|
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.4.8) with **ALL** its features and **ALL** concepts totally open-source and free!
|
||||||
|
|
||||||
Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
||||||
|
|
||||||
@ -75,12 +75,14 @@ Once installed upgrades are quick and easy via the default Joomla upgrade area.
|
|||||||
|
|
||||||
# Get Access to Video Tutorials
|
# Get Access to Video Tutorials
|
||||||
|
|
||||||
> **You can purchase more demo content for Component Builder including access to training & help video tutorials:**
|
> **You can purchase more [demo content](http://vdm.bz/jcb-packages) for Component Builder including access to training & help video tutorials:**
|
||||||
|
|
||||||
+ 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) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_demo.zip) _(free)_
|
||||||
+ Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component)
|
+ *Advance Demo Component* get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_demoAdvanced.zip) _([buy key](http://vdm.bz/get-advance-demo-key))_
|
||||||
+ Help View Integration*
|
+ *Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_sermondistributor.zip) _([buy key](http://vdm.bz/get-sermon-distributor-key))_
|
||||||
+ Training & Help Videos* tutorials in the component included.
|
+ *Location Data* see the build on [github](https://github.com/vdm-io/Joomla-Location-Data) or get the [JCB Package](https://github.com/vdm-io/JCB-Packages/raw/master/JCB_locationData.zip) _([buy key](http://vdm.bz/get-location-data-key))_
|
||||||
|
+ *Help View Integration*
|
||||||
|
+ *Training & Help Videos* tutorials in the component included.
|
||||||
|
|
||||||
[**GET ACCESS NOW!**](http://vdm.bz/component-builder)
|
[**GET ACCESS NOW!**](http://vdm.bz/component-builder)
|
||||||
|
|
||||||
@ -105,12 +107,12 @@ Component Builder is mapped as a component in itself on my local development env
|
|||||||
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
||||||
+ *Name*: [Component Builder](http://vdm.bz/component-builder)
|
+ *Name*: [Component Builder](http://vdm.bz/component-builder)
|
||||||
+ *First Build*: 30th April, 2015
|
+ *First Build*: 30th April, 2015
|
||||||
+ *Last Build*: 6th April, 2017
|
+ *Last Build*: 3rd July, 2017
|
||||||
+ *Version*: 2.4.2
|
+ *Version*: 2.4.8
|
||||||
+ *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*: **105639**
|
+ *Line count*: **106184**
|
||||||
+ *File count*: **639**
|
+ *File count*: **647**
|
||||||
+ *Folder count*: **115**
|
+ *Folder count*: **115**
|
||||||
|
|
||||||
> This **component** was build with a Joomla [Automated Component Builder](http://vdm.bz/component-builder).
|
> This **component** was build with a Joomla [Automated Component Builder](http://vdm.bz/component-builder).
|
||||||
@ -119,5 +121,6 @@ Component Builder is mapped as a component in itself on my local development env
|
|||||||
## Donations
|
## Donations
|
||||||
|
|
||||||
Come on buy me a coffee :)
|
Come on buy me a coffee :)
|
||||||
* PayPal: pay@vdm.io
|
* PayPal: [paypal.me/payvdm](https://www.paypal.me/payvdm)
|
||||||
* Bitcoin: 3H35PYwikEosvcjxHXGPLS1GufZ4b4iFu3
|
* Bitcoin: 1N45VjnZSNmDK64xRrQYGRRi56rgpnze3s
|
||||||
|
* Ethereum: 0x243392daa3c9c8bc841fcacf7c7f72541cb16823
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@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 @update number 109 of this MVC
|
@version @update number 111 of this MVC
|
||||||
@build 31st March, 2017
|
@build 7th May, 2017
|
||||||
@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 @update number 109 of this MVC
|
@version @update number 111 of this MVC
|
||||||
@build 31st March, 2017
|
@build 7th May, 2017
|
||||||
@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 @update number 47 of this MVC
|
@version @update number 49 of this MVC
|
||||||
@build 21st March, 2017
|
@build 31st May, 2017
|
||||||
@created 1st February, 2017
|
@created 1st February, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage compiler.css
|
@subpackage compiler.css
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 82 of this MVC
|
@version @update number 82 of this MVC
|
||||||
@build 3rd April, 2017
|
@build 26th April, 2017
|
||||||
@created 11th October, 2016
|
@created 11th October, 2016
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_code.css
|
@subpackage custom_code.css
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 82 of this MVC
|
@version @update number 82 of this MVC
|
||||||
@build 3rd April, 2017
|
@build 26th April, 2017
|
||||||
@created 11th October, 2016
|
@created 11th October, 2016
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_codes.css
|
@subpackage custom_codes.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@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 @update number 81 of this MVC
|
@version @update number 84 of this MVC
|
||||||
@build 15th January, 2017
|
@build 4th May, 2017
|
||||||
@created 21st May, 2015
|
@created 21st May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_get.css
|
@subpackage dynamic_get.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 81 of this MVC
|
@version @update number 84 of this MVC
|
||||||
@build 15th January, 2017
|
@build 4th May, 2017
|
||||||
@created 21st May, 2015
|
@created 21st May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_gets.css
|
@subpackage dynamic_gets.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 38 of this MVC
|
||||||
@build 3rd February, 2017
|
@build 28th May, 2017
|
||||||
@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 @update number 37 of this MVC
|
@version @update number 38 of this MVC
|
||||||
@build 3rd February, 2017
|
@build 28th May, 2017
|
||||||
@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 @update number 12 of this MVC
|
@version @update number 13 of this MVC
|
||||||
@build 20th October, 2016
|
@build 13th June, 2017
|
||||||
@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 @update number 12 of this MVC
|
@version @update number 13 of this MVC
|
||||||
@build 20th October, 2016
|
@build 13th June, 2017
|
||||||
@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 @update number 318 of this MVC
|
@version @update number 338 of this MVC
|
||||||
@build 5th April, 2017
|
@build 28th June, 2017
|
||||||
@created 6th May, 2015
|
@created 6th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage joomla_component.css
|
@subpackage joomla_component.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 318 of this MVC
|
@version @update number 338 of this MVC
|
||||||
@build 5th April, 2017
|
@build 28th June, 2017
|
||||||
@created 6th May, 2015
|
@created 6th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage joomla_components.css
|
@subpackage joomla_components.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 39 of this MVC
|
||||||
@build 5th April, 2017
|
@build 7th April, 2017
|
||||||
@created 3rd April, 2017
|
@created 3rd April, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage language_translation.css
|
@subpackage language_translation.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 39 of this MVC
|
||||||
@build 5th April, 2017
|
@build 7th April, 2017
|
||||||
@created 3rd April, 2017
|
@created 3rd April, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage language_translations.css
|
@subpackage language_translations.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 67 of this MVC
|
@version @update number 77 of this MVC
|
||||||
@build 1st April, 2017
|
@build 30th May, 2017
|
||||||
@created 18th May, 2015
|
@created 18th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layout.css
|
@subpackage layout.css
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 67 of this MVC
|
@version @update number 77 of this MVC
|
||||||
@build 1st April, 2017
|
@build 30th May, 2017
|
||||||
@created 18th May, 2015
|
@created 18th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layouts.css
|
@subpackage layouts.css
|
||||||
|
@ -52,7 +52,10 @@ 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();###DASH_GET_CUSTOM_DATA###
|
$this->contributors = ###Component###Helper::getContributors();###DASH_GET_CUSTOM_DATA###
|
||||||
|
|
||||||
|
// get the manifest details of the component
|
||||||
|
$this->manifest = ###Component###Helper::manifest();
|
||||||
|
|
||||||
// Set the toolbar
|
// Set the toolbar
|
||||||
$this->addToolBar();
|
$this->addToolBar();
|
||||||
|
|
||||||
@ -87,15 +90,19 @@ class ###Component###View###Component### extends JViewLegacy
|
|||||||
/**
|
/**
|
||||||
* Method to set up the document properties
|
* Method to set up the document properties
|
||||||
*
|
*
|
||||||
*
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
protected function setDocument()
|
protected function setDocument()
|
||||||
{
|
{
|
||||||
$document = JFactory::getDocument();
|
$document = JFactory::getDocument();
|
||||||
|
|
||||||
|
// add dashboard style sheets
|
||||||
$document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/dashboard.css");
|
$document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/dashboard.css");
|
||||||
|
|
||||||
|
// set page title
|
||||||
$document->setTitle(JText::_('COM_###COMPONENT###_DASHBOARD'));
|
$document->setTitle(JText::_('COM_###COMPONENT###_DASHBOARD'));
|
||||||
|
|
||||||
|
// add manifest to page JavaScript
|
||||||
|
$document->addScriptDeclaration("var manifest = jQuery.parseJSON('" . json_encode($this->manifest) . "');", "text/javascript");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -706,7 +706,8 @@ abstract class ###Component###Helper
|
|||||||
// If you don't need to handle multi-byte characters
|
// If you don't need to handle multi-byte characters
|
||||||
// you can use preg_replace rather than mb_ereg_replace
|
// you can use preg_replace rather than mb_ereg_replace
|
||||||
// Thanks @Łukasz Rysiak!
|
// Thanks @Łukasz Rysiak!
|
||||||
$string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
// $string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
|
$string = preg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
// http://stackoverflow.com/a/2021729/1429677
|
// http://stackoverflow.com/a/2021729/1429677
|
||||||
return preg_replace('/\s+/', ' ', $string);
|
return preg_replace('/\s+/', ' ', $string);
|
||||||
}
|
}
|
||||||
|
@ -698,7 +698,8 @@ abstract class ###Component###Helper
|
|||||||
// If you don't need to handle multi-byte characters
|
// If you don't need to handle multi-byte characters
|
||||||
// you can use preg_replace rather than mb_ereg_replace
|
// you can use preg_replace rather than mb_ereg_replace
|
||||||
// Thanks @Łukasz Rysiak!
|
// Thanks @Łukasz Rysiak!
|
||||||
$string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
// $string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
|
$string = preg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
// http://stackoverflow.com/a/2021729/1429677
|
// http://stackoverflow.com/a/2021729/1429677
|
||||||
return preg_replace('/\s+/', ' ', $string);
|
return preg_replace('/\s+/', ' ', $string);
|
||||||
}
|
}
|
||||||
|
@ -29,30 +29,27 @@ 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');
|
||||||
|
|
||||||
$manifest = ###Component###Helper::manifest();
|
|
||||||
JHtml::_('bootstrap.loadCss');
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<img alt="<?php echo JText::_('COM_###COMPONENT###'); ?>" src="components/com_###component###/assets/images/component-300.###COMP_IMAGE_TYPE###">
|
<img alt="<?php echo JText::_('COM_###COMPONENT###'); ?>" src="components/com_###component###/assets/images/component-300.###COMP_IMAGE_TYPE###">
|
||||||
<ul class="list-striped">
|
<ul class="list-striped">
|
||||||
<li><b><?php echo JText::_('COM_###COMPONENT###_VERSION'); ?>:</b> <?php echo $manifest->version; ?></li>
|
<li><b><?php echo JText::_('COM_###COMPONENT###_VERSION'); ?>:</b> <?php echo $this->manifest->version; ?> <span class="update-notice"></span></li>
|
||||||
<li><b><?php echo JText::_('COM_###COMPONENT###_DATE'); ?>:</b> <?php echo $manifest->creationDate; ?></li>
|
<li><b><?php echo JText::_('COM_###COMPONENT###_DATE'); ?>:</b> <?php echo $this->manifest->creationDate; ?></li>
|
||||||
<li><b><?php echo JText::_('COM_###COMPONENT###_AUTHOR'); ?>:</b> <a href="mailto:<?php echo $manifest->authorEmail; ?>"><?php echo $manifest->author; ?></a></li>
|
<li><b><?php echo JText::_('COM_###COMPONENT###_AUTHOR'); ?>:</b> <a href="mailto:<?php echo $this->manifest->authorEmail; ?>"><?php echo $this->manifest->author; ?></a></li>
|
||||||
<li><b><?php echo JText::_('COM_###COMPONENT###_WEBSITE'); ?>:</b> <a href="<?php echo $manifest->authorUrl; ?>" target="_blank"><?php echo $manifest->authorUrl; ?></a></li>
|
<li><b><?php echo JText::_('COM_###COMPONENT###_WEBSITE'); ?>:</b> <a href="<?php echo $this->manifest->authorUrl; ?>" target="_blank"><?php echo $this->manifest->authorUrl; ?></a></li>
|
||||||
<li><b><?php echo JText::_('COM_###COMPONENT###_LICENSE'); ?>:</b> <?php echo $manifest->license; ?></li>
|
<li><b><?php echo JText::_('COM_###COMPONENT###_LICENSE'); ?>:</b> <?php echo $this->manifest->license; ?></li>
|
||||||
<li><b><?php echo $manifest->copyright; ?></b></li>
|
<li><b><?php echo $this->manifest->copyright; ?></b></li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<?php if(###Component###Helper::checkArray($this->contributors)): ?>
|
<?php if(###Component###Helper::checkArray($this->contributors)): ?>
|
||||||
<?php if(count($this->contributors) > 1): ?>
|
<?php if(count($this->contributors) > 1): ?>
|
||||||
<h3><?php echo JText::_('COM_###COMPONENT###_CONTRIBUTORS'); ?></h3>
|
<h3><?php echo JText::_('COM_###COMPONENT###_CONTRIBUTORS'); ?></h3>
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<h3><?php echo JText::_('COM_###COMPONENT###_CONTRIBUTOR'); ?></h3>
|
<h3><?php echo JText::_('COM_###COMPONENT###_CONTRIBUTOR'); ?></h3>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<ul class="list-striped">
|
<ul class="list-striped">
|
||||||
<?php foreach($this->contributors as $contributor): ?>
|
<?php foreach($this->contributors as $contributor): ?>
|
||||||
<li><b><?php echo $contributor['title']; ?>:</b> <?php echo $contributor['name']; ?></li>
|
<li><b><?php echo $contributor['title']; ?>:</b> <?php echo $contributor['name']; ?></li>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage componentbuilder.php
|
@subpackage componentbuilder.php
|
||||||
|
@ -344,47 +344,6 @@
|
|||||||
validated="url"
|
validated="url"
|
||||||
message="Error! Please add link here."
|
message="Error! Please add link here."
|
||||||
hint="COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_HINT"
|
hint="COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_HINT"
|
||||||
/>
|
|
||||||
<!-- Export_buy_query Field. Type: Text. (joomla) -->
|
|
||||||
<field
|
|
||||||
type="text"
|
|
||||||
name="export_buy_query"
|
|
||||||
label="COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_LABEL"
|
|
||||||
size="40"
|
|
||||||
maxlength="150"
|
|
||||||
description="COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_DESCRIPTION"
|
|
||||||
class="text_area"
|
|
||||||
filter="STRING"
|
|
||||||
message="Error! Please email address here."
|
|
||||||
hint="COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_HINT"
|
|
||||||
/>
|
|
||||||
<!-- Export_package_link Field. Type: Url. (joomla) -->
|
|
||||||
<field
|
|
||||||
type="url"
|
|
||||||
name="export_package_link"
|
|
||||||
label="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_LABEL"
|
|
||||||
size="60"
|
|
||||||
maxlength="150"
|
|
||||||
description="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_DESCRIPTION"
|
|
||||||
class="text_area"
|
|
||||||
required="false"
|
|
||||||
filter="url"
|
|
||||||
validated="url"
|
|
||||||
message="Error! Please add link here."
|
|
||||||
hint="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_HINT"
|
|
||||||
/>
|
|
||||||
<!-- Export_package_query Field. Type: Text. (joomla) -->
|
|
||||||
<field
|
|
||||||
type="text"
|
|
||||||
name="export_package_query"
|
|
||||||
label="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_LABEL"
|
|
||||||
size="40"
|
|
||||||
maxlength="150"
|
|
||||||
description="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_DESCRIPTION"
|
|
||||||
class="text_area"
|
|
||||||
filter="STRING"
|
|
||||||
message="Error! Please email address here."
|
|
||||||
hint="COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_HINT"
|
|
||||||
/>
|
/>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<fieldset
|
<fieldset
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@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 @update number 109 of this MVC
|
@version @update number 111 of this MVC
|
||||||
@build 31st March, 2017
|
@build 7th May, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage admin_view.php
|
@subpackage admin_view.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 109 of this MVC
|
@version @update number 111 of this MVC
|
||||||
@build 31st March, 2017
|
@build 7th May, 2017
|
||||||
@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.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage ajax.json.php
|
@subpackage ajax.json.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 47 of this MVC
|
@version @update number 49 of this MVC
|
||||||
@build 21st March, 2017
|
@build 31st May, 2017
|
||||||
@created 1st February, 2017
|
@created 1st February, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage compiler.php
|
@subpackage compiler.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage componentbuilder.php
|
@subpackage componentbuilder.php
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 82 of this MVC
|
@version @update number 82 of this MVC
|
||||||
@build 3rd April, 2017
|
@build 26th April, 2017
|
||||||
@created 11th October, 2016
|
@created 11th October, 2016
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_code.php
|
@subpackage custom_code.php
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 82 of this MVC
|
@version @update number 82 of this MVC
|
||||||
@build 3rd April, 2017
|
@build 26th April, 2017
|
||||||
@created 11th October, 2016
|
@created 11th October, 2016
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_codes.php
|
@subpackage custom_codes.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 81 of this MVC
|
@version @update number 84 of this MVC
|
||||||
@build 15th January, 2017
|
@build 4th May, 2017
|
||||||
@created 21st May, 2015
|
@created 21st May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_get.php
|
@subpackage dynamic_get.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 81 of this MVC
|
@version @update number 84 of this MVC
|
||||||
@build 15th January, 2017
|
@build 4th May, 2017
|
||||||
@created 21st May, 2015
|
@created 21st May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage dynamic_gets.php
|
@subpackage dynamic_gets.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 38 of this MVC
|
||||||
@build 3rd February, 2017
|
@build 28th May, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage field.php
|
@subpackage field.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 38 of this MVC
|
||||||
@build 3rd February, 2017
|
@build 28th May, 2017
|
||||||
@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 @update number 12 of this MVC
|
@version @update number 13 of this MVC
|
||||||
@build 20th October, 2016
|
@build 13th June, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fieldtype.php
|
@subpackage fieldtype.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 12 of this MVC
|
@version @update number 13 of this MVC
|
||||||
@build 20th October, 2016
|
@build 13th June, 2017
|
||||||
@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.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage help.php
|
@subpackage help.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@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.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage import_joomla_components.php
|
@subpackage import_joomla_components.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 318 of this MVC
|
@version @update number 338 of this MVC
|
||||||
@build 5th April, 2017
|
@build 28th June, 2017
|
||||||
@created 6th May, 2015
|
@created 6th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage joomla_component.php
|
@subpackage joomla_component.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 318 of this MVC
|
@version @update number 338 of this MVC
|
||||||
@build 5th April, 2017
|
@build 28th June, 2017
|
||||||
@created 6th May, 2015
|
@created 6th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage joomla_components.php
|
@subpackage joomla_components.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 39 of this MVC
|
||||||
@build 5th April, 2017
|
@build 7th April, 2017
|
||||||
@created 3rd April, 2017
|
@created 3rd April, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage language_translation.php
|
@subpackage language_translation.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 37 of this MVC
|
@version @update number 39 of this MVC
|
||||||
@build 5th April, 2017
|
@build 7th April, 2017
|
||||||
@created 3rd April, 2017
|
@created 3rd April, 2017
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage language_translations.php
|
@subpackage language_translations.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 67 of this MVC
|
@version @update number 77 of this MVC
|
||||||
@build 1st April, 2017
|
@build 30th May, 2017
|
||||||
@created 18th May, 2015
|
@created 18th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layout.php
|
@subpackage layout.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version @update number 67 of this MVC
|
@version @update number 77 of this MVC
|
||||||
@build 1st April, 2017
|
@build 30th May, 2017
|
||||||
@created 18th May, 2015
|
@created 18th May, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage layouts.php
|
@subpackage layouts.php
|
||||||
|
232
admin/custom/timeago.js
Normal file
232
admin/custom/timeago.js
Normal file
@ -0,0 +1,232 @@
|
|||||||
|
/**
|
||||||
|
* Timeago is a jQuery plugin that makes it easy to support automatically
|
||||||
|
* updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago").
|
||||||
|
*
|
||||||
|
* @name timeago
|
||||||
|
* @version 1.5.4
|
||||||
|
* @requires jQuery v1.2.3+
|
||||||
|
* @author Ryan McGeary
|
||||||
|
* @license MIT License - http://www.opensource.org/licenses/mit-license.php
|
||||||
|
*
|
||||||
|
* For usage and examples, visit:
|
||||||
|
* http://timeago.yarp.com/
|
||||||
|
*
|
||||||
|
* Copyright (c) 2008-2017, Ryan McGeary (ryan -[at]- mcgeary [*dot*] org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
(function (factory) {
|
||||||
|
if (typeof define === 'function' && define.amd) {
|
||||||
|
// AMD. Register as an anonymous module.
|
||||||
|
define(['jquery'], factory);
|
||||||
|
} else if (typeof module === 'object' && typeof module.exports === 'object') {
|
||||||
|
factory(require('jquery'));
|
||||||
|
} else {
|
||||||
|
// Browser globals
|
||||||
|
factory(jQuery);
|
||||||
|
}
|
||||||
|
}(function ($) {
|
||||||
|
$.timeago = function(timestamp) {
|
||||||
|
if (timestamp instanceof Date) {
|
||||||
|
return inWords(timestamp);
|
||||||
|
} else if (typeof timestamp === "string") {
|
||||||
|
return inWords($.timeago.parse(timestamp));
|
||||||
|
} else if (typeof timestamp === "number") {
|
||||||
|
return inWords(new Date(timestamp));
|
||||||
|
} else {
|
||||||
|
return inWords($.timeago.datetime(timestamp));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var $t = $.timeago;
|
||||||
|
|
||||||
|
$.extend($.timeago, {
|
||||||
|
settings: {
|
||||||
|
refreshMillis: 60000,
|
||||||
|
allowPast: true,
|
||||||
|
allowFuture: false,
|
||||||
|
localeTitle: false,
|
||||||
|
cutoff: 0,
|
||||||
|
autoDispose: true,
|
||||||
|
strings: {
|
||||||
|
prefixAgo: null,
|
||||||
|
prefixFromNow: null,
|
||||||
|
suffixAgo: "ago",
|
||||||
|
suffixFromNow: "from now",
|
||||||
|
inPast: 'any moment now',
|
||||||
|
seconds: "less than a minute",
|
||||||
|
minute: "about a minute",
|
||||||
|
minutes: "%d minutes",
|
||||||
|
hour: "about an hour",
|
||||||
|
hours: "about %d hours",
|
||||||
|
day: "a day",
|
||||||
|
days: "%d days",
|
||||||
|
month: "about a month",
|
||||||
|
months: "%d months",
|
||||||
|
year: "about a year",
|
||||||
|
years: "%d years",
|
||||||
|
wordSeparator: " ",
|
||||||
|
numbers: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
inWords: function(distanceMillis) {
|
||||||
|
if (!this.settings.allowPast && ! this.settings.allowFuture) {
|
||||||
|
throw 'timeago allowPast and allowFuture settings can not both be set to false.';
|
||||||
|
}
|
||||||
|
|
||||||
|
var $l = this.settings.strings;
|
||||||
|
var prefix = $l.prefixAgo;
|
||||||
|
var suffix = $l.suffixAgo;
|
||||||
|
if (this.settings.allowFuture) {
|
||||||
|
if (distanceMillis < 0) {
|
||||||
|
prefix = $l.prefixFromNow;
|
||||||
|
suffix = $l.suffixFromNow;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!this.settings.allowPast && distanceMillis >= 0) {
|
||||||
|
return this.settings.strings.inPast;
|
||||||
|
}
|
||||||
|
|
||||||
|
var seconds = Math.abs(distanceMillis) / 1000;
|
||||||
|
var minutes = seconds / 60;
|
||||||
|
var hours = minutes / 60;
|
||||||
|
var days = hours / 24;
|
||||||
|
var years = days / 365;
|
||||||
|
|
||||||
|
function substitute(stringOrFunction, number) {
|
||||||
|
var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction;
|
||||||
|
var value = ($l.numbers && $l.numbers[number]) || number;
|
||||||
|
return string.replace(/%d/i, value);
|
||||||
|
}
|
||||||
|
|
||||||
|
var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) ||
|
||||||
|
seconds < 90 && substitute($l.minute, 1) ||
|
||||||
|
minutes < 45 && substitute($l.minutes, Math.round(minutes)) ||
|
||||||
|
minutes < 90 && substitute($l.hour, 1) ||
|
||||||
|
hours < 24 && substitute($l.hours, Math.round(hours)) ||
|
||||||
|
hours < 42 && substitute($l.day, 1) ||
|
||||||
|
days < 30 && substitute($l.days, Math.round(days)) ||
|
||||||
|
days < 45 && substitute($l.month, 1) ||
|
||||||
|
days < 365 && substitute($l.months, Math.round(days / 30)) ||
|
||||||
|
years < 1.5 && substitute($l.year, 1) ||
|
||||||
|
substitute($l.years, Math.round(years));
|
||||||
|
|
||||||
|
var separator = $l.wordSeparator || "";
|
||||||
|
if ($l.wordSeparator === undefined) { separator = " "; }
|
||||||
|
return $.trim([prefix, words, suffix].join(separator));
|
||||||
|
},
|
||||||
|
|
||||||
|
parse: function(iso8601) {
|
||||||
|
var s = $.trim(iso8601);
|
||||||
|
s = s.replace(/\.\d+/,""); // remove milliseconds
|
||||||
|
s = s.replace(/-/,"/").replace(/-/,"/");
|
||||||
|
s = s.replace(/T/," ").replace(/Z/," UTC");
|
||||||
|
s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400
|
||||||
|
s = s.replace(/([\+\-]\d\d)$/," $100"); // +09 -> +0900
|
||||||
|
return new Date(s);
|
||||||
|
},
|
||||||
|
datetime: function(elem) {
|
||||||
|
var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title");
|
||||||
|
return $t.parse(iso8601);
|
||||||
|
},
|
||||||
|
isTime: function(elem) {
|
||||||
|
// jQuery's `is()` doesn't play well with HTML5 in IE
|
||||||
|
return $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// functions that can be called via $(el).timeago('action')
|
||||||
|
// init is default when no action is given
|
||||||
|
// functions are called with context of a single element
|
||||||
|
var functions = {
|
||||||
|
init: function() {
|
||||||
|
functions.dispose.call(this);
|
||||||
|
var refresh_el = $.proxy(refresh, this);
|
||||||
|
refresh_el();
|
||||||
|
var $s = $t.settings;
|
||||||
|
if ($s.refreshMillis > 0) {
|
||||||
|
this._timeagoInterval = setInterval(refresh_el, $s.refreshMillis);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
update: function(timestamp) {
|
||||||
|
var date = (timestamp instanceof Date) ? timestamp : $t.parse(timestamp);
|
||||||
|
$(this).data('timeago', { datetime: date });
|
||||||
|
if ($t.settings.localeTitle) {
|
||||||
|
$(this).attr("title", date.toLocaleString());
|
||||||
|
}
|
||||||
|
refresh.apply(this);
|
||||||
|
},
|
||||||
|
updateFromDOM: function() {
|
||||||
|
$(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr("datetime") : $(this).attr("title") ) });
|
||||||
|
refresh.apply(this);
|
||||||
|
},
|
||||||
|
dispose: function () {
|
||||||
|
if (this._timeagoInterval) {
|
||||||
|
window.clearInterval(this._timeagoInterval);
|
||||||
|
this._timeagoInterval = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
$.fn.timeago = function(action, options) {
|
||||||
|
var fn = action ? functions[action] : functions.init;
|
||||||
|
if (!fn) {
|
||||||
|
throw new Error("Unknown function name '"+ action +"' for timeago");
|
||||||
|
}
|
||||||
|
// each over objects here and call the requested function
|
||||||
|
this.each(function() {
|
||||||
|
fn.call(this, options);
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
function refresh() {
|
||||||
|
var $s = $t.settings;
|
||||||
|
|
||||||
|
//check if it's still visible
|
||||||
|
if ($s.autoDispose && !$.contains(document.documentElement,this)) {
|
||||||
|
//stop if it has been removed
|
||||||
|
$(this).timeago("dispose");
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
var data = prepareData(this);
|
||||||
|
|
||||||
|
if (!isNaN(data.datetime)) {
|
||||||
|
if ( $s.cutoff === 0 || Math.abs(distance(data.datetime)) < $s.cutoff) {
|
||||||
|
$(this).text(inWords(data.datetime));
|
||||||
|
} else {
|
||||||
|
if ($(this).attr('title').length > 0) {
|
||||||
|
$(this).text($(this).attr('title'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
function prepareData(element) {
|
||||||
|
element = $(element);
|
||||||
|
if (!element.data("timeago")) {
|
||||||
|
element.data("timeago", { datetime: $t.datetime(element) });
|
||||||
|
var text = $.trim(element.text());
|
||||||
|
if ($t.settings.localeTitle) {
|
||||||
|
element.attr("title", element.data('timeago').datetime.toLocaleString());
|
||||||
|
} else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) {
|
||||||
|
element.attr("title", text);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return element.data("timeago");
|
||||||
|
}
|
||||||
|
|
||||||
|
function inWords(date) {
|
||||||
|
return $t.inWords(distance(date));
|
||||||
|
}
|
||||||
|
|
||||||
|
function distance(date) {
|
||||||
|
return (new Date().getTime() - date.getTime());
|
||||||
|
}
|
||||||
|
|
||||||
|
// fix for IE6 suckage
|
||||||
|
document.createElement("abbr");
|
||||||
|
document.createElement("time");
|
||||||
|
}));
|
@ -476,7 +476,20 @@ class Get
|
|||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
public $siteFields = array();
|
public $siteFields = array();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The add SQL
|
||||||
|
*
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
public $addSQL = array();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The update SQL
|
||||||
|
*
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
public $updateSQL = array();
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* Constructor
|
* Constructor
|
||||||
@ -518,6 +531,27 @@ class Get
|
|||||||
}
|
}
|
||||||
// get the component data
|
// get the component data
|
||||||
$this->componentData = $this->getComponentData();
|
$this->componentData = $this->getComponentData();
|
||||||
|
// make sure we have a version
|
||||||
|
if (strpos($this->componentData->component_version, '.') === FALSE)
|
||||||
|
{
|
||||||
|
$this->componentData->component_version = '1.0.0';
|
||||||
|
}
|
||||||
|
// update the version
|
||||||
|
if (!isset($this->componentData->old_component_version)
|
||||||
|
&& (ComponentbuilderHelper::checkArray($this->addSQL) || ComponentbuilderHelper::checkArray($this->updateSQL)))
|
||||||
|
{
|
||||||
|
// set the new version
|
||||||
|
$version = (array) explode('.', $this->componentData->component_version);
|
||||||
|
// get last key
|
||||||
|
end($version);
|
||||||
|
$key = key($version);
|
||||||
|
// just increment the last
|
||||||
|
$version[$key]++;
|
||||||
|
// set the old version
|
||||||
|
$this->componentData->old_component_version = $this->componentData->component_version;
|
||||||
|
// set the new version, and set update switch
|
||||||
|
$this->componentData->component_version = implode('.', $version);
|
||||||
|
}
|
||||||
// set the percentage when a language can be added
|
// set the percentage when a language can be added
|
||||||
$this->percentageLanguageAdd = (int) $this->params->get('percentagelanguageadd', 50);
|
$this->percentageLanguageAdd = (int) $this->params->get('percentagelanguageadd', 50);
|
||||||
|
|
||||||
@ -591,6 +625,7 @@ class Get
|
|||||||
}
|
}
|
||||||
unset($component->addfolders);
|
unset($component->addfolders);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ser the addfiles data
|
// ser the addfiles data
|
||||||
$addfiles = json_decode($component->addfiles,true);
|
$addfiles = json_decode($component->addfiles,true);
|
||||||
if (ComponentbuilderHelper::checkArray($addfiles))
|
if (ComponentbuilderHelper::checkArray($addfiles))
|
||||||
@ -657,6 +692,7 @@ class Get
|
|||||||
|
|
||||||
// set the admin_view data
|
// set the admin_view data
|
||||||
$admin_views = json_decode($component->addadmin_views,true);
|
$admin_views = json_decode($component->addadmin_views,true);
|
||||||
|
|
||||||
if (ComponentbuilderHelper::checkArray($admin_views))
|
if (ComponentbuilderHelper::checkArray($admin_views))
|
||||||
{
|
{
|
||||||
foreach ($admin_views as $option => $values)
|
foreach ($admin_views as $option => $values)
|
||||||
@ -830,6 +866,25 @@ class Get
|
|||||||
$component->version_update[$nr][$option] = $value;
|
$component->version_update[$nr][$option] = $value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// build update SQL
|
||||||
|
if ($old_component = $this->getHistoryWatch('joomla_component', $this->componentID))
|
||||||
|
{
|
||||||
|
// add new views if found
|
||||||
|
if (isset($old_component->addadmin_views) && ComponentbuilderHelper::checkJson($old_component->addadmin_views))
|
||||||
|
{
|
||||||
|
$this->setUpdateSQL(json_decode($old_component->addadmin_views, true), $admin_views, 'adminview');
|
||||||
|
}
|
||||||
|
// check if a new version was manualy set
|
||||||
|
$old_component_version = preg_replace('/[^0-9.]+/', '', $old_component->component_version);
|
||||||
|
if ($old_component_version != $this->component_version)
|
||||||
|
{
|
||||||
|
// yes, this is a new version, this mean there may be manual sql and must be checked and updated
|
||||||
|
$component->old_component_version = $old_component_version;
|
||||||
|
}
|
||||||
|
// clear this data
|
||||||
|
unset($old_component);
|
||||||
}
|
}
|
||||||
|
|
||||||
// add_css
|
// add_css
|
||||||
@ -1106,6 +1161,22 @@ class Get
|
|||||||
unset($view->addlinked_views);
|
unset($view->addlinked_views);
|
||||||
$tables = json_decode($view->addtables,true);
|
$tables = json_decode($view->addtables,true);
|
||||||
unset($view->addtables);
|
unset($view->addtables);
|
||||||
|
// build update SQL
|
||||||
|
if ($old_view = $this->getHistoryWatch('admin_view', $id))
|
||||||
|
{
|
||||||
|
// add new fields were added
|
||||||
|
if (isset($old_view->addfields) && ComponentbuilderHelper::checkJson($old_view->addfields))
|
||||||
|
{
|
||||||
|
$this->setUpdateSQL(json_decode($old_view->addfields, true), $fields, 'field', $name_single);
|
||||||
|
}
|
||||||
|
// check if the view name changed
|
||||||
|
if (ComponentbuilderHelper::checkString($old_view->name_single))
|
||||||
|
{
|
||||||
|
$this->setUpdateSQL(ComponentbuilderHelper::safeString($old_view->name_single), $name_single, 'table_name', $name_single);
|
||||||
|
}
|
||||||
|
// clear this data
|
||||||
|
unset($old_view);
|
||||||
|
}
|
||||||
// sort the values
|
// sort the values
|
||||||
if (ComponentbuilderHelper::checkArray($tables))
|
if (ComponentbuilderHelper::checkArray($tables))
|
||||||
{
|
{
|
||||||
@ -1430,6 +1501,7 @@ class Get
|
|||||||
unset($view->sql);
|
unset($view->sql);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// store this view to class object
|
||||||
$this->_adminViewData[$id] = $view;
|
$this->_adminViewData[$id] = $view;
|
||||||
}
|
}
|
||||||
// return the found view data
|
// return the found view data
|
||||||
@ -1689,6 +1761,9 @@ class Get
|
|||||||
$this->basicEncryption = true;
|
$this->basicEncryption = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// get the last used version
|
||||||
|
$field->history = $this->getHistoryWatch('field', $id);
|
||||||
|
|
||||||
$this->_fieldData[$id] = $field;
|
$this->_fieldData[$id] = $field;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2151,6 +2226,210 @@ class Get
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* check if an update SQL is needed
|
||||||
|
*
|
||||||
|
* @param mix $old The old values
|
||||||
|
* @param mix $new The new values
|
||||||
|
* @param string $type The type of values
|
||||||
|
* @param int $key The id/key where values changed
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function setUpdateSQL($old, $new, $type, $key = null)
|
||||||
|
{
|
||||||
|
// check if there were new items added
|
||||||
|
if (isset($new[$type]) && ComponentbuilderHelper::checkArray($new[$type])
|
||||||
|
&& isset($old[$type]) && ComponentbuilderHelper::checkArray($old[$type]))
|
||||||
|
{
|
||||||
|
foreach ($new[$type] as $item)
|
||||||
|
{
|
||||||
|
if (!in_array($item, $old[$type]))
|
||||||
|
{
|
||||||
|
// we have a new item, lets add to SQL
|
||||||
|
if (!isset($this->addSQL[$type]) || !ComponentbuilderHelper::checkArray($this->addSQL[$type]))
|
||||||
|
{
|
||||||
|
$this->addSQL[$type] = array();
|
||||||
|
}
|
||||||
|
// add key if found
|
||||||
|
if ($key)
|
||||||
|
{
|
||||||
|
if (!isset($this->addSQL[$type][$key]) || !ComponentbuilderHelper::checkArray($this->addSQL[$type][$key]))
|
||||||
|
{
|
||||||
|
$this->addSQL[$type][$key] = array();
|
||||||
|
}
|
||||||
|
$this->addSQL[$type][$key][] = (int) $item;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// convert adminview id to name
|
||||||
|
if ('adminview' === $type)
|
||||||
|
{
|
||||||
|
$this->addSQL[$type][] = ComponentbuilderHelper::safeString($this->getAdminViewData($item)->name_single);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$this->addSQL[$type][] = (int) item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elseif ($key && ComponentbuilderHelper::checkString($new)
|
||||||
|
&& ComponentbuilderHelper::checkString($old)
|
||||||
|
&& $new !== $old)
|
||||||
|
{
|
||||||
|
// the string changed, lets add to SQL update
|
||||||
|
if (!isset($this->updateSQL[$type]) || !ComponentbuilderHelper::checkArray($this->updateSQL[$type]))
|
||||||
|
{
|
||||||
|
$this->updateSQL[$type] = array();
|
||||||
|
}
|
||||||
|
// set at key
|
||||||
|
$this->updateSQL[$type][$key] = array('old' => $old, 'new' => $new);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Item History values
|
||||||
|
*
|
||||||
|
* @param string $type The type of item
|
||||||
|
* @param int $id The item ID
|
||||||
|
*
|
||||||
|
* @return oject The history
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function getHistoryWatch($type, $id)
|
||||||
|
{
|
||||||
|
// quick class object to store old history object
|
||||||
|
$this->tmpHistory = null;
|
||||||
|
// Create a new query object.
|
||||||
|
$query = $this->db->getQuery(true);
|
||||||
|
|
||||||
|
$query->select('h.*');
|
||||||
|
$query->from('#__ucm_history AS h');
|
||||||
|
$query->where($this->db->quoteName('h.ucm_item_id') . ' = '. (int) $id);
|
||||||
|
// Join over the content type for the type id
|
||||||
|
$query->join('LEFT', '#__content_types AS ct ON ct.type_id = h.ucm_type_id');
|
||||||
|
$query->where('ct.type_alias = ' . $this->db->quote('com_componentbuilder.'.$type));
|
||||||
|
$query->order('h.save_date DESC');
|
||||||
|
$this->db->setQuery($query, 0, 1);
|
||||||
|
$this->db->execute();
|
||||||
|
if ($this->db->getNumRows())
|
||||||
|
{
|
||||||
|
// new version of this item found
|
||||||
|
// so we need to mark it as the last compiled version
|
||||||
|
$newActive = $this->db->loadObject();
|
||||||
|
// set the new version watch
|
||||||
|
$this->setHistoryWatch($newActive, 1);
|
||||||
|
}
|
||||||
|
// Get last compiled verion
|
||||||
|
$query = $this->db->getQuery(true);
|
||||||
|
|
||||||
|
$query->select('h.*');
|
||||||
|
$query->from('#__ucm_history AS h');
|
||||||
|
$query->where($this->db->quoteName('h.ucm_item_id') . ' = ' . (int) $id);
|
||||||
|
$query->where('h.keep_forever = 1');
|
||||||
|
$query->where('h.version_note LIKE ' . $this->db->quote('%component%'));
|
||||||
|
// make sure it does not return the active version
|
||||||
|
if (isset($newActive) && isset($newActive->version_id))
|
||||||
|
{
|
||||||
|
$query->where('h.version_id != ' . (int) $newActive->version_id);
|
||||||
|
}
|
||||||
|
// Join over the content type for the type id
|
||||||
|
$query->join('LEFT', '#__content_types AS ct ON ct.type_id = h.ucm_type_id');
|
||||||
|
$query->where('ct.type_alias = ' . $this->db->quote('com_componentbuilder.'.$type));
|
||||||
|
$query->order('h.save_date DESC');
|
||||||
|
$this->db->setQuery($query);
|
||||||
|
$this->db->execute();
|
||||||
|
if ($this->db->getNumRows())
|
||||||
|
{
|
||||||
|
// the old active version was found
|
||||||
|
// so we may need to do an SQL update
|
||||||
|
// and unmark the old compiled version
|
||||||
|
$oldActives = $this->db->loadObjectList();
|
||||||
|
foreach ($oldActives as $oldActive)
|
||||||
|
{
|
||||||
|
// remove old version watch
|
||||||
|
$this->setHistoryWatch($oldActive, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// return the last used history record or null.
|
||||||
|
return $this->tmpHistory;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set Item History Watch
|
||||||
|
*
|
||||||
|
* @param Object $object The history object
|
||||||
|
* @param int $action The action to take
|
||||||
|
* 0 = remove watch
|
||||||
|
* 1 = add watch
|
||||||
|
* @param string $type The type of item
|
||||||
|
*
|
||||||
|
* @return bool
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function setHistoryWatch($object, $action)
|
||||||
|
{
|
||||||
|
// check the note
|
||||||
|
if (ComponentbuilderHelper::checkJson($object->version_note))
|
||||||
|
{
|
||||||
|
$version_note = json_decode($object->version_note, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$version_note = array('component' => array());
|
||||||
|
}
|
||||||
|
// set watch
|
||||||
|
switch ($action)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
// remove watch
|
||||||
|
if(isset($version_note['component']) && ($key = array_search($this->componentID, $version_note['component'])) !== false)
|
||||||
|
{
|
||||||
|
// last version that was used to build/compile
|
||||||
|
$this->tmpHistory = json_decode($object->version_data);
|
||||||
|
// remove it from this component
|
||||||
|
unset($version_note['component'][$key]);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// since it was not found, no need to update anything
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
// add watch
|
||||||
|
if (!in_array($this->componentID, $version_note['component']))
|
||||||
|
{
|
||||||
|
$version_note['component'][] = $this->componentID;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// since it is there already, no need to update anything
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// check if we need to still keep this locked
|
||||||
|
if (isset($version_note['component']) && ComponentbuilderHelper::checkArray($version_note['component']))
|
||||||
|
{
|
||||||
|
// insure component ids are only added once per item
|
||||||
|
$version_note['component'] = array_unique($version_note['component']);
|
||||||
|
// we may change this, little risky (but since JCB does not have history notes it should be okay for now)
|
||||||
|
$object->version_note = json_encode($version_note);
|
||||||
|
$object->keep_forever = '1';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$object->version_note = '';
|
||||||
|
$object->keep_forever = '0';
|
||||||
|
}
|
||||||
|
// run the update
|
||||||
|
return $this->db->updateObject('#__ucm_history', $object, 'version_id');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set Template and Layout Data
|
* Set Template and Layout Data
|
||||||
*
|
*
|
||||||
@ -2947,7 +3226,7 @@ class Get
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!$keyPlaceholder = array_search($item['id'], $this->functionNameMemory))
|
if (($keyPlaceholder = array_search($item['id'], $this->functionNameMemory)) === false)
|
||||||
{
|
{
|
||||||
$keyPlaceholder = $item['id'];
|
$keyPlaceholder = $item['id'];
|
||||||
}
|
}
|
||||||
@ -3032,9 +3311,8 @@ class Get
|
|||||||
$query->from($this->db->quoteName('#__componentbuilder_language_translation','a'));
|
$query->from($this->db->quoteName('#__componentbuilder_language_translation','a'));
|
||||||
if (ComponentbuilderHelper::checkArray($values))
|
if (ComponentbuilderHelper::checkArray($values))
|
||||||
{
|
{
|
||||||
$query->select($this->db->quoteName(array('a.id','a.translation','a.entranslation','a.components')));
|
$query->select($this->db->quoteName(array('a.id','a.translation','a.entranslation','a.components','a.published')));
|
||||||
$query->where($this->db->quoteName('a.entranslation') . ' IN (' . implode(',',array_map(function($a){ return $this->db->quote($a); }, $values)) . ')');
|
$query->where($this->db->quoteName('a.entranslation') . ' IN (' . implode(',',array_map(function($a){ return $this->db->quote($a); }, $values)) . ')');
|
||||||
$query->where($this->db->quoteName('a.published') . ' >= 1');
|
|
||||||
$this->db->setQuery($query);
|
$this->db->setQuery($query);
|
||||||
$this->db->execute();
|
$this->db->execute();
|
||||||
if ($this->db->getNumRows())
|
if ($this->db->getNumRows())
|
||||||
@ -3052,7 +3330,7 @@ class Get
|
|||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public function setLangPlaceholders(&$strings)
|
public function setLangPlaceholders($strings)
|
||||||
{
|
{
|
||||||
$counterInsert = 0;
|
$counterInsert = 0;
|
||||||
$counterUpdate = 0;
|
$counterUpdate = 0;
|
||||||
@ -3111,9 +3389,14 @@ class Get
|
|||||||
if (ComponentbuilderHelper::checkJson($this->multiLangString[$string]['components']))
|
if (ComponentbuilderHelper::checkJson($this->multiLangString[$string]['components']))
|
||||||
{
|
{
|
||||||
$components = (array) json_decode($this->multiLangString[$string]['components'], true);
|
$components = (array) json_decode($this->multiLangString[$string]['components'], true);
|
||||||
|
// check if we should add the component ID
|
||||||
if (in_array($this->componentID, $components))
|
if (in_array($this->componentID, $components))
|
||||||
{
|
{
|
||||||
continue;
|
// only skip the update if the string is published and has the component ID
|
||||||
|
if ($this->multiLangString[$string]['published'] == 1)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -3125,12 +3408,7 @@ class Get
|
|||||||
$components = array($this->componentID);
|
$components = array($this->componentID);
|
||||||
}
|
}
|
||||||
// start the bucket for this lang
|
// start the bucket for this lang
|
||||||
$this->existingLangStrings[$counterUpdate] = array();
|
$this->setUpdateExistingLangStrings($id, $components, 1, $today, $counterUpdate);
|
||||||
$this->existingLangStrings[$counterUpdate]['id'] = (int) $id;
|
|
||||||
$this->existingLangStrings[$counterUpdate]['conditions'] = array();
|
|
||||||
$this->existingLangStrings[$counterUpdate]['conditions'][] = $this->db->quoteName('id') . ' = ' . $this->db->quote($id);
|
|
||||||
$this->existingLangStrings[$counterUpdate]['fields'] = array();
|
|
||||||
$this->existingLangStrings[$counterUpdate]['fields'][] = $this->db->quoteName('components') . ' = ' . $this->db->quote(json_encode($components));
|
|
||||||
|
|
||||||
$counterUpdate++;
|
$counterUpdate++;
|
||||||
|
|
||||||
@ -3238,6 +3516,129 @@ class Get
|
|||||||
// clear the values array
|
// clear the values array
|
||||||
$this->existingLangStrings = array();
|
$this->existingLangStrings = array();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove exiting language translation stings
|
||||||
|
*
|
||||||
|
* @param int $id To string ID to remove
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function removeExitingLangString($id)
|
||||||
|
{
|
||||||
|
// Create a new query object.
|
||||||
|
$query = $this->db->getQuery(true);
|
||||||
|
|
||||||
|
// delete all custom keys for user 1001.
|
||||||
|
$conditions = array(
|
||||||
|
$this->db->quoteName('id') . ' = ' . (int) $id
|
||||||
|
);
|
||||||
|
|
||||||
|
$query->delete($this->db->quoteName('#__componentbuilder_language_translation'));
|
||||||
|
$query->where($conditions);
|
||||||
|
|
||||||
|
$this->db->setQuery($query);
|
||||||
|
$this->db->execute();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Function to purge the unused languge strings
|
||||||
|
*
|
||||||
|
* @param string $values the active strings
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function purgeLanuageStrings($values)
|
||||||
|
{
|
||||||
|
// Create a new query object.
|
||||||
|
$query = $this->db->getQuery(true);
|
||||||
|
$query->from($this->db->quoteName('#__componentbuilder_language_translation','a'));
|
||||||
|
$query->select($this->db->quoteName(array('a.id','a.translation','a.components')));
|
||||||
|
// get all string that are not linked to this component
|
||||||
|
$query->where($this->db->quoteName('a.entranslation') . ' NOT IN (' . implode(',',array_map(function($a){ return $this->db->quote($a); }, $values)) . ')');
|
||||||
|
$query->where($this->db->quoteName('a.published') . ' = 1');
|
||||||
|
$this->db->setQuery($query);
|
||||||
|
$this->db->execute();
|
||||||
|
if ($this->db->getNumRows())
|
||||||
|
{
|
||||||
|
$counterUpdate = 0;
|
||||||
|
$otherStrings = $this->db->loadAssocList();
|
||||||
|
$today = JFactory::getDate()->toSql();
|
||||||
|
foreach ($otherStrings as $item)
|
||||||
|
{
|
||||||
|
if (ComponentbuilderHelper::checkJson($item['components']))
|
||||||
|
{
|
||||||
|
$components = (array) json_decode($item['components'], true);
|
||||||
|
// if component is not found ignore this string, and do nothing
|
||||||
|
if (($key = array_search($this->componentID, $components)) !== false)
|
||||||
|
{
|
||||||
|
// first remove the component from the string
|
||||||
|
unset($components[$key]);
|
||||||
|
// check if there are more components
|
||||||
|
if (ComponentbuilderHelper::checkArray($components))
|
||||||
|
{
|
||||||
|
// just update the string to unlink the current component
|
||||||
|
$this->setUpdateExistingLangStrings($item['id'], $components, 1, $today, $counterUpdate);
|
||||||
|
|
||||||
|
$counterUpdate++;
|
||||||
|
|
||||||
|
// load to db
|
||||||
|
$this->setExistingLangStrings(50);
|
||||||
|
}
|
||||||
|
// check if this string has been worked on
|
||||||
|
elseif (ComponentbuilderHelper::checkJson($item['translation']))
|
||||||
|
{
|
||||||
|
$translation = json_decode($item['translation'], true);
|
||||||
|
if (ComponentbuilderHelper::checkArray($translation) && ComponentbuilderHelper::checkArray($translation['translation']))
|
||||||
|
{
|
||||||
|
// only archive the item and update the string to unlink the current component
|
||||||
|
$this->setUpdateExistingLangStrings($item['id'], $components, 2, $today, $counterUpdate);
|
||||||
|
|
||||||
|
$counterUpdate++;
|
||||||
|
|
||||||
|
// load to db
|
||||||
|
$this->setExistingLangStrings(50);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// remove the string since no translation found and not linked to any other component
|
||||||
|
$this->removeExitingLangString($item['id']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// remove the string since no translation found and not linked to any other component
|
||||||
|
$this->removeExitingLangString($item['id']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// load to db
|
||||||
|
$this->setExistingLangStrings();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* just to add lang string to the existing Lang Strings array
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
protected function setUpdateExistingLangStrings($id, $components, $published, $today, $counterUpdate)
|
||||||
|
{
|
||||||
|
// start the bucket for this lang
|
||||||
|
$this->existingLangStrings[$counterUpdate] = array();
|
||||||
|
$this->existingLangStrings[$counterUpdate]['id'] = (int) $id;
|
||||||
|
$this->existingLangStrings[$counterUpdate]['conditions'] = array();
|
||||||
|
$this->existingLangStrings[$counterUpdate]['conditions'][] = $this->db->quoteName('id') . ' = ' . $this->db->quote($id);
|
||||||
|
$this->existingLangStrings[$counterUpdate]['fields'] = array();
|
||||||
|
$this->existingLangStrings[$counterUpdate]['fields'][] = $this->db->quoteName('components') . ' = ' . $this->db->quote(json_encode($components));
|
||||||
|
$this->existingLangStrings[$counterUpdate]['fields'][] = $this->db->quoteName('published') . ' = ' . $this->db->quote($published);
|
||||||
|
$this->existingLangStrings[$counterUpdate]['fields'][] = $this->db->quoteName('modified') . ' = ' . $this->db->quote($today);
|
||||||
|
$this->existingLangStrings[$counterUpdate]['fields'][] = $this->db->quoteName('modified_by') . ' = ' . $this->db->quote((int) $this->user->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -721,16 +721,19 @@ class Structure extends Get
|
|||||||
*/
|
*/
|
||||||
public function getLastModifiedDate($view)
|
public function getLastModifiedDate($view)
|
||||||
{
|
{
|
||||||
if (isset($view['settings']->modified) && ComponentbuilderHelper::checkString($view['settings']->modified))
|
// first set the main date
|
||||||
|
if (isset($view['settings']->modified)
|
||||||
|
&& ComponentbuilderHelper::checkString($view['settings']->modified)
|
||||||
|
&& '0000-00-00 00:00:00' !== $view['settings']->modified)
|
||||||
{
|
{
|
||||||
// first set the main date
|
|
||||||
$date = strtotime($view['settings']->modified);
|
$date = strtotime($view['settings']->modified);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// first set the main date
|
// use todays date
|
||||||
$date = strtotime("now");
|
$date = strtotime("now");
|
||||||
}
|
}
|
||||||
|
// search for the last modified date
|
||||||
if (isset($view['adminview']))
|
if (isset($view['adminview']))
|
||||||
{
|
{
|
||||||
$id = $view['adminview'].'admin';
|
$id = $view['adminview'].'admin';
|
||||||
@ -741,7 +744,9 @@ class Structure extends Get
|
|||||||
{
|
{
|
||||||
foreach ($view['settings']->fields as $field)
|
foreach ($view['settings']->fields as $field)
|
||||||
{
|
{
|
||||||
if (isset($field['settings']) && ComponentbuilderHelper::checkObject($field['settings']) && isset($field['settings']->modified))
|
if (isset($field['settings']) && ComponentbuilderHelper::checkObject($field['settings'])
|
||||||
|
&& isset($field['settings']->modified) && ComponentbuilderHelper::checkString($field['settings']->modified)
|
||||||
|
&& '0000-00-00 00:00:00' !== $field['settings']->modified)
|
||||||
{
|
{
|
||||||
$anotherDate = strtotime($field['settings']->modified);
|
$anotherDate = strtotime($field['settings']->modified);
|
||||||
if ($anotherDate > $date)
|
if ($anotherDate > $date)
|
||||||
@ -759,7 +764,9 @@ class Structure extends Get
|
|||||||
// now check if value has been set
|
// now check if value has been set
|
||||||
if (!isset($this->lastModifiedDate[$id]))
|
if (!isset($this->lastModifiedDate[$id]))
|
||||||
{
|
{
|
||||||
if (isset($view['settings']->main_get->modified))
|
if (isset($view['settings']->main_get->modified)
|
||||||
|
&& ComponentbuilderHelper::checkString($view['settings']->main_get->modified)
|
||||||
|
&& '0000-00-00 00:00:00' !== $view['settings']->main_get->modified)
|
||||||
{
|
{
|
||||||
$anotherDate = strtotime($view['settings']->main_get->modified);
|
$anotherDate = strtotime($view['settings']->main_get->modified);
|
||||||
if ($anotherDate > $date)
|
if ($anotherDate > $date)
|
||||||
@ -775,7 +782,9 @@ class Structure extends Get
|
|||||||
// now check if value has been set
|
// now check if value has been set
|
||||||
if (!isset($this->lastModifiedDate[$id]))
|
if (!isset($this->lastModifiedDate[$id]))
|
||||||
{
|
{
|
||||||
if (isset($view['settings']->main_get->modified))
|
if (isset($view['settings']->main_get->modified)
|
||||||
|
&& ComponentbuilderHelper::checkString($view['settings']->main_get->modified)
|
||||||
|
&& '0000-00-00 00:00:00' !== $view['settings']->main_get->modified)
|
||||||
{
|
{
|
||||||
$anotherDate = strtotime($view['settings']->main_get->modified);
|
$anotherDate = strtotime($view['settings']->main_get->modified);
|
||||||
if ($anotherDate > $date)
|
if ($anotherDate > $date)
|
||||||
|
@ -229,6 +229,13 @@ class Fields extends Structure
|
|||||||
*/
|
*/
|
||||||
public $jsonStringBuilder = array();
|
public $jsonStringBuilder = array();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Json String Builder for return values to array
|
||||||
|
*
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
public $jsonItemBuilderArray = array();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Json Item Builder
|
* Json Item Builder
|
||||||
*
|
*
|
||||||
@ -761,8 +768,8 @@ class Fields extends Structure
|
|||||||
}
|
}
|
||||||
elseif ($this->defaultField($typeName, 'special'))
|
elseif ($this->defaultField($typeName, 'special'))
|
||||||
{
|
{
|
||||||
// set the repeatable field
|
// set the repeatable field or subform field
|
||||||
if ($typeName === 'repeatable')
|
if ($typeName === 'repeatable' || $typeName === 'subform')
|
||||||
{
|
{
|
||||||
if ($build)
|
if ($build)
|
||||||
{
|
{
|
||||||
@ -1026,6 +1033,93 @@ class Fields extends Structure
|
|||||||
$fieldSet .= PHP_EOL."\t\t\t</fields>";
|
$fieldSet .= PHP_EOL."\t\t\t</fields>";
|
||||||
$fieldSet .= PHP_EOL."\t\t</field>";
|
$fieldSet .= PHP_EOL."\t\t</field>";
|
||||||
}
|
}
|
||||||
|
// set the subform fields (it is a repeatable without the modal)
|
||||||
|
elseif ($typeName === 'subform')
|
||||||
|
{
|
||||||
|
// now add to the field set
|
||||||
|
$fieldSet .= PHP_EOL."\t\t<!--" . $this->setLine(__LINE__) . " " . ComponentbuilderHelper::safeString($name, 'F') . " Field. Type: " . ComponentbuilderHelper::safeString($typeName, 'F') . ". (joomla) -->";
|
||||||
|
$fieldSet .= PHP_EOL."\t\t<field";
|
||||||
|
$fieldsSet = array();
|
||||||
|
foreach ($fieldAttributes as $property => $value)
|
||||||
|
{
|
||||||
|
if ($property != 'fields')
|
||||||
|
{
|
||||||
|
$fieldSet .= PHP_EOL."\t\t\t" . $property . '="' . $value . '"';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$fieldSet .= ">";
|
||||||
|
$fieldSet .= PHP_EOL."\t\t\t" . '<form hidden="true" name="list_' . $fieldAttributes['name'] . '_modal" repeat="true">';
|
||||||
|
if (strpos($fieldAttributes['fields'], ',') !== false)
|
||||||
|
{
|
||||||
|
// mulitpal fields
|
||||||
|
$fieldsSets = (array) explode(',', $fieldAttributes['fields']);
|
||||||
|
}
|
||||||
|
elseif (is_numeric($fieldAttributes['fields']))
|
||||||
|
{
|
||||||
|
// single field
|
||||||
|
$fieldsSets[] = (int) $fieldAttributes['fields'];
|
||||||
|
}
|
||||||
|
// only continue if we have a field set
|
||||||
|
if (ComponentbuilderHelper::checkArray($fieldsSets))
|
||||||
|
{
|
||||||
|
foreach ($fieldsSets as $fieldId)
|
||||||
|
{
|
||||||
|
// get the field data
|
||||||
|
$fieldData = array();
|
||||||
|
$fieldData['settings'] = $this->getFieldData($fieldId, $viewName);
|
||||||
|
if (ComponentbuilderHelper::checkObject($fieldData['settings']))
|
||||||
|
{
|
||||||
|
$r_name = ComponentbuilderHelper::safeString($fieldData['settings']->name);
|
||||||
|
$r_typeName = ComponentbuilderHelper::safeString($fieldData['settings']->type_name);
|
||||||
|
$r_multiple = false;
|
||||||
|
$r_langLabel = '';
|
||||||
|
// add the tabs needed
|
||||||
|
$taber = "\t\t";
|
||||||
|
// get field values
|
||||||
|
$r_fieldValues = $this->setFieldAttributes($fieldData, $view, $r_name, $r_typeName, $r_multiple, $r_langLabel, $langView, $spacerCounter, $listViewName, $viewName, $placeholders, true);
|
||||||
|
// check if values were set
|
||||||
|
if (ComponentbuilderHelper::checkArray($r_fieldValues))
|
||||||
|
{
|
||||||
|
//reset options array
|
||||||
|
$r_optionArray = array();
|
||||||
|
if ($this->defaultField($r_typeName, 'option'))
|
||||||
|
{
|
||||||
|
// now add to the field set
|
||||||
|
$fieldSet .= $this->setField('option', $taber, $r_fieldValues, $r_name, $r_typeName, $langView, $viewName, $listViewName, $placeholders, $r_optionArray);
|
||||||
|
}
|
||||||
|
elseif ($this->defaultField($r_typeName, 'plain'))
|
||||||
|
{
|
||||||
|
// now add to the field set
|
||||||
|
$fieldSet .= $this->setField('plain', $taber, $r_fieldValues, $r_name, $r_typeName, $langView, $viewName, $listViewName, $placeholders, $r_optionArray);
|
||||||
|
}
|
||||||
|
elseif (ComponentbuilderHelper::checkArray($r_fieldValues['custom']))
|
||||||
|
{
|
||||||
|
// add to custom
|
||||||
|
$custom = $r_fieldValues['custom'];
|
||||||
|
unset($r_fieldValues['custom']);
|
||||||
|
// now add to the field set
|
||||||
|
$fieldSet .= $this->setField('custom', $taber, $r_fieldValues, $r_name, $r_typeName, $langView, $viewName, $listViewName, $placeholders, $r_optionArray);
|
||||||
|
// set lang (just incase)
|
||||||
|
$r_listLangName = $langView . '_' . ComponentbuilderHelper::safeString($r_name, 'U');
|
||||||
|
// add to lang array
|
||||||
|
$this->langContent[$this->lang][$r_listLangName] = ComponentbuilderHelper::safeString($r_name, 'W');
|
||||||
|
// if label was set use instead
|
||||||
|
if (ComponentbuilderHelper::checkString($r_langLabel))
|
||||||
|
{
|
||||||
|
$r_listLangName = $r_langLabel;
|
||||||
|
}
|
||||||
|
// set the custom array
|
||||||
|
$data = array('type' => $r_typeName, 'code' => $r_name, 'lang' => $r_listLangName, 'custom' => $custom);
|
||||||
|
// set the custom field file
|
||||||
|
$this->setCustomFieldTypeFile($data, $listViewName, $viewName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$fieldSet .= PHP_EOL."\t\t\t</form>";
|
||||||
|
$fieldSet .= PHP_EOL."\t\t</field>";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
elseif ($setType === 'custom')
|
elseif ($setType === 'custom')
|
||||||
{
|
{
|
||||||
@ -1670,6 +1764,8 @@ class Fields extends Structure
|
|||||||
{
|
{
|
||||||
$this->queryBuilder[$viewName][$name]['default'] = 'EMPTY';
|
$this->queryBuilder[$viewName][$name]['default'] = 'EMPTY';
|
||||||
}
|
}
|
||||||
|
// to identify the field
|
||||||
|
$this->queryBuilder[$viewName][$name]['ID'] = $field['settings']->id;
|
||||||
$this->queryBuilder[$viewName][$name]['null_switch'] = $field['settings']->null_switch;
|
$this->queryBuilder[$viewName][$name]['null_switch'] = $field['settings']->null_switch;
|
||||||
// set index types
|
// set index types
|
||||||
if ($field['settings']->indexes == 1 && !in_array($field['settings']->datatype, $textKeys))
|
if ($field['settings']->indexes == 1 && !in_array($field['settings']->datatype, $textKeys))
|
||||||
@ -1727,7 +1823,7 @@ class Fields extends Structure
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// build the list values
|
// build the list values
|
||||||
if ($field['list'] == 1 && $typeName != 'repeatable')
|
if ($field['list'] == 1 && $typeName != 'repeatable' && $typeName != 'subform')
|
||||||
{
|
{
|
||||||
// load to list builder
|
// load to list builder
|
||||||
$this->listBuilder[$listViewName][] = array(
|
$this->listBuilder[$listViewName][] = array(
|
||||||
@ -1763,7 +1859,7 @@ class Fields extends Structure
|
|||||||
$this->intFieldsBuilder[$viewName] .= ',"' . $name . '"';
|
$this->intFieldsBuilder[$viewName] .= ',"' . $name . '"';
|
||||||
}
|
}
|
||||||
// set all dynamic field of this view
|
// set all dynamic field of this view
|
||||||
if ($typeName != 'category' && $typeName != 'repeatable' && !in_array($name, $this->defaultFields))
|
if ($typeName != 'category' && $typeName != 'repeatable' && $typeName != 'subform' && !in_array($name, $this->defaultFields))
|
||||||
{
|
{
|
||||||
if (!isset($this->dynamicfieldsBuilder[$viewName]))
|
if (!isset($this->dynamicfieldsBuilder[$viewName]))
|
||||||
{
|
{
|
||||||
@ -1788,7 +1884,7 @@ class Fields extends Structure
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// set the custom builder
|
// set the custom builder
|
||||||
if (ComponentbuilderHelper::checkArray($custom) && $typeName != 'category' && $typeName != 'repeatable')
|
if (ComponentbuilderHelper::checkArray($custom) && $typeName != 'category' && $typeName != 'repeatable' && $typeName != 'subform')
|
||||||
{
|
{
|
||||||
$this->customBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'custom' => $custom, 'method' => $field['settings']->store);
|
$this->customBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'custom' => $custom, 'method' => $field['settings']->store);
|
||||||
// set the custom fields needed in content type data
|
// set the custom fields needed in content type data
|
||||||
@ -1834,7 +1930,7 @@ class Fields extends Structure
|
|||||||
$this->checkboxBuilder[$viewName][] = $name;
|
$this->checkboxBuilder[$viewName][] = $name;
|
||||||
}
|
}
|
||||||
// setup checkboxes and other json items for this view
|
// setup checkboxes and other json items for this view
|
||||||
if (($typeName === 'checkboxes' || $multiple || $field['settings']->store != 0) && $typeName != 'tag')
|
if (($typeName === 'subform' || $typeName === 'checkboxes' || $multiple || $field['settings']->store != 0) && $typeName != 'tag')
|
||||||
{
|
{
|
||||||
switch ($field['settings']->store)
|
switch ($field['settings']->store)
|
||||||
{
|
{
|
||||||
@ -1876,7 +1972,7 @@ class Fields extends Structure
|
|||||||
}
|
}
|
||||||
|
|
||||||
// load the json list display fix
|
// load the json list display fix
|
||||||
if ($field['list'] == 1 && $typeName != 'repeatable')
|
if ($field['list'] == 1 && $typeName != 'repeatable' && $typeName != 'subform')
|
||||||
{
|
{
|
||||||
if (ComponentbuilderHelper::checkArray($options))
|
if (ComponentbuilderHelper::checkArray($options))
|
||||||
{
|
{
|
||||||
@ -1887,6 +1983,12 @@ class Fields extends Structure
|
|||||||
$this->getItemsMethodListStringFixBuilder[$viewName][] = array('name' => $name, 'type' => $typeName, 'translation' => false, 'custom' => $custom, 'method' => $field['settings']->store);
|
$this->getItemsMethodListStringFixBuilder[$viewName][] = array('name' => $name, 'type' => $typeName, 'translation' => false, 'custom' => $custom, 'method' => $field['settings']->store);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// if subform the values must revert to array
|
||||||
|
if ('subform' === $typeName)
|
||||||
|
{
|
||||||
|
$this->jsonItemBuilderArray[$viewName][] = $name;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// build the data for the export & import methods $typeName === 'repeatable' ||
|
// build the data for the export & import methods $typeName === 'repeatable' ||
|
||||||
if (($typeName === 'checkboxes' || $multiple || $field['settings']->store != 0) && !ComponentbuilderHelper::checkArray($options))
|
if (($typeName === 'checkboxes' || $multiple || $field['settings']->store != 0) && !ComponentbuilderHelper::checkArray($options))
|
||||||
@ -1897,12 +1999,12 @@ class Fields extends Structure
|
|||||||
// check if field should be added to uikit
|
// check if field should be added to uikit
|
||||||
$this->buildSiteFieldData($viewName, $name, 'uikit', $typeName);
|
$this->buildSiteFieldData($viewName, $name, 'uikit', $typeName);
|
||||||
// load the selection translation fix
|
// load the selection translation fix
|
||||||
if (ComponentbuilderHelper::checkArray($options) && $field['list'] == 1 && $typeName != 'repeatable')
|
if (ComponentbuilderHelper::checkArray($options) && $field['list'] == 1 && $typeName != 'repeatable' && $typeName != 'subform')
|
||||||
{
|
{
|
||||||
$this->selectionTranslationFixBuilder[$listViewName][$name] = $options;
|
$this->selectionTranslationFixBuilder[$listViewName][$name] = $options;
|
||||||
}
|
}
|
||||||
// build the sort values
|
// build the sort values
|
||||||
if ($field['sort'] == 1 && $field['list'] == 1 && (!$multiple && $typeName != 'checkbox' && $typeName != 'checkboxes' && $typeName != 'repeatable'))
|
if ($field['sort'] == 1 && $field['list'] == 1 && (!$multiple && $typeName != 'checkbox' && $typeName != 'checkboxes' && $typeName != 'repeatable' && $typeName != 'subform'))
|
||||||
{
|
{
|
||||||
$this->sortBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'custom' => $custom, 'options' => $options);
|
$this->sortBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'custom' => $custom, 'options' => $options);
|
||||||
}
|
}
|
||||||
@ -1912,7 +2014,7 @@ class Fields extends Structure
|
|||||||
$this->searchBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'custom' => $custom, 'list' => $field['list']);
|
$this->searchBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'custom' => $custom, 'list' => $field['list']);
|
||||||
}
|
}
|
||||||
// build the filter values
|
// build the filter values
|
||||||
if ($field['filter'] == 1 && $field['list'] == 1 && (!$multiple && $typeName != 'checkbox' && $typeName != 'checkboxes' && $typeName != 'repeatable'))
|
if ($field['filter'] == 1 && $field['list'] == 1 && (!$multiple && $typeName != 'checkbox' && $typeName != 'checkboxes' && $typeName != 'repeatable' && $typeName != 'subform'))
|
||||||
{
|
{
|
||||||
$this->filterBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'database' => $viewName, 'function' => ComponentbuilderHelper::safeString($name, 'F'), 'custom' => $custom, 'options' => $options);
|
$this->filterBuilder[$listViewName][] = array('type' => $typeName, 'code' => $name, 'lang' => $listLangName, 'database' => $viewName, 'function' => ComponentbuilderHelper::safeString($name, 'F'), 'custom' => $custom, 'options' => $options);
|
||||||
}
|
}
|
||||||
@ -2069,7 +2171,7 @@ class Fields extends Structure
|
|||||||
'chromestyle', 'contenttype', 'databaseconnection', 'editors', 'email', 'file',
|
'chromestyle', 'contenttype', 'databaseconnection', 'editors', 'email', 'file',
|
||||||
'filelist', 'folderlist', 'groupedlist', 'hidden', 'file', 'headertag', 'helpsite',
|
'filelist', 'folderlist', 'groupedlist', 'hidden', 'file', 'headertag', 'helpsite',
|
||||||
'imagelist', 'integer', 'language', 'list', 'media', 'menu', 'note', 'number', 'password',
|
'imagelist', 'integer', 'language', 'list', 'media', 'menu', 'note', 'number', 'password',
|
||||||
'plugins', 'radio', 'repeatable', 'range', 'rules', 'sessionhandler', 'spacer', 'sql', 'tag',
|
'plugins', 'radio', 'repeatable', 'range', 'rules', 'subform', 'sessionhandler', 'spacer', 'sql', 'tag',
|
||||||
'tel', 'menuitem', 'meter', 'modulelayout', 'moduleorder', 'moduleposition', 'moduletag',
|
'tel', 'menuitem', 'meter', 'modulelayout', 'moduleorder', 'moduleposition', 'moduletag',
|
||||||
'templatestyle', 'text', 'textarea', 'timezone', 'url', 'user', 'usergroup'
|
'templatestyle', 'text', 'textarea', 'timezone', 'url', 'user', 'usergroup'
|
||||||
),
|
),
|
||||||
@ -2090,7 +2192,7 @@ class Fields extends Structure
|
|||||||
),
|
),
|
||||||
'special' => array(
|
'special' => array(
|
||||||
'contentlanguage', 'groupedlist', 'moduleposition', 'plugin',
|
'contentlanguage', 'groupedlist', 'moduleposition', 'plugin',
|
||||||
'repeatable', 'templatestyle'
|
'repeatable', 'templatestyle', 'subform'
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -33,6 +33,7 @@ class Interpretation extends Fields
|
|||||||
{
|
{
|
||||||
public $theContributors = '';
|
public $theContributors = '';
|
||||||
public $uninstallBuilder = array();
|
public $uninstallBuilder = array();
|
||||||
|
public $updateSQLBuilder = array();
|
||||||
public $listColnrBuilder = array();
|
public $listColnrBuilder = array();
|
||||||
public $permissionBuilder = array();
|
public $permissionBuilder = array();
|
||||||
public $permissionDashboard = array();
|
public $permissionDashboard = array();
|
||||||
@ -522,8 +523,7 @@ class Interpretation extends Fields
|
|||||||
|
|
||||||
public function setVersionController()
|
public function setVersionController()
|
||||||
{
|
{
|
||||||
$updateServer = '';
|
if (ComponentbuilderHelper::checkArray($this->componentData->version_update) || ComponentbuilderHelper::checkArray($this->updateSQLBuilder))
|
||||||
if (ComponentbuilderHelper::checkArray($this->componentData->version_update))
|
|
||||||
{
|
{
|
||||||
$updateXML = array();
|
$updateXML = array();
|
||||||
// add the update server
|
// add the update server
|
||||||
@ -531,52 +531,34 @@ class Interpretation extends Fields
|
|||||||
{
|
{
|
||||||
$updateXML[] = '<updates>';
|
$updateXML[] = '<updates>';
|
||||||
}
|
}
|
||||||
// add the update sql
|
|
||||||
$addSQL = true;
|
// add the dynamic sql switch
|
||||||
foreach ($this->componentData->version_update as $update)
|
$addDynamicSQL = true;
|
||||||
|
$addActive = true;
|
||||||
|
if (ComponentbuilderHelper::checkArray($this->componentData->version_update))
|
||||||
{
|
{
|
||||||
// ensure version naming is correct
|
foreach ($this->componentData->version_update as $nr => &$update)
|
||||||
$update['version'] = preg_replace('/[^0-9.]+/', '', $update['version']);
|
|
||||||
// check if the sql should be added
|
|
||||||
if ($update['version'] == $this->componentData->component_version)
|
|
||||||
{
|
{
|
||||||
$addSQL = false;
|
$this->setUpdateXMLSQL($update, $updateXML, $addDynamicSQL);
|
||||||
}
|
|
||||||
// setup import files
|
if ($update['version'] == $this->componentData->component_version)
|
||||||
if ($addSQL)
|
|
||||||
{
|
|
||||||
$name = ComponentbuilderHelper::safeString($update['version']);
|
|
||||||
$target = array('admin' => $name);
|
|
||||||
$this->buildDynamique($target,'sql_update',$update['version']);
|
|
||||||
$this->fileContentDynamic[$name.'_'.$update['version']]['###UPDATE_VERSION_MYSQL###'] = $update['mysql'];
|
|
||||||
}
|
|
||||||
// add the update server
|
|
||||||
if ($this->componentData->add_update_server && $this->componentData->update_server_target != 3)
|
|
||||||
{
|
|
||||||
// build update xml
|
|
||||||
$updateXML[] = "\t<update>";
|
|
||||||
$updateXML[] = "\t\t<name>".$this->fileContentStatic['###Component_name###']."</name>";
|
|
||||||
$updateXML[] = "\t\t<description>".$this->fileContentStatic['###SHORT_DESCRIPTION###']."</description>";
|
|
||||||
$updateXML[] = "\t\t<element>com_".$this->fileContentStatic['###component###']."</element>";
|
|
||||||
$updateXML[] = "\t\t<type>component</type>";
|
|
||||||
$updateXML[] = "\t\t<version>".$update['version']."</version>";
|
|
||||||
$updateXML[] = "\t\t".'<infourl title="'.$this->fileContentStatic['###Component_name###'].'!">'.$this->fileContentStatic['###AUTHORWEBSITE###'].'</infourl>';
|
|
||||||
$updateXML[] = "\t\t<downloads>";
|
|
||||||
if (!isset($update['url']))
|
|
||||||
{
|
{
|
||||||
$update['url'] = 'http://domain.com/demo.xml';
|
$addActive = false;
|
||||||
}
|
}
|
||||||
$updateXML[] = "\t\t\t".'<downloadurl type="full" format="zip">'.$update['url'].'</downloadurl>';
|
|
||||||
$updateXML[] = "\t\t</downloads>";
|
|
||||||
$updateXML[] = "\t\t<tags>";
|
|
||||||
$updateXML[] = "\t\t\t<tag>stable</tag>";
|
|
||||||
$updateXML[] = "\t\t</tags>";
|
|
||||||
$updateXML[] = "\t\t<maintainer>".$this->fileContentStatic['###AUTHOR###']."</maintainer>";
|
|
||||||
$updateXML[] = "\t\t<maintainerurl>".$this->fileContentStatic['###AUTHORWEBSITE###']."</maintainerurl>";
|
|
||||||
$updateXML[] = "\t\t".'<targetplatform name="joomla" version="3.*"/>';
|
|
||||||
$updateXML[] = "\t</update>";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// add the dynamic sql if not already added
|
||||||
|
if ($addDynamicSQL && ComponentbuilderHelper::checkArray($this->updateSQLBuilder))
|
||||||
|
{
|
||||||
|
// add the dynamic sql
|
||||||
|
$this->setDynamicUpdateXMLSQL($updateXML);
|
||||||
|
}
|
||||||
|
// add the new active version if needed
|
||||||
|
if ($addActive && ComponentbuilderHelper::checkArray($this->updateSQLBuilder))
|
||||||
|
{
|
||||||
|
// add the dynamic sql
|
||||||
|
$this->setDynamicUpdateXMLSQL($updateXML, $addActive);
|
||||||
|
}
|
||||||
// add the update server file
|
// add the update server file
|
||||||
if ($this->componentData->add_update_server && $this->componentData->update_server_target != 3)
|
if ($this->componentData->add_update_server && $this->componentData->update_server_target != 3)
|
||||||
{
|
{
|
||||||
@ -604,6 +586,141 @@ class Interpretation extends Fields
|
|||||||
}
|
}
|
||||||
// add update server details to component XML file
|
// add update server details to component XML file
|
||||||
$this->fileContentStatic['###UPDATESERVER###'] = $updateServer;
|
$this->fileContentStatic['###UPDATESERVER###'] = $updateServer;
|
||||||
|
// ensure to update Component version data
|
||||||
|
if (ComponentbuilderHelper::checkArray($this->updateSQLBuilder))
|
||||||
|
{
|
||||||
|
$buket = array();
|
||||||
|
$buket['version'] = array();
|
||||||
|
$buket['mysql'] = array();
|
||||||
|
$buket['url'] = array();
|
||||||
|
foreach ($this->componentData->version_update as $values)
|
||||||
|
{
|
||||||
|
foreach ($values as $key => $value)
|
||||||
|
{
|
||||||
|
$buket[$key][] = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$new = array();
|
||||||
|
$new['id'] = (int) $this->componentID;
|
||||||
|
$new['component_version'] = $this->componentData->component_version;
|
||||||
|
$new['version_update'] = json_encode($buket);
|
||||||
|
// update the component with the new dynamic SQL
|
||||||
|
$model = ComponentbuilderHelper::getModel('joomla_component');
|
||||||
|
$model->save($new); // <-- to insure the history is also updated
|
||||||
|
// reset the watch here
|
||||||
|
$this->getHistoryWatch('joomla_component', $this->componentID);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setDynamicUpdateXMLSQL(&$updateXML, $current_version = false)
|
||||||
|
{
|
||||||
|
// start building the update
|
||||||
|
$update_ = array();
|
||||||
|
if ($current_version)
|
||||||
|
{
|
||||||
|
// setup new version
|
||||||
|
$update_['version'] = $this->componentData->component_version;
|
||||||
|
// setup SQL
|
||||||
|
$update_['mysql'] = '';
|
||||||
|
// setup URL
|
||||||
|
$update_['url'] = 'http://domain.com/demo.zip';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// setup new version
|
||||||
|
$update_['version'] = $this->componentData->old_component_version;
|
||||||
|
// setup SQL
|
||||||
|
$update_['mysql'] = trim(implode(PHP_EOL.PHP_EOL, $this->updateSQLBuilder));
|
||||||
|
// setup URL
|
||||||
|
if (isset($this->lastupdateURL))
|
||||||
|
{
|
||||||
|
$paceholders = array(
|
||||||
|
$this->componentData->component_version => $this->componentData->old_component_version,
|
||||||
|
str_replace('.','-', $this->componentData->component_version) => str_replace('.','-', $this->componentData->old_component_version),
|
||||||
|
str_replace('.','_', $this->componentData->component_version) => str_replace('.','_', $this->componentData->old_component_version),
|
||||||
|
str_replace('.','', $this->componentData->component_version) => str_replace('.','', $this->componentData->old_component_version)
|
||||||
|
);
|
||||||
|
$update_['url'] = $this->setPlaceholders($this->lastupdateURL, $paceholders);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// setup URL
|
||||||
|
$update_['url'] = 'http://domain.com/demo.zip';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// stop it from being added double
|
||||||
|
$addDynamicSQL = false;
|
||||||
|
$this->componentData->version_update[] = $update_;
|
||||||
|
// add dynamic SQL
|
||||||
|
$this->setUpdateXMLSQL($update_, $updateXML, $addDynamicSQL);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setUpdateXMLSQL(&$update, &$updateXML, &$addDynamicSQL)
|
||||||
|
{
|
||||||
|
// ensure version naming is correct
|
||||||
|
$update['version'] = preg_replace('/[^0-9.]+/', '', $update['version']);
|
||||||
|
// setup SQL
|
||||||
|
if (ComponentbuilderHelper::checkString($update['mysql']))
|
||||||
|
{
|
||||||
|
$update['mysql'] = $this->setPlaceholders($update['mysql'], $this->placeholders);
|
||||||
|
}
|
||||||
|
// add dynamic SQL
|
||||||
|
$force = false;
|
||||||
|
if ($addDynamicSQL && ComponentbuilderHelper::checkArray($this->updateSQLBuilder)
|
||||||
|
&& (isset($this->componentData->old_component_version) && $this->componentData->old_component_version == $update['version']))
|
||||||
|
{
|
||||||
|
$searchMySQL = preg_replace('/\s+/', '', $update['mysql']);
|
||||||
|
// add the updates to the SQL only if not found
|
||||||
|
foreach ($this->updateSQLBuilder as $search => $query)
|
||||||
|
{
|
||||||
|
if (strpos($searchMySQL, $search) === FALSE)
|
||||||
|
{
|
||||||
|
$update['mysql'] .= PHP_EOL.PHP_EOL.$query;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// make sure no unneeded white space is added
|
||||||
|
$update['mysql'] = trim($update['mysql']);
|
||||||
|
// update has been added
|
||||||
|
$addDynamicSQL = false;
|
||||||
|
}
|
||||||
|
// setup import files
|
||||||
|
if ($update['version'] != $this->componentData->component_version)
|
||||||
|
{
|
||||||
|
$name = ComponentbuilderHelper::safeString($update['version']);
|
||||||
|
$target = array('admin' => $name);
|
||||||
|
$this->buildDynamique($target,'sql_update',$update['version']);
|
||||||
|
$this->fileContentDynamic[$name.'_'.$update['version']]['###UPDATE_VERSION_MYSQL###'] = $update['mysql'];
|
||||||
|
}
|
||||||
|
elseif (isset($update['url']) && ComponentbuilderHelper::checkString($update['url']))
|
||||||
|
{
|
||||||
|
$this->lastupdateURL = $update['url'];
|
||||||
|
}
|
||||||
|
// add the update server
|
||||||
|
if ($this->componentData->add_update_server && $this->componentData->update_server_target != 3)
|
||||||
|
{
|
||||||
|
// build update xml
|
||||||
|
$updateXML[] = "\t<update>";
|
||||||
|
$updateXML[] = "\t\t<name>".$this->fileContentStatic['###Component_name###']."</name>";
|
||||||
|
$updateXML[] = "\t\t<description>".$this->fileContentStatic['###SHORT_DESCRIPTION###']."</description>";
|
||||||
|
$updateXML[] = "\t\t<element>com_".$this->fileContentStatic['###component###']."</element>";
|
||||||
|
$updateXML[] = "\t\t<type>component</type>";
|
||||||
|
$updateXML[] = "\t\t<version>".$update['version']."</version>";
|
||||||
|
$updateXML[] = "\t\t".'<infourl title="'.$this->fileContentStatic['###Component_name###'].'!">'.$this->fileContentStatic['###AUTHORWEBSITE###'].'</infourl>';
|
||||||
|
$updateXML[] = "\t\t<downloads>";
|
||||||
|
if (!isset($update['url']) || !ComponentbuilderHelper::checkString($update['url']))
|
||||||
|
{
|
||||||
|
$update['url'] = 'http://domain.com/demo.zip';
|
||||||
|
}
|
||||||
|
$updateXML[] = "\t\t\t".'<downloadurl type="full" format="zip">'.$update['url'].'</downloadurl>';
|
||||||
|
$updateXML[] = "\t\t</downloads>";
|
||||||
|
$updateXML[] = "\t\t<tags>";
|
||||||
|
$updateXML[] = "\t\t\t<tag>stable</tag>";
|
||||||
|
$updateXML[] = "\t\t</tags>";
|
||||||
|
$updateXML[] = "\t\t<maintainer>".$this->fileContentStatic['###AUTHOR###']."</maintainer>";
|
||||||
|
$updateXML[] = "\t\t<maintainerurl>".$this->fileContentStatic['###AUTHORWEBSITE###']."</maintainerurl>";
|
||||||
|
$updateXML[] = "\t\t".'<targetplatform name="joomla" version="3.*"/>';
|
||||||
|
$updateXML[] = "\t</update>";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function noHelp()
|
public function noHelp()
|
||||||
@ -1609,7 +1726,7 @@ class Interpretation extends Fields
|
|||||||
$value = " ".$whe['value_key']."');";
|
$value = " ".$whe['value_key']."');";
|
||||||
|
|
||||||
}
|
}
|
||||||
elseif (strpos($whe['value_key'],'$this->') !== false)
|
elseif (strpos($whe['value_key'],'$') !== false)
|
||||||
{
|
{
|
||||||
if ($whe['operator'] === 'IN' || $whe['operator'] === 'NOT IN')
|
if ($whe['operator'] === 'IN' || $whe['operator'] === 'NOT IN')
|
||||||
{
|
{
|
||||||
@ -1622,21 +1739,29 @@ class Interpretation extends Fields
|
|||||||
}
|
}
|
||||||
elseif (strpos($whe['value_key'],'.') !== false)
|
elseif (strpos($whe['value_key'],'.') !== false)
|
||||||
{
|
{
|
||||||
$value = " ".$whe['value_key']."');";
|
if (strpos($whe['value_key'],"'") !== false)
|
||||||
|
{
|
||||||
|
$value = " ' . \$db->quote(".$whe['value_key']."));";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$value = " ".$whe['value_key']."');";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// only load if there is a value
|
// only load if there is a value
|
||||||
if (ComponentbuilderHelper::checkString($value))
|
if (ComponentbuilderHelper::checkString($value))
|
||||||
{
|
{
|
||||||
|
$tabe = '';
|
||||||
|
if ($as === 'a')
|
||||||
|
{
|
||||||
|
$tabe = $tab;
|
||||||
|
}
|
||||||
// set the string
|
// set the string
|
||||||
if ($whe['operator'] === 'IN' || $whe['operator'] === 'NOT IN')
|
if ($whe['operator'] === 'IN' || $whe['operator'] === 'NOT IN')
|
||||||
{
|
{
|
||||||
$tabe = '';
|
|
||||||
if ($as === 'a')
|
|
||||||
{
|
|
||||||
$tabe = $tab;
|
|
||||||
}
|
|
||||||
$string = "if (isset(" . $whe['value_key']. ") && ".$this->fileContentStatic['###Component###']."Helper::checkArray(" . $whe['value_key']. "))";
|
$string = "if (isset(" . $whe['value_key']. ") && ".$this->fileContentStatic['###Component###']."Helper::checkArray(" . $whe['value_key']. "))";
|
||||||
$string .= PHP_EOL."\t".$tabe."\t{";
|
$string .= PHP_EOL."\t".$tabe."\t{";
|
||||||
|
$string .= PHP_EOL."\t".$tabe."\t\t\//".$this->setLine(__LINE__)." Get where ".$whe['table_key']." is " . $whe['value_key'];
|
||||||
$string .= PHP_EOL."\t".$tabe."\t\t\$query->where('".$whe['table_key']." ".$whe['operator'].$value;
|
$string .= PHP_EOL."\t".$tabe."\t\t\$query->where('".$whe['table_key']." ".$whe['operator'].$value;
|
||||||
$string .= PHP_EOL."\t".$tabe."\t}";
|
$string .= PHP_EOL."\t".$tabe."\t}";
|
||||||
$string .= PHP_EOL."\t".$tabe."\telse";
|
$string .= PHP_EOL."\t".$tabe."\telse";
|
||||||
@ -1647,7 +1772,8 @@ class Interpretation extends Fields
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$string = "\$query->where('".$whe['table_key']." ".$whe['operator'].$value;
|
$string = "//".$this->setLine(__LINE__)." Get where ".$whe['table_key']." is " . $whe['value_key'];
|
||||||
|
$string .= PHP_EOL."\t".$tabe."\t\$query->where('".$whe['table_key']." ".$whe['operator'].$value;
|
||||||
}
|
}
|
||||||
// sort where
|
// sort where
|
||||||
if ($as === 'a' || (isset($this->siteMainGet[$this->target][$code][$as]) && ComponentbuilderHelper::checkString($this->siteMainGet[$this->target][$code][$as])))
|
if ($as === 'a' || (isset($this->siteMainGet[$this->target][$code][$as]) && ComponentbuilderHelper::checkString($this->siteMainGet[$this->target][$code][$as])))
|
||||||
@ -3456,10 +3582,16 @@ class Interpretation extends Fields
|
|||||||
$makeArray = '';
|
$makeArray = '';
|
||||||
foreach ($this->jsonStringBuilder[$view] as $jsonString)
|
foreach ($this->jsonStringBuilder[$view] as $jsonString)
|
||||||
{
|
{
|
||||||
$script .= PHP_EOL.PHP_EOL."\t\t\tif (!empty(\$item->".$jsonString."))";
|
$script .= PHP_EOL.PHP_EOL."\t\t\tif (!empty(\$item->".$jsonString."))";
|
||||||
$script .= PHP_EOL."\t\t\t{";
|
$script .= PHP_EOL."\t\t\t{";
|
||||||
$script .= PHP_EOL."\t\t\t\t//".$this->setLine(__LINE__)." JSON Decode ".$jsonString.".";
|
$script .= PHP_EOL."\t\t\t\t//".$this->setLine(__LINE__)." JSON Decode ".$jsonString.".";
|
||||||
if (strpos($jsonString, 'group') !== false)
|
if (isset($this->jsonItemBuilderArray[$view])
|
||||||
|
&& ComponentbuilderHelper::checkArray($this->jsonStringBuilderArray[$view])
|
||||||
|
&& in_array($jsonString, $this->jsonItemBuilderArray[$view]))
|
||||||
|
{
|
||||||
|
$makeArray = ',true';
|
||||||
|
}
|
||||||
|
elseif (strpos($jsonString, 'group') !== false)
|
||||||
{
|
{
|
||||||
$makeArray = ',true';
|
$makeArray = ',true';
|
||||||
}
|
}
|
||||||
@ -4117,6 +4249,7 @@ class Interpretation extends Fields
|
|||||||
public function routerParseSwitch(&$view, $viewArray = null, $aliasView = true, $idView = true)
|
public function routerParseSwitch(&$view, $viewArray = null, $aliasView = true, $idView = true)
|
||||||
{
|
{
|
||||||
$isCategory = '';
|
$isCategory = '';
|
||||||
|
$viewTable = false;
|
||||||
if ($viewArray && ComponentbuilderHelper::checkArray($viewArray))
|
if ($viewArray && ComponentbuilderHelper::checkArray($viewArray))
|
||||||
{
|
{
|
||||||
if (isset($viewArray['settings']->main_get->db_table_main) && $viewArray['settings']->main_get->db_table_main === 'categories')
|
if (isset($viewArray['settings']->main_get->db_table_main) && $viewArray['settings']->main_get->db_table_main === 'categories')
|
||||||
@ -4128,29 +4261,25 @@ class Interpretation extends Fields
|
|||||||
// $idView = false; // TODO we will keep an eye on this....
|
// $idView = false; // TODO we will keep an eye on this....
|
||||||
// $aliasView = false;
|
// $aliasView = false;
|
||||||
// }
|
// }
|
||||||
// elseif (isset($viewArray['settings']->main_get->main_get) && ComponentbuilderHelper::checkArray($viewArray['settings']->main_get->main_get))
|
elseif (isset($viewArray['settings']->main_get->main_get) && ComponentbuilderHelper::checkArray($viewArray['settings']->main_get->main_get))
|
||||||
// {
|
{
|
||||||
// $aliasView = false;
|
foreach ($viewArray['settings']->main_get->main_get as $get)
|
||||||
// foreach ($viewArray['settings']->main_get->main_get as $get)
|
{
|
||||||
// {
|
if ($get['as'] === 'a')
|
||||||
// if ($get['as'] === 'a')
|
{
|
||||||
// {
|
if (isset($get['selection']) && ComponentbuilderHelper::checkArray($get['selection'])
|
||||||
// if (isset($get['selection']) && ComponentbuilderHelper::checkArray($get['selection'])
|
&& isset($get['selection']['select_gets'])
|
||||||
// && isset($get['selection']['select_gets'])
|
&& ComponentbuilderHelper::checkArray($get['selection']['select_gets']))
|
||||||
// && ComponentbuilderHelper::checkArray($get['selection']['select_gets']))
|
{
|
||||||
// {
|
if (isset($get['selection']['table']))
|
||||||
// foreach ($get['selection']['select_gets'] as $checkAlias)
|
{
|
||||||
// {
|
$viewTable = str_replace('#__'.$this->fileContentStatic['###component###'].'_', '', $get['selection']['table']);
|
||||||
// if ($checkAlias === "'a.alias'")
|
}
|
||||||
// {
|
}
|
||||||
// $aliasView = true;
|
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
// add if tags is added, also for all front item views
|
// add if tags is added, also for all front item views
|
||||||
if ($aliasView)
|
if ($aliasView)
|
||||||
@ -4166,7 +4295,15 @@ class Interpretation extends Fields
|
|||||||
$routerSwitch[] = "\t\t\t\t}";
|
$routerSwitch[] = "\t\t\t\t}";
|
||||||
$routerSwitch[] = "\t\t\t\telseif (\$segments[\$count-1])";
|
$routerSwitch[] = "\t\t\t\telseif (\$segments[\$count-1])";
|
||||||
$routerSwitch[] = "\t\t\t\t{";
|
$routerSwitch[] = "\t\t\t\t{";
|
||||||
$routerSwitch[] = "\t\t\t\t\t\$id = \$this->getVar('".$view."', \$segments[\$count-1], 'alias', 'id'".$isCategory.");";
|
// we need to get from the table of this views main get the alias so we need the table name
|
||||||
|
if ($viewTable)
|
||||||
|
{
|
||||||
|
$routerSwitch[] = "\t\t\t\t\t\$id = \$this->getVar('".$viewTable."', \$segments[\$count-1], 'alias', 'id'".$isCategory.");";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$routerSwitch[] = "\t\t\t\t\t\$id = \$this->getVar('".$view."', \$segments[\$count-1], 'alias', 'id'".$isCategory.");";
|
||||||
|
}
|
||||||
$routerSwitch[] = "\t\t\t\t\tif(\$id)";
|
$routerSwitch[] = "\t\t\t\t\tif(\$id)";
|
||||||
$routerSwitch[] = "\t\t\t\t\t{";
|
$routerSwitch[] = "\t\t\t\t\t{";
|
||||||
$routerSwitch[] = "\t\t\t\t\t\t\$vars['id'] = \$id;";
|
$routerSwitch[] = "\t\t\t\t\t\t\$vars['id'] = \$id;";
|
||||||
@ -4823,15 +4960,24 @@ class Interpretation extends Fields
|
|||||||
// build the uninstall array
|
// build the uninstall array
|
||||||
$this->uninstallBuilder[] = "DROP TABLE IF EXISTS `#__".$component."_".$view."`;";
|
$this->uninstallBuilder[] = "DROP TABLE IF EXISTS `#__".$component."_".$view."`;";
|
||||||
|
|
||||||
// setup the tables
|
// setup the table DB string
|
||||||
$db .= "CREATE TABLE IF NOT EXISTS `#__".$component."_".$view."` (";
|
$db_ = '';
|
||||||
|
$db_ .= "CREATE TABLE IF NOT EXISTS `#__".$component."_".$view."` (";
|
||||||
|
// check if the table name has changed
|
||||||
|
if (isset($this->updateSQL['table_name']) && isset($this->updateSQL['table_name'][$view]))
|
||||||
|
{
|
||||||
|
$old_table_name = $this->updateSQL['table_name'][$view]['old'];
|
||||||
|
$this->updateSQLBuilder["RENAMETABLE`#__".$component."_".$old_table_name."`"]
|
||||||
|
= "RENAME TABLE `#__".$component."_".$old_table_name."` to `#__".$component."_".$view."`;";
|
||||||
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['id']))
|
if (!isset($this->fieldsNames[$view]['id']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`id` INT(11) NOT NULL AUTO_INCREMENT,";
|
$db_ .= PHP_EOL."\t`id` INT(11) NOT NULL AUTO_INCREMENT,";
|
||||||
}
|
}
|
||||||
$db .= PHP_EOL."\t`asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',";
|
$db_ .= PHP_EOL."\t`asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',";
|
||||||
ksort($fields);
|
ksort($fields);
|
||||||
|
$last_name = 'asset_id';
|
||||||
foreach ($fields as $field => $data)
|
foreach ($fields as $field => $data)
|
||||||
{
|
{
|
||||||
// set default
|
// set default
|
||||||
@ -4850,7 +4996,14 @@ class Interpretation extends Fields
|
|||||||
}
|
}
|
||||||
elseif ($default == 0 || $default)
|
elseif ($default == 0 || $default)
|
||||||
{
|
{
|
||||||
$default = $data['null_switch']." DEFAULT '".$default."'";
|
if (is_numeric($default))
|
||||||
|
{
|
||||||
|
$default = $data['null_switch']." DEFAULT ".$default;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$default = $data['null_switch']." DEFAULT '".$default."'";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
elseif ($data['null_switch'] === 'NULL')
|
elseif ($data['null_switch'] === 'NULL')
|
||||||
{
|
{
|
||||||
@ -4871,116 +5024,142 @@ class Interpretation extends Fields
|
|||||||
$lenght = '('.$data['lenght'].')';
|
$lenght = '('.$data['lenght'].')';
|
||||||
}
|
}
|
||||||
// set the field to db
|
// set the field to db
|
||||||
$db .= PHP_EOL."\t`".$field."` ".$data['type'].$lenght." ".$default.",";
|
$db_ .= PHP_EOL."\t`".$field."` ".$data['type'].$lenght." ".$default.",";
|
||||||
|
// check if this a new field that should be added via SQL update
|
||||||
|
if (isset($this->addSQL['field']) && isset($this->addSQL['field'][$view])
|
||||||
|
&& ComponentbuilderHelper::checkArray($this->addSQL['field'][$view])
|
||||||
|
&& in_array($data['ID'], $this->addSQL['field'][$view]))
|
||||||
|
{
|
||||||
|
$this->updateSQLBuilder["ALTERTABLE`#__".$component."_".$view."`ADD`".$field."`"]
|
||||||
|
= "ALTER TABLE `#__".$component."_".$view."` ADD `".$field."` ".$data['type'].$lenght." ".$default." AFTER `".$last_name."`;";
|
||||||
|
}
|
||||||
|
// check if the field has changed name and/or data type and lenght
|
||||||
|
elseif (0)
|
||||||
|
{
|
||||||
|
// hmmm tough one
|
||||||
|
}
|
||||||
|
// be sure to track the last name used :)
|
||||||
|
$last_name = $field;
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['params']))
|
if (!isset($this->fieldsNames[$view]['params']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`params` text NOT NULL DEFAULT '',";
|
$db_ .= PHP_EOL."\t`params` text NOT NULL DEFAULT '',";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['published']))
|
if (!isset($this->fieldsNames[$view]['published']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`published` TINYINT(3) NOT NULL DEFAULT 1,";
|
$db_ .= PHP_EOL."\t`published` TINYINT(3) NOT NULL DEFAULT 1,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['created_by']))
|
if (!isset($this->fieldsNames[$view]['created_by']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`created_by` INT(10) unsigned NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`created_by` INT(10) unsigned NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['modified_by']))
|
if (!isset($this->fieldsNames[$view]['modified_by']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`modified_by` INT(10) unsigned NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`modified_by` INT(10) unsigned NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['created']))
|
if (!isset($this->fieldsNames[$view]['created']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
$db_ .= PHP_EOL."\t`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['modified']))
|
if (!isset($this->fieldsNames[$view]['modified']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
$db_ .= PHP_EOL."\t`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['checked_out']))
|
if (!isset($this->fieldsNames[$view]['checked_out']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`checked_out` int(11) unsigned NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`checked_out` int(11) unsigned NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['checked_out_time']))
|
if (!isset($this->fieldsNames[$view]['checked_out_time']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
$db_ .= PHP_EOL."\t`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['version']))
|
if (!isset($this->fieldsNames[$view]['version']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`version` INT(10) unsigned NOT NULL DEFAULT 1,";
|
$db_ .= PHP_EOL."\t`version` INT(10) unsigned NOT NULL DEFAULT 1,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['hits']))
|
if (!isset($this->fieldsNames[$view]['hits']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`hits` INT(10) unsigned NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`hits` INT(10) unsigned NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if view has access
|
// check if view has access
|
||||||
if (isset($this->accessBuilder[$view]) && ComponentbuilderHelper::checkString($this->accessBuilder[$view]))
|
if (isset($this->accessBuilder[$view]) && ComponentbuilderHelper::checkString($this->accessBuilder[$view]))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`access` INT(10) unsigned NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`access` INT(10) unsigned NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['ordering']))
|
if (!isset($this->fieldsNames[$view]['ordering']))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`ordering` INT(11) NOT NULL DEFAULT 0,";
|
$db_ .= PHP_EOL."\t`ordering` INT(11) NOT NULL DEFAULT 0,";
|
||||||
}
|
}
|
||||||
// check if metadata is added to this view
|
// check if metadata is added to this view
|
||||||
if (isset($this->metadataBuilder[$view]) && ComponentbuilderHelper::checkString($this->metadataBuilder[$view]))
|
if (isset($this->metadataBuilder[$view]) && ComponentbuilderHelper::checkString($this->metadataBuilder[$view]))
|
||||||
{
|
{
|
||||||
$db .= PHP_EOL."\t`metakey` TEXT NOT NULL DEFAULT '',";
|
$db_ .= PHP_EOL."\t`metakey` TEXT NOT NULL DEFAULT '',";
|
||||||
$db .= PHP_EOL."\t`metadesc` TEXT NOT NULL DEFAULT '',";
|
$db_ .= PHP_EOL."\t`metadesc` TEXT NOT NULL DEFAULT '',";
|
||||||
$db .= PHP_EOL."\t`metadata` TEXT NOT NULL DEFAULT '',";
|
$db_ .= PHP_EOL."\t`metadata` TEXT NOT NULL DEFAULT '',";
|
||||||
}
|
}
|
||||||
$db .= PHP_EOL."\tPRIMARY KEY (`id`)";
|
$db_ .= PHP_EOL."\tPRIMARY KEY (`id`)";
|
||||||
if (isset($this->dbUniqueKeys[$view]) && ComponentbuilderHelper::checkArray($this->dbUniqueKeys[$view]))
|
if (isset($this->dbUniqueKeys[$view]) && ComponentbuilderHelper::checkArray($this->dbUniqueKeys[$view]))
|
||||||
{
|
{
|
||||||
foreach ($this->dbUniqueKeys[$view] as $nr => $key)
|
foreach ($this->dbUniqueKeys[$view] as $nr => $key)
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tUNIQUE KEY `idx_".$key."` (`".$key."`)";
|
$db_ .= ",".PHP_EOL."\tUNIQUE KEY `idx_".$key."` (`".$key."`)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// check if view has access
|
// check if view has access
|
||||||
if (isset($this->accessBuilder[$view]) && ComponentbuilderHelper::checkString($this->accessBuilder[$view]))
|
if (isset($this->accessBuilder[$view]) && ComponentbuilderHelper::checkString($this->accessBuilder[$view]))
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_access` (`access`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_access` (`access`)";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['checked_out']))
|
if (!isset($this->fieldsNames[$view]['checked_out']))
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_checkout` (`checked_out`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_checkout` (`checked_out`)";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['created_by']))
|
if (!isset($this->fieldsNames[$view]['created_by']))
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_createdby` (`created_by`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_createdby` (`created_by`)";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['modified_by']))
|
if (!isset($this->fieldsNames[$view]['modified_by']))
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_modifiedby` (`modified_by`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_modifiedby` (`modified_by`)";
|
||||||
}
|
}
|
||||||
// check if default field was over written
|
// check if default field was over written
|
||||||
if (!isset($this->fieldsNames[$view]['published']))
|
if (!isset($this->fieldsNames[$view]['published']))
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_state` (`published`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_state` (`published`)";
|
||||||
}
|
}
|
||||||
if (isset($this->dbKeys[$view]) && ComponentbuilderHelper::checkArray($this->dbKeys[$view]))
|
if (isset($this->dbKeys[$view]) && ComponentbuilderHelper::checkArray($this->dbKeys[$view]))
|
||||||
{
|
{
|
||||||
foreach ($this->dbKeys[$view] as $nr => $key)
|
foreach ($this->dbKeys[$view] as $nr => $key)
|
||||||
{
|
{
|
||||||
$db .= ",".PHP_EOL."\tKEY `idx_".$key."` (`".$key."`)";
|
$db_ .= ",".PHP_EOL."\tKEY `idx_".$key."` (`".$key."`)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$db .= PHP_EOL.") ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;".PHP_EOL.PHP_EOL;
|
$db_ .= PHP_EOL.") ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;";
|
||||||
|
|
||||||
|
// check if this is a new table that should be added via update SQL
|
||||||
|
if (isset($this->addSQL['adminview']) && ComponentbuilderHelper::checkArray($this->addSQL['adminview'])
|
||||||
|
&& in_array($view, $this->addSQL['adminview']))
|
||||||
|
{
|
||||||
|
// build the update array
|
||||||
|
$this->updateSQLBuilder["CREATETABLEIFNOTEXISTS`#__".$component."_".$view."`"] = $db_;
|
||||||
|
}
|
||||||
|
|
||||||
|
// add to main DB string
|
||||||
|
$db .= $db_.PHP_EOL.PHP_EOL;
|
||||||
}
|
}
|
||||||
// add custom sql dump to the file
|
// add custom sql dump to the file
|
||||||
if (isset($this->customScriptBuilder['sql']) && ComponentbuilderHelper::checkArray($this->customScriptBuilder['sql']))
|
if (isset($this->customScriptBuilder['sql']) && ComponentbuilderHelper::checkArray($this->customScriptBuilder['sql']))
|
||||||
@ -4988,7 +5167,7 @@ class Interpretation extends Fields
|
|||||||
foreach ($this->customScriptBuilder['sql'] as $for => $customSql)
|
foreach ($this->customScriptBuilder['sql'] as $for => $customSql)
|
||||||
{
|
{
|
||||||
$placeholders = array('[[[component]]]' => $component, '[[[view]]]' => $for);
|
$placeholders = array('[[[component]]]' => $component, '[[[view]]]' => $for);
|
||||||
$db .= PHP_EOL.PHP_EOL.$this->setPlaceholders($customSql, $placeholders);
|
$db .= $this->setPlaceholders($customSql, $placeholders).PHP_EOL.PHP_EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -5127,7 +5306,7 @@ class Interpretation extends Fields
|
|||||||
// check if the both array is set
|
// check if the both array is set
|
||||||
if (isset($this->langContent['both']) && ComponentbuilderHelper::checkArray($this->langContent['both']))
|
if (isset($this->langContent['both']) && ComponentbuilderHelper::checkArray($this->langContent['both']))
|
||||||
{
|
{
|
||||||
foreach ($this->langContent[$this->lang] as $keylang => $langval)
|
foreach ($this->langContent['both'] as $keylang => $langval)
|
||||||
{
|
{
|
||||||
$this->langContent['site'][$keylang] = $langval;
|
$this->langContent['site'][$keylang] = $langval;
|
||||||
}
|
}
|
||||||
@ -5729,8 +5908,7 @@ class Interpretation extends Fields
|
|||||||
$linkedViewId = '';
|
$linkedViewId = '';
|
||||||
if (ComponentbuilderHelper::checkArray($linkedTab))
|
if (ComponentbuilderHelper::checkArray($linkedTab))
|
||||||
{
|
{
|
||||||
$linkedViewId = array_search($tabNr,$linkedTab);
|
if (($linkedViewId = array_search($tabNr, $linkedTab)) !== false)
|
||||||
if ($linkedViewId)
|
|
||||||
{
|
{
|
||||||
// don't build
|
// don't build
|
||||||
$buildLayout = false;
|
$buildLayout = false;
|
||||||
@ -5866,10 +6044,14 @@ class Interpretation extends Fields
|
|||||||
$span = '';
|
$span = '';
|
||||||
if ($mainwidth != 12)
|
if ($mainwidth != 12)
|
||||||
{
|
{
|
||||||
$span = ' span'.$mainwidth;
|
$span = 'span'.$mainwidth;
|
||||||
}
|
}
|
||||||
// start building body
|
// start building body
|
||||||
$body = '<div class="form-horizontal'.$span.'">';
|
$body = PHP_EOL.'<div class="form-horizontal">';
|
||||||
|
if (ComponentbuilderHelper::checkString($span))
|
||||||
|
{
|
||||||
|
$body .= PHP_EOL."\t".'<div class="'.$span.'">';
|
||||||
|
}
|
||||||
// now build the template
|
// now build the template
|
||||||
foreach ($bucket as $tabCodeName => $posions)
|
foreach ($bucket as $tabCodeName => $posions)
|
||||||
{
|
{
|
||||||
@ -5925,7 +6107,7 @@ class Interpretation extends Fields
|
|||||||
if(isset($linkedViewIdentifier) && ComponentbuilderHelper::checkArray($linkedViewIdentifier) && in_array($tabCodeName,$linkedViewIdentifier))
|
if(isset($linkedViewIdentifier) && ComponentbuilderHelper::checkArray($linkedViewIdentifier) && in_array($tabCodeName,$linkedViewIdentifier))
|
||||||
{
|
{
|
||||||
// get view name
|
// get view name
|
||||||
$linkedViewId = array_search($tabCodeName,$linkedViewIdentifier);
|
$linkedViewId = array_search($tabCodeName, $linkedViewIdentifier);
|
||||||
$linkedViewData = $this->getAdminViewData($linkedViewId);
|
$linkedViewData = $this->getAdminViewData($linkedViewId);
|
||||||
$linkedCodeName = ComponentbuilderHelper::safeString($linkedViewData->name_single);
|
$linkedCodeName = ComponentbuilderHelper::safeString($linkedViewData->name_single);
|
||||||
// setup correct core target
|
// setup correct core target
|
||||||
@ -6157,6 +6339,7 @@ class Interpretation extends Fields
|
|||||||
$body .= PHP_EOL."\t\t".'<input type="hidden" name="task" value="'.$viewName_single.'.edit" />';
|
$body .= PHP_EOL."\t\t".'<input type="hidden" name="task" value="'.$viewName_single.'.edit" />';
|
||||||
$body .= PHP_EOL."\t\t<?php echo JHtml::_('form.token'); ?>";
|
$body .= PHP_EOL."\t\t<?php echo JHtml::_('form.token'); ?>";
|
||||||
$body .= PHP_EOL."\t</div>";
|
$body .= PHP_EOL."\t</div>";
|
||||||
|
$body .= PHP_EOL."\t</div>";
|
||||||
$body .= PHP_EOL."</div>";
|
$body .= PHP_EOL."</div>";
|
||||||
// check if left has been set
|
// check if left has been set
|
||||||
if (strlen($leftside) > 0 )
|
if (strlen($leftside) > 0 )
|
||||||
@ -6796,8 +6979,8 @@ class Interpretation extends Fields
|
|||||||
* @param $parentKey
|
* @param $parentKey
|
||||||
* @param $parent_key
|
* @param $parent_key
|
||||||
* @param $globalKey
|
* @param $globalKey
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
public function setListQueryLinked($viewName_single, $viewName_list, $functionName, $key, $_key, $parentKey, $parent_key, $globalKey)
|
public function setListQueryLinked($viewName_single, $viewName_list, $functionName, $key, $_key, $parentKey, $parent_key, $globalKey)
|
||||||
{
|
{
|
||||||
// check if this view has category added
|
// check if this view has category added
|
||||||
@ -6900,7 +7083,7 @@ class Interpretation extends Fields
|
|||||||
$query .= PHP_EOL."\t\t\t\t\tif (isset(\$item->".$field.") && ".$this->fileContentStatic['###Component###']."Helper::checkJson(\$item->".$field."))";
|
$query .= PHP_EOL."\t\t\t\t\tif (isset(\$item->".$field.") && ".$this->fileContentStatic['###Component###']."Helper::checkJson(\$item->".$field."))";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t{";
|
$query .= PHP_EOL."\t\t\t\t\t{";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t\t\$tmpArray = json_decode(\$item->".$field.",true);";
|
$query .= PHP_EOL."\t\t\t\t\t\t\$tmpArray = json_decode(\$item->".$field.",true);";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t\tif (!in_array(\$this->".$globalKey.", \$tmpArray['".$target."']))";
|
$query .= PHP_EOL."\t\t\t\t\t\tif (!isset(\$tmpArray['".$target."']) || !".$this->fileContentStatic['###Component###']."Helper::checkArray(\$tmpArray['".$target."']) || !in_array(\$this->".$globalKey.", \$tmpArray['".$target."']))";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t\t{";
|
$query .= PHP_EOL."\t\t\t\t\t\t{";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t\t\tunset(\$items[\$nr]);";
|
$query .= PHP_EOL."\t\t\t\t\t\t\tunset(\$items[\$nr]);";
|
||||||
$query .= PHP_EOL."\t\t\t\t\t\t\tcontinue;";
|
$query .= PHP_EOL."\t\t\t\t\t\t\tcontinue;";
|
||||||
@ -11245,7 +11428,7 @@ class Interpretation extends Fields
|
|||||||
$builder[$data['name']][$data['header']] = $this->setPlaceholders($data['html'], $this->placeholders);
|
$builder[$data['name']][$data['header']] = $this->setPlaceholders($data['html'], $this->placeholders);
|
||||||
}
|
}
|
||||||
// since we have custom tabs we must load the tab structure around the cpanel
|
// since we have custom tabs we must load the tab structure around the cpanel
|
||||||
$display[] = '<div id="j-main-container" class="span12">';
|
$display[] = '<div id="j-main-container">';
|
||||||
$display[] = "\t".'<div class="form-horizontal">';
|
$display[] = "\t".'<div class="form-horizontal">';
|
||||||
$display[] = "\t<?php echo JHtml::_('bootstrap.startTabSet', 'cpanel_tab', array('active' => 'cpanel')); ?>";
|
$display[] = "\t<?php echo JHtml::_('bootstrap.startTabSet', 'cpanel_tab', array('active' => 'cpanel')); ?>";
|
||||||
$display[] = PHP_EOL."\t\t<?php echo JHtml::_('bootstrap.addTab', 'cpanel_tab', 'cpanel', JText::_('cPanel', true)); ?>";
|
$display[] = PHP_EOL."\t\t<?php echo JHtml::_('bootstrap.addTab', 'cpanel_tab', 'cpanel', JText::_('cPanel', true)); ?>";
|
||||||
|
@ -192,8 +192,6 @@ class Infusion extends Interpretation
|
|||||||
$this->fileContentStatic['###HELP###'] = $this->noHelp();
|
$this->fileContentStatic['###HELP###'] = $this->noHelp();
|
||||||
// ###HELP_SITE###
|
// ###HELP_SITE###
|
||||||
$this->fileContentStatic['###HELP_SITE###'] = $this->noHelp();
|
$this->fileContentStatic['###HELP_SITE###'] = $this->noHelp();
|
||||||
// ###UPDATE_VERSION_MYSQL###
|
|
||||||
$this->setVersionController();
|
|
||||||
|
|
||||||
// build route parse switch
|
// build route parse switch
|
||||||
$this->fileContentStatic['###ROUTER_PARSE_SWITCH###'] = '';
|
$this->fileContentStatic['###ROUTER_PARSE_SWITCH###'] = '';
|
||||||
@ -760,6 +758,9 @@ class Infusion extends Interpretation
|
|||||||
|
|
||||||
// ###UNINSTALL###
|
// ###UNINSTALL###
|
||||||
$this->fileContentStatic['###UNINSTALL###'] = $this->setUninstall();
|
$this->fileContentStatic['###UNINSTALL###'] = $this->setUninstall();
|
||||||
|
|
||||||
|
// ###UPDATE_VERSION_MYSQL###
|
||||||
|
$this->setVersionController();
|
||||||
|
|
||||||
// ###DASHBOARDICONS###
|
// ###DASHBOARDICONS###
|
||||||
$this->fileContentDynamic[$this->fileContentStatic['###component###']]['###DASHBOARDICONS###'] = $this->setDashboardIcons();
|
$this->fileContentDynamic[$this->fileContentStatic['###component###']]['###DASHBOARDICONS###'] = $this->setDashboardIcons();
|
||||||
@ -1100,6 +1101,8 @@ class Infusion extends Interpretation
|
|||||||
$this->multiLangString = $this->getMultiLangStrings($values);
|
$this->multiLangString = $this->getMultiLangStrings($values);
|
||||||
// update insert the current lang in to DB
|
// update insert the current lang in to DB
|
||||||
$this->setLangPlaceholders($values);
|
$this->setLangPlaceholders($values);
|
||||||
|
// remove old unused language strings
|
||||||
|
$this->purgeLanuageStrings($values);
|
||||||
// path to INI file
|
// path to INI file
|
||||||
$getPAth = $this->templatePath . '/en-GB.com_admin.ini';
|
$getPAth = $this->templatePath . '/en-GB.com_admin.ini';
|
||||||
// now we insert the values into the files
|
// now we insert the values into the files
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage componentbuilder.php
|
@subpackage componentbuilder.php
|
||||||
@ -2219,7 +2219,8 @@ abstract class ComponentbuilderHelper
|
|||||||
// If you don't need to handle multi-byte characters
|
// If you don't need to handle multi-byte characters
|
||||||
// you can use preg_replace rather than mb_ereg_replace
|
// you can use preg_replace rather than mb_ereg_replace
|
||||||
// Thanks @Łukasz Rysiak!
|
// Thanks @Łukasz Rysiak!
|
||||||
$string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
// $string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
|
$string = preg_replace("([^\w\s\d\-_\(\)])", '', $string);
|
||||||
// http://stackoverflow.com/a/2021729/1429677
|
// http://stackoverflow.com/a/2021729/1429677
|
||||||
return preg_replace('/\s+/', ' ', $string);
|
return preg_replace('/\s+/', ' ', $string);
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage headercheck.php
|
@subpackage headercheck.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage batch_.php
|
@subpackage batch_.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage indenter.php
|
@subpackage indenter.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage js.php
|
@subpackage js.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage minify.php
|
@subpackage minify.php
|
||||||
|
@ -794,12 +794,9 @@ COM_COMPONENTBUILDER_CONFIG_CUSTOM_FOLDER_PATH_LABEL="Custom Folder Path"
|
|||||||
COM_COMPONENTBUILDER_CONFIG_DONT_LOAD="Not"
|
COM_COMPONENTBUILDER_CONFIG_DONT_LOAD="Not"
|
||||||
COM_COMPONENTBUILDER_CONFIG_ENCRYPTION_DESC="The encription key for the field encryption is set here."
|
COM_COMPONENTBUILDER_CONFIG_ENCRYPTION_DESC="The encription key for the field encryption is set here."
|
||||||
COM_COMPONENTBUILDER_CONFIG_ENCRYPTION_LABEL="Encryption Settings"
|
COM_COMPONENTBUILDER_CONFIG_ENCRYPTION_LABEL="Encryption Settings"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_DESCRIPTION="Enter link where you JCB package keys can be bought"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_DESCRIPTION="Enter link where your JCB package key can be bought."
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_HINT="http://www.example.com/buy-keys"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_HINT="http://www.example.com/buy-keys"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_LABEL="Buy Link<br /><small>(to get key)</small>"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_LINK_LABEL="Buy Link<br /><small>(to get key)</small>"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_DESCRIPTION="Enter query string to use in building the buy url [http://www.example.com/buy-keys&package=JCB_demo]"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_HINT="&package="
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_BUY_QUERY_LABEL="Buy Query string"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_DESCRIPTION="Enter Company Name Here"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_DESCRIPTION="Enter Company Name Here"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_HINT="Company Name Here"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_HINT="Company Name Here"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_LABEL="Company Name"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_COMPANY_LABEL="Company Name"
|
||||||
@ -815,12 +812,6 @@ COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_LABEL="License"
|
|||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_DESCRIPTION="The Owner's Name & Surname."
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_DESCRIPTION="The Owner's Name & Surname."
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_HINT="Owner Name & Surname Here"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_HINT="Owner Name & Surname Here"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_LABEL="Owner"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_OWNER_LABEL="Owner"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_DESCRIPTION="Enter link where you latest JCB package can be found"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_HINT="http://www.example.com/buy-package"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_LINK_LABEL="Package Link<br /><small>(to get updated package)</small>"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_DESCRIPTION="Enter query string to use in building the package url [http://www.example.com/buy-package&package=JCB_demo]"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_HINT="&package="
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_PACKAGE_QUERY_LABEL="Package Query string"
|
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_DESCRIPTION="Enter website address"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_DESCRIPTION="Enter website address"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_HINT="http://www.example.com"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_HINT="http://www.example.com"
|
||||||
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_LABEL="Website"
|
COM_COMPONENTBUILDER_CONFIG_EXPORT_WEBSITE_LABEL="Website"
|
||||||
@ -1340,7 +1331,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODE_MODIFIED_DATE_LABEL="Modified Date"
|
|||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NEW="A New Custom Code"
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NEW="A New Custom Code"
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_DESCRIPTION="<span id='jcb-placeholder'><code>[save to see placeholder]</code></span><br />You can also pass values to this code like this: <span id='jcb-placeholder-arg'><code>[save to see placeholder trick]</code></span> <br />Those values will be replace placeholders called args. These placeholders are zero based and should look like this: [[[arg0]]], [[[arge1]]] ... as many as you like. If you use 5 args in your code, you must always pass 5 values, since they are zero based your fifth arg will look like this [[[arg4]]]<br />Please note that you can not use this placeholder in other custom code views, but in all other custom code areas in JCB found in other views like the admin, site and custom admin views.<br />Another important note, all code with args will not be reversed updated from the changes in the editor out side of JCB at this time, since that will remove all the arg placeholders this means you will only be able to update the code here in the JCB UI. <br />This note will change once we have resolved these limitations."
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_DESCRIPTION="<span id='jcb-placeholder'><code>[save to see placeholder]</code></span><br />You can also pass values to this code like this: <span id='jcb-placeholder-arg'><code>[save to see placeholder trick]</code></span> <br />Those values will be replace placeholders called args. These placeholders are zero based and should look like this: [[[arg0]]], [[[arge1]]] ... as many as you like. If you use 5 args in your code, you must always pass 5 values, since they are zero based your fifth arg will look like this [[[arg4]]]<br />Please note that you can not use this placeholder in other custom code views, but in all other custom code areas in JCB found in other views like the admin, site and custom admin views.<br />Another important note, all code with args will not be reversed updated from the changes in the editor out side of JCB at this time, since that will remove all the arg placeholders this means you will only be able to update the code here in the JCB UI. <br />This note will change once we have resolved these limitations."
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_LABEL="You can use this code in any JCB code area, simply add this PlaceHolder."
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_LABEL="You can use this code in any JCB code area, simply add this PlaceHolder."
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_DESCRIPTION="<div class='span6'>
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_DESCRIPTION="<div class='form-horizontal'><div class='span6'>
|
||||||
<h1>Understand how the placeholders work in (IDE)</h1>
|
<h1>Understand how the placeholders work in (IDE)</h1>
|
||||||
<div id='phpjs-comment-info'>
|
<div id='phpjs-comment-info'>
|
||||||
<h2>Comment Type PHP/JS</h2>
|
<h2>Comment Type PHP/JS</h2>
|
||||||
@ -1442,7 +1433,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_DESCRIPTION="<div c
|
|||||||
<div id='loading-usedin' style='display: none;'><h2>Scanning Database<span class='loading-dots'>..</span></h2></div>
|
<div id='loading-usedin' style='display: none;'><h2>Scanning Database<span class='loading-dots'>..</span></h2></div>
|
||||||
<div id='note-usedin-found' style='display: none;'><small>You can edit the above areas where this code is used.</small></div>
|
<div id='note-usedin-found' style='display: none;'><small>You can edit the above areas where this code is used.</small></div>
|
||||||
<div id='note-usedin-not' style='display: none;'><small>This code is not used in any area of the JCB custom code blocks at this time.</small></div>
|
<div id='note-usedin-not' style='display: none;'><small>This code is not used in any area of the JCB custom code blocks at this time.</small></div>
|
||||||
</div>"
|
</div></div>"
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_LABEL="Information Area."
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_LABEL="Information Area."
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_NOT_REQUIRED="Not Required"
|
COM_COMPONENTBUILDER_CUSTOM_CODE_NOT_REQUIRED="Not Required"
|
||||||
COM_COMPONENTBUILDER_CUSTOM_CODE_ORDERING_LABEL="Ordering"
|
COM_COMPONENTBUILDER_CUSTOM_CODE_ORDERING_LABEL="Ordering"
|
||||||
@ -1504,6 +1495,7 @@ COM_COMPONENTBUILDER_DASHBOARD_TEMPLATE_ADD="Add Template<br /><br />"
|
|||||||
COM_COMPONENTBUILDER_DATE="Date"
|
COM_COMPONENTBUILDER_DATE="Date"
|
||||||
COM_COMPONENTBUILDER_DEBUG_LINE_NUMBERS="Debug (line numbers)"
|
COM_COMPONENTBUILDER_DEBUG_LINE_NUMBERS="Debug (line numbers)"
|
||||||
COM_COMPONENTBUILDER_DOES_THIS_PACKAGE_REQUIRE_A_KEY_TO_INSTALL="Does this package require a key to install"
|
COM_COMPONENTBUILDER_DOES_THIS_PACKAGE_REQUIRE_A_KEY_TO_INSTALL="Does this package require a key to install"
|
||||||
|
COM_COMPONENTBUILDER_DOWNLOAD="download"
|
||||||
COM_COMPONENTBUILDER_DYNAMIC_GET="Dynamic Get"
|
COM_COMPONENTBUILDER_DYNAMIC_GET="Dynamic Get"
|
||||||
COM_COMPONENTBUILDER_DYNAMIC_GETS="Dynamic Gets"
|
COM_COMPONENTBUILDER_DYNAMIC_GETS="Dynamic Gets"
|
||||||
COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS="Dynamic Gets Access"
|
COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS="Dynamic Gets Access"
|
||||||
@ -2118,6 +2110,7 @@ COM_COMPONENTBUILDER_FIELD_XML_LABEL="XML field definition (Please set the field
|
|||||||
COM_COMPONENTBUILDER_FIELD_YES="Yes"
|
COM_COMPONENTBUILDER_FIELD_YES="Yes"
|
||||||
COM_COMPONENTBUILDER_FIELD_ZERO="0"
|
COM_COMPONENTBUILDER_FIELD_ZERO="0"
|
||||||
COM_COMPONENTBUILDER_FORCE_LOCAL_UPDATE="Force Local Update"
|
COM_COMPONENTBUILDER_FORCE_LOCAL_UPDATE="Force Local Update"
|
||||||
|
COM_COMPONENTBUILDER_GET_THE_KEY_FROM_BSB_FOR_A_CLASSBTN_BTNPRIMARY_HREFS_TARGET_BLANK_TITLEGET_A_KEY_FROM_SSA="Get the key from <b>%s</b> for <a class="btn btn-primary" href="%s" target="_blank" title="get a key from %s">%s</a>"
|
||||||
COM_COMPONENTBUILDER_GLOBAL="Global"
|
COM_COMPONENTBUILDER_GLOBAL="Global"
|
||||||
COM_COMPONENTBUILDER_GREAT_THIS_FUNCTION_NAME_WILL_WORK="Great, this function name will work!"
|
COM_COMPONENTBUILDER_GREAT_THIS_FUNCTION_NAME_WILL_WORK="Great, this function name will work!"
|
||||||
COM_COMPONENTBUILDER_HELP_DOCUMENT="Help Document"
|
COM_COMPONENTBUILDER_HELP_DOCUMENT="Help Document"
|
||||||
@ -2283,6 +2276,7 @@ COM_COMPONENTBUILDER_IMPORT_TITLE="Data Importer"
|
|||||||
COM_COMPONENTBUILDER_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE="Package to import not found."
|
COM_COMPONENTBUILDER_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE="Package to import not found."
|
||||||
COM_COMPONENTBUILDER_IMPORT_UPDATE_DATA="Import Data"
|
COM_COMPONENTBUILDER_IMPORT_UPDATE_DATA="Import Data"
|
||||||
COM_COMPONENTBUILDER_IMPORT_UPLOAD_BOTTON="Upload File"
|
COM_COMPONENTBUILDER_IMPORT_UPLOAD_BOTTON="Upload File"
|
||||||
|
COM_COMPONENTBUILDER_ISSUE="issue"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT="Joomla Component"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT="Joomla Component"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS="Joomla Components"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS="Joomla Components"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS="Joomla Components Access"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS="Joomla Components Access"
|
||||||
@ -2564,12 +2558,20 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXIT="Exit"
|
|||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPAND="Expand"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPAND="Expand"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPAND_TWO="Expand 2"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPAND_TWO="Expand 2"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPIRED="Expired"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPIRED="Expired"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_BUY_LINK="Export Buy Link"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_BUY_LINK_DESCRIPTION="Enter link where your JCB package key can be bought."
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_BUY_LINK_HINT="http://www.example.com/buy-keys"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_BUY_LINK_LABEL="Buy Link<br /><small>(to get key)</small>"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_COMPONENTS_BUTTON_ACCESS="Joomla Component Export Components Button Access"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_COMPONENTS_BUTTON_ACCESS="Joomla Component Export Components Button Access"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_COMPONENTS_BUTTON_ACCESS_DESC=" Allows the users in this group to access the export components button."
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_COMPONENTS_BUTTON_ACCESS_DESC=" Allows the users in this group to access the export components button."
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY="Export Key"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY="Export Key"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_DESCRIPTION="The key used to lock the data during export."
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_DESCRIPTION="The key used to lock the data during export."
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_HINT="Export Key Here"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_HINT="Export Key Here"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_LABEL="Export Key<br /><small>(encrypted field)</small>"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_KEY_LABEL="Export Key<br /><small>(encrypted field)</small>"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_PACKAGE_LINK="Export Package Link"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_PACKAGE_LINK_DESCRIPTION="Enter link where you latest JCB package can be found"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_PACKAGE_LINK_HINT="http://www.example.com/buy-package"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_PACKAGE_LINK_LABEL="Package Link<br /><small>(to get updated package)</small>"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EYE_CLOSE="Eye Close"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EYE_CLOSE="Eye Close"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EYE_OPEN="Eye Open"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EYE_OPEN="Eye Open"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_FEATURED="Featured"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_FEATURED="Featured"
|
||||||
@ -2636,6 +2638,8 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMPORT_COMPONENTS_BUTTON_ACCESS="Joomla Co
|
|||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMPORT_COMPONENTS_BUTTON_ACCESS_DESC=" Allows the users in this group to access the import components button."
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMPORT_COMPONENTS_BUTTON_ACCESS_DESC=" Allows the users in this group to access the import components button."
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_INFO="Info"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_INFO="Info"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_INFO_CIRCLE="Info Circle"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_INFO_CIRCLE="Info Circle"
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_JCB_EXPORT_PACKAGE_NOTE_DESCRIPTION="The settings below are used when you export this component as a JCB Package, for more info on how this works please review the following tutorial (<a href='https://youtu.be/lkE0ZiSWufg' target='_blank'>https://youtu.be/lkE0ZiSWufg</a>)."
|
||||||
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_JCB_EXPORT_PACKAGE_NOTE_LABEL="JCB Package Export Settings"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_JOOMLA="Joomla"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_JOOMLA="Joomla"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_KEY="Key"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_KEY="Key"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_LAMP="Lamp"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_LAMP="Lamp"
|
||||||
@ -2764,8 +2768,9 @@ Project duration: **###projectWeekTime### weeks** or **###projectMonthTime### mo
|
|||||||
## Donations<br />
|
## Donations<br />
|
||||||
<br />
|
<br />
|
||||||
If you want to support this project, please consider donating:<br />
|
If you want to support this project, please consider donating:<br />
|
||||||
* PayPal: pay@vdm.io<br />
|
* PayPal: [paypal.me/payvdm](https://www.paypal.me/payvdm)<br />
|
||||||
* Bitcoin: 3H35PYwikEosvcjxHXGPLS1GufZ4b4iFu3
|
* Bitcoin: 1N45VjnZSNmDK64xRrQYGRRi56rgpnze3s<br />
|
||||||
|
* Ethereum: 0x243392daa3c9c8bc841fcacf7c7f72541cb16823
|
||||||
</code></div>"
|
</code></div>"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_README_LABEL="Demo README (with all place-holders)"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_README_LABEL="Demo README (with all place-holders)"
|
||||||
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_UPDATE_SERVER_NOTE_FTP_DESCRIPTION="Add your FTP signature in the given field and during compilation the file will be moved to the FTP folder. You still need to point the above <b>update server</b> url to the xml file on your FTP server for it to work correctly.<br /><b>Here are the details of the signature:</b><br /> string $host = '127.0.0.1'<br /> string $port = '21'<br /> array $options = array()<br /> string $user = null<br /> string $pass = null<br /> OPTIONS = Array with any of these options:<br /> type=>[FTP_AUTOASCII|FTP_ASCII|FTP_BINARY]<br /> timeout=>(int)<br /><b>Here is an example signature:</b><br /><code>host=HOSTNAME&port=PORT_INT&options[type]=FTP_BINARY&options[timeout]=15&username=user@name.com&password=password</code>"
|
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_UPDATE_SERVER_NOTE_FTP_DESCRIPTION="Add your FTP signature in the given field and during compilation the file will be moved to the FTP folder. You still need to point the above <b>update server</b> url to the xml file on your FTP server for it to work correctly.<br /><b>Here are the details of the signature:</b><br /> string $host = '127.0.0.1'<br /> string $port = '21'<br /> array $options = array()<br /> string $user = null<br /> string $pass = null<br /> OPTIONS = Array with any of these options:<br /> type=>[FTP_AUTOASCII|FTP_ASCII|FTP_BINARY]<br /> timeout=>(int)<br /><b>Here is an example signature:</b><br /><code>host=HOSTNAME&port=PORT_INT&options[type]=FTP_BINARY&options[timeout]=15&username=user@name.com&password=password</code>"
|
||||||
@ -3155,6 +3160,8 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_VERSION_DESC="A count of the number of
|
|||||||
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_VERSION_LABEL="Revision"
|
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_VERSION_LABEL="Revision"
|
||||||
COM_COMPONENTBUILDER_LANGUAGE_VERSION_DESC="A count of the number of times this Language has been revised."
|
COM_COMPONENTBUILDER_LANGUAGE_VERSION_DESC="A count of the number of times this Language has been revised."
|
||||||
COM_COMPONENTBUILDER_LANGUAGE_VERSION_LABEL="Revision"
|
COM_COMPONENTBUILDER_LANGUAGE_VERSION_LABEL="Revision"
|
||||||
|
COM_COMPONENTBUILDER_LAST_FEW_RELEASES_FROM_GITHUB_IS_LOADING="Last few releases from Github is loading"
|
||||||
|
COM_COMPONENTBUILDER_LATEST_RELEASE="Latest Release"
|
||||||
COM_COMPONENTBUILDER_LAYOUT="Layout"
|
COM_COMPONENTBUILDER_LAYOUT="Layout"
|
||||||
COM_COMPONENTBUILDER_LAYOUTS="Layouts"
|
COM_COMPONENTBUILDER_LAYOUTS="Layouts"
|
||||||
COM_COMPONENTBUILDER_LAYOUTS_ACCESS="Layouts Access"
|
COM_COMPONENTBUILDER_LAYOUTS_ACCESS="Layouts Access"
|
||||||
@ -3266,7 +3273,12 @@ COM_COMPONENTBUILDER_NO="No"
|
|||||||
COM_COMPONENTBUILDER_NOTRANSLATION="no-translation"
|
COM_COMPONENTBUILDER_NOTRANSLATION="no-translation"
|
||||||
COM_COMPONENTBUILDER_NO_ACCESS_GRANTED="No Access Granted!"
|
COM_COMPONENTBUILDER_NO_ACCESS_GRANTED="No Access Granted!"
|
||||||
COM_COMPONENTBUILDER_NO_COMPONENTS_WERE_SELECTED_PLEASE_MAKE_A_SELECTION_AND_TRY_AGAIN="No components were selected, please make a selection and try again!"
|
COM_COMPONENTBUILDER_NO_COMPONENTS_WERE_SELECTED_PLEASE_MAKE_A_SELECTION_AND_TRY_AGAIN="No components were selected, please make a selection and try again!"
|
||||||
COM_COMPONENTBUILDER_OPENED_BY="opened by"
|
COM_COMPONENTBUILDER_ON_GITHUB="on Github"
|
||||||
|
COM_COMPONENTBUILDER_OPEN="Open"
|
||||||
|
COM_COMPONENTBUILDER_OPENED="opened"
|
||||||
|
COM_COMPONENTBUILDER_OPENED_THIS="opened this"
|
||||||
|
COM_COMPONENTBUILDER_OPEN_ON_GITHUB="Open on Github"
|
||||||
|
COM_COMPONENTBUILDER_OUT_OF_DATE="Out of date"
|
||||||
COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS="Package Owner Details"
|
COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS="Package Owner Details"
|
||||||
COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS_NOT_FOUND="Package owner details not found!"
|
COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS_NOT_FOUND="Package owner details not found!"
|
||||||
COM_COMPONENTBUILDER_PACKAGE_OWNER_NOT_SET="Package Owner Not Set"
|
COM_COMPONENTBUILDER_PACKAGE_OWNER_NOT_SET="Package Owner Not Set"
|
||||||
@ -3277,6 +3289,7 @@ COM_COMPONENTBUILDER_PLEASE_CHECK_AGAIN_LATTER="Please check again latter."
|
|||||||
COM_COMPONENTBUILDER_PLEASE_SELECT_A_COMPONENT_THAT_YOU_WOULD_LIKE_TO_COMPILE="Please select a component that you would like to compile."
|
COM_COMPONENTBUILDER_PLEASE_SELECT_A_COMPONENT_THAT_YOU_WOULD_LIKE_TO_COMPILE="Please select a component that you would like to compile."
|
||||||
COM_COMPONENTBUILDER_PLEASE_WAIT_CLEARING_THE_TMP_FOLDER="Please wait! Clearing the tmp folder"
|
COM_COMPONENTBUILDER_PLEASE_WAIT_CLEARING_THE_TMP_FOLDER="Please wait! Clearing the tmp folder"
|
||||||
COM_COMPONENTBUILDER_READY_TO_COMPILE_A_COMPONENT="Ready to compile a component"
|
COM_COMPONENTBUILDER_READY_TO_COMPILE_A_COMPONENT="Ready to compile a component"
|
||||||
|
COM_COMPONENTBUILDER_RELEASED_THIS="released this"
|
||||||
COM_COMPONENTBUILDER_RESPOND_TO_THIS_ISSUE_ON_GITHUB="Respond to this issue on Github"
|
COM_COMPONENTBUILDER_RESPOND_TO_THIS_ISSUE_ON_GITHUB="Respond to this issue on Github"
|
||||||
COM_COMPONENTBUILDER_REVIEW_THIS_ISSUE_ON_GITHUB="Review this issue on Github"
|
COM_COMPONENTBUILDER_REVIEW_THIS_ISSUE_ON_GITHUB="Review this issue on Github"
|
||||||
COM_COMPONENTBUILDER_SAVE_SUCCESS="Great! Item successfully saved."
|
COM_COMPONENTBUILDER_SAVE_SUCCESS="Great! Item successfully saved."
|
||||||
@ -3950,14 +3963,18 @@ COM_COMPONENTBUILDER_THE_PACKAGE_KEY_IS_CODESCODE="The package key is: <code>%s<
|
|||||||
COM_COMPONENTBUILDER_THE_README_IS_LOADING="The readme is loading"
|
COM_COMPONENTBUILDER_THE_README_IS_LOADING="The readme is loading"
|
||||||
COM_COMPONENTBUILDER_THE_WIKI_IS_LOADING="The wiki is loading"
|
COM_COMPONENTBUILDER_THE_WIKI_IS_LOADING="The wiki is loading"
|
||||||
COM_COMPONENTBUILDER_THIS_PACKAGE_HAS_NO_KEY="This package has no key."
|
COM_COMPONENTBUILDER_THIS_PACKAGE_HAS_NO_KEY="This package has no key."
|
||||||
|
COM_COMPONENTBUILDER_TOTAL_DOWNLOADS="total downloads"
|
||||||
COM_COMPONENTBUILDER_TO_CHANGE_THE_PACKAGE_OWNER_DEFAULTS_OPEN_THE_BJCB_GLOBAL_OPTIONSB_GO_TO_THE_BCOMPANYB_TAB_AND_ADD_THE_CORRECT_COMPANY_DETAILS_THERE="To change the package owner defaults. Open the <b>JCB Global Options</b>, go to the <b>Company</b> tab and add the correct company details there."
|
COM_COMPONENTBUILDER_TO_CHANGE_THE_PACKAGE_OWNER_DEFAULTS_OPEN_THE_BJCB_GLOBAL_OPTIONSB_GO_TO_THE_BCOMPANYB_TAB_AND_ADD_THE_CORRECT_COMPANY_DETAILS_THERE="To change the package owner defaults. Open the <b>JCB Global Options</b>, go to the <b>Company</b> tab and add the correct company details there."
|
||||||
COM_COMPONENTBUILDER_TRANSLATION="Translation"
|
COM_COMPONENTBUILDER_TRANSLATION="Translation"
|
||||||
|
COM_COMPONENTBUILDER_UP_TO_DATE="Up to date"
|
||||||
|
COM_COMPONENTBUILDER_USED_IN="used in"
|
||||||
COM_COMPONENTBUILDER_USE_BATCH="Use Batch"
|
COM_COMPONENTBUILDER_USE_BATCH="Use Batch"
|
||||||
COM_COMPONENTBUILDER_USE_BATCH_DESC=" Allows users in this group to use batch copy/update method."
|
COM_COMPONENTBUILDER_USE_BATCH_DESC=" Allows users in this group to use batch copy/update method."
|
||||||
COM_COMPONENTBUILDER_USE_KEY="Use Key"
|
COM_COMPONENTBUILDER_USE_KEY="Use Key"
|
||||||
COM_COMPONENTBUILDER_VDM_NOTICE_BOARD="VDM Notice Board"
|
COM_COMPONENTBUILDER_VDM_NOTICE_BOARD="VDM Notice Board"
|
||||||
COM_COMPONENTBUILDER_VERSION="Version"
|
COM_COMPONENTBUILDER_VERSION="Version"
|
||||||
COM_COMPONENTBUILDER_VIEW_MORE_ISSUES_ON_GITHUB="View more issues on Github"
|
COM_COMPONENTBUILDER_VIEW_MORE_ISSUES_ON_GITHUB="View more issues on Github"
|
||||||
|
COM_COMPONENTBUILDER_VIEW_MORE_RELEASES_ON_GITHUB="View more releases on Github"
|
||||||
COM_COMPONENTBUILDER_WEBSITE="Website"
|
COM_COMPONENTBUILDER_WEBSITE="Website"
|
||||||
COM_COMPONENTBUILDER_YES="Yes"
|
COM_COMPONENTBUILDER_YES="Yes"
|
||||||
COM_COMPONENTBUILDER_YOUR_DATA_IS_ENCRYPTED_WITH_A_AES_ONE_HUNDRED_AND_TWENTY_EIGHT_BIT_ENCRYPTION_USING_THE_ABOVE_THIRTY_TWO_CHARACTER_KEYBR_WITHOUT_THIS_KEY_IT_WILL_TAKE_THE_CURRENT_TECHNOLOGY_WITH_A_BRUTE_FORCE_ATTACK_METHOD_MORE_THEN_A_HREFHTTPRANDOMIZECOMHOWLONGTOHACKPASS_TARGET_BLANK_TITLEHOW_LONG_TO_HACK_PASSSEVEN_HUNDRED_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZEROA_YEARS_TO_CRACK_THEORETICALLY="Your data is encrypted with a AES 128 bit encryption using the above 32 character key.<br />Without this key it will take the current technology with a brute force attack method more then <a href="http://random-ize.com/how-long-to-hack-pass/" target="_blank" title="How long to hack pass">700 000 000 000 000 000 000 000 000 000 000</a> years to crack theoretically."
|
COM_COMPONENTBUILDER_YOUR_DATA_IS_ENCRYPTED_WITH_A_AES_ONE_HUNDRED_AND_TWENTY_EIGHT_BIT_ENCRYPTION_USING_THE_ABOVE_THIRTY_TWO_CHARACTER_KEYBR_WITHOUT_THIS_KEY_IT_WILL_TAKE_THE_CURRENT_TECHNOLOGY_WITH_A_BRUTE_FORCE_ATTACK_METHOD_MORE_THEN_A_HREFHTTPRANDOMIZECOMHOWLONGTOHACKPASS_TARGET_BLANK_TITLEHOW_LONG_TO_HACK_PASSSEVEN_HUNDRED_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZERO_ZEROA_YEARS_TO_CRACK_THEORETICALLY="Your data is encrypted with a AES 128 bit encryption using the above 32 character key.<br />Without this key it will take the current technology with a brute force attack method more then <a href="http://random-ize.com/how-long-to-hack-pass/" target="_blank" title="How long to hack pass">700 000 000 000 000 000 000 000 000 000 000</a> years to crack theoretically."
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage css_fullwidth.php
|
@subpackage css_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_buttons_fullwidth.php
|
@subpackage custom_buttons_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_buttons_left.php
|
@subpackage custom_buttons_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_import_fullwidth.php
|
@subpackage custom_import_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage fields_fullwidth.php
|
@subpackage fields_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage javascript_fullwidth.php
|
@subpackage javascript_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage linked_components_fullwidth.php
|
@subpackage linked_components_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage mysql_fullwidth.php
|
@subpackage mysql_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage mysql_left.php
|
@subpackage mysql_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage php_fullwidth.php
|
@subpackage php_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publishing.php
|
@subpackage publishing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publlshing.php
|
@subpackage publlshing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage settings_above.php
|
@subpackage settings_above.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage settings_left.php
|
@subpackage settings_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage settings_right.php
|
@subpackage settings_right.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage settings_under.php
|
@subpackage settings_under.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage batchselection.php
|
@subpackage batchselection.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_buttons_fullwidth.php
|
@subpackage custom_buttons_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_buttons_left.php
|
@subpackage custom_buttons_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage custom_script_fullwidth.php
|
@subpackage custom_script_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_above.php
|
@subpackage details_above.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_fullwidth.php
|
@subpackage details_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_left.php
|
@subpackage details_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_right.php
|
@subpackage details_right.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_rightside.php
|
@subpackage details_rightside.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_under.php
|
@subpackage details_under.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage linked_components_fullwidth.php
|
@subpackage linked_components_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publishing.php
|
@subpackage publishing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publlshing.php
|
@subpackage publlshing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_above.php
|
@subpackage details_above.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_fullwidth.php
|
@subpackage details_fullwidth.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_left.php
|
@subpackage details_left.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_right.php
|
@subpackage details_right.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage details_under.php
|
@subpackage details_under.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publishing.php
|
@subpackage publishing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage publlshing.php
|
@subpackage publlshing.php
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
|_|
|
|_|
|
||||||
/-------------------------------------------------------------------------------------------------------------------------------/
|
/-------------------------------------------------------------------------------------------------------------------------------/
|
||||||
|
|
||||||
@version 2.4.2
|
@version 2.4.8
|
||||||
@build 6th April, 2017
|
@build 3rd July, 2017
|
||||||
@created 30th April, 2015
|
@created 30th April, 2015
|
||||||
@package Component Builder
|
@package Component Builder
|
||||||
@subpackage abacus_fullwidth.php
|
@subpackage abacus_fullwidth.php
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user