Compare commits

...

18 Commits

Author SHA1 Message Date
33f3bb5652 Added lots more demo data on Github to help demonstrate the ease of use. Adding feature to insert custom scripting during install. Adding easy issue tracking, and member notice board. Many bug fixes, to the compiler and general improvements. 2016-10-24 00:48:26 +02:00
ecb3ab5af9 Added custom buttons to admin views, improved the compiler code, with some bug fixes 2016-09-11 17:27:04 +02:00
8fbd4f8701 Added the updating sql files, sorry! 2016-09-07 23:37:07 +02:00
b8311078ac Added PHP (script - before publish) & PHP (script - after publish)
with some fixes to the compiler
2016-09-07 23:20:58 +02:00
f8d5145af9 Bug fix to getCustomScriptBuilder sig 2016-09-04 00:14:54 +01:00
a7e641b499 Added another PHP field to the admin views, improved the custom code methods in the compiler, and fixed some permissional errors. 2016-09-03 22:44:47 +01:00
675ecece84 Compiled update 2016-08-29 20:46:01 +01:00
f76587361b Fixed #14 the sql field type build method 2016-07-17 11:24:51 +01:00
2f9e54e371 Resolved #9 Layout Issue - Custom Lookup Field. 2016-07-12 22:07:55 +01:00
53cf534664 Fixed image link in readme.md 2016-06-28 05:27:09 +01:00
5567ca6856 New Release 2016-06-27 12:12:29 +01:00
7546e9aceb New Release 2016-06-27 12:05:53 +01:00
f09fd06ddc Removed $_GET from all callback response and used JInput instead 2016-06-24 15:23:01 +01:00
2004b8d91c Made some improvements to the compiler and extended the email helper features. 2016-06-23 16:05:37 +01:00
d82d4aeb22 Added email helper class. 2016-06-03 07:28:32 +01:00
5cd07f3b88 Removed the PDF lib since it made the installer to big for most servers. We will setup an another lib installer for the PDF library. 2016-06-02 17:34:46 +01:00
5d19f46070 Added the option to overwrite the default-fields, so you can add them to the list view in admin area and change their layout position in the edit view. Also fixed some minor bugs. 2016-06-02 17:18:49 +01:00
02f9523e1b Fixed fade-in affect problem of not loading the affect when added. 2016-05-31 06:36:31 +01:00
659 changed files with 14270 additions and 98407 deletions

126
README.md
View File

@ -1,44 +1,120 @@
# Component Builder (2.1.10)
# ###Component_name### (###VERSION###)
This is a [Joomla 3.x] (http://www.joomla.org/) component.
This is a [Joomla 3.x](http://www.joomla.org/) component.
![Component Builder image] (https://raw.githubusercontent.com/vdm-io/Joomla-Component-Builder/master/admin/assets/images/component-300.png "The Component Builder")
![###Component_name### image](https://raw.githubusercontent.com/vdm-io/Joomla-Component-Builder/master/admin/assets/images/component-300.jpg "The ###Component_name###")
The Component Builder for Joomla that is highly advanced, truly able to build extremely complex components in a fraction of the time.
###DESCRIPTION###
> **You can purchase demo content inside Component Builder:**
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 (###VERSION###) with **ALL** its features and **ALL** concepts totally open-source and free!
+ **Development Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
Once installed upgrades are quick and easy via the default Joomla upgrade area.
*Help View Integration*
# Some of the Features
*Demo Component* see the build on [github] (https://github.com/namibia/demo-joomla-3-component)
+ Adding mySQL Dump to any View/Table.
+ Grab existing Table data and build a dynamic dump.
+ Unlimited Joomla Components.
+ Unlimited Tables/Views.
+ Reusing Views and Fields.
+ Runs on Your Own Joomla Install.
+ Add Dynamic/custom back-end views that uses Table and Chart result sets.
+ Build data query of extreme complex nature to use in Dynamic/custom views.
+ Highly Dynamic/custom Front-end Structures.
+ Dynamically setup templates and layouts for Front-end design.
+ Integration of the excellent UIKIT lib.
+ Integration of the excellent FOOTABLE lib.
+ All Joomla Standard Field Types (including repeatable fields).
+ Strong Implementation of all Joomla Form Security.
+ Load data via ajax with ease.
+ You can add an Update Server to Components you build.
+ Build advanced Dynamic front-end forms.
+ Dynamic data queries from multiple tables.
+ Place in local GIT folder, and publish to sales server.
+ Include any amount of custom files and folders during build.
+ Static helper class with smart methods already included.
+ Static helper methods Can easily be added.
+ Direct install from complier view.
+ Integrative with native Joomla Categories and Tags.
+ Fully Dynamic Search Friendly URL Auto Implementation.
+ Custom scripting options all over the MVC structure.
+ Permission implementation down to each view, item and field.
+ Easy extendible to include other libraries.
+ Can include SQL and visioning update link to distribute your component updates via Joomla default upgrade of components.
+ Easy Export & Import addon to all backend-tables.
+ Overriding ability of import concepts in all backend-tables.
+ The Batch and Filter implementation on all backend-list views.
+ This and much much more are all possible with this component builder!
+ **Dev + Howtos Version** ([get this demo set](https://www.vdm.io/joomla-component-builder))
# Just Imagine
*All the above*
+ Your Component Back-end can be more advanced then the Joomla Article Manager.
+ Your Code as Perfectly Unified to the strict Joomla Standards.
+ Adding Custom Scripting almost anywhere in the MVC structure.
+ Import and export feature to all backend-views.
+ Batch copy and move/update feature for all backend-views.
+ History tracking per/change made on any back-end item.
+ Dynamic field control, to show and hide fields in amazing ways.
+ Front-end freedom of design that allows for any library to be used.
+ This and much much more are all possible with this component builder!
*Sermon Distributor* see the build on [github] (https://github.com/SermonDistributor/Joomla-3-Component)
# You are in Control
*Training & Help Videos* tutorials in the component included.
+ You can change the licensing template for your components.
+ You can change/improve existing field types and add more.
+ Line numbers to show where in compiler was the code build.
+ You can improve the component since all code are open-source.
+ You need only pay us once and use the component forever.
+ You can dynamically add internal help structures to all component.
+ There is no limitations on how big or how much you want to build (server limitation only).
+ This is a complete factory kind of component that functions like a deployment hub.
+ This and much much more are all possible with this component builder!
# Get Access to Video Tutorials
> **You can purchase more demo content for ###Component_name### including access to training & help video tutorials:**
+ Demo Component* see the build on [github](https://github.com/namibia/demo-joomla-3-component)
+ Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component)
+ Help View Integration*
+ Training & Help Videos* tutorials in the component included.
[**GET ACCESS NOW!**](https://www.vdm.io/joomla-component-builder#get)
# gitHub Support
Would you require more help please open and issue here on [gitHub today](https://github.com/vdm-io/Joomla-Component-Builder/issues)!
# WHY GIVE IT AWAY LIKE THIS?
> I am an Open Source Enthusiast
> Who Support the Joomla Community
My idea was to almost let this tool serve as a cheat sheet to how things can be done... and with the help of other developers (more advanced then me) end up formulating the way how things not only can, but must be done to insure secure, stable, scalable and maintainable code is produced.
# MAKING IT BETTER!
Component Builder is mapped as a component in itself on my local development environment. So I am improving it like you would any other component in it. I am looking for developers with the **skill** and the **desire** to really join me... and then I will possible give them access to this, so we can all help improve this simple, yet advanced tool.
# Build Details
+ *Company*: [Vast Development Method] (https://www.vdm.io/joomla-component-builder)
+ *Author*: [Llewellyn van der Merwe] (mailto:info@vdm.io)
+ *Name*: [Component Builder] (https://www.vdm.io/joomla-component-builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 31st May, 2016
+ *Version*: 2.1.10
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+ *Line count*: **82827**
+ *File count*: **503**
+ *Folder count*: **99**
+ *Company*: [###COMPANYNAME###](###AUTHORWEBSITE###)
+ *Author*: [###AUTHOR###](mailto:###AUTHOREMAIL###)
+ *Name*: [###Component_name###](###AUTHORWEBSITE###)
+ *First Build*: ###CREATIONDATE###
+ *Last Build*: ###BUILDDATE###
+ *Version*: ###VERSION###
+ *Copyright*: ###COPYRIGHT###
+ *License*: ###LICENSE###
+ *Line count*: **###LINE_COUNT###**
+ *File count*: **###FILE_COUNT###**
+ *Folder count*: **###FOLDER_COUNT###**
> This **component** was build with a Joomla [Automated Component Builder] (https://www.vdm.io/joomla-component-builder).
> Developed by [Llewellyn van der Merwe] (mailto:joomla@vdm.io)
> This **component** was build with a Joomla [Automated Component Builder](https://www.vdm.io/joomla-component-builder).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)
## Donations
If you want to support this project, please consider donating:
* PayPal: pay@vdm.io
* Bitcoin: 3H35PYwikEosvcjxHXGPLS1GufZ4b4iFu3

122
admin/README.txt Normal file
View File

@ -0,0 +1,122 @@
# Component Builder (2.2.0)
This is a [Joomla 3.x](http://www.joomla.org/) component.
![Component Builder image](https://raw.githubusercontent.com/vdm-io/Joomla-Component-Builder/master/admin/assets/images/component-300.jpg "The Component Builder")
The Component Builder for [Joomla](http://www.joomla.org/) that is highly advanced, truly able to build extremely complex components in a fraction of the time.
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.2.0) 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.
# Some of the Features
+ Adding mySQL Dump to any View/Table.
+ Grab existing Table data and build a dynamic dump.
+ Unlimited Joomla Components.
+ Unlimited Tables/Views.
+ Reusing Views and Fields.
+ Runs on Your Own Joomla Install.
+ Add Dynamic/custom back-end views that uses Table and Chart result sets.
+ Build data query of extreme complex nature to use in Dynamic/custom views.
+ Highly Dynamic/custom Front-end Structures.
+ Dynamically setup templates and layouts for Front-end design.
+ Integration of the excellent UIKIT lib.
+ Integration of the excellent FOOTABLE lib.
+ All Joomla Standard Field Types (including repeatable fields).
+ Strong Implementation of all Joomla Form Security.
+ Load data via ajax with ease.
+ You can add an Update Server to Components you build.
+ Build advanced Dynamic front-end forms.
+ Dynamic data queries from multiple tables.
+ Place in local GIT folder, and publish to sales server.
+ Include any amount of custom files and folders during build.
+ Static helper class with smart methods already included.
+ Static helper methods Can easily be added.
+ Direct install from complier view.
+ Integrative with native Joomla Categories and Tags.
+ Fully Dynamic Search Friendly URL Auto Implementation.
+ Custom scripting options all over the MVC structure.
+ Permission implementation down to each view, item and field.
+ Easy extendible to include other libraries.
+ Can include SQL and visioning update link to distribute your component updates via Joomla default upgrade of components.
+ Easy Export & Import addon to all backend-tables.
+ Overriding ability of import concepts in all backend-tables.
+ The Batch and Filter implementation on all backend-list views.
+ This and much much more are all possible with this component builder!
# Just Imagine
+ Your Component Back-end can be more advanced then the Joomla Article Manager.
+ Your Code as Perfectly Unified to the strict Joomla Standards.
+ Adding Custom Scripting almost anywhere in the MVC structure.
+ Import and export feature to all backend-views.
+ Batch copy and move/update feature for all backend-views.
+ History tracking per/change made on any back-end item.
+ Dynamic field control, to show and hide fields in amazing ways.
+ Front-end freedom of design that allows for any library to be used.
+ This and much much more are all possible with this component builder!
# You are in Control
+ You can change the licensing template for your components.
+ You can change/improve existing field types and add more.
+ Line numbers to show where in compiler was the code build.
+ You can improve the component since all code are open-source.
+ You need only pay us once and use the component forever.
+ You can dynamically add internal help structures to all component.
+ There is no limitations on how big or how much you want to build (server limitation only).
+ This is a complete factory kind of component that functions like a deployment hub.
+ This and much much more are all possible with this component builder!
# Get Access to Video Tutorials
> **You can purchase more demo content 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)
+ Sermon Distributor* see the build on [github](https://github.com/SermonDistributor/Joomla-3-Component)
+ Help View Integration*
+ Training & Help Videos* tutorials in the component included.
[**GET ACCESS NOW!**](https://www.vdm.io/joomla-component-builder#get)
# gitHub Support
Would you require more help please open and issue here on [gitHub today](https://github.com/vdm-io/Joomla-Component-Builder/issues)!
# WHY GIVE IT AWAY LIKE THIS?
> I am an Open Source Enthusiast
> Who Support the Joomla Community
My idea was to almost let this tool serve as a cheat sheet to how things can be done... and with the help of other developers (more advanced then me) end up formulating the way how things not only can, but must be done to insure secure, stable, scalable and maintainable code is produced.
# MAKING IT BETTER!
Component Builder is mapped as a component in itself on my local development environment. So I am improving it like you would any other component in it. I am looking for developers with the **skill** and the **desire** to really join me... and then I will possible give them access to this, so we can all help improve this simple, yet advanced tool.
# Build Details
+ *Company*: [Vast Development Method](https://www.vdm.io/joomla-component-builder)
+ *Author*: [Llewellyn van der Merwe](mailto:info@vdm.io)
+ *Name*: [Component Builder](https://www.vdm.io/joomla-component-builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 23rd October, 2016
+ *Version*: 2.2.0
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+ *Line count*: **85920**
+ *File count*: **537**
+ *Folder count*: **99**
> This **component** was build with a Joomla [Automated Component Builder](https://www.vdm.io/joomla-component-builder).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)
## Donations
If you want to support this project, please consider donating:
* PayPal: pay@vdm.io
* Bitcoin: 3H35PYwikEosvcjxHXGPLS1GufZ4b4iFu3

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage admin.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage admin_view.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage admin_views.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage component.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage components.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage custom_admin_view.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage custom_admin_views.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage dashboard.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_get.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_gets.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage field.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fields.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fieldtype.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fieldtypes.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage help_document.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage help_documents.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage layout.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage layouts.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage site_view.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage site_views.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage snippet.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage snippets.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage template.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -9,13 +9,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage templates.css
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

View File

@ -1,17 +0,0 @@
/*----------------------------------------------------------------------------------| www.giz.de |----/
###COMPANYNAME###
/-------------------------------------------------------------------------------------------------------/
@version ###VERSION###
@build ###BUILDDATE###
@created ###CREATIONDATE###
@package ###Component_name###
@subpackage ###FILENAME###
@author ###AUTHOR### <###AUTHORWEBSITE###>
@owner ###COMPANYNAME###
@copyright ###COPYRIGHT###
@license ###LICENSE###
/-------------------------------------------------------------------------------------------------------/
###SHORT_DESCRIPTION###
/------------------------------------------------------------------------------------------------------*/

View File

@ -7,7 +7,7 @@
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
| |
|_|
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@package Component Builder
@ -16,9 +16,9 @@
@my wife Roline van der Merwe <http://www.vdm.io/>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
Builds Complex Joomla Components
Builds Complex Joomla Components
/-----------------------------------------------------------------------------------------------------------------------------*/
// No direct access to this file
@ -102,9 +102,15 @@ abstract class ###Component###Helper
$db = JFactory::getDbo();
// Create a new query object.
$query = $db->getQuery(true);
$query->select($db->quoteName(array($what)));
$query->from($db->quoteName('#__'.$main.'_'.$table));
if (empty($table))
{
$query->from($db->quoteName('#__'.$main));
}
else
{
$query->from($db->quoteName('#__'.$main.'_'.$table));
}
if (is_numeric($where))
{
$query->where($db->quoteName($whereString) . ' '.$operator.' '.(int) $where);
@ -480,7 +486,7 @@ abstract class ###Component###Helper
if (!$asset->check() || !$asset->store())
{
JError::raiseWarning(500, $asset->getError());
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false;
}
else

View File

@ -1,13 +1,25 @@
<?php
/**
*
*@version 2.0.0 - September 03, 2014
*@package Component Builder
*@author Llewellyn van de Merwe <http://www.vdm.io>
*@copyright Copyright (C) 2014. All Rights Reserved
*@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
*
**/
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
__ __ _ _____ _ _ __ __ _ _ _
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
| |
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@package Component Builder
@subpackage componentbuilder.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
Builds Complex Joomla Components
/-----------------------------------------------------------------------------------------------------------------------------*/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
@ -222,13 +234,13 @@ abstract class ###Component###Email
$numReplyTo = count($mailreply);
for ($i=0; $i < $numReplyTo; $i++)
{
$mail->addReplyTo( array($mailreply[$i], $replyname[$i]) );
$mail->addReplyTo($mailreply[$i], $replyname[$i]);
}
}
elseif (!empty($mailreply))
{
$mail->ClearReplyTos();
$mail->addReplyTo( array( $mailreply, $replyname ) );
$mail->addReplyTo($mailreply, $replyname);
}
// check if we can add the DKIM to email
@ -256,6 +268,12 @@ abstract class ###Component###Email
@unlink($tmp);
}
if (method_exists('###Component###Helper','storeMessage'))
{
// store the massage if the method is set
###Component###Helper::storeMessage($sendmail, $recipient, $subject, $body, $textonly, $mode, 'email');
}
return $sendmail;
}
}

View File

@ -17,7 +17,7 @@
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
Builds Complex Joomla Components
Builds Complex Joomla Components
/-----------------------------------------------------------------------------------------------------------------------------*/
@ -171,7 +171,7 @@ abstract class ###Component###Helper
if (!$asset->check() || !$asset->store())
{
JError::raiseWarning(500, $asset->getError());
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false;
}
else
@ -276,9 +276,15 @@ abstract class ###Component###Helper
$db = JFactory::getDbo();
// Create a new query object.
$query = $db->getQuery(true);
$query->select($db->quoteName(array($what)));
$query->from($db->quoteName('#__'.$main.'_'.$table));
$query->select($db->quoteName(array($what)));
if (empty($table))
{
$query->from($db->quoteName('#__'.$main));
}
else
{
$query->from($db->quoteName('#__'.$main.'_'.$table));
}
if (is_numeric($where))
{
$query->where($db->quoteName($whereString) . ' '.$operator.' '.(int) $where);

View File

@ -50,7 +50,7 @@ class ###Component###Controller###View### extends JControllerForm
{
$this->view_list = '###Views###'; // safeguard for setting the return view listing to the main view.
parent::__construct($config);
}
}###ADMIN_CUSTOM_BUTTONS_CONTROLLER###
/**
* Method override to check if you can add a new record.

View File

@ -63,9 +63,9 @@ class ###Component###ControllerAjax extends JControllerLegacy
}
else
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode(false).");";
echo $callback."(".json_encode(false).");";
}
else
{

View File

@ -63,9 +63,9 @@ class ###Component###ControllerAjax extends JControllerLegacy
}
else
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode(false).");";
echo $callback."(".json_encode(false).");";
}
else
{

View File

@ -67,7 +67,7 @@ class ###Component###Model###View### extends JModelAdmin
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = array())
{
return JTable::getInstance($type, $prefix, $config);
}
}###ADMIN_CUSTOM_BUTTONS_METHOD###
/**
* Method to get a single record.
@ -267,6 +267,26 @@ class ###Component###Model###View### extends JModelAdmin
return true;
}
/**
* Method to change the published state of one or more records.
*
* @param array &$pks A list of the primary keys to change.
* @param integer $value The value of the published state.
*
* @return boolean True on success.
*
* @since 12.2
*/
public function publish(&$pks, $value = 1)
{###JMODELADMIN_BEFORE_PUBLISH###
if (!parent::publish($pks, $value))
{
return false;
}###JMODELADMIN_AFTER_PUBLISH###
return true;
}
/**
* Method to perform batch operations on an item or a set of items.

View File

@ -97,9 +97,10 @@ class ###Component###Model###SView### extends JModelItem
// check if this user has permission to access item
if (!$this->user->authorise('###sview###.access', 'com_###component###'))
{
JError::raiseWarning(500, JText::_('Not authorised!'));
$app = JFactory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error');
// redirect away if not a correct (TODO for now we go to default view)
JFactory::getApplication()->redirect('index.php?option=com_###component###');
$app->redirect('index.php?option=com_###component###');
return false;
}
$this->userId = $this->user->get('id');
@ -126,7 +127,7 @@ class ###Component###Model###SView### extends JModelItem
if ($e->getCode() == 404)
{
// Need to go thru the error handler to allow Redirect to work.
JError::raiseError(404, $e->getMessage());
JError::raiseWaring(404, $e->getMessage());
}
else
{

View File

@ -99,9 +99,10 @@ class ###Component###Model###SView### extends JModelItem
// check if this user has permission to access item
if (!$this->user->authorise('site.###sview###.access', 'com_###component###'))
{
JError::raiseWarning(500, JText::_('Not authorised!'));
$app = JFactory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error');
// redirect away if not a correct (TODO for now we go to default view)
JFactory::getApplication()->redirect(JRoute::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###'));
$app->redirect(JRoute::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###'));
return false;
}
$this->userId = $this->user->get('id');
@ -128,7 +129,7 @@ class ###Component###Model###SView### extends JModelItem
if ($e->getCode() == 404)
{
// Need to go thru the error handler to allow Redirect to work.
JError::raiseError(404, $e->getMessage());
JError::raiseWaring(404, $e->getMessage());
}
else
{

View File

@ -201,7 +201,8 @@ class ###Component###ModelImport extends JModelLegacy
protected function _getPackageFromUpload()
{
// Get the uploaded file information
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get.
$userfile = $input->files->get('import_package', null, 'raw');
@ -209,21 +210,21 @@ class ###Component###ModelImport extends JModelLegacy
// Make sure that file uploads are enabled in php
if (!(bool) ini_get('file_uploads'))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning');
return false;
}
// If there is no uploaded file, we have a problem...
if (!is_array($userfile))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning');
return false;
}
// Check if there was a problem uploading the file.
if ($userfile['error'] || $userfile['size'] < 1)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning');
return false;
}
@ -261,7 +262,8 @@ class ###Component###ModelImport extends JModelLegacy
*/
protected function _getPackageFromFolder()
{
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the path to the package to import
$p_dir = $input->getString('import_directory');
@ -269,7 +271,7 @@ class ###Component###ModelImport extends JModelLegacy
// Did you give us a valid path?
if (!file_exists($p_dir))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning');
return false;
}
@ -279,7 +281,7 @@ class ###Component###ModelImport extends JModelLegacy
// Did you give us a valid package?
if (!$type)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning');
}
// check the extention
@ -290,7 +292,7 @@ class ###Component###ModelImport extends JModelLegacy
break;
default:
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false;
break;
}
@ -310,15 +312,16 @@ class ###Component###ModelImport extends JModelLegacy
*/
protected function _getPackageFromUrl()
{
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the URL of the package to import
$url = $input->getString('import_url');
// Did you give us a URL?
if (!$url)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning');
return false;
}
@ -328,7 +331,7 @@ class ###Component###ModelImport extends JModelLegacy
// Was the package downloaded?
if (!$p_file)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning');
return false;
}
@ -349,6 +352,7 @@ class ###Component###ModelImport extends JModelLegacy
*/
protected function check($archivename)
{
$app = JFactory::getApplication();
// Clean the name
$archivename = JPath::clean($archivename);
@ -362,7 +366,7 @@ class ###Component###ModelImport extends JModelLegacy
default:
// Cleanup the import files
$this->remove($archivename);
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false;
break;
}

View File

@ -91,7 +91,8 @@ class ###Component###Model###View### extends JModelLegacy
protected function _getPackageFromUpload()
{
// Get the uploaded file information
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get.
$userfile = $input->files->get('import_package', null, 'raw');
@ -99,21 +100,21 @@ class ###Component###Model###View### extends JModelLegacy
// Make sure that file uploads are enabled in php
if (!(bool) ini_get('file_uploads'))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning');
return false;
}
// If there is no uploaded file, we have a problem...
if (!is_array($userfile))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning');
return false;
}
// Check if there was a problem uploading the file.
if ($userfile['error'] || $userfile['size'] < 1)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning');
return false;
}
@ -151,7 +152,8 @@ class ###Component###Model###View### extends JModelLegacy
*/
protected function _getPackageFromFolder()
{
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the path to the package to import
$p_dir = $input->getString('import_directory');
@ -159,7 +161,7 @@ class ###Component###Model###View### extends JModelLegacy
// Did you give us a valid path?
if (!file_exists($p_dir))
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning');
return false;
}
@ -169,7 +171,7 @@ class ###Component###Model###View### extends JModelLegacy
// Did you give us a valid package?
if (!$type)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning');
}
// check the extention
@ -180,7 +182,7 @@ class ###Component###Model###View### extends JModelLegacy
break;
default:
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false;
break;
}
@ -200,7 +202,8 @@ class ###Component###Model###View### extends JModelLegacy
*/
protected function _getPackageFromUrl()
{
$input = JFactory::getApplication()->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the URL of the package to import
$url = $input->getString('import_url');
@ -208,7 +211,7 @@ class ###Component###Model###View### extends JModelLegacy
// Did you give us a URL?
if (!$url)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning');
return false;
}
@ -218,7 +221,7 @@ class ###Component###Model###View### extends JModelLegacy
// Was the package downloaded?
if (!$p_file)
{
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning');
return false;
}
@ -239,6 +242,7 @@ class ###Component###Model###View### extends JModelLegacy
*/
protected function check($archivename)
{
$app = JFactory::getApplication();
// Clean the name
$archivename = JPath::clean($archivename);
@ -252,7 +256,7 @@ class ###Component###Model###View### extends JModelLegacy
default:
// Cleanup the import files
$this->remove($archivename);
JError::raiseWarning('', JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'));
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false;
break;
}

View File

@ -95,7 +95,7 @@ class ###Component###Model###Views### extends JModelList
public function getItems()
{###LICENSE_LOCKED_CHECK### ###CHECKINCALL###
// load parent items
$items = parent::getItems();###GET_ITEMS_METHOD_STRING_FIX### ###SELECTIONTRANSLATIONFIX###
$items = parent::getItems();###GET_ITEMS_METHOD_STRING_FIX### ###SELECTIONTRANSLATIONFIX### ###GET_ITEMS_METHOD_AFTER_ALL###
// return items
return $items;

View File

@ -81,9 +81,10 @@ class ###Component###Model###SViews### extends JModelList
// check if this user has permission to access items
if (!$user->authorise('###sviews###.access', 'com_###component###'))
{
JError::raiseWarning(500, JText::_('Not authorised!'));
$app = JFactory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error');
// redirect away if not a correct (TODO for now we go to default view)
JFactory::getApplication()->redirect('index.php?option=com_###component###');
$app->redirect('index.php?option=com_###component###');
return false;
}###LICENSE_LOCKED_CHECK### ###CUSTOM_ADMIN_BEFORE_GET_ITEMS###
// load parent items

View File

@ -81,9 +81,10 @@ class ###Component###Model###SViews### extends JModelList
// check if this user has permission to access items
if (!$user->authorise('site.###sview###.access', 'com_###component###'))
{
JError::raiseWarning(500, JText::_('Not authorised!'));
$app = JFactory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error');
// redirect away if not a correct (TODO for now we go to default view)
JFactory::getApplication()->redirect(JRoute::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###'));
$app->redirect(JRoute::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###'));
return false;
}###LICENSE_LOCKED_CHECK### ###SITE_BEFORE_GET_ITEMS###
// load parent items

View File

@ -0,0 +1 @@
###README###

View File

@ -55,7 +55,8 @@ class ###Component###ControllerAjax extends JControllerLegacy
// Check Token!
$token = JSession::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM');
if($user->id != 0 && $token == $call_token){
if($user->id != 0 && $token == $call_token)
{
$task = $this->getTask();
switch($task){
case 'fieldRequired':
@ -73,26 +74,37 @@ class ###Component###ControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET)){
echo $_GET['callback'] . "(".json_encode($result).");";
} else {
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $callback . "(".json_encode($result).");";
}
else
{
echo "(".json_encode($result).");";
}
}
catch(Exception $e)
catch(Exception $e)
{
if(array_key_exists('callback',$_GET)){
echo $_GET['callback']."(".json_encode($e).");";
} else {
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $callback."(".json_encode($e).");";
}
else
{
echo "(".json_encode($e).");";
}
}
break;
}
} else {
if(array_key_exists('callback',$_GET)){
echo $_GET['callback']."(".json_encode(false).");";
} else {
}
else
{
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $callback."(".json_encode(false).");";
}
else
{
echo "(".json_encode(false).");";
}
}

View File

@ -74,7 +74,7 @@
<filename>config.xml</filename>
<filename>controller.php</filename>###ENCRYPT_FILE###
<filename>index.html</filename>
<filename>###component###.php</filename>
<filename>###component###.php</filename>###EXSTRA_ADMIN_FILES###
<folder>assets</folder>
<folder>controllers</folder>
<folder>helpers</folder>

View File

@ -32,7 +32,7 @@ defined('_JEXEC') or die('Restricted access');
// Access check.
if (!JFactory::getUser()->authorise('core.manage', 'com_###component###'))
{
return JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
return JError::raiseWaring(404, JText::_('JERROR_ALERTNOAUTHOR'));
};
// Load cms libraries

View File

@ -35,20 +35,9 @@ JHtml::_('behavior.formvalidation');
JHtml::_('formbehavior.chosen', 'select');
JHtml::_('behavior.keepalive');
?>
<?php if ($this->canDo->get('###sview###.access')): ?>
<script type="text/javascript">
Joomla.submitbutton = function(task) {
if (task == '###sview###.back') {
parent.history.back();
return false;
} else {
var form = document.getElementById('adminForm');
form.task.value = task;
form.submit();
}
}
</script>
<form action="<?php echo JRoute::_('index.php?option=com_costbenefitprojection&view=###sview###&id='.$this->item->id); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
<?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT###
<?php $urlId = (isset($this->item->id)) ? '&id='. (int) $this->item->id : ''; ?>
<form action="<?php echo JRoute::_('index.php?option=com_###component###&view=###sview###'.$urlId); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
<input type="hidden" name="task" value="" />
<?php echo JHtml::_('form.token'); ?>
</form>###CUSTOM_ADMIN_BODY###

View File

@ -32,6 +32,7 @@ defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
JHtml::_('jquery.framework');
JHtml::_('bootstrap.tooltip');
JHtml::_('script', 'system/core.js', false, true);
JHtml::_('behavior.keepalive');
?>
<script type="text/javascript">
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList)) : ?>

View File

@ -32,4 +32,5 @@ defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
JHtml::_('jquery.framework');
JHtml::_('bootstrap.tooltip');
JHtml::_('script', 'system/core.js', false, true);
JHtml::_('behavior.keepalive');
?>###IMPORT_DEFAULT_VIEW_CUSTOM###

View File

@ -35,19 +35,7 @@ JHtml::_('behavior.formvalidation');
JHtml::_('formbehavior.chosen', 'select');
JHtml::_('behavior.keepalive');
?>
<?php if ($this->canDo->get('###sview###.access')): ?>
<script type="text/javascript">
Joomla.submitbutton = function(task) {
if (task == '###sview###.back') {
parent.history.back();
return false;
} else {
var form = document.getElementById('adminForm');
form.task.value = task;
form.submit();
}
}
</script>
<?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT###
<form action="<?php echo JRoute::_('index.php?option=com_###component###&view=###sviews###'); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
<input type="hidden" name="task" value="" />###HIDDEN_INPUT_VALUES###
<?php echo JHtml::_('form.token'); ?>

View File

@ -1 +1,6 @@
###INSTALL###
###INSTALL###
--
-- Always insure this column is large enough for all the access control values.
--
ALTER TABLE `#__assets` CHANGE `rules` `rules` MEDIUMTEXT NOT NULL COMMENT 'JSON encoded access control.';

View File

@ -41,7 +41,6 @@ class com_###component###InstallerScript
/**
* method to install the component
*
*
* @return void
*/
function install($parent)
@ -81,18 +80,28 @@ class com_###component###InstallerScript
*/
function preflight($type, $parent)
{
// get application
$app = JFactory::getApplication();
// is redundant ...hmmm
if ($type == 'uninstall')
{
{
return true;
}
$app = JFactory::getApplication();
// the default for both install and update
$jversion = new JVersion();
if (!$jversion->isCompatible('3.4.1'))
if (!$jversion->isCompatible('3.6.0'))
{
$app->enqueueMessage('Please upgrade to at least Joomla! 3.4.1 before continuing!', 'error');
$app->enqueueMessage('Please upgrade to at least Joomla! 3.6.0 before continuing!', 'error');
return false;
}
// do any updates needed
if ($type == 'update')
{###PREUPDATESCRIPT###
}
// do any install needed
if ($type == 'install')
{###PREINSTALLSCRIPT###
}
}
/**
@ -104,11 +113,11 @@ class com_###component###InstallerScript
{
// set the default component settings
if ($type == 'install')
{###INSTALLSCRIPT###
{###POSTINSTALLSCRIPT###
}
// do any updates needed
if ($type == 'update')
{###UPDATESCRIPT###
{###POSTUPDATESCRIPT###
}
}
}

View File

@ -193,6 +193,12 @@
"rename": false,
"type": "file"
},
"README.txt": {
"naam":"README.txt",
"path": "c0mp0n3nt/admin",
"rename": false,
"type": "file"
},
"README.md": {
"naam":"README.md",
"path": "c0mp0n3nt/",

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage componentbuilder.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@ -30,7 +29,7 @@ defined('_JEXEC') or die('Restricted access');
// Access check.
if (!JFactory::getUser()->authorise('core.manage', 'com_componentbuilder'))
{
return JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
return JError::raiseWaring(404, JText::_('JERROR_ALERTNOAUTHOR'));
};
// Load cms libraries

View File

@ -85,271 +85,6 @@
readonly="true"
class="readonly"
/>
<field type="spacer" name="spacerContributor1" hr="true" />
<field name="contributor1"
type="spacer"
class="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_ONE"
/>
<field name="titleContributor1"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_DESC"
size="60"
default="My Wife"
/>
<field name="nameContributor1"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_DESC"
size="60"
default="Roline van der Merwe"
/>
<field name="emailContributor1"
type="email"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_DESC"
size="60"
default="info@vdm.io"
/>
<field name="linkContributor1"
type="url"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_DESC"
size="60"
default="http://www.vdm.io/"
/>
<field name="useContributor1"
type="list"
default="2"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_EMAIL</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_WWW</option>
</field>
<field name="showContributor1"
type="list"
default="3"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_BACK</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_FRONT</option>
<option value="3">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_ALL</option>
</field>
<field type="spacer" name="spacerContributor2" hr="true" />
<field name="contributor2"
type="spacer"
class="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TWO"
/>
<field name="titleContributor2"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_DESC"
size="60"
default=""
/>
<field name="nameContributor2"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_DESC"
size="60"
default=""
/>
<field name="emailContributor2"
type="email"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_DESC"
size="60"
default=""
/>
<field name="linkContributor2"
type="url"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_DESC"
size="60"
default=""
/>
<field name="useContributor2"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_EMAIL</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_WWW</option>
</field>
<field name="showContributor2"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_BACK</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_FRONT</option>
<option value="3">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_ALL</option>
</field>
<field type="spacer" name="spacerContributor3" hr="true" />
<field name="contributor3"
type="spacer"
class="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_THREE"
/>
<field name="titleContributor3"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_DESC"
size="60"
default=""
/>
<field name="nameContributor3"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_DESC"
size="60"
default=""
/>
<field name="emailContributor3"
type="email"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_DESC"
size="60"
default=""
/>
<field name="linkContributor3"
type="url"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_DESC"
size="60"
default=""
/>
<field name="useContributor3"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_EMAIL</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_WWW</option>
</field>
<field name="showContributor3"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_BACK</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_FRONT</option>
<option value="3">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_ALL</option>
</field>
<field type="spacer" name="spacerContributor4" hr="true" />
<field name="contributor4"
type="spacer"
class="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_FOUR"
/>
<field name="titleContributor4"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_DESC"
size="60"
default=""
/>
<field name="nameContributor4"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_DESC"
size="60"
default=""
/>
<field name="emailContributor4"
type="email"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_DESC"
size="60"
default=""
/>
<field name="linkContributor4"
type="url"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_DESC"
size="60"
default=""
/>
<field name="useContributor4"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_EMAIL</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_WWW</option>
</field>
<field name="showContributor4"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_BACK</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_FRONT</option>
<option value="3">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_ALL</option>
</field>
<field type="spacer" name="spacerContributor5" hr="true" />
<field name="contributor5"
type="spacer"
class="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_FIVE"
/>
<field name="titleContributor5"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_TITLE_DESC"
size="60"
default=""
/>
<field name="nameContributor5"
type="text"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_NAME_DESC"
size="60"
default=""
/>
<field name="emailContributor5"
type="email"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_EMAIL_DESC"
size="60"
default=""
/>
<field name="linkContributor5"
type="url"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_LINK_DESC"
size="60"
default=""
/>
<field name="useContributor5"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_EMAIL</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_USE_WWW</option>
</field>
<field name="showContributor5"
type="list"
default="0"
label="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_DESC">
<option value="0">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_NONE</option>
<option value="1">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_BACK</option>
<option value="2">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_FRONT</option>
<option value="3">COM_COMPONENTBUILDER_CONFIG_CONTRIBUTOR_SHOW_ALL</option>
</field>
</fieldset>
<fieldset
name="uikit_config"

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage controller.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage admin_view.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage admin_views.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage ajax.json.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@ -81,9 +80,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -96,9 +95,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -119,9 +118,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -134,9 +133,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -157,9 +156,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -172,9 +171,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -195,9 +194,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -210,9 +209,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -233,9 +232,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -248,9 +247,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -271,9 +270,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -286,9 +285,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -310,9 +309,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -325,9 +324,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -348,9 +347,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -363,9 +362,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -388,9 +387,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -403,9 +402,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -428,9 +427,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -443,9 +442,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -466,9 +465,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
{
$result = false;
}
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback'] . "(".json_encode($result).");";
echo $callback . "(".json_encode($result).");";
}
elseif($returnRaw)
{
@ -481,9 +480,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
catch(Exception $e)
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode($e).");";
echo $callback."(".json_encode($e).");";
}
else
{
@ -495,9 +494,9 @@ class ComponentbuilderControllerAjax extends JControllerLegacy
}
else
{
if(array_key_exists('callback',$_GET))
if($callback = $jinput->get('callback', null, 'CMD'))
{
echo $_GET['callback']."(".json_encode(false).");";
echo $callback."(".json_encode(false).");";
}
else
{

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage compiler.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage component.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage componentbuilder.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage components.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage custom_admin_view.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage custom_admin_views.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_get.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_gets.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage field.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fields.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fieldtype.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage fieldtypes.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage help.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage help_document.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage help_documents.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage import.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage layout.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage layouts.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage site_view.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage site_views.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage snippet.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage snippets.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage template.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -10,13 +10,12 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.10
@build 31st May, 2016
@version 2.2.0
@build 23rd October, 2016
@created 30th April, 2015
@package Component Builder
@subpackage templates.php
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@my wife Roline van der Merwe <http://www.vdm.io/>
@author Llewellyn van der Merwe <https://www.vdm.io/joomla-component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html

BIN
admin/custom/ajax.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

216
admin/custom/base64.js Normal file
View File

@ -0,0 +1,216 @@
/*
Copyright (c) 2008 Fred Palmer fred.palmer_at_gmail.com
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
*/
function StringBuffer()
{
this.buffer = [];
}
StringBuffer.prototype.append = function append(string)
{
this.buffer.push(string);
return this;
};
StringBuffer.prototype.toString = function toString()
{
return this.buffer.join("");
};
var Base64 =
{
codex : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
encode : function (input)
{
var output = new StringBuffer();
var enumerator = new Utf8EncodeEnumerator(input);
while (enumerator.moveNext())
{
var chr1 = enumerator.current;
enumerator.moveNext();
var chr2 = enumerator.current;
enumerator.moveNext();
var chr3 = enumerator.current;
var enc1 = chr1 >> 2;
var enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
var enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
var enc4 = chr3 & 63;
if (isNaN(chr2))
{
enc3 = enc4 = 64;
}
else if (isNaN(chr3))
{
enc4 = 64;
}
output.append(this.codex.charAt(enc1) + this.codex.charAt(enc2) + this.codex.charAt(enc3) + this.codex.charAt(enc4));
}
return output.toString();
},
decode : function (input)
{
var output = new StringBuffer();
var enumerator = new Base64DecodeEnumerator(input);
while (enumerator.moveNext())
{
var charCode = enumerator.current;
if (charCode < 128)
output.append(String.fromCharCode(charCode));
else if ((charCode > 191) && (charCode < 224))
{
enumerator.moveNext();
var charCode2 = enumerator.current;
output.append(String.fromCharCode(((charCode & 31) << 6) | (charCode2 & 63)));
}
else
{
enumerator.moveNext();
var charCode2 = enumerator.current;
enumerator.moveNext();
var charCode3 = enumerator.current;
output.append(String.fromCharCode(((charCode & 15) << 12) | ((charCode2 & 63) << 6) | (charCode3 & 63)));
}
}
return output.toString();
}
}
function Utf8EncodeEnumerator(input)
{
this._input = input;
this._index = -1;
this._buffer = [];
}
Utf8EncodeEnumerator.prototype =
{
current: Number.NaN,
moveNext: function()
{
if (this._buffer.length > 0)
{
this.current = this._buffer.shift();
return true;
}
else if (this._index >= (this._input.length - 1))
{
this.current = Number.NaN;
return false;
}
else
{
var charCode = this._input.charCodeAt(++this._index);
// "\r\n" -> "\n"
//
if ((charCode == 13) && (this._input.charCodeAt(this._index + 1) == 10))
{
charCode = 10;
this._index += 2;
}
if (charCode < 128)
{
this.current = charCode;
}
else if ((charCode > 127) && (charCode < 2048))
{
this.current = (charCode >> 6) | 192;
this._buffer.push((charCode & 63) | 128);
}
else
{
this.current = (charCode >> 12) | 224;
this._buffer.push(((charCode >> 6) & 63) | 128);
this._buffer.push((charCode & 63) | 128);
}
return true;
}
}
}
function Base64DecodeEnumerator(input)
{
this._input = input;
this._index = -1;
this._buffer = [];
}
Base64DecodeEnumerator.prototype =
{
current: 64,
moveNext: function()
{
if (this._buffer.length > 0)
{
this.current = this._buffer.shift();
return true;
}
else if (this._index >= (this._input.length - 1))
{
this.current = 64;
return false;
}
else
{
var enc1 = Base64.codex.indexOf(this._input.charAt(++this._index));
var enc2 = Base64.codex.indexOf(this._input.charAt(++this._index));
var enc3 = Base64.codex.indexOf(this._input.charAt(++this._index));
var enc4 = Base64.codex.indexOf(this._input.charAt(++this._index));
var chr1 = (enc1 << 2) | (enc2 >> 4);
var chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
var chr3 = ((enc3 & 3) << 6) | enc4;
this.current = chr1;
if (enc3 != 64)
this._buffer.push(chr2);
if (enc4 != 64)
this._buffer.push(chr3);
return true;
}
}
};

144
admin/custom/bootstrap-tab.js vendored Normal file
View File

@ -0,0 +1,144 @@
/* ========================================================
* bootstrap-tab.js v2.3.1
* https://twitter.github.com/bootstrap/javascript.html#tabs
* ========================================================
* Copyright 2012 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ======================================================== */
!function ($) {
"use strict"; // jshint ;_;
/* TAB CLASS DEFINITION
* ==================== */
var Tab = function (element) {
this.element = $(element)
}
Tab.prototype = {
constructor: Tab
, show: function () {
var $this = this.element
, $ul = $this.closest('ul:not(.dropdown-menu)')
, selector = $this.attr('data-target')
, previous
, $target
, e
if (!selector) {
selector = $this.attr('href')
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
}
if ( $this.parent('li').hasClass('active') ) return
previous = $ul.find('.active:last a')[0]
e = $.Event('show', {
relatedTarget: previous
})
$this.trigger(e)
if (e.isDefaultPrevented()) return
$target = $(selector)
this.activate($this.parent('li'), $ul)
this.activate($target, $target.parent(), function () {
$this.trigger({
type: 'shown'
, relatedTarget: previous
})
})
}
, activate: function ( element, container, callback) {
var $active = container.find('> .active')
, transition = callback
&& $.support.transition
&& $active.hasClass('fade')
function next() {
$active
.removeClass('active')
.find('> .dropdown-menu > .active')
.removeClass('active')
element.addClass('active')
if (transition) {
element[0].offsetWidth // reflow for transition
element.addClass('in')
} else {
element.removeClass('fade')
}
if ( element.parent('.dropdown-menu') ) {
element.closest('li.dropdown').addClass('active')
}
callback && callback()
}
transition ?
$active.one($.support.transition.end, next) :
next()
$active.removeClass('in')
}
}
/* TAB PLUGIN DEFINITION
* ===================== */
var old = $.fn.tab
$.fn.tab = function ( option ) {
return this.each(function () {
var $this = $(this)
, data = $this.data('tab')
if (!data) $this.data('tab', (data = new Tab(this)))
if (typeof option == 'string') data[option]()
})
}
$.fn.tab.Constructor = Tab
/* TAB NO CONFLICT
* =============== */
$.fn.tab.noConflict = function () {
$.fn.tab = old
return this
}
/* TAB DATA-API
* ============ */
$(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
e.preventDefault()
$(this).tab('show')
})
}(window.jQuery);

7
admin/custom/bootstrap.min.js vendored Normal file

File diff suppressed because one or more lines are too long

251
admin/custom/bootstrapSwitch.js vendored Normal file
View File

@ -0,0 +1,251 @@
/* ============================================================
* bootstrapSwitch v1.3 by Larentis Mattia @spiritualGuru
* https://www.larentis.eu/switch/
* ============================================================
* Licensed under the Apache License, Version 2.0
* https://www.apache.org/licenses/LICENSE-2.0
* ============================================================ */
!function ($) {
"use strict";
$.fn['bootstrapSwitch'] = function (method) {
var methods = {
init: function () {
return this.each(function () {
var $element = $(this)
, $div
, $switchLeft
, $switchRight
, $label
, myClasses = ""
, classes = $element.attr('class')
, color
, moving
, onLabel = "ON"
, offLabel = "OFF"
, icon = false;
$.each(['switch-mini', 'switch-small', 'switch-large'], function (i, el) {
if (classes.indexOf(el) >= 0)
myClasses = el;
});
$element.addClass('has-switch');
if ($element.data('on') !== undefined)
color = "switch-" + $element.data('on');
if ($element.data('on-label') !== undefined)
onLabel = $element.data('on-label');
if ($element.data('off-label') !== undefined)
offLabel = $element.data('off-label');
if ($element.data('icon') !== undefined)
icon = $element.data('icon');
$switchLeft = $('<span>')
.addClass("switch-left")
.addClass(myClasses)
.addClass(color)
.html(onLabel);
color = '';
if ($element.data('off') !== undefined)
color = "switch-" + $element.data('off');
$switchRight = $('<span>')
.addClass("switch-right")
.addClass(myClasses)
.addClass(color)
.html(offLabel);
$label = $('<label>')
.html("&nbsp;")
.addClass(myClasses)
.attr('for', $element.find('input').attr('id'));
if (icon) {
$label.html('<i class="icon icon-' + icon + '"></i>');
}
$div = $element.find(':checkbox').wrap($('<div>')).parent().data('animated', false);
if ($element.data('animated') !== false)
$div.addClass('switch-animate').data('animated', true);
$div
.append($switchLeft)
.append($label)
.append($switchRight);
$element.find('>div').addClass(
$element.find('input').is(':checked') ? 'switch-on' : 'switch-off'
);
if ($element.find('input').is(':disabled'))
$(this).addClass('deactivate');
var changeStatus = function ($this) {
$this.siblings('label').trigger('mousedown').trigger('mouseup').trigger('click');
};
$element.on('keydown', function (e) {
if (e.keyCode === 32) {
e.stopImmediatePropagation();
e.preventDefault();
changeStatus($(e.target).find('span:first'));
}
});
$switchLeft.on('click', function (e) {
changeStatus($(this));
});
$switchRight.on('click', function (e) {
changeStatus($(this));
});
$element.find('input').on('change', function (e) {
var $this = $(this)
, $element = $this.parent()
, thisState = $this.is(':checked')
, state = $element.is('.switch-off');
e.preventDefault();
$element.css('left', '');
if (state === thisState) {
if (thisState)
$element.removeClass('switch-off').addClass('switch-on');
else $element.removeClass('switch-on').addClass('switch-off');
if ($element.data('animated') !== false)
$element.addClass("switch-animate");
$element.parent().trigger('switch-change', {'el': $this, 'value': thisState})
}
});
$element.find('label').on('mousedown touchstart', function (e) {
var $this = $(this);
moving = false;
e.preventDefault();
e.stopImmediatePropagation();
$this.closest('div').removeClass('switch-animate');
if ($this.closest('.switch').is('.deactivate'))
$this.unbind('click');
else {
$this.on('mousemove touchmove', function (e) {
var $element = $(this).closest('.switch')
, relativeX = (e.pageX || e.originalEvent.targetTouches[0].pageX) - $element.offset().left
, percent = (relativeX / $element.width()) * 100
, left = 25
, right = 75;
moving = true;
if (percent < left)
percent = left;
else if (percent > right)
percent = right;
$element.find('>div').css('left', (percent - right) + "%")
});
$this.on('click touchend', function (e) {
var $this = $(this)
, $target = $(e.target)
, $myCheckBox = $target.siblings('input');
e.stopImmediatePropagation();
e.preventDefault();
$this.unbind('mouseleave');
if (moving)
$myCheckBox.prop('checked', !(parseInt($this.parent().css('left')) < -25));
else $myCheckBox.prop("checked", !$myCheckBox.is(":checked"));
moving = false;
$myCheckBox.trigger('change');
});
$this.on('mouseleave', function (e) {
var $this = $(this)
, $myCheckBox = $this.siblings('input');
e.preventDefault();
e.stopImmediatePropagation();
$this.unbind('mouseleave');
$this.trigger('mouseup');
$myCheckBox.prop('checked', !(parseInt($this.parent().css('left')) < -25)).trigger('change');
});
$this.on('mouseup', function (e) {
e.stopImmediatePropagation();
e.preventDefault();
$(this).unbind('mousemove');
});
}
});
}
);
},
toggleActivation: function () {
$(this).toggleClass('deactivate');
},
isActive: function () {
return !$(this).hasClass('deactivate');
},
setActive: function (active) {
if (active)
$(this).removeClass('deactivate');
else $(this).addClass('deactivate');
},
toggleState: function (skipOnChange) {
var $input = $(this).find('input:checkbox');
$input.prop('checked', !$input.is(':checked')).trigger('change', skipOnChange);
},
setState: function (value, skipOnChange) {
$(this).find('input:checkbox').prop('checked', value).trigger('change', skipOnChange);
},
status: function () {
return $(this).find('input:checkbox').is(':checked');
},
destroy: function () {
var $div = $(this).find('div')
, $checkbox;
$div.find(':not(input:checkbox)').remove();
$checkbox = $div.children();
$checkbox.unwrap().unwrap();
$checkbox.unbind('change');
return $checkbox;
}
};
if (methods[method])
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
else if (typeof method === 'object' || !method)
return methods.init.apply(this, arguments);
else
$.error('Method ' + method + ' does not exist!');
};
}(jQuery);
$(function () {
$('.switch')['bootstrapSwitch']();
});

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1,44 @@
(function(w, undefined) {
var firstNames = ['Elodia', 'Sephnie', 'Maxine', 'Claudine', 'Londa', 'Gwyn', 'Consuelo', 'Mariko', 'Lashanda', 'Jesusa', 'Bernie', 'Annamaria', 'Muriel', 'Nikia', 'Margene', 'Lorraine', 'Annemarie', 'Rayna', 'Anonina', 'Carie', 'Gran', 'Jua', 'Jacqulyn', 'Whiney', 'Renaa', 'Usha', 'Annea', 'Jack', 'Chun', 'Eddy', 'Isidra', 'Myesha', 'Ami', 'Easer', 'Karon', 'Granville', 'Maria', 'Shenia', 'Solomon', 'Marquia', 'Charles', 'Neie', 'Beariz', 'Humbero', 'Rigobero', 'Lamon', 'Rivka', 'Phoebe', 'Renea', 'Celia', 'Shay', 'Sanford', 'Gwen', 'Lizzee', 'Lucila', 'Alice', 'Lauri', 'Desmond', 'Raeann', 'Rona', 'Jason', 'Lilian', 'Karena', 'Dennise', 'Delana', 'Rheba', 'Doy', 'Dolly', 'Venice', 'Dalene', 'Cyndy', 'Ilona', 'Lakeshia', 'Laurena', 'Lorriane', 'Kaci', 'Velve', 'Maple', 'Maire', 'Marline', 'Bar', 'Nelly', 'Shona', 'Karole', 'Judi', 'Ardelia', 'Alonzo', 'Junie', 'Alvina', 'Ilda'];
var lastNames = ['Ortego', 'Landa', 'Piermarini', 'Valles', 'Lusher', 'Branco', 'Falls', 'Hallett', 'Nicley', 'Cambareri', 'Han', 'Edwin', 'Lan', 'Dauenhauer', 'Cerrone', 'Matsumura', 'Mosher', 'Dragoo', 'Robare', 'Judon', 'Kyger', 'Bonk', 'Mcgaughy', 'Mcfetridge', 'Maxton', 'Roling', 'Klotz', 'Boudreaux', 'Hayton', 'Leonardo', 'Schug', 'Dewitt', 'Wohlwend', 'Hoos', 'Pennock', 'Sprinkle', 'Weick', 'Gilliland', 'Resler', 'Badgett', 'Bittinger', 'Letts', 'Bottom', 'Hibler', 'Fuhrman', 'Lewis', 'Moudy', 'Goyette', 'Difranco', 'Kyles', 'Sluss', 'Bruening', 'Halladay', 'Leinen', 'Leister', 'Morgado', 'Wadkins', 'Yingst', 'Hyland', 'Carasco', 'Stever', 'Weisz', 'Woldt', 'Leak', 'Sinclair', 'Heinen', 'Furniss', 'Hosler', 'Shumpert', 'Keasler', 'Stgelais', 'Landers', 'Hogle', 'Ates', 'Vanatta', 'Goodlow', 'Haner', 'Yaple', 'Lamark', 'Cataldo', 'Smelcer', 'Marco', 'Quaranta', 'Cooke', 'Ardrey', 'Guilford', 'Polo', 'Sprouse', 'Gaffney', 'Lafromboise'];
var jobTitles = ['Language Translator', 'Propeller-Driven Airplane Mechanic', 'Work Ticket Distributor', 'Pipe Organ Technician', 'LAN Systems Administrator', 'Employment Clerk', 'Electrical Lineworker', 'Serials Librarian', 'Technical Services Librarian', 'Blackjack Supervisor', 'Pulpwood Cutter', 'Military Science Teacher', 'Missile Pad Mechanic', 'Psychology Professor', 'Scene and Lighting Design Lecturer', 'Internet Marketing Manager', 'Business Services Sales Representative', 'Assistant Corporation Counsel', 'Photocopying Equipment Repairer', 'Post-Anesthesia Care Unit Nurse', 'Animal Husbandry Manager', 'Electrical Engineering Director', 'Drag Car Racer', 'Auto Detailer', 'Childrens Pastor', 'Strawberry Sorter', 'Geophysicist', 'Financial Accountant', 'Crown and Bridge Technician', 'Jig Bore Tool Maker', 'Union Representative', 'High School Librarian', 'High School History Teacher', 'Beveling and Edging Machine Operator', 'Roller Skater', 'Wallpaperer Helper', 'Childcare Center Administrator', 'Ordnance Engineer', 'Industrial Waste Treatment Technician', 'Airline Transport Pilot', 'Window Trimmer', 'Garment Presser', 'State Archivist', 'Die Designer', 'Ventriloquist', 'Calculus Professor', 'Technical Writer', 'Meat Packager', 'Automobile Body Painter', 'Aircraft Landing Gear Inspector', 'Fashion Designer', 'Drywall Stripper', 'Clown', 'National Association for Stock Car Auto Racing Driver', 'Staff Electronic Warfare Officer', 'Hydroelectric Machinery Mechanic', 'Clinical Services Director', 'Traffic Court Referee', 'Internal Medicine Nurse Practitioner', 'Horticulture Instructor', 'Ships Electronic Warfare Officer', 'Broadcast Maintenance Engineer', 'Weight Training Instructor', 'Potato Sorter', 'Appliance Parts Counter Clerk', 'Body Shop Supervisor', 'Accounts Collector', 'Commercial Lender', 'Scale Clerk', 'Obstetrician/Gynecologist', 'Gaming Cage Cashier', 'Fresco Artist', 'Youth Pastor', 'Parachute Officer', 'Geophysical Engineer', 'Route Sales Person', 'Master of Ceremonies', 'Cloak Room Attendant', 'Gas Main Fitter', 'Religious Activities Director', 'Hemodialysis Technician', 'Telephone Lines Repairer', 'Periodontist', 'Wood Fence Installer', 'Offbearer', 'Aviation Tactical Readiness Officer', 'Biology Laboratory Assistant', 'Emergency Room Orderly', 'Magician', 'Dog Trainer'];
var statuses = [{ 'name': 'Active', 'value': 1 }, { 'name': 'Disabled', 'value': 2 }, { 'name': 'Suspended', 'value': 3 }];
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
function randomDate() {
var start = new Date(1960, 0, 1), end = new Date(1994, 0, 1);
return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
}
w.generateRows = function(rows, extraCols, return_rows) {
rows = rows || 100;
extraCols = extraCols || 0;
return_rows = return_rows || false;
var output = '';
for (var i = 0; i < rows; i++) {
var data = {
firstName: firstNames[Math.floor(Math.random() * firstNames.length)],
lastName: lastNames[Math.floor(Math.random() * lastNames.length)],
jobTitle: jobTitles[Math.floor(Math.random() * jobTitles.length)],
status: statuses[Math.floor(Math.random() * statuses.length)],
dob: randomDate()
};
var row = '<tr>';
//row += '<td class="expand"></td>';
row += '<td>' + data.firstName + '</td>';
row += '<td>' + data.lastName + '</td>';
row += '<td>' + data.jobTitle + '</td>';
row += '<td data-value="' + data.dob.getTime() + '">' + data.dob.getDate() + ' ' + months[data.dob.getMonth()] + ' ' + data.dob.getFullYear() +'</td>';
row += '<td data-value="' + data.status.value + '">' + data.status.name + '</td>';
for (var j = 0; j < extraCols; j++) {
row += '<td>' + (i+1) + '.' + (j+1) + '</td>';
}
row += '</tr>';
if (!return_rows) document.writeln(row);
else
output += row;
}
if (return_rows) return output;
};
})(window);

View File

@ -0,0 +1,153 @@
<?php
/**
*
*@version 2.0.0 - September 03, 2014
*@package Component Builder
*@author Llewellyn van de Merwe <http://www.vdm.io>
*@copyright Copyright (C) 2014. All Rights Reserved
*@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
*
**/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import Joomla controllerform library
jimport('joomla.application.component.controller');
/**
* ###Component### Download Controller
*/
class ###Component###ControllerDownload extends JControllerLegacy
{
public function __construct($config)
{
parent::__construct($config);
// load the tasks
$this->registerTask('file', 'download');
}
public function download()
{
$user = JFactory::getUser();
$jinput = JFactory::getApplication()->input;
// Check Token!
$token = JSession::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM');
$userAllowed = $jinput->get('key', NULL, 'INT');
if($user->id != 0 && $userAllowed == $user->id && $token == $call_token)
{
$task = $this->getTask();
switch($task)
{
case 'file':
$enUrl = $jinput->get('link', NULL, 'BASE64');
$filename = $jinput->get('filename', NULL, 'CMD');
if(base64_encode(base64_decode($enUrl, true)) === $enUrl && $filename)
{
// Get local key
$localkey = md5(JComponentHelper::getParams('com_###component###')->get('basic_key', 'localKey34fdWEkl'));
$opener = new FOFEncryptAes($localkey, 256);
$link = rtrim($opener->decryptString(base64_decode($enUrl)));
$info = $this->getContentInfo($link);
// set headers
if (isset($info['type']) && $info['type'])
{
header('Content-Type: '.$info['type']);
}
elseif (strpos($filename, '.mp3') !== false)
{
header('Content-Type: audio/mpeg');
}
else
{
header('Content-Type: application/octet-stream');
}
header("Content-Transfer-Encoding: Binary");
header("Content-disposition: attachment; filename=\"" . $filename . "\"");
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
if (isset($info['filesize']) && $info['filesize'])
{
header('Content-Length: ' . $info['filesize']);
}
ob_clean();
flush();
// this is faster but expose the dropbox url
// header("Location: $link");
// this is slower but better much more secure
readfile($link);
jexit();
}
break;
}
}
return false;
}
protected function getContentInfo($url)
{
// we first try the curl option
if ($this->_isCurl())
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$data = curl_exec($ch);
curl_close($ch);
}
else
{
// then we try getheaders (this is slower)
stream_context_set_default( array('http' => array('method' => 'HEAD')));
$headers = get_headers($url);
if (###Component###Helper::checkArray($headers))
{
$data = implode("\n", $headers);
}
}
// get the Content Length
if (preg_match('/Content-Length: (\d+)/', $data, $matches))
{
// Contains file size in bytes
$found['filesize'] = (int)$matches[1];
}
// get the Content Type
if (preg_match_all('/Content-Type: (.+)/', $data, $matches))
{
foreach ($matches[1] as $match)
{
// not the html
if (strpos( $match, 'text/html') === false)
{
$found['type'] = $match;
break;
}
}
}
// return found values
if (isset($found) && ###Component###Helper::checkArray($found))
{
return $found;
}
return false;
}
protected function _isCurl()
{
return function_exists('curl_version');
}
}

View File

@ -0,0 +1,171 @@
<?php
/**
*
*@version 2.0.0 - September 03, 2014
*@package Component Builder
*@author Llewellyn van de Merwe <http://www.vdm.io>
*@copyright Copyright (C) 2014. All Rights Reserved
*@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
*
**/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import Joomla controllerform library
jimport('joomla.application.component.controller');
/**
* ###Component### Download Controller
*/
class ###Component###ControllerDownload extends JControllerLegacy
{
public function __construct($config)
{
parent::__construct($config);
// load the tasks
$this->registerTask('file', 'download');
}
public function download()
{
$jinput = JFactory::getApplication()->input;
// Check Token!
$token = JSession::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM');
if($token == $call_token)
{
$task = $this->getTask();
switch($task)
{
case 'file':
$keys = $jinput->get('key', NULL, 'BASE64');
$enUrl = $jinput->get('link', NULL, 'BASE64');
$filename = $jinput->get('filename', NULL, 'CMD');
if((base64_encode(base64_decode($enUrl, true)) === $enUrl) && (base64_encode(base64_decode($keys, true)) === $keys) && $filename)
{
// we must first count this download
if (###Component###Helper::countDownload($keys,$filename))
{
// get Site name
$config = JFactory::getConfig();
$vendor = $config->get('sitename');
$name = ###Component###Helper::safeString($filename, 'Ww');
// Get local key
$localkey = ###Component###Helper::getLocalKey();
$opener = new FOFEncryptAes($localkey, 256);
$link = rtrim($opener->decryptString(base64_decode($enUrl)));
$info = $this->getContentInfo($link);
// set headers
$app = JFactory::getApplication();
$app->setHeader('Accept-ranges', 'bytes', true);
$app->setHeader('Connection', 'keep-alive', true);
$app->setHeader('Content-Encoding', 'none', true);
$app->setHeader('Content-disposition', 'attachment; filename="'.$filename.'";', true);
if (isset($info['type']) && $info['type'])
{
$app->setHeader('Content-Type', $info['type'], true);
}
elseif (strpos($filename, '.mp3') !== false)
{
$app->setHeader('Content-Type', 'audio/mpeg', true);
}
else
{
$app->setHeader('Content-Type', 'application/octet-stream', true);
}
// important to have the file size.
if (isset($info['filesize']) && $info['filesize'])
{
$app->setHeader('Content-Length', (int) $info['filesize'], true);
$app->setHeader('Content-Size', (int) $info['filesize'], true);
}
$app->setHeader('Content-security-policy', 'referrer no-referrer', true);
$app->setHeader('Content-Name', '"'.$name.'"', true);
$app->setHeader('Content-Version', '1.0', true);
$app->setHeader('Content-Vendor', '"'.$vendor.'"', true);
$app->setHeader('Content-URL', '"'.JUri::getInstance().'"', true);
$app->setHeader('etag', md5($enUrl), true);
$app->setHeader('Pragma', 'public', true);
$app->setHeader('cache-control', 'max-age=0', true);
$app->setHeader('x-robots-tag', 'noindex, nofollow, noimageindex', true);
$app->setHeader('x-content-security-policy', 'referrer no-referrer', true);
$app->setHeader('x-webkit-csp', 'referrer no-referrer', true);
$app->setHeader('x-content-security-policy', 'referrer no-referrer', true);
// get the file
readfile($link);
$app->sendHeaders();
$app->close();
jexit();
}
}
break;
}
}
return false;
}
protected function getContentInfo($url)
{
// we first try the curl option
if ($this->_isCurl())
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$data = curl_exec($ch);
curl_close($ch);
}
else
{
// then we try getheaders (this is slower)
stream_context_set_default( array('http' => array('method' => 'HEAD')));
$headers = get_headers($url);
if (###Component###Helper::checkArray($headers))
{
$data = implode("\n", $headers);
}
}
// get the Content Length
if (preg_match('/Content-Length: (\d+)/', $data, $matches))
{
// Contains file size in bytes
$found['filesize'] = (int) $matches[1];
}
// get the Content Type
if (preg_match_all('/Content-Type: (.+)/', $data, $matches))
{
foreach ($matches[1] as $match)
{
// not the html
if (strpos( $match, 'text/html') === false)
{
$found['type'] = $match;
break;
}
}
}
// return found values
if (isset($found) && ###Component###Helper::checkArray($found))
{
return $found;
}
return false;
}
protected function _isCurl()
{
return function_exists('curl_version');
}
}

342
admin/custom/dropbox.php Normal file
View File

@ -0,0 +1,342 @@
<?php
/*----------------------------------------------------------------------------------| www.vdm.io |----/
Vast Development Method
/-------------------------------------------------------------------------------------------------------/
@version 1.0.0 - 01st July, 2015
@package Dropbox Links builder
@subpackage dropboxlinks.php
@author Llewellyn van der Merwe <http://www.vdm.io>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
/------------------------------------------------------------------------------------------------------*/
// No direct access.
defined('_JEXEC') or die;
/**
* Dropbox class
*/
class Dropbox
{
// the file name
public $fileName;
// the file array
public $files = array();
// the extension to get
protected $getfiles = array();
// the extensions to leave
protected $notfiles = array();
// the folder array
protected $folders = array();
// folder identifiers
protected $getfolders = array('?dl=0');
// the list of extension to help identify what is folders (not exhaustive, only some of the commen files)
protected $notfolders = array(
'.3gp','.3gpp','.7z','.aac','.act','.aiff','.aiff','.amr','.ape','.ar','.asf','.au','.avi','.awb','.bmp','.bup','.bzip2','.crx','.css','.dct','.deb','.djvu',
'.doc','.docx','.drc','.dss','.ear','.egg','.exe','.flac','.flv','.gif','.gifv','.gzip','.htaccess','.html','.ico','.ini','.iso','.jar','.jpeg','.jpg','.js',
'.json','.lzip','.m3u','.m4a','.m4p','.m4v','.mkv','.mmf','.mng','.mov','.mp3','.mp4','.mpc','.mpeg','.mpeg4','.mpegps','.mpg','.mpkg','.msi','.odt','.ogg',
'.opus','.pdf','.pea','.php','.pkg','.png','.ppt','.pptx','.ps','.psd','.pst','.pxv','.rar','.raw','.rm','.rmvb','.rpm','.rtf','.shar','.sql','.svg','.sxw',
'.tar','.tgz','.tgz','.tiff','.txt','.veg','.vep','.vob','.wav','.webm','.wma','.wmv','.xar','.xls','.xml','.yuv','.zip' );
// the directory where the downloaded files should be stored
protected $dir;
/**
* Constructor
*/
public function __construct($mainurl, $config = array('save' => false, 'filename' => 'dropbox', 'download' => false, 'dir' => __DIR__))
{
if ($this->checkArray($config))
{
// we need more then the normal time to run this script 5 minutes at least.
ini_set('max_execution_time', 500); // TODO this is not the best option I am sure, but for now seems like the only option.
// set main url
$this->mainurl = $mainurl;
// if custom get list is set use it
if (isset($config['get']) && $this->checkArray($config['get']))
{
$this->getfiles = $config['get'];
}
elseif (isset($config['get']) && $this->checkString($config['get']))
{
$this->getfiles = array($config['get']);
}
// if custom excludelist is set use it
if (isset($config['not']) && $this->checkArray($config['not']))
{
$this->notfiles = $config['not'];
}
elseif (isset($config['not']) && $this->checkString($config['not']))
{
$this->notfiles = array($config['not']);
}
// set main folder name
$this->fileName = (isset($config['filename'])) ? md5($this->mainurl.$config['filename']) : md5($this->mainurl.'nofilenamewasset');
// set save switch
$save = (isset($config['save'])) ? $config['save'] : false;
// set download switch
$download = (isset($config['download'])) ? $config['download'] : false;
// make sure the note folder identifiers are complete
$this->notfolders = array_unique(array_merge($this->getfiles,$this->notfiles,$this->notfolders));
// set local directory
$this->dir = (isset($config['dir'])) ? $config['dir'] : __DIR__;
// check if the parching of the drobox files is up to date
if (($json = @file_get_contents($this->fileName.".json")) !== FALSE)
{
$this->files = json_decode($json, true);
}
else
{
// set all folders
$this->parseFolders($this->mainurl, 'VDM_pLeK_h0uEr');
}
// check if we should save the file
if ($save)
{
$this->save();
}
// check if we should download the file
if ($download)
{
$this->download();
}
return true;
}
return false;
}
public function download($dir = null)
{
if ($this->checkArray($this->files))
{
// insure the directory is set
$dir = ($dir) ? $dir : $this->dir;
foreach($this->files as $path => $url)
{
// now setup correct path
$path = str_replace('VDM_pLeK_h0uEr', $dir, $path);
// boom here we go move....
$this->getFile($url, $path);
}
}
}
public function getFile($url, $path)
{
$newfname = $path;
if (($file = @fopen($url, "rb")) !== FALSE)
{
$filename = substr($path, strrpos($path, '/'));
$makePath = str_replace($filename,'',$path);
if (!file_exists($makePath))
{
mkdir($makePath, 0755, true);
}
$newf = fopen($newfname, "wb");
}
else
{
echo 'error! '.$url.' not found';
}
if ($newf)
{
while(!feof($file))
{
fwrite($newf, fread($file, 1024 * 8 ), 1024 * 8 );
}
}
if ($file)
{
fclose($file);
}
if ($newf)
{
fclose($newf);
}
}
public function save($filename = null)
{
if ($this->checkString($filename))
{
// set main folder name
$this->fileName = md5($this->mainurl.$filename);
}
if ($this->checkArray($this->files))
{
$data = json_encode($this->files);
// now save this folders data to a file.
$this->saveJson($data);
return true;
}
return false;
}
protected function saveJson($data)
{
if ($this->checkString($data))
{
/*
for now it will save
the files in the same
directory as the php
file where the class
is called we will have
to change this to suite
your custom needs.
*/
$fp = fopen($this->fileName.'.json', 'w');
fwrite($fp, $data);
fclose($fp);
}
}
protected function parseFolders($url, $foldername)
{
if ($this->checkString($url))
{
// get the page html
if (($html = @file_get_contents($url)) !== FALSE)
{
//Create a new DOM document
$dom = new DOMDocument;
//Parse the HTML. The @ is used to suppress any parsing errors
//that will be thrown if the $html string isn't valid XHTML.
@$dom->loadHTML($html);
//Get all links. You could also use any other tag name here,
//like 'img' or 'table', to extract other tags.
$links = $dom->getElementsByTagName('a');
//Iterate over the extracted links and display their URLs
if ($this->checkObject($links))
{
// the types
$types = array('folders','files');
foreach ($types as $type)
{
// folder bucket
$buket = array();
foreach ($links as $nr => $link)
{
// switch to add link
$add = false;
// get actual link
$href = $link->getAttribute('href');
// only use link reated to type
if ($this->checkArray($this->{'get'.$type}) && $this->checkString($href))
{
foreach ($this->{'get'.$type} as $get)
{
if (!$add)
{
if (strpos($get,'?dl') === false)
{
$get = $get . '?dl=0';
}
if (strpos($href,'https://www.dropbox.com/') !== false && strpos($href,$get) !== false)
{
$add = true;
}
}
}
}
else
{
if (strpos($href,'https://www.dropbox.com/') !== false && strpos($href,'?dl=0') !== false)
{
$add = true;
}
}
// remove if not related to type
if ($this->checkArray($this->{'not'.$type}) && $this->checkString($href) && $add)
{
foreach ($this->{'not'.$type} as $not)
{
if ($add)
{
if (strpos($href,$not) !== false)
{
$add = false;
}
}
}
}
// now add if still related to type
if ($add)
{
if (!in_array($href,$buket))
{
$name = str_replace('?dl=0','',substr($href, strrpos($href, '/') + 1));
if ($type == 'folders' && strpos($name,'.') === false)
{
// parse this folder for more files and sub folders
$this->parseFolders($href, $foldername.'/'.str_replace('?lst','',$name));
$buket[] = $href;
unset($links->$nr);
}
elseif ($type == 'files' && strpos($name,'.') !== false)
{
// Add to file list
$this->files[$foldername.'/'.$name] = str_replace('?dl=0','?dl=1',$href);
$buket[] = $href;
unset($links->$nr);
}
}
}
}
}
}
return true;
}
}
return false;
}
protected function checkObject($object)
{
if (isset($object) && is_object($object) && count($object) > 0)
{
return true;
}
return false;
}
protected function checkArray($array)
{
if (isset($array) && is_array($array) && count($array) > 0)
{
return true;
}
return false;
}
protected function checkString($string)
{
if (isset($string) && is_string($string) && strlen($string) > 0)
{
return true;
}
return false;
}
}
?>

View File

@ -0,0 +1,427 @@
<?php
/**
*
*@version 2.0.0 - September 03, 2014
*@package Component Builder
*@author Llewellyn van de Merwe <http://www.vdm.io>
*@copyright Copyright (C) 2014. All Rights Reserved
*@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
*
**/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
/**
* Dropbox updater component helper
*/
class Dropboxupdater
{
/**
* to see where we are in the prosses
**/
public $progress = array('report' => 0);
/**
* update flag (if false update will not happen)
**/
protected $okay = true;
/**
* the type of linksto update
**/
protected $type;
/**
* allow a forced manual update
**/
protected $runManual;
/**
* Todays date-time
**/
protected $today;
/**
* Next updat date-time
**/
protected $next;
/**
* update method
**/
protected $updateMethod;
/**
* update links
**/
protected $updateLinks = array();
/**
* Listing of dropbox links
**/
protected $listing = array();
/**
* info related to this update
**/
protected $updateInfo;
protected $infoFilePath;
/**
* get the localkey
**/
protected $localkey = false;
/**
* component parameters
**/
protected $app_params;
/**
* everything we want done when initialized
**/
public function __construct()
{
// get params
$this->app_params = JComponentHelper::getParams('com_###component###');
// set local key
$this->localkey = md5($this->app_params->get('link_encryption', 'localKey34fdWEkl'));
}
/**
* update mehtod
**/
public function update($type = false, $runManual = false)
{
if ($type)
{
// start frech
$this->okay = true;
// set type
$this->type = $type;
$this->runManual = $runManual;
// set progress file name
$this->progressFilePath = JPATH_COMPONENT_SITE.'/helpers/'.md5($this->type.'progress'.$this->localkey).'.json';
// what update method is set
$this->setUpdateMethod();
// set the update links
$this->setUpdateLinks();
// set needed dates
if ($this->okay)
{
$this->setDates();
}
// get info data or set if not found
if ($this->okay)
{
$this->setInfoData();
}
// check if update should run now
if ($this->okay)
{
$this->checkUpdateStatus();
}
// set progress
if ($this->okay)
{
$this->saveProgress();
}
// before update save update info incase class is called again
if($this->okay)
{
if ($this->updateInfo->updatenow)
{
// turn update to active
$this->updateInfo->updatenow = false;
$this->updateInfo->updateactive = true;
// now save the date
$this->okay = $this->saveUpdateInfo();
}
else
{
$this->okay = false;
}
}
// run the update if all is okay
if ($this->okay)
{
// set the config
$this->setDropboxConfig();
// set progress
$this->progress['report'] = 30;
$this->saveProgress();
// load the file
JLoader::import('dropbox', JPATH_COMPONENT_SITE.'/helpers');
// okay now update
if ($this->doUpdate())
{
return $this->okay;
}
}
}
return false;
}
/**
* set update mehtod
**/
protected function setUpdateMethod()
{
$method = $this->app_params->get($this->type.'_link_update_method', 0);
if ($this->runManual)
{
// this is a manual method
$this->updateMethod = 'manual';
}
elseif (2 == $method)
{
// this it an auto mehtod
$this->updateMethod = 'auto';
}
else
{
$this->okay = false;
}
}
/**
* set update Links
**/
protected function setUpdateLinks()
{
// the number of links
$numbers = range(1, 4);
// now check if they are set
foreach ($numbers as $number)
{
// set the number to string
$numStr = ###Component###Helper::safeString($number);
// Get the url
$url = $this->app_params->get($this->type.'dropbox'.$numStr, null);
// only load those that are set
if ($url)
{
$this->updateLinks[] = $url;
}
}
// check if we found any
if (!isset($this->updateLinks) || !###Component###Helper::checkArray($this->updateLinks))
{
$this->okay = false;
}
}
/**
* set next update time
**/
protected function setDates()
{
// set todays date/time
$this->today = time();
// set the next update date/time
if ('manual' == $this->updateMethod)
{
// set the date to two days ago to ensure the update runs now
$this->next = strtotime("-2 days");
}
else
{
// based on the auto time we will set the next update date/time
$timer = $this->app_params->get($this->type.'_dropbox_timer', '60');
if ($timer != 0)
{
// Get Next Update Time
$this->next = strtotime('+'.$timer.' minutes', $this->today);
}
// if timer is 0 we should not update
else
{
$this->okay = false;
}
}
}
/**
* set update mehtod
**/
protected function setInfoData()
{
// set the info file name
$fileName = md5($this->type.'info'.$this->localkey);
// set file path
$this->infoFilePath = JPATH_COMPONENT_SITE.'/helpers/'.$fileName.'.json';
if (($json = @file_get_contents($this->infoFilePath)) !== FALSE)
{
$this->updateInfo = json_decode($json);
}
else
{
$this->updateInfo = new stdClass;
$this->updateInfo->nextupdate = 0;
$this->updateInfo->updateactive = false;
$this->updateInfo->updatenow = false;
}
}
/**
* check update status
**/
protected function checkUpdateStatus()
{
// check if there is already an update running
if ($this->updateInfo->updateactive)
{
$this->okay = false;
}
// check if the time has come to do the next update
elseif (('auto' == $this->updateMethod) && ($this->updateInfo->nextupdate > $this->today))
{
$this->okay = false;
}
else
{
$this->updateInfo->updatenow = true;
}
}
/**
* save the update info
**/
protected function saveProgress()
{
return $this->saveJson(json_encode($this->progress),$this->progressFilePath);
}
/**
* save the update info
**/
protected function saveUpdateInfo()
{
return $this->saveJson(json_encode($this->updateInfo),$this->infoFilePath);
}
/**
* update the local listing
**/
protected function doUpdate()
{
// we need more then the normal time to run this script 5 minutes at least.
ini_set('max_execution_time', 500);
// get data of all the urls
foreach ($this->updateLinks as $mainUrl)
{
// set progress
if ($this->progress['report'] < 60)
{
$this->progress['report'] = $this->progress['report'] + 5;
$this->saveProgress();
}
// get ldropbox links
$dropbox = new Dropbox($mainUrl, $this->dropboxConfig);
// set progress
if ($this->progress['report'] < 70)
{
$this->progress['report'] = $this->progress['report'] + 5;
$this->saveProgress();
}
// get the links
if (###Component###Helper::checkArray($dropbox->files))
{
$this->listing = array_merge($this->listing, $dropbox->files);
}
// set progress
if ($this->progress['report'] < 80)
{
$this->progress['report'] = $this->progress['report'] + 5;
$this->saveProgress();
}
unset($dropbox);
}
// now store the new listing
return $this->setNewListing();
}
protected function setNewListing()
{
// set progress
$this->progress['report'] = 100;
$this->saveProgress();
// reset storage
$storeage = array();
// set the listing file name
$fileName = md5($this->type.'listing'.$this->localkey);
// set file path
$listingFilePath = JPATH_COMPONENT_SITE.'/helpers/'.$fileName.'.json';
// now store the new listing
if (###Component###Helper::checkArray($this->listing))
{
// encrypt the urls
$locker = new FOFEncryptAes($this->localkey, 256);
foreach ($this->listing as $folder => $link)
{
$storeage[$folder] = base64_encode($locker->encryptString($link));
}
}
else
{
$this->okay = false;
}
// save the update links.
$this->saveJson(json_encode($storeage),$listingFilePath);
// make sure the update reset
$this->updateInfo->nextupdate = $this->next;
$this->updateInfo->updateactive = false;
$this->updateInfo->updatenow = false;
return $this->saveUpdateInfo();
}
/**
* set the configeration for dropbox class
**/
protected function setDropboxConfig()
{
// reset config
$this->dropboxConfig = array();
// get the legal files set
$getfiles = $this->app_params->get('dropbox_filetypes', null);
if (###Component###Helper::checkArray($getfiles))
{
$this->dropboxConfig['get'] = $getfiles;
}
// set other config settings
$this->dropboxConfig['save'] = false;
$this->dropboxConfig['download'] = false;
}
protected function saveJson($data,$filename)
{
if (###Component###Helper::checkString($data))
{
$fp = fopen($filename, 'w');
fwrite($fp, $data);
fclose($fp);
return true;
}
return false;
}
}

View File

@ -0,0 +1,50 @@
/*! UIkit 2.0.0 | https://www.getuikit.com | (c) 2013 YOOtheme | MIT License */
(function($, UI){
var FormPassword = function(element, options) {
var $this = this, $element = $(element);
if($element.data("formPassword")) return;
this.options = $.extend({}, FormPassword.defaults, options);
this.element = $element.on("click", function(e) {
e.preventDefault();
if($this.input.length) {
var type = $this.input.attr("type");
$this.input.attr("type", type=="text" ? "password":"text");
$this.element.text($this.options[type=="text" ? "lblShow":"lblHide"]);
}
});
$this.input = this.element.next("input").length ? this.element.next("input") : this.element.prev("input");
$this.element.text(this.options[$this.input.is("[type='password']") ? "lblShow":"lblHide"]);
this.element.data("formPassword", this);
};
FormPassword.defaults = {
"lblShow": "Show",
"lblHide": "Hide"
};
UI["formPassword"] = FormPassword;
// init code
$(document).on("click.formpassword.uikit", "[data-uk-form-password]", function(e) {
var ele = $(this);
if (!ele.data("formPassword")) {
e.preventDefault();
var obj = new FormPassword(ele, UI.Utils.options(ele.attr("data-uk-form-password")));
ele.trigger("click");
}
});
})(jQuery, jQuery.UIkit);

3
admin/custom/form-password.min.js vendored Normal file
View File

@ -0,0 +1,3 @@
/*! UIkit 2.0.0 | https://www.getuikit.com | (c) 2013 YOOtheme | MIT License */
(function(t,e){var n=function(e,i){var s=this,o=t(e);o.data("formPassword")||(this.options=t.extend({},n.defaults,i),this.element=o.on("click",function(t){if(t.preventDefault(),s.input.length){var e=s.input.attr("type");s.input.attr("type","text"==e?"password":"text"),s.element.text(s.options["text"==e?"lblShow":"lblHide"])}}),s.input=this.element.next("input").length?this.element.next("input"):this.element.prev("input"),s.element.text(this.options[s.input.is("[type='password']")?"lblShow":"lblHide"]),this.element.data("formPassword",this))};n.defaults={lblShow:"Show",lblHide:"Hide"},e.formPassword=n,t(document).on("click.formpassword.uikit","[data-uk-form-password]",function(i){var s=t(this);s.data("formPassword")||(i.preventDefault(),new n(s,e.Utils.options(s.attr("data-uk-form-password"))),s.trigger("click"))})})(jQuery,jQuery.UIkit);

11
admin/custom/form.js Normal file
View File

@ -0,0 +1,11 @@
jQuery(document).ready(function() {
jQuery('#tour_favorite').click(function() {
if (jQuery(this).attr('rel') == 'no') {
jQuery('#tour_favorite').removeClass('favorite_inactive')
.addClass('favorite_active').attr('rel', 'yes');
} else {
jQuery('#tour_favorite').removeClass('favorite_active')
.addClass('favorite_inactive').attr('rel', 'no');
};
});
});

BIN
admin/custom/grid.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

11
admin/custom/iframeheight.min.js vendored Normal file

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More