Compare commits

...

55 Commits
5.x ... 4.x

Author SHA1 Message Date
443a2aac58
Release of v4.0.3-alpha1
Add push option to powers area.
2024-08-20 22:33:47 +02:00
b8b885444c
Release of v4.0.2
Fix site view form missing classes in J4+. Fix permissions tab in items in J4+. Fix site display controller checkEditId function in J4+. Add class methods to the HtmlView classes in J4+. Fix broken toolbar call in HtmlView in J4+. Fix missing scripts and styles fields and methods in the site admin view model. Update subform field layout across JCB for cleaner look. Remove expansion feature. Fix helper area. Fix database mySql update in J4+. Remove phpspreadsheet completely from Joomla 4+. Add option to use powers in preflight event in the installer class. Fix abstract schema class function check default index warring. Fix dynamicGet so that the table values will load again. #1155. Add more pure JS to the dynamic get area. Add native plugin builder for Joomla 4 & 5. Add basic API for admin views.
2024-08-16 19:21:02 +02:00
277d6e8355
Release of v4.0.2-beta4
Add native plugin builder for Joomla 4 & 5.
2024-08-15 01:36:43 +02:00
ae1c89a15d
Release of v4.0.2-beta3
Add more pure JS to the dynamic get area.
2024-08-01 23:00:32 +02:00
ab59720c50
Release of v4.0.2-beta2
Fix dynamicGet so that the table values will load again. #1155.
2024-08-01 18:09:28 +02:00
59da3fa120
Release of v4.0.2-beta1
Fix abstract schema class function check default index warring.
2024-08-01 10:05:40 +02:00
f5011dd707
Release of v4.0.2-alpha3
Fix database mySql update in J4+. Remove phpspreadsheet completely from Joomla 4+. Add option to use powers in preflight event in the installer class.
2024-07-27 22:51:45 +02:00
64adfe0a6f
Release of v4.0.2-alpha2
Fix missing scripts and styles fields and methods in the site admin view model. Update subform field layout across JCB for cleaner look. Remove expansion feature. Fix helper area.
2024-07-26 18:33:32 +02:00
6a63389808
Release of v4.0.2-alpha1
Fix site view form missing classes in J4+. Fix permissions tab in items in J4+. Fix site display controller checkEditId function in J4+. Add class methods to the HtmlView classes in J4+. Fix broken toolbar call in HtmlView in J4+.
2024-07-26 15:33:19 +02:00
c7bd2952a8
Release of v4.0.1
Fix auto build from SQL in Joomla 4. Fix permission issue for admin views. Add in JCB gitea push feature to help maintain JCB core features. Add extending options to interfaces. Change the extendsinterfaces field to allow null, #1139. Update the Schema class to also update null mismatching if needed. Add repositories for better integration with gitea. Refactored the Data classes. Add new Data classes. Add new subform classes. Fix registry class methods return type. Update all list and custom fields to use the new layouts. Add push options to Joomla Power. Complete the Joomla Power Init and Reset features. Fix Gitea Contents class functions. Fix subform set methods. Improved the Joomla Power Push path. Fix the metadata, metadesc, metakey database issue. Fix function mismatch call in the compiler power class. Fix init feature to only add missing powers. Fix controller postSaveHook function, for correct model class in Joomla 4 and 5. Fix app instances (mismatch) in the install script and schema class when installing from CLI. Add option to use placeholders in Joomla Power namespaces. Fix subform layout of uikit in JCB.
2024-07-20 22:39:22 +02:00
8776453b6f
Release of v4.0.1-rc1
Final testing for stable release!.
2024-07-19 17:28:59 +02:00
a49ded4918
Release of v4.0.1-beta5
Add option to use placeholders in Joomla Power namespaces.
2024-07-19 12:35:10 +02:00
6b5b42e2eb
Update on v4.0.1-beta4 (changes towards the next release)
Here's an update on the current version, which includes changes towards the next release still in development.
2024-07-18 21:10:48 +02:00
1e24045e0d
Release of v4.0.1-beta4
Fix app instances (mismatch) in the install script and schema class when installing from CLI.
2024-07-18 20:48:12 +02:00
d4dc3b4868
Release of v4.0.1-beta3
Fix init feature to only add missing powers. Fix controller postSaveHook function, for correct model class in Joomla 4 and 5.
2024-07-18 17:11:01 +02:00
d567f593e2
Update on v4.0.1-beta2 (changes towards the next release)
Here's an update on the current version, which includes changes towards the next release still in development.
2024-07-18 14:57:56 +02:00
eedebc4043
Release of v4.0.1-beta2
Fix function mismatch call in the compiler power class.
2024-07-17 15:57:44 +02:00
582d6535c7
Release of v4.0.1-beta1
Fix subform set methods. Improved the Joomla Power Push path. Fix the metadata, metadesc, metakey database issue.
2024-07-17 02:38:33 +02:00
8ef7c8a4b3
Release of v4.0.1-alpha7
Add push options to Joomla Power. Complete the Joomla Power Init and Reset features. Fix Gitea Contents class functions. Last Alpha release (feature block).
2024-07-08 22:54:12 +02:00
017d6a6299
Release of v4.0.1-alpha6
Add new subform classes. Fix registry class methods return type. Update all list and custom fields to use the new layouts.
2024-06-28 03:50:30 +02:00
5a2e137f31
Release of v4.0.1-alpha5
Add repositories for better integration with gitea. Refactored the Data classes. Add new Data classes.
2024-06-21 01:37:13 +02:00
f36922f9a1
Release of v4.0.1-alpha4
Change the extendsinterfaces field to allow null, #1139. Update the Schema class to also update null mismatching if needed.
2024-06-07 23:07:37 +02:00
4d544598e9
Release of v4.0.1-alpha3
Add in JCB gitea push feature to help maintain JCB core features. Add extending options to interfaces.
2024-06-05 16:38:32 +02:00
37c3a9a670
Release of v4.0.1-alpha2
Fix permission issue for admin views.
2024-05-16 16:06:17 +02:00
e6a2d4a404
Release of v4.0.1-alpha1
Fix auto build from SQL in Joomla 4.
2024-05-13 12:22:56 +02:00
a1c04bde51
Release of v4.0.0
Fix the plug-in installer script builder bug #1067. Fix Event triggers for Joomla 4 and 5 builds. Add fix to the update script, so that upgrading JCB from Joomla 3 to 4 will not fail. Fix plugin field selection. Fix plugin params tab layout. Add issue templates. Force autoloader to always load. Fix repeatable layout #1076. Add Factory class to the J5 Event class. #1093. Fix customfilelist field to conform to the new namespacing conventions. #1094. Add menus for languages, servers, get snippets to J4 #1095. Fix [Set String Value] in placeholder table to store the value as a base64 string. Fix the search area layout. Fix the search area code line selection. Fix the input edit button for custom fields. Add the new layout to list fields (GUI UPDATE). Start fixing the field view in Joomla 4. #1096. Add power path override option on component level. Fix the sql build feature. #1032. Add the compiler menu back. Fix the CustomfolderlistField #1094. Add view list and single name fix. Add component code name fix. Add reset list of powers. Add Joomla powers for namespace dynamic management. Add fallback option to ensure that all JCB tables and fields exist. Move the powers autoloader to its own file. Fix the media field size limitation. #1109. Add dynamic datatype update to schema field check. Fix version_update column size. Improved the Schema Table update engine. Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses. Remove the SQL update, to only use the Schema updates of table columns to avoid collusion. Fix the admin.css file loading on dashboard. #1112. Fix dynamic get data-type default to 0. #1110. Fix the missing model call. #1114. Fix the wrong $date call. #1115. Add the BaseDatabaseModel use statement to custom site view controller. #1119. Fix the customfolderlist field. #1120.
2024-05-10 18:35:33 +02:00
a0df7bc893
Release of v4.0.0-rc6
Fix the customfolderlist field. #1120.
2024-05-06 07:43:47 +02:00
43f7b5c54d
Release of v4.0.0-rc5
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses. Remove the SQL update, to only use the Schema updates of table columns to avoid collusion. Fix the admin.css file loading on dashboard. #1112. Fix dynamic get data-type default to 0. #1110. Fix the missing model call. #1114. Fix the wrong $date call. #1115. Add the BaseDatabaseModel use statement to custom site view controller. #1119.
2024-05-03 07:52:32 +02:00
a9483fc662
Release of v4.0.0-rc4
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses. Remove the SQL update, to only use the Schema updates of table columns to avoid collusion. Fix the admin.css file loading on dashboard. #1112. Fix dynamic get data-type default to 0. #1110. Fix the missing model call. #1114.
2024-05-03 07:12:58 +02:00
d226e25e4a
Release of v4.0.0-rc3
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses. Remove the SQL update, to only use the Schema updates of table columns to avoid collusion. Fix the admin.css file loading on dashboard. #1112. Fix dynamic get data-type default to 0. #1110.
2024-04-30 19:16:21 +02:00
13dedb7b0e
Release of v4.0.0-rc2
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses. Remove the SQL update, to only use the Schema updates of table columns to avoid collusion.
2024-04-30 10:42:14 +02:00
0ec95282ee
Release of v4.0.0-rc1
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses.
2024-04-27 15:51:57 +02:00
9e78f8379e
Release of v4.0.0-beta5
Fix the media field size limitation. #1109. Add dynamic datatype update to schema field check. Fix version_update column size. Improved the Schema Table update engine.
2024-04-24 21:31:12 +02:00
5e52db0d54
Release of v4.0.0-beta4
Add fallback option to ensure that all JCB tables and fields exist. Move the powers autoloader to its own file.
2024-04-22 01:07:22 +02:00
e146195159
Release of v4.0.0-beta3
Add Joomla powers for namespace dynamic management.
2024-04-16 20:03:38 +02:00
1be1608deb
Removes a invalid question from the issue_template's a-bug.yml file. 2024-04-09 19:08:35 +02:00
738eb95f21
Release of v4.0.0-beta2
Add view list and single name fix. Add component code name fix. Add reset list of powers.
2024-04-09 13:49:29 +02:00
6cb5f05f1e
Release of v4.0.0-beta1
Add the compiler menu back. Fix the CustomfolderlistField #1094.
2024-04-07 11:54:20 +02:00
359b4dd92b
Release of v4.0.0-alpha8
Add power path override option on component level. Fix the sql build feature. #1032.
2024-04-06 23:29:23 +02:00
23af2f0b29
Release of v4.0.0-alpha7
Fix the search area layout. Fix the search area code line selection. Fix the input edit button for custom fields. Add the new layout to list fields (GUI UPDATE). Start fixing the field view in Joomla 4. #1096.
2024-03-26 22:31:36 +02:00
543fb2b2e2
Release of v4.0.0-alpha6
Fix [Set String Value] in placeholder table to store the value as a base64 string.
2024-03-20 15:35:43 +02:00
e8c2c17dc7
Release of v4.0.0-alpha5
Add Factory class to the J5 Event class. #1093. Fix customfilelist field to conform to the new namespacing conventions. #1094. Add menus for languages, servers, get snippets to J4 #1095.
2024-03-20 14:20:20 +02:00
9fe4823468
Release of v4.0.0-alpha4
Fix plugin field selection. Fix plugin params tab layout. Add issue templates. Force autoloader to always load. Fix repeatable layout #1076.
2024-03-15 12:12:09 +02:00
d5a2f70c0c Adds and updates the questionare of g-security.yml 2024-03-14 09:05:59 +00:00
7e93203b93 Adds and updates the questionare of e-performance.yml 2024-03-14 09:05:59 +00:00
09a303b309 Adds and updates the questionare of c-task.yml 2024-03-14 09:05:59 +00:00
279b8d1887 Adds and updates the questionare of a-bug.yml 2024-03-14 09:05:59 +00:00
2d0ac255a8
Adds an issue template for reporting the refactoring of specific locations in JCB. 2024-03-14 10:11:04 +02:00
b2995aec40
Adds an issue template for the improvement of documentation in JCB. 2024-03-14 10:09:21 +02:00
a7d12c7b38
Adds a issue template for reporting enhancements to JCB. 2024-03-14 10:06:50 +02:00
2b9973efae
Release of v4.0.0-alpha3
Add fix to the update script, so that upgrading JCB from Joomla 3 to 4 will not fail.
2024-03-12 12:50:20 +02:00
d590ada95f
Stable release of v4.0.0-alpha2
Fix the plug-in installer script builder bug #1067. Fix Event triggers for Joomla 4 and 5 builds.
2024-03-11 18:22:04 +02:00
a7ade71c06
Update on v4.0.0-alpha1 (changes towards the next release)
Here's an update on the current version, which includes changes towards the next release still in development.
2024-03-11 17:01:01 +02:00
c8540f2efc
Update on v4.0.0-alpha1 (beta for next version)
Here's an update on the current version, which includes changes towards the next release still in beta.
2024-03-11 16:14:23 +02:00
c660bb6280
Stable release of v4.0.0-alpha1
First alpha release of Component Builder towards Joomla 4 (very unstable...).
2024-03-09 21:47:28 +02:00
4222 changed files with 366989 additions and 416342 deletions

View File

@ -0,0 +1,165 @@
name: Bug Report
about: Draft a report to aid in our Debugging efforts.
title: "[BUG]: "
labels:
- bug
body:
- type: markdown
attributes:
value: |
We value your effort in reporting an bug! Your feedback is essential for us to address and fix the problem.
- type: textarea
id: what-happened
attributes:
label: What Happened?
description: Please provide a detailed description of the issue and explain what outcome you anticipate.
placeholder: Describe the issue you experienced.
value: ""
validations:
required: true
- type: textarea
id: steps_to_reproduce
attributes:
label: Steps to reproduce the Bug
description: Please provide a detailed description of the steps to reproduce the issue you experienced.
placeholder: Describe the steps to reproduce the issue.
value: ""
validations:
required: true
- type: markdown
attributes:
value: |
# Environment Details
- type: input
id: joomla_version_compiling
attributes:
label: Which Joomla version are you compiling in?
placeholder: e.g., v4.4.3,
validations:
required: true
- type: input
id: php_version_compiling
attributes:
label: Which PHP version are you compiling in?
placeholder: e.g., v8.1,
validations:
required: true
- type: input
id: joomla_versions_targeting
attributes:
label: Which Joomla versions are you targeting?
placeholder: e.g., v5.0.3,
validations:
required: true
- type: input
id: php_version_targeting
attributes:
label: Which PHP version are you targeting?
placeholder: e.g., 8.2
validations:
required: true
- type: input
id: apache_version_using
attributes:
label: Which Web server is JCB running on?
description: Please provide the full name of the web server on which you are running JCB.
placeholder: e.g., Apache 2.4
validations:
required: true
- type: input
id: mysql_version_using
attributes:
label: Which Relational Database is JCB running on?
description: Please provide the full name of the database on which you are running JCB.
placeholder: e.g., Mysql 8.0, MariaDB 10.6,
validations:
required: true
- type: input
id: os
attributes:
label: Which OS is JCB running on?
description: Please provide the full name of the OS on which you are running JCB.
placeholder: e.g. CentOS 8 sever,
value: ""
validations:
required: true
- type: input
id: jcb_version
attributes:
label: Which JCB version are you using?
description: Please provide the full name of the JCB version you are using.
placeholder: e.g., v5.0.0-alpha3
validations:
required: true
- type: dropdown
id: area
attributes:
label: Where in JCB did this issue occur?
multiple: true
options:
- Compilation of a component
- Installation of a component
- Installation JCB pkg
- Installation of JCB plugins
- Compiler(admin_view)
- Dashboard(admin_view)
- Joomla Components(admin_views)
- Joomla Component(admin_view)
- Joomla Modules(admin_views)
- Joomla Module(admin_view)
- Joomla Plugins(admin_views)
- Joomla Plugin(admin_view)
- Power(admin_view)
- Powers(admin_views)
- Search(admin_view)
- Admin View(admin_view)
- Admin Views(admin_views)
- Custom Admin Views(admin_views)
- Site View(admin_view)
- Site Views(admin_views)
- Template(admin_view)
- Templates(admin_views)
- Layout(admin_view)
- Layouts(admin_views)
- Dynamic Get(admin_view)
- Dynamic Gets(admin_views)
- Custom Code(admin_view)
- Custom Codes(admin_views)
- Placeholder(admin_view)
- Placeholders(admin_views)
- Library(admin_view)
- Libraries(admin_views)
- Snippet(admin_view)
- Snippets(admin_views)
- Validation Rule(admin_view)
- Validation Rules(admin_views)
- Field(admin_view)
- Fields(admin_views)
- Fieldtypes(admin_views)
- Language Translations(admin_views)
- Server(admin_view)
- Servers(admin_views)
- Help Documents(admin_views)
- Other
validations:
required: true
- type: dropdown
id: browsers
attributes:
label: On which browsers did you encounter the issue?
multiple: true
options:
- Firefox
- Chrome
- Microsoft Edge
- Safari
- Opera
- Brave
- Vivaldi
validations:
required: true
- type: textarea
id: comments
attributes:
label: Additional Comments
description: Feel free to include any further comments or pertinent details that might assist us.

View File

@ -0,0 +1,81 @@
name: Enhancement Request
about: Suggest an idea for JCB
title: "[ENHANCEMENT]: "
labels:
- enhancement
body:
- type: markdown
attributes:
value: |
Thank you for suggesting an enhancement! Your input is crucial for our innovation and progress. To assist us better, please share detailed information about your idea.
- type: textarea
id: enhancement-details
attributes:
label: Enhancement Details
description: Could you detail the enhancement you're suggesting? Explain the issue it addresses or the new feature it introduces.
placeholder: Please give an in-depth explanation of your proposed enhancement.
validations:
required: true
- type: markdown
attributes:
value: |
# Context and Priority
- type: dropdown
id: area
attributes:
label: Which part of the extension will be affected by this enhancement?
multiple: true
options:
- Compilation of component
- Installation of a component
- Installation JCB pkg
- Installation of JCB plugins
- Compiler(admin_view)
- Dashboard(admin_view)
- Joomla Components(admin_views)
- Joomla Component(admin_view)
- Joomla Modules(admin_views)
- Joomla Module(admin_view)
- Joomla Plugins(admin_views)
- Joomla Plugin(admin_view)
- Power(admin_view)
- Powers(admin_views)
- Search(admin_view)
- Admin View(admin_view)
- Admin Views(admin_views)
- Custom Admin Views(admin_views)
- Site View(admin_view)
- Site Views(admin_views)
- Template(admin_view)
- Templates(admin_views)
- Layout(admin_view)
- Layouts(admin_views)
- Dynamic Get(admin_view)
- Dynamic Gets(admin_views)
- Custom Code(admin_view)
- Custom Codes(admin_views)
- Placeholder(admin_view)
- Placeholders(admin_views)
- Library(admin_view)
- Libraries(admin_views)
- Snippet(admin_view)
- Snippets(admin_views)
- Validation Rule(admin_view)
- Validation Rules(admin_views)
- Field(admin_view)
- Fields(admin_views)
- Fieldtypes(admin_views)
- Language Translations(admin_views)
- Server(admin_view)
- Servers(admin_views)
- Help Documents(admin_views)
- Other
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Supply additional context or screenshots related to the enhancement request in this space.
validations:
required: false

View File

@ -0,0 +1,45 @@
name: Task
about: Create a task for project management
title: "[TASK]: "
labels:
- task
body:
- type: markdown
attributes:
value: |
Thanks for setting up the task! Tasks assist us in arranging and ranking our work. Kindly provide comprehensive details about the task for clarity and efficient tracking.
- type: textarea
id: task-details
attributes:
label: Task Details
description: Please describe the task. What are the specific actions required?
placeholder: Provide a detailed description of the task.
validations:
required: true
- type: markdown
attributes:
value: |
# Task Context and Priority
- type: textarea
id: task-environment
attributes:
label: Task environment
description: Please provide the details of the environment in which this task will be completed.
placeholder: Describe the environment applicable to the task.
validations:
required: true
- type: textarea
id: task-objective
attributes:
label: Task Objective
description: What's the aim or purpose of this task? How will it contribute to the project or system's success?
placeholder: Describe the goal and anticipated result of the task.
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Please share any extra context, files, or screenshots that could aid in comprehending or carrying out the task.
validations:
required: false

View File

@ -0,0 +1,37 @@
name: Documentation
about: Propose improvements to the documentation or highlight any issues found within it.
title: "[DOCUMENTATION]: "
labels:
- documentation
body:
- type: markdown
attributes:
value: |
We appreciate your input on our documentation! Clear and comprehensive documentation plays a vital role in enabling users to effectively interact with our systems. To assist us in making improvements, kindly offer thorough details regarding your suggestion or the specific problem you've encountered.
- type: textarea
id: documentation-details
attributes:
label: Documentation Details
description: Please explain the specific problem with the documentation or the improvements you recommend. Is it a missing topic, unclear instructions, outdated content, or something else?
placeholder: Detail the issue with the documentation or suggest improvements..
validations:
required: true
- type: markdown
attributes:
value: |
# Specific Context
- type: textarea
id: expected-outcome
attributes:
label: Expected Outcome
description: What outcomes do you anticipate from this change in documentation? How will it benifit the users or enhance the project?
placeholder: Explain the expected result of this change in the documentation.
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Share any extra details, files, or screenshots that could help in understanding or applying the documentation change.
validations:
required: false

View File

@ -0,0 +1,61 @@
name: Performance Issue
about: Recommend or propose performance improvements
title: "[PERFORMANCE]: "
labels:
- performance
body:
- type: markdown
attributes:
value: |
Appreciation for tackling performance challenges! Optimizing performance is vital for our system's efficiency and the user experience. Could you offer more comprehensive details to aid in identifying and resolving the suggested performance issue or improvement?
- type: textarea
id: performance-details
attributes:
label: Performance Details
description: Please outline the performance problem or the enhancements you propose. Is it related to speed, resource usage, responsiveness, or something else?
placeholder: Offer an in-depth explanation of the performance challenge or improvement.
validations:
required: true
- type: markdown
attributes:
value: |
# Affected Systems and Context
- type: textarea
id: performance-environment
attributes:
label: Environment in which performance issue occurs
description: Provide a detailed description of the environment in which you are experiencing this perforamnce issue.
placeholder: Describe the environment of the preformance issue.
validations:
required: true
- type: textarea
id: replication-steps
attributes:
label: Steps to Replicate
description: If possible, share a step-by-step guide to replicate the performance problem.
placeholder: Explain how to replicate the problem.
validations:
required: false
- type: textarea
id: impact-assessment
attributes:
label: Impact Assessment
description: How does the performance problem impact the system or its users? How severe is its effect?
placeholder: Explain the impact of the performance problem.
validations:
required: true
- type: textarea
id: proposed-solutions
attributes:
label: Proposed Solutions or Ideas
description: If you have any suggestions or ideas for resolving the performance problem, please share them here.
placeholder: Share any potential solutions or improvement problem.
validations:
required: false
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Provide any additional context, benchmarks, logs, or screenshots that might help in understanding or addressing the performance problem.
validations:
required: false

View File

@ -0,0 +1,45 @@
name: Refactoring Task
about: Recommend or identify the necessity for code refactoring.
title: "[REFACTOR]: "
labels:
- refactor
body:
- type: markdown
attributes:
value: |
We appreciate your commitment to enhancing the maintainability and quality of our codebase! Code refactoring plays a crucial role in ensuring our system remains efficient and easy to manage. To assist us effectively, please share comprehensive details about the refactoring task you are suggesting or identifying.
- type: textarea
id: refactoring-details
attributes:
label: Refactoring Details
description: Outline the refactoring task, specifying which code segment requires attention and the reasons behind this need. What improvements are expected from this refactoring?
placeholder: Provide an in-depth explanation of the refactoring task?
validations:
required: true
- type: markdown
attributes:
value: |
# Affected Components and Context
- type: textarea
id: area
attributes:
label: Which file or area of JCB needs refactoring?
description: Which area in JCB should be refactored?
placeholder: Give a road map where the refactoring should take place.
validations:
required: true
- type: textarea
id: expected-outcome
attributes:
label: Expected Outcome
description: What benefits do you anticipate from this refactoring? How will it enhance the codebase or overall system?
placeholder: Explain the expected results of this refactoring.
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Share any further details or information, like code snippets, that could aid in comprehending or executing the refactoring task.
validations:
required: false

View File

@ -0,0 +1,38 @@
name: Security Issue
about: Identify a possible security risk.
title: "[SECURITY]: "
labels:
- security
body:
- type: markdown
attributes:
value: |
**⚠️ CRITICAL: Avoid sharing any sensitive or confidential details in this message.** Should you suspect a security flaw, please contact us directly at [joomla@vdm.io].
- type: textarea
id: security-general-description
attributes:
label: General Description
description: Offer a broad overview of the security concern, ensuring not to disclose any sensitive information.
placeholder: Provide a general description of the security problem.
validations:
required: true
- type: markdown
attributes:
value: |
# Affected Systems
- type: textarea
id: security-environment
attributes:
label: Environment affected by security issue.
description: Give a general description of the environment affected by this security issue.
placeholder: Describe the affected environment.
validations:
required: true
- type: textarea
id: non-sensitive-details
attributes:
label: Non-Sensitive Details
description: If applicable, please offer further non-sensitive information or general observations regarding the security concern.
placeholder: Provide any relevant non-sensitive details or observations.
validations:
required: false

View File

@ -1,61 +1,113 @@
# v3.1.28 # v4.0.3-alpha1
- Updates PHPSecLib. - Add push option to powers area
- Fixed connection failure to remote server.
- Adds overriding of back-folder and git-folder on component level.
# v3.1.27 # v4.0.2
- Adds better remote repository management for the super power features. - Fix site view form missing classes in J4+
- Fixes #1014 so that powers are added to components. - Fix permissions tab in items in J4+
- Fix site display controller checkEditId function in J4+
- Add class methods to the HtmlView classes in J4+
- Fix broken toolbar call in HtmlView in J4+
- Fix missing scripts and styles fields and methods in the site admin view model
- Update subform field layout across JCB for cleaner look
- Remove expansion feature
- Fix helper area
- Fix database mySql update in J4+
- Remove phpspreadsheet completely from Joomla 4+
- Add option to use powers in preflight event in the installer class
- Fix abstract schema class function check default index warring
- Fix dynamicGet so that the table values will load again. #1155
- Add more pure JS to the dynamic get area
- Add native plugin builder for Joomla 4 & 5
- Add basic API for admin views
# v3.1.26 # v4.0.1
- Fixed changelog direction so newest changes is listed at top of the file. - Fix auto build from SQL in Joomla 4.
- Finished the init function of super powers. - Fix permission issue for admin views.
- Adds rest function inside super power. - Add in JCB gitea push feature to help maintain JCB core features.
- Adds super powers to all templates. - Add extending options to interfaces.
- Updates many helper class methods to now use the utility classes. - Change the extendsinterfaces field to allow null, #1139
- Adds the `spl_autoload_register` method to the component entry file (as-well). - Update the Schema class to also update null mismatching if needed
- Moved most methods from the compiler fields class to powers. #955 - Add repositories for better integration with gitea
- Refactored many new builder classes from the registry class. - Refactored the Data classes
- Converted the Content class to two builder classes. - Add new Data classes
- Adds option to add additional templates to a module. - Add new subform classes
- Resolves #1002 by adding STRING instead of WORD. - Fix registry class methods return type
- Ported the FOF encryption class into Powers. https://git.vdm.dev/joomla/fof - Update all list and custom fields to use the new layouts
- Changed all CSS and JS to use `JHtml::_(` instead of `$this->document->` in compiler code. - Add push options to Joomla Power
- Adds option to turn jQuery off if UIKIT 3 is added. - Complete the Joomla Power Init and Reset features
- Adds option to auto write injection boilerplate code in Powers area. - Fix Gitea Contents class functions
- Adds option to auto write service provider boilerplate code in the Powers area. - Fix subform set methods
- Improved the `getDynamicContent` method and all banner locations to fetch from https://git.vdm.dev/joomla/jcb-external/ instead. - Improved the Joomla Power Push path
- Major stability improvements all over the new powers complier classes. - Fix the metadata, metadesc, metakey database issue
- New [base Registry class](https://git.vdm.dev/joomla/super-powers/src/branch/master/src/7e822c03-1b20-41d1-9427-f5b8d5836af7) has been created specially for JCB. - Fix function mismatch call in the compiler power class.
- Remember to update all plug-ins with this version update (use the package). - Fix init feature to only add missing powers
- Fix controller postSaveHook function, for correct model class in Joomla 4 and 5
- Fix app instances (mismatch) in the install script and schema class when installing from CLI
- Add option to use placeholders in Joomla Power namespaces.
- Fix subform layout of uikit in JCB
# v3.1.24 # v4.0.0
- Fix the update server #978 issue. - Fix the plug-in installer script builder bug #1067
- Fixed the change log to load all entries, not just the last one. - Fix Event triggers for Joomla 4 and 5 builds.
- Fixed #983 so that database updates are created when adding a new adminview - Add fix to the update script, so that upgrading JCB from Joomla 3 to 4 will not fail.
- Moved a few builder arrays to the Compiler Registry - Fix plugin field selection
- Adds super powers to JCB - Fix plugin params tab layout
- Adds Gitea API library - Add issue templates
- Improves Power filters - Force autoloader to always load.
- Fix #991 to add the Utilities service class - Fix repeatable layout #1076
- Adds Superpower Key (SPK) replacement feature - Add Factory class to the J5 Event class. #1093
- Adds Superpower search (GREP) feature - Fix customfilelist field to conform to the new namespacing conventions. #1094
- Adds Power Insert/Update Classes - Add menus for languages, servers, get snippets to J4 #1095
- Fix #995 that all update sites are using the correct URL - Fix [Set String Value] in placeholder table to store the value as a base64 string.
- Fix the search area layout.
- Fix the search area code line selection.
- Fix the input edit button for custom fields.
- Add the new layout to list fields (GUI UPDATE)
- Start fixing the field view in Joomla 4. #1096
- Add power path override option on component level.
- Fix the sql build feature. #1032
- Add the compiler menu back.
- Fix the CustomfolderlistField #1094
- Add view list and single name fix.
- Add component code name fix.
- Add reset list of powers.
- Add Joomla powers for namespace dynamic management.
- Add fallback option to ensure that all JCB tables and fields exist.
- Move the powers autoloader to its own file.
- Fix the media field size limitation. #1109
- Add dynamic datatype update to schema field check.
- Fix version_update column size.
- Improved the Schema Table update engine.
- Improved the Schema Table update engine (more).
- Fix autoloader timing, and loading.
- Implement the Joomla Powers in JCB code, to move away from JClasses.
- Remove the SQL update, to only use the Schema updates of table columns to avoid collusion.
- Fix the admin.css file loading on dashboard. #1112
- Fix dynamic get data-type default to 0. #1110
- Fix the missing model call. #1114
- Fix the wrong $date call. #1115
- Add the BaseDatabaseModel use statement to custom site view controller. #1119
- Fix the customfolderlist field. #1120
# v3.1.19 # v3.2.3
- We fixed #972 so that custom code (in the header) will be added after the power namespaces - Fix site view form missing classes in J4+
- We added a message to show when a server move failed - Fix permissions tab in items in J4+
- We fixed the BaseConfig to not use '_' as separator - Fix site display controller checkEditId function in J4+
- We fixed the footable loading issue - Add class methods to the HtmlView classes in J4+
- We removed the need for passing placeholders by reference - Fix broken toolbar call in HtmlView in J4+
- We added the option to generate a CHANGELOG - Fix missing scripts and styles fields and methods in the site admin view model
- We fixed the server class to load new client if server details changed. - Update subform field layout across JCB for cleaner look
- We fixed the readme placeholder issue #978. - Remove expansion feature
- We fixed the empty server url issue #978. - Fix helper area
- Fixed Package import to now use the phplibsec version 3 - Fix database mySql update in J4+
- Remove phpspreadsheet completely from Joomla 4+
- Add option to use powers in preflight event in the installer class
- Fix abstract schema class function check default index warring
- Fix dynamicGet so that the table values will load again. #1155
- Keep jQuery in dynamicGet area for Joomla 3
- Add native plugin builder for Joomla 4 & 5

View File

@ -0,0 +1,60 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// No direct access to this file
defined('_JEXEC') or die;
// register additional namespace
spl_autoload_register(function ($class) {
// project-specific base directories and namespace prefix
$search = [
'libraries/vendor_jcb/VDM.Joomla.Gitea' => 'VDM\\Joomla\\Gitea',
'libraries/vendor_jcb/VDM.Joomla.FOF' => 'VDM\\Joomla\\FOF',
'libraries/vendor_jcb/VDM.Joomla' => 'VDM\\Joomla',
'libraries/vendor_jcb/VDM.Minify' => 'VDM\\Minify',
'libraries/vendor_jcb/VDM.Psr' => 'VDM\\Psr'
];
// Start the search and load if found
$found = false;
$found_base_dir = "";
$found_len = 0;
foreach ($search as $base_dir => $prefix)
{
// does the class use the namespace prefix?
$len = strlen($prefix);
if (strncmp($prefix, $class, $len) === 0)
{
// we have a match so load the values
$found = true;
$found_base_dir = $base_dir;
$found_len = $len;
// done here
break;
}
}
// check if we found a match
if (!$found)
{
// not found so move to the next registered autoloader
return;
}
// get the relative class name
$relative_class = substr($class, $found_len);
// replace the namespace prefix with the base directory, replace namespace
// separators with directory separators in the relative class name, append
// with .php
$file = __DIR__ . '/' . $found_base_dir . '/src' . str_replace('\\', '/', $relative_class) . '.php';
// if the file exists, require it
if (file_exists($file))
{
require $file;
}
});

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +1,15 @@
# Joomla Component Builder ([JCB](https://www.joomlacomponentbuilder.com)) # Joomla Component Builder ([JCB](https://www.joomlacomponentbuilder.com))
This is a [Joomla 3.x](https://extensions.joomla.org/extension/component-builder/) component. [__See In Action__](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) This is a [Joomla 4.x](https://extensions.joomla.org/extension/component-builder/) component. [__See In Action__](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
![Component Builder image](https://git.vdm.dev/joomla/Component-Builder/raw/branch/master/admin/assets/images/jcb-banner.jpg "The Component Builder") ![Component Builder image](https://git.vdm.dev/joomla/Component-Builder/raw/branch/5.x/admin/assets/images/jcb-banner.jpg "The Component Builder")
The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time. The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time.
Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.28) with **ALL** its features and **ALL** concepts totally open-source and free! You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (4.0.3-alpha1) with **ALL** its features and **ALL** concepts totally open-source and free!
> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
@ -144,14 +144,14 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder)
+ *First Build*: 30th April, 2015 + *First Build*: 30th April, 2015
+ *Last Build*: 24th October, 2023 + *Last Build*: 20th August, 2024
+ *Version*: 3.1.28 + *Version*: 4.0.3-alpha1
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt + *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **635155** + *Line count*: **828072**
+ *Field count*: **2047** + *Field count*: **2098**
+ *File count*: **4731** + *File count*: **5739**
+ *Folder count*: **436** + *Folder count*: **606**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io) > Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -1,15 +1,15 @@
# Joomla Component Builder ([JCB](https://www.joomlacomponentbuilder.com)) # Joomla Component Builder ([JCB](https://www.joomlacomponentbuilder.com))
This is a [Joomla 3.x](https://extensions.joomla.org/extension/component-builder/) component. [__See In Action__](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) This is a [Joomla 4.x](https://extensions.joomla.org/extension/component-builder/) component. [__See In Action__](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
![Component Builder image](https://git.vdm.dev/joomla/Component-Builder/raw/branch/master/admin/assets/images/jcb-banner.jpg "The Component Builder") ![Component Builder image](https://git.vdm.dev/joomla/Component-Builder/raw/branch/5.x/admin/assets/images/jcb-banner.jpg "The Component Builder")
The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time. The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time.
Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.28) with **ALL** its features and **ALL** concepts totally open-source and free! You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (4.0.3-alpha1) with **ALL** its features and **ALL** concepts totally open-source and free!
> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
@ -144,14 +144,14 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder)
+ *First Build*: 30th April, 2015 + *First Build*: 30th April, 2015
+ *Last Build*: 24th October, 2023 + *Last Build*: 20th August, 2024
+ *Version*: 3.1.28 + *Version*: 4.0.3-alpha1
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt + *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **635155** + *Line count*: **828072**
+ *Field count*: **2047** + *Field count*: **2098**
+ *File count*: **4731** + *File count*: **5739**
+ *Folder count*: **436** + *Folder count*: **606**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io) > Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -4,8 +4,6 @@
<action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" /> <action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" />
<action name="core.options" title="JACTION_OPTIONS" description="JACTION_OPTIONS_COMPONENT_DESC" /> <action name="core.options" title="JACTION_OPTIONS" description="JACTION_OPTIONS_COMPONENT_DESC" />
<action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" /> <action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" />
<action name="core.export" title="COM_COMPONENTBUILDER_EXPORT_DATA" description="COM_COMPONENTBUILDER_EXPORT_DATA_DESC" />
<action name="core.import" title="COM_COMPONENTBUILDER_IMPORT_DATA" description="COM_COMPONENTBUILDER_IMPORT_DATA_DESC" />
<action name="core.batch" title="COM_COMPONENTBUILDER_USE_BATCH" description="COM_COMPONENTBUILDER_USE_BATCH_DESC" /> <action name="core.batch" title="COM_COMPONENTBUILDER_USE_BATCH" description="COM_COMPONENTBUILDER_USE_BATCH_DESC" />
<action name="core.version" title="COM_COMPONENTBUILDER_EDIT_VERSIONS" description="COM_COMPONENTBUILDER_EDIT_VERSIONS_DESC" /> <action name="core.version" title="COM_COMPONENTBUILDER_EDIT_VERSIONS" description="COM_COMPONENTBUILDER_EDIT_VERSIONS_DESC" />
<action name="core.create" title="JACTION_CREATE" description="JACTION_CREATE_COMPONENT_DESC" /> <action name="core.create" title="JACTION_CREATE" description="JACTION_CREATE_COMPONENT_DESC" />
@ -15,7 +13,6 @@
<action name="core.edit.own" title="JACTION_EDITOWN" description="JACTION_EDITOWN_COMPONENT_DESC" /> <action name="core.edit.own" title="JACTION_EDITOWN" description="JACTION_EDITOWN_COMPONENT_DESC" />
<action name="core.edit.created_by" title="COM_COMPONENTBUILDER_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_EDIT_CREATED_BY_DESC" /> <action name="core.edit.created_by" title="COM_COMPONENTBUILDER_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_EDIT_CREATED_BY_DESC" />
<action name="core.edit.created" title="COM_COMPONENTBUILDER_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_EDIT_CREATED_DATE_DESC" /> <action name="core.edit.created" title="COM_COMPONENTBUILDER_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_EDIT_CREATED_DATE_DESC" />
<action name="admin_view.run_expansion" title="COM_COMPONENTBUILDER_ADMIN_VIEW_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_ADMIN_VIEW_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="admin_view.access" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS_DESC" /> <action name="admin_view.access" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS_DESC" />
<action name="admin_view.batch" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC" /> <action name="admin_view.batch" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC" />
<action name="admin_view.create" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE_DESC" /> <action name="admin_view.create" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE_DESC" />
@ -27,8 +24,6 @@
<action name="admin_view.edit.own" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN_DESC" /> <action name="admin_view.edit.own" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN_DESC" />
<action name="admin_view.edit.state" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE_DESC" /> <action name="admin_view.edit.state" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE_DESC" />
<action name="admin_view.version" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC" /> <action name="admin_view.version" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC" />
<action name="admin_view.export" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT_DESC" />
<action name="admin_view.import" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_IMPORT" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_IMPORT_DESC" />
<action name="admin_view.submenu" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_SUBMENU_DESC" /> <action name="admin_view.submenu" title="COM_COMPONENTBUILDER_ADMIN_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_ADMIN_VIEWS_SUBMENU_DESC" />
<action name="admin_custom_tabs.access" title="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS" description="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS_DESC" /> <action name="admin_custom_tabs.access" title="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS" description="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS_DESC" />
<action name="admin_custom_tabs.batch" title="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE" description="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC" /> <action name="admin_custom_tabs.batch" title="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE" description="COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC" />
@ -90,8 +85,6 @@
<action name="class_method.edit.own" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN_DESC" /> <action name="class_method.edit.own" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN_DESC" />
<action name="class_method.edit.state" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE_DESC" /> <action name="class_method.edit.state" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE_DESC" />
<action name="class_method.version" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC" /> <action name="class_method.version" title="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION" description="COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC" />
<action name="class_method.export" title="COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT" description="COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT_DESC" />
<action name="class_method.import" title="COM_COMPONENTBUILDER_CLASS_METHODS_IMPORT" description="COM_COMPONENTBUILDER_CLASS_METHODS_IMPORT_DESC" />
<action name="class_property.access" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS_DESC" /> <action name="class_property.access" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS_DESC" />
<action name="class_property.batch" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC" /> <action name="class_property.batch" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC" />
<action name="class_property.create" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE_DESC" /> <action name="class_property.create" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE_DESC" />
@ -102,15 +95,11 @@
<action name="class_property.edit.own" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN_DESC" /> <action name="class_property.edit.own" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN_DESC" />
<action name="class_property.edit.state" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE_DESC" /> <action name="class_property.edit.state" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE_DESC" />
<action name="class_property.version" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC" /> <action name="class_property.version" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC" />
<action name="class_property.export" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT_DESC" />
<action name="class_property.import" title="COM_COMPONENTBUILDER_CLASS_PROPERTIES_IMPORT" description="COM_COMPONENTBUILDER_CLASS_PROPERTIES_IMPORT_DESC" />
<action name="compiler.access" title="COM_COMPONENTBUILDER_COMPILER_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_ACCESS_DESC" /> <action name="compiler.access" title="COM_COMPONENTBUILDER_COMPILER_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_ACCESS_DESC" />
<action name="compiler.clear_tmp" title="COM_COMPONENTBUILDER_COMPILER_CLEAR_TMP_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_CLEAR_TMP_BUTTON_ACCESS_DESC" /> <action name="compiler.clear_tmp" title="COM_COMPONENTBUILDER_COMPILER_CLEAR_TMP_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_CLEAR_TMP_BUTTON_ACCESS_DESC" />
<action name="compiler.compiler_animations" title="COM_COMPONENTBUILDER_COMPILER_COMPILER_ANIMATIONS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_COMPILER_ANIMATIONS_BUTTON_ACCESS_DESC" /> <action name="compiler.compiler_animations" title="COM_COMPONENTBUILDER_COMPILER_COMPILER_ANIMATIONS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_COMPILER_ANIMATIONS_BUTTON_ACCESS_DESC" />
<action name="compiler.dashboard_list" title="COM_COMPONENTBUILDER_COMPILER_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_COMPILER_DASHBOARD_LIST_DESC" /> <action name="compiler.dashboard_list" title="COM_COMPONENTBUILDER_COMPILER_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_COMPILER_DASHBOARD_LIST_DESC" />
<action name="compiler.run_expansion" title="COM_COMPONENTBUILDER_COMPILER_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="compiler.submenu" title="COM_COMPONENTBUILDER_COMPILER_SUBMENU" description="COM_COMPONENTBUILDER_COMPILER_SUBMENU_DESC" /> <action name="compiler.submenu" title="COM_COMPONENTBUILDER_COMPILER_SUBMENU" description="COM_COMPONENTBUILDER_COMPILER_SUBMENU_DESC" />
<action name="compiler.translate" title="COM_COMPONENTBUILDER_COMPILER_TRANSLATE_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_COMPILER_TRANSLATE_BUTTON_ACCESS_DESC" />
<action name="component_admin_views.access" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS_DESC" /> <action name="component_admin_views.access" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS_DESC" />
<action name="component_admin_views.batch" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC" /> <action name="component_admin_views.batch" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC" />
<action name="component_admin_views.create" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE_DESC" /> <action name="component_admin_views.create" title="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE_DESC" />
@ -211,6 +200,16 @@
<action name="component_plugins.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN_DESC" /> <action name="component_plugins.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN_DESC" />
<action name="component_plugins.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE_DESC" /> <action name="component_plugins.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE_DESC" />
<action name="component_plugins.version" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC" /> <action name="component_plugins.version" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC" />
<action name="component_router.access" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS_DESC" />
<action name="component_router.batch" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_BATCH_USE_DESC" />
<action name="component_router.create" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE_DESC" />
<action name="component_router.delete" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE_DESC" />
<action name="component_router.edit" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_DESC" />
<action name="component_router.edit.created_by" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY_DESC" />
<action name="component_router.edit.created" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE_DESC" />
<action name="component_router.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN_DESC" />
<action name="component_router.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE_DESC" />
<action name="component_router.version" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION_DESC" />
<action name="component_site_views.access" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS_DESC" /> <action name="component_site_views.access" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS_DESC" />
<action name="component_site_views.batch" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC" /> <action name="component_site_views.batch" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC" />
<action name="component_site_views.create" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE_DESC" /> <action name="component_site_views.create" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE_DESC" />
@ -236,8 +235,6 @@
<action name="custom_admin_view.batch" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC" /> <action name="custom_admin_view.batch" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC" />
<action name="custom_admin_view.dashboard_list" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST_DESC" /> <action name="custom_admin_view.dashboard_list" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST_DESC" />
<action name="custom_admin_view.version" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC" /> <action name="custom_admin_view.version" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC" />
<action name="custom_admin_view.export" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT_DESC" />
<action name="custom_admin_view.import" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_IMPORT" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_IMPORT_DESC" />
<action name="custom_admin_view.submenu" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_SUBMENU_DESC" /> <action name="custom_admin_view.submenu" title="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_SUBMENU_DESC" />
<action name="custom_code.run_expansion" title="COM_COMPONENTBUILDER_CUSTOM_CODE_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_CUSTOM_CODE_RUN_EXPANSION_BUTTON_ACCESS_DESC" /> <action name="custom_code.run_expansion" title="COM_COMPONENTBUILDER_CUSTOM_CODE_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_CUSTOM_CODE_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="custom_code.access" title="COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS" description="COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS_DESC" /> <action name="custom_code.access" title="COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS" description="COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS_DESC" />
@ -251,10 +248,7 @@
<action name="custom_code.edit.own" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN_DESC" /> <action name="custom_code.edit.own" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN_DESC" />
<action name="custom_code.edit.state" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE_DESC" /> <action name="custom_code.edit.state" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE_DESC" />
<action name="custom_code.version" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC" /> <action name="custom_code.version" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC" />
<action name="custom_code.export" title="COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT" description="COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT_DESC" />
<action name="custom_code.import" title="COM_COMPONENTBUILDER_CUSTOM_CODES_IMPORT" description="COM_COMPONENTBUILDER_CUSTOM_CODES_IMPORT_DESC" />
<action name="custom_code.submenu" title="COM_COMPONENTBUILDER_CUSTOM_CODES_SUBMENU" description="COM_COMPONENTBUILDER_CUSTOM_CODES_SUBMENU_DESC" /> <action name="custom_code.submenu" title="COM_COMPONENTBUILDER_CUSTOM_CODES_SUBMENU" description="COM_COMPONENTBUILDER_CUSTOM_CODES_SUBMENU_DESC" />
<action name="dynamic_get.run_expansion" title="COM_COMPONENTBUILDER_DYNAMIC_GET_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_DYNAMIC_GET_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="dynamic_get.access" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS_DESC" /> <action name="dynamic_get.access" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS_DESC" />
<action name="dynamic_get.batch" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC" /> <action name="dynamic_get.batch" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC" />
<action name="dynamic_get.create" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE_DESC" /> <action name="dynamic_get.create" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE_DESC" />
@ -265,10 +259,7 @@
<action name="dynamic_get.edit.own" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN_DESC" /> <action name="dynamic_get.edit.own" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN_DESC" />
<action name="dynamic_get.edit.state" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE_DESC" /> <action name="dynamic_get.edit.state" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE_DESC" />
<action name="dynamic_get.version" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC" /> <action name="dynamic_get.version" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC" />
<action name="dynamic_get.export" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT_DESC" />
<action name="dynamic_get.import" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_IMPORT" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_IMPORT_DESC" />
<action name="dynamic_get.submenu" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_SUBMENU" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_SUBMENU_DESC" /> <action name="dynamic_get.submenu" title="COM_COMPONENTBUILDER_DYNAMIC_GETS_SUBMENU" description="COM_COMPONENTBUILDER_DYNAMIC_GETS_SUBMENU_DESC" />
<action name="field.run_expansion" title="COM_COMPONENTBUILDER_FIELD_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_FIELD_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="field.access" title="COM_COMPONENTBUILDER_FIELDS_ACCESS" description="COM_COMPONENTBUILDER_FIELDS_ACCESS_DESC" /> <action name="field.access" title="COM_COMPONENTBUILDER_FIELDS_ACCESS" description="COM_COMPONENTBUILDER_FIELDS_ACCESS_DESC" />
<action name="field.batch" title="COM_COMPONENTBUILDER_FIELDS_BATCH_USE" description="COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC" /> <action name="field.batch" title="COM_COMPONENTBUILDER_FIELDS_BATCH_USE" description="COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC" />
<action name="field.create" title="COM_COMPONENTBUILDER_FIELDS_CREATE" description="COM_COMPONENTBUILDER_FIELDS_CREATE_DESC" /> <action name="field.create" title="COM_COMPONENTBUILDER_FIELDS_CREATE" description="COM_COMPONENTBUILDER_FIELDS_CREATE_DESC" />
@ -279,8 +270,6 @@
<action name="field.edit.own" title="COM_COMPONENTBUILDER_FIELDS_EDIT_OWN" description="COM_COMPONENTBUILDER_FIELDS_EDIT_OWN_DESC" /> <action name="field.edit.own" title="COM_COMPONENTBUILDER_FIELDS_EDIT_OWN" description="COM_COMPONENTBUILDER_FIELDS_EDIT_OWN_DESC" />
<action name="field.edit.state" title="COM_COMPONENTBUILDER_FIELDS_EDIT_STATE" description="COM_COMPONENTBUILDER_FIELDS_EDIT_STATE_DESC" /> <action name="field.edit.state" title="COM_COMPONENTBUILDER_FIELDS_EDIT_STATE" description="COM_COMPONENTBUILDER_FIELDS_EDIT_STATE_DESC" />
<action name="field.version" title="COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION" description="COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC" /> <action name="field.version" title="COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION" description="COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC" />
<action name="field.export" title="COM_COMPONENTBUILDER_FIELDS_EXPORT" description="COM_COMPONENTBUILDER_FIELDS_EXPORT_DESC" />
<action name="field.import" title="COM_COMPONENTBUILDER_FIELDS_IMPORT" description="COM_COMPONENTBUILDER_FIELDS_IMPORT_DESC" />
<action name="field.submenu" title="COM_COMPONENTBUILDER_FIELDS_SUBMENU" description="COM_COMPONENTBUILDER_FIELDS_SUBMENU_DESC" /> <action name="field.submenu" title="COM_COMPONENTBUILDER_FIELDS_SUBMENU" description="COM_COMPONENTBUILDER_FIELDS_SUBMENU_DESC" />
<action name="fieldtype.access" title="COM_COMPONENTBUILDER_FIELDTYPES_ACCESS" description="COM_COMPONENTBUILDER_FIELDTYPES_ACCESS_DESC" /> <action name="fieldtype.access" title="COM_COMPONENTBUILDER_FIELDTYPES_ACCESS" description="COM_COMPONENTBUILDER_FIELDTYPES_ACCESS_DESC" />
<action name="fieldtype.batch" title="COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE" description="COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC" /> <action name="fieldtype.batch" title="COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE" description="COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC" />
@ -291,17 +280,13 @@
<action name="fieldtype.edit.own" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN_DESC" /> <action name="fieldtype.edit.own" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN_DESC" />
<action name="fieldtype.edit.state" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE_DESC" /> <action name="fieldtype.edit.state" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE_DESC" />
<action name="fieldtype.version" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC" /> <action name="fieldtype.version" title="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION" description="COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC" />
<action name="fieldtype.export" title="COM_COMPONENTBUILDER_FIELDTYPES_EXPORT" description="COM_COMPONENTBUILDER_FIELDTYPES_EXPORT_DESC" />
<action name="fieldtype.import" title="COM_COMPONENTBUILDER_FIELDTYPES_IMPORT" description="COM_COMPONENTBUILDER_FIELDTYPES_IMPORT_DESC" />
<action name="fieldtype.submenu" title="COM_COMPONENTBUILDER_FIELDTYPES_SUBMENU" description="COM_COMPONENTBUILDER_FIELDTYPES_SUBMENU_DESC" /> <action name="fieldtype.submenu" title="COM_COMPONENTBUILDER_FIELDTYPES_SUBMENU" description="COM_COMPONENTBUILDER_FIELDTYPES_SUBMENU_DESC" />
<action name="get_snippets.access" title="COM_COMPONENTBUILDER_GET_SNIPPETS_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_ACCESS_DESC" /> <action name="get_snippets.access" title="COM_COMPONENTBUILDER_GET_SNIPPETS_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_ACCESS_DESC" />
<action name="get_snippets.custom_admin_views" title="COM_COMPONENTBUILDER_GET_SNIPPETS_CUSTOM_ADMIN_VIEWS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_CUSTOM_ADMIN_VIEWS_BUTTON_ACCESS_DESC" /> <action name="get_snippets.custom_admin_views" title="COM_COMPONENTBUILDER_GET_SNIPPETS_CUSTOM_ADMIN_VIEWS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_CUSTOM_ADMIN_VIEWS_BUTTON_ACCESS_DESC" />
<action name="get_snippets.dashboard_list" title="COM_COMPONENTBUILDER_GET_SNIPPETS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_GET_SNIPPETS_DASHBOARD_LIST_DESC" />
<action name="get_snippets.layouts" title="COM_COMPONENTBUILDER_GET_SNIPPETS_LAYOUTS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_LAYOUTS_BUTTON_ACCESS_DESC" /> <action name="get_snippets.layouts" title="COM_COMPONENTBUILDER_GET_SNIPPETS_LAYOUTS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_LAYOUTS_BUTTON_ACCESS_DESC" />
<action name="get_snippets.libraries" title="COM_COMPONENTBUILDER_GET_SNIPPETS_LIBRARIES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_LIBRARIES_BUTTON_ACCESS_DESC" /> <action name="get_snippets.libraries" title="COM_COMPONENTBUILDER_GET_SNIPPETS_LIBRARIES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_LIBRARIES_BUTTON_ACCESS_DESC" />
<action name="get_snippets.site_views" title="COM_COMPONENTBUILDER_GET_SNIPPETS_SITE_VIEWS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_SITE_VIEWS_BUTTON_ACCESS_DESC" /> <action name="get_snippets.site_views" title="COM_COMPONENTBUILDER_GET_SNIPPETS_SITE_VIEWS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_SITE_VIEWS_BUTTON_ACCESS_DESC" />
<action name="get_snippets.snippets" title="COM_COMPONENTBUILDER_GET_SNIPPETS_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="get_snippets.snippets" title="COM_COMPONENTBUILDER_GET_SNIPPETS_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="get_snippets.submenu" title="COM_COMPONENTBUILDER_GET_SNIPPETS_SUBMENU" description="COM_COMPONENTBUILDER_GET_SNIPPETS_SUBMENU_DESC" />
<action name="get_snippets.templates" title="COM_COMPONENTBUILDER_GET_SNIPPETS_TEMPLATES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_TEMPLATES_BUTTON_ACCESS_DESC" /> <action name="get_snippets.templates" title="COM_COMPONENTBUILDER_GET_SNIPPETS_TEMPLATES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_GET_SNIPPETS_TEMPLATES_BUTTON_ACCESS_DESC" />
<action name="help_document.access" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS_DESC" /> <action name="help_document.access" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS_DESC" />
<action name="help_document.batch" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC" /> <action name="help_document.batch" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC" />
@ -312,15 +297,8 @@
<action name="help_document.edit.own" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC" /> <action name="help_document.edit.own" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC" />
<action name="help_document.edit.state" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE_DESC" /> <action name="help_document.edit.state" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE_DESC" />
<action name="help_document.version" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC" /> <action name="help_document.version" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC" />
<action name="help_document.export" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT_DESC" />
<action name="help_document.import" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_IMPORT" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_IMPORT_DESC" />
<action name="help_document.submenu" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_SUBMENU" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_SUBMENU_DESC" /> <action name="help_document.submenu" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_SUBMENU" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_SUBMENU_DESC" />
<action name="joomla_component.backup" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BACKUP_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BACKUP_BUTTON_ACCESS_DESC" />
<action name="joomla_component.clear_tmp" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLEAR_TMP_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLEAR_TMP_BUTTON_ACCESS_DESC" /> <action name="joomla_component.clear_tmp" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLEAR_TMP_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLEAR_TMP_BUTTON_ACCESS_DESC" />
<action name="joomla_component.clone" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLONE_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CLONE_BUTTON_ACCESS_DESC" />
<action name="joomla_component.export_jcb_packages" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_JCB_PACKAGES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EXPORT_JCB_PACKAGES_BUTTON_ACCESS_DESC" />
<action name="joomla_component.import_jcb_packages" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMPORT_JCB_PACKAGES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMPORT_JCB_PACKAGES_BUTTON_ACCESS_DESC" />
<action name="joomla_component.run_expansion" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="joomla_component.access" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS_DESC" /> <action name="joomla_component.access" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS_DESC" />
<action name="joomla_component.batch" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC" /> <action name="joomla_component.batch" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC" />
<action name="joomla_component.create" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE_DESC" /> <action name="joomla_component.create" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE_DESC" />
@ -334,7 +312,6 @@
<action name="joomla_component.version" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC" /> <action name="joomla_component.version" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC" />
<action name="joomla_component.submenu" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU_DESC" /> <action name="joomla_component.submenu" title="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU_DESC" />
<action name="joomla_module.get_snippets" title="COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="joomla_module.get_snippets" title="COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="joomla_module.run_expansion" title="COM_COMPONENTBUILDER_JOOMLA_MODULE_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULE_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="joomla_module.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS_DESC" /> <action name="joomla_module.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS_DESC" />
<action name="joomla_module.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC" /> <action name="joomla_module.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC" />
<action name="joomla_module.create" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE_DESC" /> <action name="joomla_module.create" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE_DESC" />
@ -346,7 +323,6 @@
<action name="joomla_module.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN_DESC" /> <action name="joomla_module.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN_DESC" />
<action name="joomla_module.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE_DESC" /> <action name="joomla_module.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE_DESC" />
<action name="joomla_module.version" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC" /> <action name="joomla_module.version" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC" />
<action name="joomla_module.export" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT_DESC" />
<action name="joomla_module_files_folders_urls.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS_DESC" /> <action name="joomla_module_files_folders_urls.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS_DESC" />
<action name="joomla_module_files_folders_urls.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC" /> <action name="joomla_module_files_folders_urls.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC" />
<action name="joomla_module_files_folders_urls.create" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE_DESC" /> <action name="joomla_module_files_folders_urls.create" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE_DESC" />
@ -357,7 +333,6 @@
<action name="joomla_module_files_folders_urls.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN_DESC" /> <action name="joomla_module_files_folders_urls.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN_DESC" />
<action name="joomla_module_files_folders_urls.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE_DESC" /> <action name="joomla_module_files_folders_urls.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE_DESC" />
<action name="joomla_module_files_folders_urls.version" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC" /> <action name="joomla_module_files_folders_urls.version" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC" />
<action name="joomla_module.import" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_IMPORT" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_IMPORT_DESC" />
<action name="joomla_module.submenu" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU_DESC" /> <action name="joomla_module.submenu" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU_DESC" />
<action name="joomla_module_updates.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS_DESC" /> <action name="joomla_module_updates.access" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS_DESC" />
<action name="joomla_module_updates.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC" /> <action name="joomla_module_updates.batch" title="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC" />
@ -375,7 +350,6 @@
<action name="joomla_plugin_group.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC" /> <action name="joomla_plugin_group.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC" />
<action name="joomla_plugin.methods" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS_DESC" /> <action name="joomla_plugin.methods" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS_DESC" />
<action name="joomla_plugin.properties" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_PROPERTIES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_PROPERTIES_BUTTON_ACCESS_DESC" /> <action name="joomla_plugin.properties" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_PROPERTIES_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_PROPERTIES_BUTTON_ACCESS_DESC" />
<action name="joomla_plugin.run_expansion" title="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="joomla_plugin.access" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC" /> <action name="joomla_plugin.access" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC" />
<action name="joomla_plugin.batch" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC" /> <action name="joomla_plugin.batch" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC" />
<action name="joomla_plugin.create" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE_DESC" /> <action name="joomla_plugin.create" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE_DESC" />
@ -408,6 +382,20 @@
<action name="joomla_plugin_updates.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN_DESC" /> <action name="joomla_plugin_updates.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN_DESC" />
<action name="joomla_plugin_updates.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE_DESC" /> <action name="joomla_plugin_updates.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE_DESC" />
<action name="joomla_plugin_updates.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC" /> <action name="joomla_plugin_updates.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC" />
<action name="joomla_power.init" title="COM_COMPONENTBUILDER_JOOMLA_POWER_INIT_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_POWER_INIT_BUTTON_ACCESS_DESC" />
<action name="joomla_power.push" title="COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS_DESC" />
<action name="joomla_power.reset" title="COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS_DESC" />
<action name="joomla_power.access" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_ACCESS_DESC" />
<action name="joomla_power.batch" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_BATCH_USE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_BATCH_USE_DESC" />
<action name="joomla_power.create" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_CREATE_DESC" />
<action name="joomla_power.delete" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_DELETE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_DELETE_DESC" />
<action name="joomla_power.edit" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_DESC" />
<action name="joomla_power.edit.created_by" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_BY_DESC" />
<action name="joomla_power.edit.created" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_DATE_DESC" />
<action name="joomla_power.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_OWN_DESC" />
<action name="joomla_power.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_STATE_DESC" />
<action name="joomla_power.version" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_VERSION_DESC" />
<action name="joomla_power.submenu" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_SUBMENU" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_SUBMENU_DESC" />
<action name="language.build" title="COM_COMPONENTBUILDER_LANGUAGE_BUILD_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGE_BUILD_BUTTON_ACCESS_DESC" /> <action name="language.build" title="COM_COMPONENTBUILDER_LANGUAGE_BUILD_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGE_BUILD_BUTTON_ACCESS_DESC" />
<action name="language_translation.access" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS_DESC" /> <action name="language_translation.access" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS_DESC" />
<action name="language_translation.batch" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC" /> <action name="language_translation.batch" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC" />
@ -418,27 +406,22 @@
<action name="language_translation.edit.own" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN_DESC" /> <action name="language_translation.edit.own" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN_DESC" />
<action name="language_translation.edit.state" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE_DESC" /> <action name="language_translation.edit.state" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE_DESC" />
<action name="language_translation.version" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC" /> <action name="language_translation.version" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC" />
<action name="language_translation.export" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT_DESC" />
<action name="language_translation.import" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_IMPORT" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_IMPORT_DESC" />
<action name="language_translation.submenu" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_SUBMENU" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_SUBMENU_DESC" /> <action name="language_translation.submenu" title="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_SUBMENU" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_SUBMENU_DESC" />
<action name="language.access" title="COM_COMPONENTBUILDER_LANGUAGES_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGES_ACCESS_DESC" /> <action name="language.access" title="COM_COMPONENTBUILDER_LANGUAGES_ACCESS" description="COM_COMPONENTBUILDER_LANGUAGES_ACCESS_DESC" />
<action name="language.batch" title="COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE" description="COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC" /> <action name="language.batch" title="COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE" description="COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC" />
<action name="language.create" title="COM_COMPONENTBUILDER_LANGUAGES_CREATE" description="COM_COMPONENTBUILDER_LANGUAGES_CREATE_DESC" /> <action name="language.create" title="COM_COMPONENTBUILDER_LANGUAGES_CREATE" description="COM_COMPONENTBUILDER_LANGUAGES_CREATE_DESC" />
<action name="language.dashboard_list" title="COM_COMPONENTBUILDER_LANGUAGES_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_LANGUAGES_DASHBOARD_LIST_DESC" />
<action name="language.delete" title="COM_COMPONENTBUILDER_LANGUAGES_DELETE" description="COM_COMPONENTBUILDER_LANGUAGES_DELETE_DESC" /> <action name="language.delete" title="COM_COMPONENTBUILDER_LANGUAGES_DELETE" description="COM_COMPONENTBUILDER_LANGUAGES_DELETE_DESC" />
<action name="language.edit" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_DESC" /> <action name="language.edit" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_DESC" />
<action name="language.edit.own" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN_DESC" /> <action name="language.edit.own" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN_DESC" />
<action name="language.edit.state" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE_DESC" /> <action name="language.edit.state" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE_DESC" />
<action name="language.version" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC" /> <action name="language.version" title="COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION" description="COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC" />
<action name="language.export" title="COM_COMPONENTBUILDER_LANGUAGES_EXPORT" description="COM_COMPONENTBUILDER_LANGUAGES_EXPORT_DESC" />
<action name="language.import" title="COM_COMPONENTBUILDER_LANGUAGES_IMPORT" description="COM_COMPONENTBUILDER_LANGUAGES_IMPORT_DESC" />
<action name="language.submenu" title="COM_COMPONENTBUILDER_LANGUAGES_SUBMENU" description="COM_COMPONENTBUILDER_LANGUAGES_SUBMENU_DESC" /> <action name="language.submenu" title="COM_COMPONENTBUILDER_LANGUAGES_SUBMENU" description="COM_COMPONENTBUILDER_LANGUAGES_SUBMENU_DESC" />
<action name="layout.get_snippets" title="COM_COMPONENTBUILDER_LAYOUT_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_LAYOUT_GET_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="layout.get_snippets" title="COM_COMPONENTBUILDER_LAYOUT_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_LAYOUT_GET_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="layout.access" title="COM_COMPONENTBUILDER_LAYOUTS_ACCESS" description="COM_COMPONENTBUILDER_LAYOUTS_ACCESS_DESC" /> <action name="layout.access" title="COM_COMPONENTBUILDER_LAYOUTS_ACCESS" description="COM_COMPONENTBUILDER_LAYOUTS_ACCESS_DESC" />
<action name="layout.batch" title="COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE" description="COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC" /> <action name="layout.batch" title="COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE" description="COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC" />
<action name="layout.dashboard_list" title="COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST_DESC" /> <action name="layout.dashboard_list" title="COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST_DESC" />
<action name="layout.version" title="COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC" /> <action name="layout.version" title="COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION" description="COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC" />
<action name="layout.export" title="COM_COMPONENTBUILDER_LAYOUTS_EXPORT" description="COM_COMPONENTBUILDER_LAYOUTS_EXPORT_DESC" />
<action name="layout.import" title="COM_COMPONENTBUILDER_LAYOUTS_IMPORT" description="COM_COMPONENTBUILDER_LAYOUTS_IMPORT_DESC" />
<action name="layout.submenu" title="COM_COMPONENTBUILDER_LAYOUTS_SUBMENU" description="COM_COMPONENTBUILDER_LAYOUTS_SUBMENU_DESC" /> <action name="layout.submenu" title="COM_COMPONENTBUILDER_LAYOUTS_SUBMENU" description="COM_COMPONENTBUILDER_LAYOUTS_SUBMENU_DESC" />
<action name="library.access" title="COM_COMPONENTBUILDER_LIBRARIES_ACCESS" description="COM_COMPONENTBUILDER_LIBRARIES_ACCESS_DESC" /> <action name="library.access" title="COM_COMPONENTBUILDER_LIBRARIES_ACCESS" description="COM_COMPONENTBUILDER_LIBRARIES_ACCESS_DESC" />
<action name="library.batch" title="COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE" description="COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC" /> <action name="library.batch" title="COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE" description="COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC" />
@ -480,12 +463,10 @@
<action name="placeholder.edit.own" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN_DESC" /> <action name="placeholder.edit.own" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN_DESC" />
<action name="placeholder.edit.state" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE_DESC" /> <action name="placeholder.edit.state" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE_DESC" />
<action name="placeholder.version" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC" /> <action name="placeholder.version" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC" />
<action name="placeholder.export" title="COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT" description="COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT_DESC" />
<action name="placeholder.import" title="COM_COMPONENTBUILDER_PLACEHOLDERS_IMPORT" description="COM_COMPONENTBUILDER_PLACEHOLDERS_IMPORT_DESC" />
<action name="placeholder.submenu" title="COM_COMPONENTBUILDER_PLACEHOLDERS_SUBMENU" description="COM_COMPONENTBUILDER_PLACEHOLDERS_SUBMENU_DESC" /> <action name="placeholder.submenu" title="COM_COMPONENTBUILDER_PLACEHOLDERS_SUBMENU" description="COM_COMPONENTBUILDER_PLACEHOLDERS_SUBMENU_DESC" />
<action name="power.init" title="COM_COMPONENTBUILDER_POWER_INIT_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_INIT_BUTTON_ACCESS_DESC" /> <action name="power.init" title="COM_COMPONENTBUILDER_POWER_INIT_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_INIT_BUTTON_ACCESS_DESC" />
<action name="power.push" title="COM_COMPONENTBUILDER_POWER_PUSH_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_PUSH_BUTTON_ACCESS_DESC" />
<action name="power.reset" title="COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS_DESC" /> <action name="power.reset" title="COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS_DESC" />
<action name="power.run_expansion" title="COM_COMPONENTBUILDER_POWER_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_POWER_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="power.access" title="COM_COMPONENTBUILDER_POWERS_ACCESS" description="COM_COMPONENTBUILDER_POWERS_ACCESS_DESC" /> <action name="power.access" title="COM_COMPONENTBUILDER_POWERS_ACCESS" description="COM_COMPONENTBUILDER_POWERS_ACCESS_DESC" />
<action name="power.batch" title="COM_COMPONENTBUILDER_POWERS_BATCH_USE" description="COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC" /> <action name="power.batch" title="COM_COMPONENTBUILDER_POWERS_BATCH_USE" description="COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC" />
<action name="power.create" title="COM_COMPONENTBUILDER_POWERS_CREATE" description="COM_COMPONENTBUILDER_POWERS_CREATE_DESC" /> <action name="power.create" title="COM_COMPONENTBUILDER_POWERS_CREATE" description="COM_COMPONENTBUILDER_POWERS_CREATE_DESC" />
@ -498,6 +479,18 @@
<action name="power.edit.state" title="COM_COMPONENTBUILDER_POWERS_EDIT_STATE" description="COM_COMPONENTBUILDER_POWERS_EDIT_STATE_DESC" /> <action name="power.edit.state" title="COM_COMPONENTBUILDER_POWERS_EDIT_STATE" description="COM_COMPONENTBUILDER_POWERS_EDIT_STATE_DESC" />
<action name="power.version" title="COM_COMPONENTBUILDER_POWERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC" /> <action name="power.version" title="COM_COMPONENTBUILDER_POWERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC" />
<action name="power.submenu" title="COM_COMPONENTBUILDER_POWERS_SUBMENU" description="COM_COMPONENTBUILDER_POWERS_SUBMENU_DESC" /> <action name="power.submenu" title="COM_COMPONENTBUILDER_POWERS_SUBMENU" description="COM_COMPONENTBUILDER_POWERS_SUBMENU_DESC" />
<action name="repository.access" title="COM_COMPONENTBUILDER_REPOSITORIES_ACCESS" description="COM_COMPONENTBUILDER_REPOSITORIES_ACCESS_DESC" />
<action name="repository.batch" title="COM_COMPONENTBUILDER_REPOSITORIES_BATCH_USE" description="COM_COMPONENTBUILDER_REPOSITORIES_BATCH_USE_DESC" />
<action name="repository.create" title="COM_COMPONENTBUILDER_REPOSITORIES_CREATE" description="COM_COMPONENTBUILDER_REPOSITORIES_CREATE_DESC" />
<action name="repository.dashboard_list" title="COM_COMPONENTBUILDER_REPOSITORIES_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_REPOSITORIES_DASHBOARD_LIST_DESC" />
<action name="repository.delete" title="COM_COMPONENTBUILDER_REPOSITORIES_DELETE" description="COM_COMPONENTBUILDER_REPOSITORIES_DELETE_DESC" />
<action name="repository.edit" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_DESC" />
<action name="repository.edit.created_by" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_BY_DESC" />
<action name="repository.edit.created" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_DATE_DESC" />
<action name="repository.edit.own" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_OWN" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_OWN_DESC" />
<action name="repository.edit.state" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_STATE" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_STATE_DESC" />
<action name="repository.version" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_VERSION" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_VERSION_DESC" />
<action name="repository.submenu" title="COM_COMPONENTBUILDER_REPOSITORIES_SUBMENU" description="COM_COMPONENTBUILDER_REPOSITORIES_SUBMENU_DESC" />
<action name="search.access" title="COM_COMPONENTBUILDER_SEARCH_ACCESS" description="COM_COMPONENTBUILDER_SEARCH_ACCESS_DESC" /> <action name="search.access" title="COM_COMPONENTBUILDER_SEARCH_ACCESS" description="COM_COMPONENTBUILDER_SEARCH_ACCESS_DESC" />
<action name="search.compiler" title="COM_COMPONENTBUILDER_SEARCH_COMPILER_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SEARCH_COMPILER_BUTTON_ACCESS_DESC" /> <action name="search.compiler" title="COM_COMPONENTBUILDER_SEARCH_COMPILER_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SEARCH_COMPILER_BUTTON_ACCESS_DESC" />
<action name="search.dashboard_list" title="COM_COMPONENTBUILDER_SEARCH_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SEARCH_DASHBOARD_LIST_DESC" /> <action name="search.dashboard_list" title="COM_COMPONENTBUILDER_SEARCH_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SEARCH_DASHBOARD_LIST_DESC" />
@ -513,16 +506,12 @@
<action name="server.edit.own" title="COM_COMPONENTBUILDER_SERVERS_EDIT_OWN" description="COM_COMPONENTBUILDER_SERVERS_EDIT_OWN_DESC" /> <action name="server.edit.own" title="COM_COMPONENTBUILDER_SERVERS_EDIT_OWN" description="COM_COMPONENTBUILDER_SERVERS_EDIT_OWN_DESC" />
<action name="server.edit.state" title="COM_COMPONENTBUILDER_SERVERS_EDIT_STATE" description="COM_COMPONENTBUILDER_SERVERS_EDIT_STATE_DESC" /> <action name="server.edit.state" title="COM_COMPONENTBUILDER_SERVERS_EDIT_STATE" description="COM_COMPONENTBUILDER_SERVERS_EDIT_STATE_DESC" />
<action name="server.version" title="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC" /> <action name="server.version" title="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC" />
<action name="server.export" title="COM_COMPONENTBUILDER_SERVERS_EXPORT" description="COM_COMPONENTBUILDER_SERVERS_EXPORT_DESC" />
<action name="server.import" title="COM_COMPONENTBUILDER_SERVERS_IMPORT" description="COM_COMPONENTBUILDER_SERVERS_IMPORT_DESC" />
<action name="server.submenu" title="COM_COMPONENTBUILDER_SERVERS_SUBMENU" description="COM_COMPONENTBUILDER_SERVERS_SUBMENU_DESC" /> <action name="server.submenu" title="COM_COMPONENTBUILDER_SERVERS_SUBMENU" description="COM_COMPONENTBUILDER_SERVERS_SUBMENU_DESC" />
<action name="site_view.get_snippets" title="COM_COMPONENTBUILDER_SITE_VIEW_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SITE_VIEW_GET_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="site_view.get_snippets" title="COM_COMPONENTBUILDER_SITE_VIEW_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SITE_VIEW_GET_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="site_view.access" title="COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS_DESC" /> <action name="site_view.access" title="COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS_DESC" />
<action name="site_view.batch" title="COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC" /> <action name="site_view.batch" title="COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC" />
<action name="site_view.dashboard_list" title="COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST_DESC" /> <action name="site_view.dashboard_list" title="COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST_DESC" />
<action name="site_view.version" title="COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC" /> <action name="site_view.version" title="COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC" />
<action name="site_view.export" title="COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT" description="COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT_DESC" />
<action name="site_view.import" title="COM_COMPONENTBUILDER_SITE_VIEWS_IMPORT" description="COM_COMPONENTBUILDER_SITE_VIEWS_IMPORT_DESC" />
<action name="site_view.submenu" title="COM_COMPONENTBUILDER_SITE_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_SITE_VIEWS_SUBMENU_DESC" /> <action name="site_view.submenu" title="COM_COMPONENTBUILDER_SITE_VIEWS_SUBMENU" description="COM_COMPONENTBUILDER_SITE_VIEWS_SUBMENU_DESC" />
<action name="snippet.get_snippets" title="COM_COMPONENTBUILDER_SNIPPET_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SNIPPET_GET_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="snippet.get_snippets" title="COM_COMPONENTBUILDER_SNIPPET_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SNIPPET_GET_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="snippet.share_snippets" title="COM_COMPONENTBUILDER_SNIPPET_SHARE_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SNIPPET_SHARE_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="snippet.share_snippets" title="COM_COMPONENTBUILDER_SNIPPET_SHARE_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_SNIPPET_SHARE_SNIPPETS_BUTTON_ACCESS_DESC" />
@ -538,8 +527,6 @@
<action name="snippet.batch" title="COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE" description="COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC" /> <action name="snippet.batch" title="COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE" description="COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC" />
<action name="snippet.dashboard_list" title="COM_COMPONENTBUILDER_SNIPPETS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SNIPPETS_DASHBOARD_LIST_DESC" /> <action name="snippet.dashboard_list" title="COM_COMPONENTBUILDER_SNIPPETS_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_SNIPPETS_DASHBOARD_LIST_DESC" />
<action name="snippet.version" title="COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC" /> <action name="snippet.version" title="COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC" />
<action name="snippet.export" title="COM_COMPONENTBUILDER_SNIPPETS_EXPORT" description="COM_COMPONENTBUILDER_SNIPPETS_EXPORT_DESC" />
<action name="snippet.import" title="COM_COMPONENTBUILDER_SNIPPETS_IMPORT" description="COM_COMPONENTBUILDER_SNIPPETS_IMPORT_DESC" />
<action name="snippet.submenu" title="COM_COMPONENTBUILDER_SNIPPETS_SUBMENU" description="COM_COMPONENTBUILDER_SNIPPETS_SUBMENU_DESC" /> <action name="snippet.submenu" title="COM_COMPONENTBUILDER_SNIPPETS_SUBMENU" description="COM_COMPONENTBUILDER_SNIPPETS_SUBMENU_DESC" />
<action name="template.get_snippets" title="COM_COMPONENTBUILDER_TEMPLATE_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_TEMPLATE_GET_SNIPPETS_BUTTON_ACCESS_DESC" /> <action name="template.get_snippets" title="COM_COMPONENTBUILDER_TEMPLATE_GET_SNIPPETS_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_TEMPLATE_GET_SNIPPETS_BUTTON_ACCESS_DESC" />
<action name="template.access" title="COM_COMPONENTBUILDER_TEMPLATES_ACCESS" description="COM_COMPONENTBUILDER_TEMPLATES_ACCESS_DESC" /> <action name="template.access" title="COM_COMPONENTBUILDER_TEMPLATES_ACCESS" description="COM_COMPONENTBUILDER_TEMPLATES_ACCESS_DESC" />
@ -547,10 +534,7 @@
<action name="template.dashboard_add" title="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD" description="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD_DESC" /> <action name="template.dashboard_add" title="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD" description="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD_DESC" />
<action name="template.dashboard_list" title="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_LIST_DESC" /> <action name="template.dashboard_list" title="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_LIST" description="COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_LIST_DESC" />
<action name="template.version" title="COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION" description="COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC" /> <action name="template.version" title="COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION" description="COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC" />
<action name="template.export" title="COM_COMPONENTBUILDER_TEMPLATES_EXPORT" description="COM_COMPONENTBUILDER_TEMPLATES_EXPORT_DESC" />
<action name="template.import" title="COM_COMPONENTBUILDER_TEMPLATES_IMPORT" description="COM_COMPONENTBUILDER_TEMPLATES_IMPORT_DESC" />
<action name="template.submenu" title="COM_COMPONENTBUILDER_TEMPLATES_SUBMENU" description="COM_COMPONENTBUILDER_TEMPLATES_SUBMENU_DESC" /> <action name="template.submenu" title="COM_COMPONENTBUILDER_TEMPLATES_SUBMENU" description="COM_COMPONENTBUILDER_TEMPLATES_SUBMENU_DESC" />
<action name="validation_rule.run_expansion" title="COM_COMPONENTBUILDER_VALIDATION_RULE_RUN_EXPANSION_BUTTON_ACCESS" description="COM_COMPONENTBUILDER_VALIDATION_RULE_RUN_EXPANSION_BUTTON_ACCESS_DESC" />
<action name="validation_rule.access" title="COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS" description="COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS_DESC" /> <action name="validation_rule.access" title="COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS" description="COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS_DESC" />
<action name="validation_rule.batch" title="COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC" /> <action name="validation_rule.batch" title="COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC" />
<action name="validation_rule.create" title="COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE_DESC" /> <action name="validation_rule.create" title="COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE_DESC" />
@ -560,8 +544,6 @@
<action name="validation_rule.edit.own" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN_DESC" /> <action name="validation_rule.edit.own" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN_DESC" />
<action name="validation_rule.edit.state" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE_DESC" /> <action name="validation_rule.edit.state" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE_DESC" />
<action name="validation_rule.version" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC" /> <action name="validation_rule.version" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC" />
<action name="validation_rule.export" title="COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT" description="COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT_DESC" />
<action name="validation_rule.import" title="COM_COMPONENTBUILDER_VALIDATION_RULES_IMPORT" description="COM_COMPONENTBUILDER_VALIDATION_RULES_IMPORT_DESC" />
<action name="validation_rule.submenu" title="COM_COMPONENTBUILDER_VALIDATION_RULES_SUBMENU" description="COM_COMPONENTBUILDER_VALIDATION_RULES_SUBMENU_DESC" /> <action name="validation_rule.submenu" title="COM_COMPONENTBUILDER_VALIDATION_RULES_SUBMENU" description="COM_COMPONENTBUILDER_VALIDATION_RULES_SUBMENU_DESC" />
</section> </section>
<section name="joomla_component"> <section name="joomla_component">
@ -597,6 +579,17 @@
<action name="joomla_plugin.access" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC" /> <action name="joomla_plugin.access" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC" />
<action name="joomla_plugin.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC" /> <action name="joomla_plugin.version" title="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC" />
</section> </section>
<section name="joomla_power">
<action name="joomla_power.edit" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_DESC" />
<action name="joomla_power.edit.own" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_OWN" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_OWN_DESC" />
<action name="joomla_power.edit.state" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_STATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_STATE_DESC" />
<action name="joomla_power.edit.created_by" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_BY_DESC" />
<action name="joomla_power.edit.created" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_CREATED_DATE_DESC" />
<action name="joomla_power.create" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_CREATE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_CREATE_DESC" />
<action name="joomla_power.delete" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_DELETE" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_DELETE_DESC" />
<action name="joomla_power.access" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_ACCESS" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_ACCESS_DESC" />
<action name="joomla_power.version" title="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_JOOMLA_POWERS_EDIT_VERSION_DESC" />
</section>
<section name="power"> <section name="power">
<action name="power.edit" title="COM_COMPONENTBUILDER_POWERS_EDIT" description="COM_COMPONENTBUILDER_POWERS_EDIT_DESC" /> <action name="power.edit" title="COM_COMPONENTBUILDER_POWERS_EDIT" description="COM_COMPONENTBUILDER_POWERS_EDIT_DESC" />
<action name="power.edit.own" title="COM_COMPONENTBUILDER_POWERS_EDIT_OWN" description="COM_COMPONENTBUILDER_POWERS_EDIT_OWN_DESC" /> <action name="power.edit.own" title="COM_COMPONENTBUILDER_POWERS_EDIT_OWN" description="COM_COMPONENTBUILDER_POWERS_EDIT_OWN_DESC" />
@ -780,6 +773,17 @@
<action name="server.access" title="COM_COMPONENTBUILDER_SERVERS_ACCESS" description="COM_COMPONENTBUILDER_SERVERS_ACCESS_DESC" /> <action name="server.access" title="COM_COMPONENTBUILDER_SERVERS_ACCESS" description="COM_COMPONENTBUILDER_SERVERS_ACCESS_DESC" />
<action name="server.version" title="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC" /> <action name="server.version" title="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC" />
</section> </section>
<section name="repository">
<action name="repository.edit" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_DESC" />
<action name="repository.edit.own" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_OWN" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_OWN_DESC" />
<action name="repository.edit.state" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_STATE" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_STATE_DESC" />
<action name="repository.edit.created_by" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_BY_DESC" />
<action name="repository.edit.created" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_CREATED_DATE_DESC" />
<action name="repository.create" title="COM_COMPONENTBUILDER_REPOSITORIES_CREATE" description="COM_COMPONENTBUILDER_REPOSITORIES_CREATE_DESC" />
<action name="repository.delete" title="COM_COMPONENTBUILDER_REPOSITORIES_DELETE" description="COM_COMPONENTBUILDER_REPOSITORIES_DELETE_DESC" />
<action name="repository.access" title="COM_COMPONENTBUILDER_REPOSITORIES_ACCESS" description="COM_COMPONENTBUILDER_REPOSITORIES_ACCESS_DESC" />
<action name="repository.version" title="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_VERSION" description="COM_COMPONENTBUILDER_REPOSITORIES_EDIT_VERSION_DESC" />
</section>
<section name="help_document"> <section name="help_document">
<action name="help_document.edit" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_DESC" /> <action name="help_document.edit" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_DESC" />
<action name="help_document.edit.own" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC" /> <action name="help_document.edit.own" title="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN" description="COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC" />
@ -899,6 +903,17 @@
<action name="component_custom_admin_menus.access" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS_DESC" /> <action name="component_custom_admin_menus.access" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS_DESC" />
<action name="component_custom_admin_menus.version" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC" /> <action name="component_custom_admin_menus.version" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC" />
</section> </section>
<section name="component_router">
<action name="component_router.edit" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_DESC" />
<action name="component_router.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN_DESC" />
<action name="component_router.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE_DESC" />
<action name="component_router.edit.created_by" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY_DESC" />
<action name="component_router.edit.created" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE_DESC" />
<action name="component_router.create" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE_DESC" />
<action name="component_router.delete" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE_DESC" />
<action name="component_router.access" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS_DESC" />
<action name="component_router.version" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION_DESC" />
</section>
<section name="component_config"> <section name="component_config">
<action name="component_config.edit" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_DESC" /> <action name="component_config.edit" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_DESC" />
<action name="component_config.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN_DESC" /> <action name="component_config.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN_DESC" />

View File

@ -14,7 +14,7 @@
} }
.fieldMedium { width: 120px; } .fieldMedium { width: 120px; }
.fieldLarge { width: 320px; } .fieldLarge { width: 320px; }
.fieldMid { width: 80px; } .fieldMid { width: 89px; }
.fieldFull { width: 100%; } .fieldFull { width: 100%; }
.fieldSmall { width: 60px; } .fieldSmall { width: 74px; }
code { display: inline-block; margin: 3px;} code { display: inline-block; margin: 3px;}

View File

@ -0,0 +1,13 @@
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
/* CSS Document */

View File

@ -11,153 +11,153 @@
/* CSS Document */ /* CSS Document */
.dashboard-container { .dashboard-container {
margin-left: 10px; margin-left: 10px;
margin-top: 10px; margin-top: 10px;
width: 100%; width: 100%;
} }
.dashboard-container [class*="span"] { .dashboard-container [class*="span"] {
display: block; display: block;
float: none; float: none;
margin-left: 0; margin-left: 0;
width: auto; width: auto;
} }
.dashboard-container:before, .dashboard-container:after { .dashboard-container:before, .dashboard-container:after {
content: ""; content: "";
display: table; display: table;
} }
.dashboard-container:after { .dashboard-container:after {
clear: both; clear: both;
} }
.dashboard-container [class*="span"] { .dashboard-container [class*="span"] {
box-sizing: border-box; box-sizing: border-box;
display: block; display: block;
float: left; float: left;
min-height: 145px; min-height: 145px;
min-width: 96px; min-width: 96px;
width: 100%; width: 100%;
} }
.dashboard-container [class*="span"]:first-child { .dashboard-container [class*="span"]:first-child {
margin-left: 0; margin-left: 0;
} }
.dashboard-wraper { .dashboard-wraper {
background: none repeat scroll 0 0 hsl(0, 0%, 93%); background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 5px; border-radius: 5px;
float: left; float: left;
margin: 1%; margin: 1%;
padding: 3px; padding: 3px;
width: 17%; width: 17%;
min-height: 194px; min-height: 194px;
min-width: 96px; min-width: 96px;
} }
.dashboard-content a { .dashboard-content a {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%); border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px; border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset; box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%); color: hsl(0, 0%, 20%);
display: block; display: block;
min-height: 89px; min-height: 89px;
padding: 10px; padding: 10px;
text-align: center; text-align: center;
text-decoration: none; text-decoration: none;
} }
.dashboard-content a:hover { .dashboard-content a:hover {
background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
color: hsl(200, 100%, 30%); color: hsl(200, 100%, 30%);
text-decoration: none; text-decoration: none;
} }
.dashboard-title { .dashboard-title {
display: block; display: block;
padding-top: 5px; padding-top: 5px;
} }
.dashboard-info { .dashboard-info {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%); border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px; border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset; box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%); color: hsl(0, 0%, 20%);
display: block; display: block;
font-size: 12px; font-size: 12px;
padding: 10px; padding: 10px;
text-align: center; text-align: center;
} }
.dashboard-info span { .dashboard-info span {
display: block; display: block;
text-align: center; text-align: center;
} }
.dashboard-info img { .dashboard-info img {
margin: 0 auto; margin: 0 auto;
} }
.dashboard-table { .dashboard-table {
border-top: 1px solid hsl(0, 0%, 87%); border-top: 1px solid hsl(0, 0%, 87%);
margin-top: 5px; margin-top: 5px;
width: 100%; width: 100%;
} }
.dashboard-info h5 { .dashboard-info h5 {
font-size: 11px; font-size: 11px;
font-weight: bold; font-weight: bold;
} }
.dashboard-block { .dashboard-block {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 76%); border: 1px solid hsl(0, 0%, 76%);
border-radius: 3px; border-radius: 3px;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset; box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset;
margin-bottom: 20px; margin-bottom: 20px;
} }
.dashboard-block .dashboard-block-head { .dashboard-block .dashboard-block-head {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border-bottom: 1px solid hsl(0, 0%, 76%); border-bottom: 1px solid hsl(0, 0%, 76%);
border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%); box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%);
height: 40px; height: 40px;
position: relative; position: relative;
} }
.dashboard-block .dashboard-block-head h5 { .dashboard-block .dashboard-block-head h5 {
font-size: 12px; font-size: 12px;
margin: 0; margin: 0;
padding-left: 10px; padding-left: 10px;
padding-top: 11px; padding-top: 11px;
text-transform: uppercase; text-transform: uppercase;
} }
.dashboard-block .dashboard-block-content { .dashboard-block .dashboard-block-content {
background: none repeat scroll 0 0 hsl(0, 0%, 93%); background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 0 0 3px 3px; border-radius: 0 0 3px 3px;
} }
.dashboard-block .dashboard-block-box { .dashboard-block .dashboard-block-box {
background: none repeat scroll 0 0 hsl(0, 0%, 100%); background: none repeat scroll 0 0 hsl(0, 0%, 100%);
border-top: 1px solid hsl(0, 0%, 82%); border-top: 1px solid hsl(0, 0%, 82%);
box-shadow: 0 0 5px hsl(0, 0%, 87%) inset; box-shadow: 0 0 5px hsl(0, 0%, 87%) inset;
} }
.dashboard-block .dashboard-block-content .dashboard-block-box { .dashboard-block .dashboard-block-content .dashboard-block-box {
margin-top: 0 !important; margin-top: 0 !important;
} }
.dashboard-block .dashboard-block-content .dashboard-block-box .dashboard-block-table { .dashboard-block .dashboard-block-content .dashboard-block-box .dashboard-block-table {
margin-bottom: 0 !important; margin-bottom: 0 !important;
} }
.dashboard-block-table { .dashboard-block-table {
background-color: hsla(0, 0%, 0%, 0); background-color: hsla(0, 0%, 0%, 0);
border-collapse: collapse; border-collapse: collapse;
border-spacing: 0; border-spacing: 0;
margin-bottom: 20px; margin-bottom: 20px;
max-width: 100%; max-width: 100%;
width: 100%; width: 100%;
} }
.dashboard-block-table th, .dashboard-block-table td { .dashboard-block-table th, .dashboard-block-table td {
border-top: 1px solid hsl(0, 0%, 87%); border-top: 1px solid hsl(0, 0%, 87%);
line-height: 20px; line-height: 20px;
padding: 5px; padding: 5px;
text-align: left; text-align: left;
vertical-align: middle; vertical-align: middle;
} }
.dashboard-badge { .dashboard-badge {
background-color: hsl(0, 0%, 60%); background-color: hsl(0, 0%, 60%);
border-radius: 9px; border-radius: 9px;
color: hsl(0, 0%, 100%); color: hsl(0, 0%, 100%);
font-size: 11.844px; font-size: 11.844px;
font-weight: bold; font-weight: bold;
line-height: 14px; line-height: 14px;
padding: 1px 9px 2px; padding: 1px 9px 2px;
text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25); text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25);
vertical-align: baseline; vertical-align: baseline;
white-space: nowrap; white-space: nowrap;
} }

View File

@ -0,0 +1,13 @@
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
/* CSS Document */

View File

@ -0,0 +1,13 @@
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
/* CSS Document */

View File

@ -0,0 +1,13 @@
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
/* CSS Document */

View File

@ -0,0 +1,13 @@
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
/* CSS Document */

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@ -453,13 +453,14 @@ const addSelectedItem = async (value, table, row, field, line) => {
// show and set the save button // show and set the save button
buttonUpdateItemObject.style.display = ''; buttonUpdateItemObject.style.display = '';
buttonUpdateItemObject.setAttribute('onclick',"setValueCheck(" + row + ", '" + field + "', '" + table + "');"); buttonUpdateItemObject.setAttribute('onclick',"setValueCheck(" + row + ", '" + field + "', '" + table + "');");
// Get line info from current state.
// get top of the code line const line_info = editorObject.instance.state.doc.line(line);
let top = editorObject.charCoords({line: line, ch: 0}, "local").top; editorObject.instance.dispatch({
// scroll to the line // Set selection to that entire line.
editorObject.scrollTo(null, top - 12); selection: { head: line_info.from, anchor: line_info.to },
// select the line // Ensure the selection is shown in viewport
editorObject.setCursor(line - 1); scrollIntoView: true
});
} else { } else {
// no line so no data we can't save this data // no line so no data we can't save this data
buttonUpdateItemObject.setAttribute('onclick', ""); buttonUpdateItemObject.setAttribute('onclick', "");

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -34,9 +34,9 @@ class ###Component###Controller###SViews### extends AdminController
/** /**
* Proxy for getModel. * Proxy for getModel.
* @since 2.5 * @since 2.5
*/ */
public function getModel($name = '###SView###', $prefix = '###Component###Model', $config = array()) public function getModel($name = '###SView###', $prefix = '###Component###Model', $config = [])
{ {
$model = parent::getModel($name, $prefix, array('ignore_request' => true)); $model = parent::getModel($name, $prefix, array('ignore_request' => true));
@ -45,7 +45,7 @@ class ###Component###Controller###SViews### extends AdminController
public function dashboard() public function dashboard()
{ {
$this->setRedirect(JRoute::_('index.php?option=com_###component###', false)); $this->setRedirect(Route::_('index.php?option=com_###component###', false));
return; return;
}###CUSTOM_ADMIN_CUSTOM_BUTTONS_CONTROLLER### }###CUSTOM_ADMIN_CUSTOM_BUTTONS_CONTROLLER###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -52,18 +52,18 @@ class ###Component###Model###View### extends AdminModel
* @param string $prefix A prefix for the table class name. Optional. * @param string $prefix A prefix for the table class name. Optional.
* @param array $config Configuration array for model. Optional. * @param array $config Configuration array for model. Optional.
* *
* @return JTable A database object * @return Table A database object
* *
* @since 1.6 * @since 1.6
*/ */
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = array()) public function getTable($type = '###view###', $prefix = '###Component###Table', $config = [])
{ {
// add table path for when model gets used from other component // add table path for when model gets used from other component
$this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables'); $this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables');
// get instance of the table // get instance of the table
return JTable::getInstance($type, $prefix, $config); return Table::getInstance($type, $prefix, $config);
}###ADMIN_CUSTOM_BUTTONS_METHOD### }###ADMIN_CUSTOM_BUTTONS_METHOD###
/** /**
* Method to get a single record. * Method to get a single record.
* *
@ -108,7 +108,7 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 1.6 * @since 1.6
*/ */
public function getForm($data = array(), $loadData = true, $options = array('control' => 'jform')) public function getForm($data = [], $loadData = true, $options = array('control' => 'jform'))
{ {
// set load data option // set load data option
$options['load_data'] = $loadData;###JMODELADMIN_GETFORM### $options['load_data'] = $loadData;###JMODELADMIN_GETFORM###
@ -117,13 +117,13 @@ class ###Component###Model###View### extends AdminModel
/** /**
* Method to get the script that have to be included on the form * Method to get the script that have to be included on the form
* *
* @return string script files * @return string script files
*/ */
public function getScript() public function getScript()
{ {
return 'media/com_###component###/js/###view###.js'; return 'media/com_###component###/js/###view###.js';
} }
/** /**
* Method to test whether a record can be deleted. * Method to test whether a record can be deleted.
* *
@ -149,24 +149,24 @@ class ###Component###Model###View### extends AdminModel
protected function canEditState($record) protected function canEditState($record)
{###JMODELADMIN_CANEDITSTATE### {###JMODELADMIN_CANEDITSTATE###
} }
/** /**
* Method override to check if you can edit an existing record. * Method override to check if you can edit an existing record.
* *
* @param array $data An array of input data. * @param array $data An array of input data.
* @param string $key The name of the key for the primary key. * @param string $key The name of the key for the primary key.
* *
* @return boolean * @return boolean
* @since 2.5 * @since 2.5
*/ */
protected function allowEdit($data = array(), $key = 'id') protected function allowEdit($data = [], $key = 'id')
{###JMODELADMIN_ALLOWEDIT### {###JMODELADMIN_ALLOWEDIT###
} }
/** /**
* Prepare and sanitise the table data prior to saving. * Prepare and sanitise the table data prior to saving.
* *
* @param JTable $table A JTable object. * @param Table $table A Table object.
* *
* @return void * @return void
* *
@ -174,19 +174,19 @@ class ###Component###Model###View### extends AdminModel
*/ */
protected function prepareTable($table) protected function prepareTable($table)
{###LICENSE_TABLE_LOCKED_CHECK### {###LICENSE_TABLE_LOCKED_CHECK###
$date = JFactory::getDate(); $date = Factory::getDate();
$user = JFactory::getUser(); $user = Factory::getUser();
if (isset($table->name)) if (isset($table->name))
{ {
$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES); $table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
} }
if (isset($table->alias) && empty($table->alias)) if (isset($table->alias) && empty($table->alias))
{ {
$table->generateAlias(); $table->generateAlias();
} }
if (empty($table->id)) if (empty($table->id))
{ {
$table->created = $date->toSql(); $table->created = $date->toSql();
@ -198,7 +198,7 @@ class ###Component###Model###View### extends AdminModel
// Set ordering to the last item if not set // Set ordering to the last item if not set
if (empty($table->ordering)) if (empty($table->ordering))
{ {
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true) $query = $db->getQuery(true)
->select('MAX(ordering)') ->select('MAX(ordering)')
->from($db->quoteName('#__###component###_###view###')); ->from($db->quoteName('#__###component###_###view###'));
@ -213,7 +213,7 @@ class ###Component###Model###View### extends AdminModel
$table->modified = $date->toSql(); $table->modified = $date->toSql();
$table->modified_by = $user->id; $table->modified_by = $user->id;
} }
if (!empty($table->id)) if (!empty($table->id))
{ {
// Increment the items version number. // Increment the items version number.
@ -228,10 +228,10 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 1.6 * @since 1.6
*/ */
protected function loadFormData() protected function loadFormData()
{ {
// Check the session for previously entered form data. // Check the session for previously entered form data.
$data = JFactory::getApplication()->getUserState('com_###component###.edit.###view###.data', array()); $data = Factory::getApplication()->getUserState('com_###component###.edit.###view###.data', []);
if (empty($data)) if (empty($data))
{ {
@ -242,7 +242,7 @@ class ###Component###Model###View### extends AdminModel
return $data; return $data;
}###VALIDATIONFIX######UNIQUEFIELDS### }###VALIDATIONFIX######UNIQUEFIELDS###
/** /**
* Method to delete one or more records. * Method to delete one or more records.
* *
@ -258,7 +258,7 @@ class ###Component###Model###View### extends AdminModel
{ {
return false; return false;
}###JMODELADMIN_AFTER_DELETE### }###JMODELADMIN_AFTER_DELETE###
return true; return true;
} }
@ -278,10 +278,10 @@ class ###Component###Model###View### extends AdminModel
{ {
return false; return false;
}###JMODELADMIN_AFTER_PUBLISH### }###JMODELADMIN_AFTER_PUBLISH###
return true; return true;
} }
/** /**
* Method to perform batch operations on an item or a set of items. * Method to perform batch operations on an item or a set of items.
* *
@ -307,30 +307,30 @@ class ###Component###Model###View### extends AdminModel
if (empty($pks)) if (empty($pks))
{ {
$this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED')); $this->setError(Text::_('JGLOBAL_NO_ITEM_SELECTED'));
return false; return false;
} }
$done = false; $done = false;
// Set some needed variables. // Set some needed variables.
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
$this->table = $this->getTable(); $this->table = $this->getTable();
$this->tableClassName = get_class($this->table); $this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType; $this->contentType = new UCMType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###'); $this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true; $this->batchSet = true;
if (!$this->canDo->get('core.batch')) if (!$this->canDo->get('core.batch'))
{ {
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION')); $this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false; return false;
} }
if ($this->type == false) if ($this->type == false)
{ {
$type = new JUcmType; $type = new UCMType;
$this->type = $type->getTypeByAlias($this->typeAlias); $this->type = $type->getTypeByAlias($this->typeAlias);
} }
@ -367,8 +367,7 @@ class ###Component###Model###View### extends AdminModel
if (!$done) if (!$done)
{ {
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION')); $this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false; return false;
} }
@ -377,7 +376,7 @@ class ###Component###Model###View### extends AdminModel
return true; return true;
}###MODEL_BATCH_COPY######MODEL_BATCH_MOVE### }###MODEL_BATCH_COPY######MODEL_BATCH_MOVE###
/** /**
* Method to save the form data. * Method to save the form data.
* *
@ -389,34 +388,34 @@ class ###Component###Model###View### extends AdminModel
*/ */
public function save($data) public function save($data)
{ {
$input = JFactory::getApplication()->input; $input = Factory::getApplication()->input;
$filter = JFilterInput::getInstance(); $filter = InputFilter::getInstance();
// set the metadata to the Item Data // set the metadata to the Item Data
if (isset($data['metadata']) && isset($data['metadata']['author'])) if (isset($data['metadata']) && isset($data['metadata']['author']))
{ {
$data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM'); $data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
$metadata = new JRegistry; $metadata = new Registry;
$metadata->loadArray($data['metadata']); $metadata->loadArray($data['metadata']);
$data['metadata'] = (string) $metadata; $data['metadata'] = (string) $metadata;
}###CHECKBOX_SAVE######METHOD_ITEM_SAVE### }###CHECKBOX_SAVE######METHOD_ITEM_SAVE###
// Set the Params Items to data // Set the Params Items to data
if (isset($data['params']) && is_array($data['params'])) if (isset($data['params']) && is_array($data['params']))
{ {
$params = new JRegistry; $params = new Registry;
$params->loadArray($data['params']); $params->loadArray($data['params']);
$data['params'] = (string) $params; $data['params'] = (string) $params;
}###TITLEALIASFIX### }###TITLEALIASFIX###
if (parent::save($data)) if (parent::save($data))
{ {
return true; return true;
} }
return false; return false;
} }
/** /**
* Method to generate a unique value. * Method to generate a unique value.
* *
@ -427,9 +426,8 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 3.0 * @since 3.0
*/ */
protected function generateUnique($field,$value) protected function generateUnique($field, $value)
{ {
// set field value unique // set field value unique
$table = $this->getTable(); $table = $this->getTable();

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -52,18 +52,18 @@ class ###Component###Model###View### extends AdminModel
* @param string $prefix A prefix for the table class name. Optional. * @param string $prefix A prefix for the table class name. Optional.
* @param array $config Configuration array for model. Optional. * @param array $config Configuration array for model. Optional.
* *
* @return JTable A database object * @return Table A database object
* *
* @since 1.6 * @since 1.6
*/ */
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = array()) public function getTable($type = '###view###', $prefix = '###Component###Table', $config = [])
{ {
// add table path for when model gets used from other component // add table path for when model gets used from other component
$this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables'); $this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables');
// get instance of the table // get instance of the table
return JTable::getInstance($type, $prefix, $config); return Table::getInstance($type, $prefix, $config);
}###ADMIN_CUSTOM_BUTTONS_METHOD### }###ADMIN_CUSTOM_BUTTONS_METHOD###
/** /**
* Method to get a single record. * Method to get a single record.
* *
@ -108,7 +108,7 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 1.6 * @since 1.6
*/ */
public function getForm($data = array(), $loadData = true, $options = array('control' => 'jform')) public function getForm($data = [], $loadData = true, $options = array('control' => 'jform'))
{ {
// set load data option // set load data option
$options['load_data'] = $loadData;###JMODELADMIN_GETFORM### $options['load_data'] = $loadData;###JMODELADMIN_GETFORM###
@ -117,13 +117,13 @@ class ###Component###Model###View### extends AdminModel
/** /**
* Method to get the script that have to be included on the form * Method to get the script that have to be included on the form
* *
* @return string script files * @return string script files
*/ */
public function getScript() public function getScript()
{ {
return 'media/com_###component###/js/###view###.js'; return 'media/com_###component###/js/###view###.js';
} }
/** /**
* Method to test whether a record can be deleted. * Method to test whether a record can be deleted.
* *
@ -149,24 +149,24 @@ class ###Component###Model###View### extends AdminModel
protected function canEditState($record) protected function canEditState($record)
{###JMODELADMIN_CANEDITSTATE### {###JMODELADMIN_CANEDITSTATE###
} }
/** /**
* Method override to check if you can edit an existing record. * Method override to check if you can edit an existing record.
* *
* @param array $data An array of input data. * @param array $data An array of input data.
* @param string $key The name of the key for the primary key. * @param string $key The name of the key for the primary key.
* *
* @return boolean * @return boolean
* @since 2.5 * @since 2.5
*/ */
protected function allowEdit($data = array(), $key = 'id') protected function allowEdit($data = [], $key = 'id')
{###JMODELADMIN_ALLOWEDIT### {###JMODELADMIN_ALLOWEDIT###
} }
/** /**
* Prepare and sanitise the table data prior to saving. * Prepare and sanitise the table data prior to saving.
* *
* @param JTable $table A JTable object. * @param Table $table A Table object.
* *
* @return void * @return void
* *
@ -174,19 +174,19 @@ class ###Component###Model###View### extends AdminModel
*/ */
protected function prepareTable($table) protected function prepareTable($table)
{###LICENSE_TABLE_LOCKED_CHECK### {###LICENSE_TABLE_LOCKED_CHECK###
$date = JFactory::getDate(); $date = Factory::getDate();
$user = JFactory::getUser(); $user = Factory::getUser();
if (isset($table->name)) if (isset($table->name))
{ {
$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES); $table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
} }
if (isset($table->alias) && empty($table->alias)) if (isset($table->alias) && empty($table->alias))
{ {
$table->generateAlias(); $table->generateAlias();
} }
if (empty($table->id)) if (empty($table->id))
{ {
$table->created = $date->toSql(); $table->created = $date->toSql();
@ -198,7 +198,7 @@ class ###Component###Model###View### extends AdminModel
// Set ordering to the last item if not set // Set ordering to the last item if not set
if (empty($table->ordering)) if (empty($table->ordering))
{ {
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true) $query = $db->getQuery(true)
->select('MAX(ordering)') ->select('MAX(ordering)')
->from($db->quoteName('#__###component###_###view###')); ->from($db->quoteName('#__###component###_###view###'));
@ -213,7 +213,7 @@ class ###Component###Model###View### extends AdminModel
$table->modified = $date->toSql(); $table->modified = $date->toSql();
$table->modified_by = $user->id; $table->modified_by = $user->id;
} }
if (!empty($table->id)) if (!empty($table->id))
{ {
// Increment the items version number. // Increment the items version number.
@ -228,10 +228,10 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 1.6 * @since 1.6
*/ */
protected function loadFormData() protected function loadFormData()
{ {
// Check the session for previously entered form data. // Check the session for previously entered form data.
$data = JFactory::getApplication()->getUserState('com_###component###.edit.###view###.data', array()); $data = Factory::getApplication()->getUserState('com_###component###.edit.###view###.data', []);
if (empty($data)) if (empty($data))
{ {
@ -242,7 +242,7 @@ class ###Component###Model###View### extends AdminModel
return $data; return $data;
}###VALIDATIONFIX######UNIQUEFIELDS### }###VALIDATIONFIX######UNIQUEFIELDS###
/** /**
* Method to delete one or more records. * Method to delete one or more records.
* *
@ -258,7 +258,7 @@ class ###Component###Model###View### extends AdminModel
{ {
return false; return false;
}###JMODELADMIN_AFTER_DELETE### }###JMODELADMIN_AFTER_DELETE###
return true; return true;
} }
@ -278,10 +278,10 @@ class ###Component###Model###View### extends AdminModel
{ {
return false; return false;
}###JMODELADMIN_AFTER_PUBLISH### }###JMODELADMIN_AFTER_PUBLISH###
return true; return true;
} }
/** /**
* Method to perform batch operations on an item or a set of items. * Method to perform batch operations on an item or a set of items.
* *
@ -307,30 +307,30 @@ class ###Component###Model###View### extends AdminModel
if (empty($pks)) if (empty($pks))
{ {
$this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED')); $this->setError(Text::_('JGLOBAL_NO_ITEM_SELECTED'));
return false; return false;
} }
$done = false; $done = false;
// Set some needed variables. // Set some needed variables.
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
$this->table = $this->getTable(); $this->table = $this->getTable();
$this->tableClassName = get_class($this->table); $this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType; $this->contentType = new UCMType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName); $this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###'); $this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true; $this->batchSet = true;
if (!$this->canDo->get('core.batch')) if (!$this->canDo->get('core.batch'))
{ {
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION')); $this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false; return false;
} }
if ($this->type == false) if ($this->type == false)
{ {
$type = new JUcmType; $type = new UCMType;
$this->type = $type->getTypeByAlias($this->typeAlias); $this->type = $type->getTypeByAlias($this->typeAlias);
} }
@ -367,8 +367,7 @@ class ###Component###Model###View### extends AdminModel
if (!$done) if (!$done)
{ {
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION')); $this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false; return false;
} }
@ -377,7 +376,7 @@ class ###Component###Model###View### extends AdminModel
return true; return true;
}###MODEL_BATCH_COPY######MODEL_BATCH_MOVE### }###MODEL_BATCH_COPY######MODEL_BATCH_MOVE###
/** /**
* Method to save the form data. * Method to save the form data.
* *
@ -389,34 +388,34 @@ class ###Component###Model###View### extends AdminModel
*/ */
public function save($data) public function save($data)
{ {
$input = JFactory::getApplication()->input; $input = Factory::getApplication()->input;
$filter = JFilterInput::getInstance(); $filter = InputFilter::getInstance();
// set the metadata to the Item Data // set the metadata to the Item Data
if (isset($data['metadata']) && isset($data['metadata']['author'])) if (isset($data['metadata']) && isset($data['metadata']['author']))
{ {
$data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM'); $data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
$metadata = new JRegistry; $metadata = new Registry;
$metadata->loadArray($data['metadata']); $metadata->loadArray($data['metadata']);
$data['metadata'] = (string) $metadata; $data['metadata'] = (string) $metadata;
}###CHECKBOX_SAVE######METHOD_ITEM_SAVE### }###CHECKBOX_SAVE######METHOD_ITEM_SAVE###
// Set the Params Items to data // Set the Params Items to data
if (isset($data['params']) && is_array($data['params'])) if (isset($data['params']) && is_array($data['params']))
{ {
$params = new JRegistry; $params = new Registry;
$params->loadArray($data['params']); $params->loadArray($data['params']);
$data['params'] = (string) $params; $data['params'] = (string) $params;
}###TITLEALIASFIX### }###TITLEALIASFIX###
if (parent::save($data)) if (parent::save($data))
{ {
return true; return true;
} }
return false; return false;
} }
/** /**
* Method to generate a unique value. * Method to generate a unique value.
* *
@ -427,9 +426,8 @@ class ###Component###Model###View### extends AdminModel
* *
* @since 3.0 * @since 3.0
*/ */
protected function generateUnique($field,$value) protected function generateUnique($field, $value)
{ {
// set field value unique // set field value unique
$table = $this->getTable(); $table = $this->getTable();

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -19,6 +19,8 @@ defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
/** /**
* General Controller of ###Component### component * General Controller of ###Component### component
@ -34,7 +36,7 @@ class ###Component###Controller extends BaseController
* *
* @since 3.0 * @since 3.0
*/ */
public function __construct($config = array()) public function __construct($config = [])
{ {
// set the default view // set the default view
$config['default_view'] = '###DASHBOARDVIEW###'; $config['default_view'] = '###DASHBOARDVIEW###';
@ -50,38 +52,38 @@ class ###Component###Controller extends BaseController
function display($cachable = false, $urlparams = false) function display($cachable = false, $urlparams = false)
{ {
// set default view if not set // set default view if not set
$view = $this->input->getCmd('view', '###DASHBOARDVIEW###'); $view = $this->input->getCmd('view', '###DASHBOARDVIEW###');
$data = $this->getViewRelation($view); $data = $this->getViewRelation($view);
$layout = $this->input->get('layout', null, 'WORD'); $layout = $this->input->get('layout', null, 'WORD');
$id = $this->input->getInt('id'); $id = $this->input->getInt('id');
// Check for edit form. // Check for edit form.
if(###Component###Helper::checkArray($data)) if(Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($data))
{ {
if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_###component###.edit.'.$data['view'], $id)) if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_###component###.edit.'.$data['view'], $id))
{ {
// Somehow the person just went to the form - we don't allow that. // Somehow the person just went to the form - we don't allow that.
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id)); $this->setError(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setMessage($this->getError(), 'error'); $this->setMessage($this->getError(), 'error');
// check if item was opend from other then its own list view // check if item was opend from other then its own list view
$ref = $this->input->getCmd('ref', 0); $ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0); $refid = $this->input->getInt('refid', 0);
// set redirect // set redirect
if ($refid > 0 && ###Component###Helper::checkString($ref)) if ($refid > 0 && Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{ {
// redirect to item of ref // redirect to item of ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
} }
elseif (###Component###Helper::checkString($ref)) elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{ {
// redirect to ref // redirect to ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref, false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref, false));
} }
else else
{ {
// normal redirect back to the list view // normal redirect back to the list view
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.$data['views'], false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view='.$data['views'], false));
} }
return false; return false;
@ -94,7 +96,7 @@ class ###Component###Controller extends BaseController
protected function getViewRelation($view) protected function getViewRelation($view)
{ {
// check the we have a value // check the we have a value
if (###Component###Helper::checkString($view)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($view))
{ {
// the view relationships // the view relationships
$views = array(###VIEWARRAY### $views = array(###VIEWARRAY###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,9 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@ -29,9 +31,9 @@ class ###Component###ControllerAjax extends BaseController
{ {
parent::__construct($config); parent::__construct($config);
// make sure all json stuff are set // make sure all json stuff are set
JFactory::getDocument()->setMimeEncoding( 'application/json' ); Factory::getDocument()->setMimeEncoding( 'application/json' );
// get the application // get the application
$app = JFactory::getApplication(); $app = Factory::getApplication();
$app->setHeader('Content-Disposition','attachment;filename="getajax.json"'); $app->setHeader('Content-Disposition','attachment;filename="getajax.json"');
$app->setHeader('Access-Control-Allow-Origin', '*'); $app->setHeader('Access-Control-Allow-Origin', '*');
// load the tasks ###REGISTER_AJAX_TASK### // load the tasks ###REGISTER_AJAX_TASK###
@ -40,16 +42,16 @@ class ###Component###ControllerAjax extends BaseController
public function ajax() public function ajax()
{ {
// get the user for later use // get the user for later use
$user = JFactory::getUser(); $user = Factory::getUser();
// get the input values // get the input values
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
// check if we should return raw // check if we should return raw
$returnRaw = $jinput->get('raw', false, 'BOOLEAN'); $returnRaw = $jinput->get('raw', false, 'BOOLEAN');
// return to a callback function // return to a callback function
$callback = $jinput->get('callback', null, 'CMD'); $callback = $jinput->get('callback', null, 'CMD');
// Check Token! // Check Token!
$token = JSession::getFormToken(); $token = Session::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM'); $call_token = $jinput->get('token', 0, 'ALNUM');
if($jinput->get($token, 0, 'ALNUM') || $token === $call_token) if($jinput->get($token, 0, 'ALNUM') || $token === $call_token)
{ {
// get the task // get the task

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,9 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@ -29,9 +31,9 @@ class ###Component###ControllerAjax extends BaseController
{ {
parent::__construct($config); parent::__construct($config);
// make sure all json stuff are set // make sure all json stuff are set
JFactory::getDocument()->setMimeEncoding( 'application/json' ); Factory::getDocument()->setMimeEncoding( 'application/json' );
// get the application // get the application
$app = JFactory::getApplication(); $app = Factory::getApplication();
$app->setHeader('Content-Disposition','attachment;filename="getajax.json"'); $app->setHeader('Content-Disposition','attachment;filename="getajax.json"');
$app->setHeader('Access-Control-Allow-Origin', '*'); $app->setHeader('Access-Control-Allow-Origin', '*');
// load the tasks ###REGISTER_SITE_AJAX_TASK### // load the tasks ###REGISTER_SITE_AJAX_TASK###
@ -40,16 +42,16 @@ class ###Component###ControllerAjax extends BaseController
public function ajax() public function ajax()
{ {
// get the user for later use // get the user for later use
$user = JFactory::getUser(); $user = Factory::getUser();
// get the input values // get the input values
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
// check if we should return raw // check if we should return raw
$returnRaw = $jinput->get('raw', false, 'BOOLEAN'); $returnRaw = $jinput->get('raw', false, 'BOOLEAN');
// return to a callback function // return to a callback function
$callback = $jinput->get('callback', null, 'CMD'); $callback = $jinput->get('callback', null, 'CMD');
// Check Token! // Check Token!
$token = JSession::getFormToken(); $token = Session::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM'); $call_token = $jinput->get('token', 0, 'ALNUM');
if($jinput->get($token, 0, 'ALNUM') || $token === $call_token) if($jinput->get($token, 0, 'ALNUM') || $token === $call_token)
{ {
// get the task // get the task
@ -71,7 +73,7 @@ class ###Component###ControllerAjax extends BaseController
echo json_encode(false); echo json_encode(false);
} }
else else
{ {
echo "(".json_encode(false).");"; echo "(".json_encode(false).");";
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@ -34,12 +37,12 @@ class ###Component###ControllerHelp extends BaseController
public function help() public function help()
{ {
$user = JFactory::getUser(); $user = Factory::getUser();
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
// Check Token! // Check Token!
$token = JSession::getFormToken(); $token = Session::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM'); $call_token = $jinput->get('token', 0, 'ALNUM');
if($user->id != 0 && $token == $call_token) if($user->id != 0 && ($jinput->get($token, 0, 'ALNUM') || $token === $call_token))
{ {
$task = $this->getTask(); $task = $this->getTask();
switch($task){ switch($task){
@ -67,7 +70,7 @@ class ###Component###ControllerHelp extends BaseController
break; break;
} }
} }
else else
{ {
// stop execution gracefully // stop execution gracefully
jexit(); jexit();
@ -76,8 +79,8 @@ class ###Component###ControllerHelp extends BaseController
protected function getHelpDocumentText($id) protected function getHelpDocumentText($id)
{ {
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.title','a.content')); $query->select(array('a.title','a.content'));
$query->from('#__###component###_help_document AS a'); $query->from('#__###component###_help_document AS a');
$query->where('a.id = '.(int) $id); $query->where('a.id = '.(int) $id);
@ -86,21 +89,21 @@ class ###Component###ControllerHelp extends BaseController
$db->execute(); $db->execute();
if($db->getNumRows()) if($db->getNumRows())
{ {
$text = array(); $text = [];
$document = $db->loadObject(); $document = $db->loadObject();
// fix image issue // fix image issue
$images['src="images'] = 'src="'.JURI::root().'images'; $images['src="images'] = 'src="'.Uri::root().'images';
$images["src='images"] = "src='".JURI::root()."images"; $images["src='images"] = "src='".Uri::root()."images";
$images['src="/images'] = 'src="'.JURI::root().'images'; $images['src="/images'] = 'src="'.Uri::root().'images';
$images["src='/images"] = "src='".JURI::root()."images"; $images["src='/images"] = "src='".Uri::root()."images";
// set document template // set document template
$text[] = "<!doctype html>"; $text[] = "<!doctype html>";
$text[] = '<html>'; $text[] = '<html>';
$text[] = "<head>"; $text[] = "<head>";
$text[] = '<meta charset="utf-8">'; $text[] = '<meta charset="utf-8">';
$text[] = "<title>".$document->title."</title>"; $text[] = "<title>".$document->title."</title>";
$text[] = '<link type="text/css" href="'.JURI::root().'media/com_###component###/uikit/css/uikit.gradient.min.css" rel="stylesheet"></link>'; $text[] = '<link type="text/css" href="'.Uri::root().'media/com_###component###/uikit/css/uikit.gradient.min.css" rel="stylesheet"></link>';
$text[] = '<script type="text/javascript" src="'.JURI::root().'media/com_###component###/uikit/js/uikit.min.js"></script>'; $text[] = '<script type="text/javascript" src="'.Uri::root().'media/com_###component###/uikit/js/uikit.min.js"></script>';
$text[] = "</head>"; $text[] = "</head>";
$text[] = '<body><br />'; $text[] = '<body><br />';
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">'; $text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@ -34,12 +37,12 @@ class ###Component###ControllerHelp extends BaseController
public function help() public function help()
{ {
$user = JFactory::getUser(); $user = Factory::getUser();
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
// Check Token! // Check Token!
$token = JSession::getFormToken(); $token = Session::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM'); $call_token = $jinput->get('token', 0, 'ALNUM');
if($token == $call_token) if($user->id != 0 && ($jinput->get($token, 0, 'ALNUM') || $token === $call_token))
{ {
$task = $this->getTask(); $task = $this->getTask();
switch($task){ switch($task){
@ -76,8 +79,8 @@ class ###Component###ControllerHelp extends BaseController
protected function getHelpDocumentText($id) protected function getHelpDocumentText($id)
{ {
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.title','a.content')); $query->select(array('a.title','a.content'));
$query->from('#__###component###_help_document AS a'); $query->from('#__###component###_help_document AS a');
$query->where('a.id = '.(int) $id); $query->where('a.id = '.(int) $id);
@ -87,21 +90,21 @@ class ###Component###ControllerHelp extends BaseController
$db->execute(); $db->execute();
if($db->getNumRows()) if($db->getNumRows())
{ {
$text = array(); $text = [];
$document = $db->loadObject(); $document = $db->loadObject();
// fix image issue // fix image issue
$images['src="images'] = 'src="'.JURI::root().'images'; $images['src="images'] = 'src="'.Uri::root().'images';
$images["src='images"] = "src='".JURI::root()."images"; $images["src='images"] = "src='".Uri::root()."images";
$images['src="/images'] = 'src="'.JURI::root().'images'; $images['src="/images'] = 'src="'.Uri::root().'images';
$images["src='/images"] = "src='".JURI::root()."images"; $images["src='/images"] = "src='".Uri::root()."images";
// set document template // set document template
$text[] = "<!doctype html>"; $text[] = "<!doctype html>";
$text[] = '<html>'; $text[] = '<html>';
$text[] = "<head>"; $text[] = "<head>";
$text[] = '<meta charset="utf-8">'; $text[] = '<meta charset="utf-8">';
$text[] = "<title>".$document->title."</title>"; $text[] = "<title>".$document->title."</title>";
$text[] = '<link type="text/css" href="'.JURI::root().'media/com_###component###/uikit/css/uikit.gradient.min.css" rel="stylesheet"></link>'; $text[] = '<link type="text/css" href="'.Uri::root().'media/com_###component###/uikit/css/uikit.gradient.min.css" rel="stylesheet"></link>';
$text[] = '<script type="text/javascript" src="'.JURI::root().'media/com_###component###/uikit/js/uikit.min.js"></script>'; $text[] = '<script type="text/javascript" src="'.Uri::root().'media/com_###component###/uikit/js/uikit.min.js"></script>';
$text[] = "</head>"; $text[] = "</head>";
$text[] = '<body><br />'; $text[] = '<body><br />';
$text[] = '<div class="uk-container uk-container-center uk-grid-collapse">'; $text[] = '<div class="uk-container uk-container-center uk-grid-collapse">';

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,8 +17,11 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Router\Route;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Language\Text;
/** /**
* ###Component### Component Base Controller * ###Component### Component Base Controller
@ -37,51 +40,51 @@ class ###Component###Controller extends BaseController
function display($cachable = false, $urlparams = false) function display($cachable = false, $urlparams = false)
{ {
// set default view if not set // set default view if not set
$view = $this->input->getCmd('view', '###SITE_DEFAULT_VIEW###'); $view = $this->input->getCmd('view', '###SITE_DEFAULT_VIEW###');
$this->input->set('view', $view); $this->input->set('view', $view);
$isEdit = $this->checkEditView($view); $isEdit = $this->checkEditView($view);
$layout = $this->input->get('layout', null, 'WORD'); $layout = $this->input->get('layout', null, 'WORD');
$id = $this->input->getInt('id'); $id = $this->input->getInt('id');
// $cachable = true; (TODO) working on a fix [gh-238](https://github.com/vdm-io/Joomla-Component-Builder/issues/238) // $cachable = true; (TODO) working on a fix [gh-238](https://github.com/vdm-io/Joomla-Component-Builder/issues/238)
// insure that the view is not cashable if edit view or if user is logged in // insure that the view is not cashable if edit view or if user is logged in
$user = JFactory::getUser(); $user = Factory::getUser();
if ($user->get('id') || $isEdit) if ($user->get('id') || $isEdit)
{ {
$cachable = false; $cachable = false;
} }
// Check for edit form. // Check for edit form.
if($isEdit) if($isEdit)
{ {
if ($layout == 'edit' && !$this->checkEditId('com_###component###.edit.'.$view, $id)) if ($layout == 'edit' && !$this->checkEditId('com_###component###.edit.'.$view, $id))
{ {
// Somehow the person just went to the form - we don't allow that. // Somehow the person just went to the form - we don't allow that.
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id)); $this->setError(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setMessage($this->getError(), 'error'); $this->setMessage($this->getError(), 'error');
// check if item was opend from other then its own list view // check if item was opend from other then its own list view
$ref = $this->input->getCmd('ref', 0); $ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0); $refid = $this->input->getInt('refid', 0);
// set redirect // set redirect
if ($refid > 0 && ###Component###Helper::checkString($ref)) if ($refid > 0 && Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{ {
// redirect to item of ref // redirect to item of ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
} }
elseif (###Component###Helper::checkString($ref)) elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{ {
// redirect to ref // redirect to ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref, false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref, false));
} }
else else
{ {
// normal redirect back to the list default site view // normal redirect back to the list default site view
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###', false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view=###SITE_DEFAULT_VIEW###', false));
} }
return false; return false;
} }
} }
// we may need to make this more dynamic in the future. (TODO) // we may need to make this more dynamic in the future. (TODO)
$safeurlparams = array( $safeurlparams = array(
'catid' => 'INT', 'catid' => 'INT',
@ -102,9 +105,9 @@ class ###Component###Controller extends BaseController
'Itemid' => 'INT'); 'Itemid' => 'INT');
// should these not merge? // should these not merge?
if (###Component###Helper::checkArray($urlparams)) if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($urlparams))
{ {
$safeurlparams = ###Component###Helper::mergeArrays(array($urlparams, $safeurlparams)); $safeurlparams = Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge(array($urlparams, $safeurlparams));
} }
return parent::display($cachable, $safeurlparams); return parent::display($cachable, $safeurlparams);
@ -112,7 +115,7 @@ class ###Component###Controller extends BaseController
protected function checkEditView($view) protected function checkEditView($view)
{ {
if (###Component###Helper::checkString($view)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($view))
{ {
$views = array(###SITE_EDIT_VIEW_ARRAY### $views = array(###SITE_EDIT_VIEW_ARRAY###
); );

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -31,7 +31,7 @@ class ###Component###Controller###SView### extends BaseController
public function dashboard() public function dashboard()
{ {
$this->setRedirect(JRoute::_('index.php?option=com_###component###', false)); $this->setRedirect(Route::_('index.php?option=com_###component###', false));
return; return;
}###CUSTOM_ADMIN_CUSTOM_BUTTONS_CONTROLLER### }###CUSTOM_ADMIN_CUSTOM_BUTTONS_CONTROLLER###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -32,21 +32,21 @@ class ###Component###ControllerImport extends BaseController
public function import() public function import()
{ {
// Check for request forgeries // Check for request forgeries
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN')); Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$model = $this->getModel('import'); $model = $this->getModel('import');
if ($model->import()) if ($model->import())
{ {
$cache = JFactory::getCache('mod_menu'); $cache = Factory::getCache('mod_menu');
$cache->clean(); $cache->clean();
// TODO: Reset the users acl here as well to kill off any missing bits // TODO: Reset the users acl here as well to kill off any missing bits
} }
$app = JFactory::getApplication(); $app = Factory::getApplication();
$redirect_url = $app->getUserState('com_###component###.redirect_url'); $redirect_url = $app->getUserState('com_###component###.redirect_url');
if (empty($redirect_url)) if (empty($redirect_url))
{ {
$redirect_url = JRoute::_('index.php?option=com_###component###&view=import', false); $redirect_url = Route::_('index.php?option=com_###component###&view=import', false);
} }
else else
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -32,21 +32,21 @@ class ###Component###Controller###View### extends BaseController
public function import() public function import()
{ {
// Check for request forgeries // Check for request forgeries
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN')); Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$model = $this->getModel('###View###'); $model = $this->getModel('###View###');
if ($model->import()) if ($model->import())
{ {
$cache = JFactory::getCache('mod_menu'); $cache = Factory::getCache('mod_menu');
$cache->clean(); $cache->clean();
// TODO: Reset the users acl here as well to kill off any missing bits // TODO: Reset the users acl here as well to kill off any missing bits
} }
$app = JFactory::getApplication(); $app = Factory::getApplication();
$redirect_url = $app->getUserState('com_###component###.redirect_url'); $redirect_url = $app->getUserState('com_###component###.redirect_url');
if (empty($redirect_url)) if (empty($redirect_url))
{ {
$redirect_url = JRoute::_('index.php?option=com_###component###&view=###view###', false); $redirect_url = Route::_('index.php?option=com_###component###&view=###view###', false);
} }
else else
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -27,8 +27,8 @@ class ###Component###ModelImport extends BaseDatabaseModel
// set uploading values // set uploading values
protected $use_streams = false; protected $use_streams = false;
protected $allow_unsafe = false; protected $allow_unsafe = false;
protected $safeFileOptions = array(); protected $safeFileOptions = [];
/** /**
* @var object JTable object * @var object JTable object
*/ */
@ -45,13 +45,13 @@ class ###Component###ModelImport extends BaseDatabaseModel
* @var string * @var string
*/ */
protected $_context = 'com_###component###.import'; protected $_context = 'com_###component###.import';
/** /**
* Import Settings * Import Settings
*/ */
protected $getType = NULL; protected $getType = NULL;
protected $dataType = NULL; protected $dataType = NULL;
/** /**
* Method to auto-populate the model state. * Method to auto-populate the model state.
* *
@ -62,7 +62,7 @@ class ###Component###ModelImport extends BaseDatabaseModel
*/ */
protected function populateState() protected function populateState()
{ {
$app = JFactory::getApplication('administrator'); $app = Factory::getApplication('administrator');
$this->setState('message', $app->getUserState('com_###component###.message')); $this->setState('message', $app->getUserState('com_###component###.message'));
$app->setUserState('com_###component###.message', ''); $app->setUserState('com_###component###.message', '');
@ -82,14 +82,14 @@ class ###Component###ModelImport extends BaseDatabaseModel
public function import() public function import()
{ {
$this->setState('action', 'import'); $this->setState('action', 'import');
$app = JFactory::getApplication(); $app = Factory::getApplication();
$session = JFactory::getSession(); $session = Factory::getSession();
$package = null; $package = null;
$continue = false; $continue = false;
// get import type // get import type
$this->getType = $app->input->getString('gettype', NULL); $this->getType = $app->input->getString('gettype', NULL);
// get import type // get import type
$this->dataType = $session->get('dataType_VDM_IMPORTINTO', NULL); $this->dataType = $session->get('dataType_VDM_IMPORTINTO', NULL);
if ($package === null) if ($package === null)
{ {
@ -110,9 +110,9 @@ class ###Component###ModelImport extends BaseDatabaseModel
break; break;
case 'continue': case 'continue':
$continue = true; $continue = true;
$package = $session->get('package', null); $package = $session->get('package', null);
$package = json_decode($package, true); $package = json_decode($package, true);
// clear session // clear session
$session->clear('package'); $session->clear('package');
$session->clear('dataType'); $session->clear('dataType');
@ -120,7 +120,7 @@ class ###Component###ModelImport extends BaseDatabaseModel
break; break;
default: default:
$app->setUserState('com_###component###.message', JText::_('COM_###COMPONENT###_IMPORT_NO_IMPORT_TYPE_FOUND')); $app->setUserState('com_###component###.message', Text::_('COM_###COMPONENT###_IMPORT_NO_IMPORT_TYPE_FOUND'));
return false; return false;
break; break;
@ -134,10 +134,10 @@ class ###Component###ModelImport extends BaseDatabaseModel
$this->remove($package['packagename']); $this->remove($package['packagename']);
} }
$app->setUserState('com_###component###.message', JText::_('COM_###COMPONENT###_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE')); $app->setUserState('com_###component###.message', Text::_('COM_###COMPONENT###_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE'));
return false; return false;
} }
// first link data to table headers // first link data to table headers
if(!$continue){ if(!$continue){
$package = json_encode($package); $package = json_encode($package);
@ -146,13 +146,13 @@ class ###Component###ModelImport extends BaseDatabaseModel
$session->set('hasPackage', true); $session->set('hasPackage', true);
return true; return true;
} }
// set the data // set the data
$headerList = json_decode($session->get($this->dataType.'_VDM_IMPORTHEADERS', false), true); $headerList = json_decode($session->get($this->dataType.'_VDM_IMPORTHEADERS', false), true);
if (!$this->setData($package,$this->dataType,$headerList)) if (!$this->setData($package,$this->dataType,$headerList))
{ {
// There was an error importing the package // There was an error importing the package
$msg = JText::_('COM_###COMPONENT###_IMPORT_ERROR'); $msg = Text::_('COM_###COMPONENT###_IMPORT_ERROR');
$back = $session->get('backto_VDM_IMPORT', NULL); $back = $session->get('backto_VDM_IMPORT', NULL);
if ($back) if ($back)
{ {
@ -164,12 +164,12 @@ class ###Component###ModelImport extends BaseDatabaseModel
else else
{ {
// Package imported sucessfully // Package imported sucessfully
$msg = JText::sprintf('COM_###COMPONENT###_IMPORT_SUCCESS', $package['packagename']); $msg = Text::sprintf('COM_###COMPONENT###_IMPORT_SUCCESS', $package['packagename']);
$back = $session->get('backto_VDM_IMPORT', NULL); $back = $session->get('backto_VDM_IMPORT', NULL);
if ($back) if ($back)
{ {
$app->setUserState('com_###component###.redirect_url', 'index.php?option=com_###component###&view='.$back); $app->setUserState('com_###component###.redirect_url', 'index.php?option=com_###component###&view='.$back);
$session->clear('backto_VDM_IMPORT'); $session->clear('backto_VDM_IMPORT');
} }
$result = true; $result = true;
} }
@ -180,7 +180,7 @@ class ###Component###ModelImport extends BaseDatabaseModel
// remove file after import // remove file after import
$this->remove($package['packagename']); $this->remove($package['packagename']);
$session->clear($this->getType.'_VDM_IMPORTHEADERS'); $session->clear($this->getType.'_VDM_IMPORTHEADERS');
return $result; return $result;
} }
@ -190,48 +190,47 @@ class ###Component###ModelImport extends BaseDatabaseModel
* @return spreadsheet definition or false on failure * @return spreadsheet definition or false on failure
*/ */
protected function _getPackageFromUpload() protected function _getPackageFromUpload()
{ {
// Get the uploaded file information // Get the uploaded file information
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get. // 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'); $userfile = $input->files->get('import_package', null, 'raw');
// Make sure that file uploads are enabled in php // Make sure that file uploads are enabled in php
if (!(bool) ini_get('file_uploads')) if (!(bool) ini_get('file_uploads'))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning');
return false; return false;
} }
// If there is no uploaded file, we have a problem... // If there is no uploaded file, we have a problem...
if (!is_array($userfile)) if (!is_array($userfile))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning');
return false; return false;
} }
// Check if there was a problem uploading the file. // Check if there was a problem uploading the file.
if ($userfile['error'] || $userfile['size'] < 1) if ($userfile['error'] || $userfile['size'] < 1)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning');
return false; return false;
} }
// Build the appropriate paths // Build the appropriate paths
$config = JFactory::getConfig(); $config = Factory::getConfig();
$tmp_dest = $config->get('tmp_path') . '/' . $userfile['name']; $tmp_dest = $config->get('tmp_path') . '/' . $userfile['name'];
$tmp_src = $userfile['tmp_name']; $tmp_src = $userfile['tmp_name'];
// Move uploaded file // Move uploaded file
jimport('joomla.filesystem.file');
$p_file = File::upload($tmp_src, $tmp_dest, $this->use_streams, $this->allow_unsafe, $this->safeFileOptions); $p_file = File::upload($tmp_src, $tmp_dest, $this->use_streams, $this->allow_unsafe, $this->safeFileOptions);
// Was the package downloaded? // Was the package downloaded?
if (!$p_file) if (!$p_file)
{ {
$session = JFactory::getSession(); $session = Factory::getSession();
$session->clear('package'); $session->clear('package');
$session->clear('dataType'); $session->clear('dataType');
$session->clear('hasPackage'); $session->clear('hasPackage');
@ -253,16 +252,16 @@ class ###Component###ModelImport extends BaseDatabaseModel
*/ */
protected function _getPackageFromFolder() protected function _getPackageFromFolder()
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Get the path to the package to import // Get the path to the package to import
$p_dir = $input->getString('import_directory'); $p_dir = $input->getString('import_directory');
$p_dir = JPath::clean($p_dir); $p_dir = Path::clean($p_dir);
// Did you give us a valid path? // Did you give us a valid path?
if (!file_exists($p_dir)) if (!file_exists($p_dir))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning');
return false; return false;
} }
@ -272,17 +271,17 @@ class ###Component###ModelImport extends BaseDatabaseModel
// Did you give us a valid package? // Did you give us a valid package?
if (!$type) if (!$type)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning');
} }
// check the extention // check the extention
if(!$this->checkExtension($p_dir)) if(!$this->checkExtension($p_dir))
{ {
// set error message // set error message
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false; return false;
} }
$package['packagename'] = null; $package['packagename'] = null;
$package['dir'] = $p_dir; $package['dir'] = $p_dir;
$package['type'] = $type; $package['type'] = $type;
@ -298,26 +297,26 @@ class ###Component###ModelImport extends BaseDatabaseModel
*/ */
protected function _getPackageFromUrl() protected function _getPackageFromUrl()
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Get the URL of the package to import // Get the URL of the package to import
$url = $input->getString('import_url'); $url = $input->getString('import_url');
// Did you give us a URL? // Did you give us a URL?
if (!$url) if (!$url)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning');
return false; return false;
} }
// Download the package at the URL given // Download the package at the URL given
$p_file = JInstallerHelper::downloadPackage($url); $p_file = InstallerHelper::downloadPackage($url);
// Was the package downloaded? // Was the package downloaded?
if (!$p_file) if (!$p_file)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning');
return false; return false;
} }
@ -326,7 +325,7 @@ class ###Component###ModelImport extends BaseDatabaseModel
return $package; return $package;
} }
/** /**
* Check a file and verifies it as a spreadsheet file * Check a file and verifies it as a spreadsheet file
* Supports .csv .xlsx .xls and .ods * Supports .csv .xlsx .xls and .ods
@ -338,29 +337,29 @@ class ###Component###ModelImport extends BaseDatabaseModel
*/ */
protected function check($archivename) protected function check($archivename)
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
// Clean the name // Clean the name
$archivename = JPath::clean($archivename); $archivename = Path::clean($archivename);
// check the extention // check the extention
if(!$this->checkExtension($archivename)) if(!$this->checkExtension($archivename))
{ {
// Cleanup the import files // Cleanup the import files
$this->remove($archivename); $this->remove($archivename);
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false; return false;
} }
$config = JFactory::getConfig(); $config = Factory::getConfig();
// set Package Name // set Package Name
$check['packagename'] = $archivename; $check['packagename'] = $archivename;
// set directory // set directory
$check['dir'] = $config->get('tmp_path'). '/' .$archivename; $check['dir'] = $config->get('tmp_path'). '/' .$archivename;
// set type // set type
$check['type'] = $this->getType; $check['type'] = $this->getType;
return $check; return $check;
}###IMPORT_EXT_METHOD### }###IMPORT_EXT_METHOD###
@ -375,8 +374,8 @@ class ###Component###ModelImport extends BaseDatabaseModel
protected function remove($package) protected function remove($package)
{ {
jimport('joomla.filesystem.file'); jimport('joomla.filesystem.file');
$config = JFactory::getConfig(); $config = Factory::getConfig();
$package = $config->get('tmp_path'). '/' .$package; $package = $config->get('tmp_path'). '/' .$package;
// Is the package file a valid file? // Is the package file a valid file?
@ -384,23 +383,23 @@ class ###Component###ModelImport extends BaseDatabaseModel
{ {
File::delete($package); File::delete($package);
} }
elseif (is_file(JPath::clean($package))) elseif (is_file(Path::clean($package)))
{ {
// It might also be just a base filename // It might also be just a base filename
File::delete(JPath::clean($package)); File::delete(Path::clean($package));
} }
}###IMPORT_SETDATA_METHOD######IMPORT_SAVE_METHOD### }###IMPORT_SETDATA_METHOD######IMPORT_SAVE_METHOD###
protected function getAlias($name,$type = false) protected function getAlias($name,$type = false)
{ {
// sanitize the name to an alias // sanitize the name to an alias
if (JFactory::getConfig()->get('unicodeslugs') == 1) if (Factory::getConfig()->get('unicodeslugs') == 1)
{ {
$alias = JFilterOutput::stringURLUnicodeSlug($name); $alias = OutputFilter::stringURLUnicodeSlug($name);
} }
else else
{ {
$alias = JFilterOutput::stringURLSafe($name); $alias = OutputFilter::stringURLSafe($name);
} }
// must be a uniqe alias // must be a uniqe alias
if ($type) if ($type)
@ -409,7 +408,7 @@ class ###Component###ModelImport extends BaseDatabaseModel
} }
return $alias; return $alias;
} }
/** /**
* Method to generate a uniqe value. * Method to generate a uniqe value.
* *
@ -424,16 +423,16 @@ class ###Component###ModelImport extends BaseDatabaseModel
// insure the filed is always uniqe // insure the filed is always uniqe
while (isset($this->uniqeValueArray[$type][$field][$value])) while (isset($this->uniqeValueArray[$type][$field][$value]))
{ {
$value = JString::increment($value, 'dash'); $value = StringHelper::increment($value, 'dash');
} }
$this->uniqeValueArray[$type][$field][$value] = $value; $this->uniqeValueArray[$type][$field][$value] = $value;
return $value; return $value;
} }
protected function getAliasesUsed($table) protected function getAliasesUsed($table)
{ {
// Get a db connection. // Get a db connection.
$db = JFactory::getDbo(); $db = Factory::getDbo();
// first we check if there is a alias column // first we check if there is a alias column
$columns = $db->getTableColumns('#__###component###_'.$table); $columns = $db->getTableColumns('#__###component###_'.$table);
if(isset($columns['alias'])){ if(isset($columns['alias'])){

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -27,8 +27,8 @@ class ###Component###Model###View### extends BaseDatabaseModel
// set uploading values // set uploading values
protected $use_streams = false; protected $use_streams = false;
protected $allow_unsafe = false; protected $allow_unsafe = false;
protected $safeFileOptions = array(); protected $safeFileOptions = [];
/** /**
* @var object JTable object * @var object JTable object
*/ */
@ -45,13 +45,13 @@ class ###Component###Model###View### extends BaseDatabaseModel
* @var string * @var string
*/ */
protected $_context = 'com_###component###.###view###'; protected $_context = 'com_###component###.###view###';
/** /**
* Import Settings * Import Settings
*/ */
protected $getType = NULL; protected $getType = NULL;
protected $dataType = NULL; protected $dataType = NULL;
/** /**
* Method to auto-populate the model state. * Method to auto-populate the model state.
* *
@ -62,7 +62,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
*/ */
protected function populateState() protected function populateState()
{ {
$app = JFactory::getApplication('administrator'); $app = Factory::getApplication('administrator');
$this->setState('message', $app->getUserState('com_###component###.message')); $this->setState('message', $app->getUserState('com_###component###.message'));
$app->setUserState('com_###component###.message', ''); $app->setUserState('com_###component###.message', '');
@ -72,7 +72,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
$this->setState('import.directory', $path); $this->setState('import.directory', $path);
parent::populateState(); parent::populateState();
} }
###IMPORT_METHOD_CUSTOM### ###IMPORT_METHOD_CUSTOM###
/** /**
* Works out an importation spreadsheet from a HTTP upload * Works out an importation spreadsheet from a HTTP upload
@ -80,37 +80,37 @@ class ###Component###Model###View### extends BaseDatabaseModel
* @return spreadsheet definition or false on failure * @return spreadsheet definition or false on failure
*/ */
protected function _getPackageFromUpload() protected function _getPackageFromUpload()
{ {
// Get the uploaded file information // Get the uploaded file information
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get. // 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'); $userfile = $input->files->get('import_package', null, 'raw');
// Make sure that file uploads are enabled in php // Make sure that file uploads are enabled in php
if (!(bool) ini_get('file_uploads')) if (!(bool) ini_get('file_uploads'))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTFILE'), 'warning');
return false; return false;
} }
// If there is no uploaded file, we have a problem... // If there is no uploaded file, we have a problem...
if (!is_array($userfile)) if (!is_array($userfile))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_NO_FILE_SELECTED'), 'warning');
return false; return false;
} }
// Check if there was a problem uploading the file. // Check if there was a problem uploading the file.
if ($userfile['error'] || $userfile['size'] < 1) if ($userfile['error'] || $userfile['size'] < 1)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_WARNIMPORTUPLOADERROR'), 'warning');
return false; return false;
} }
// Build the appropriate paths // Build the appropriate paths
$config = JFactory::getConfig(); $config = Factory::getConfig();
$tmp_dest = $config->get('tmp_path') . '/' . $userfile['name']; $tmp_dest = $config->get('tmp_path') . '/' . $userfile['name'];
$tmp_src = $userfile['tmp_name']; $tmp_src = $userfile['tmp_name'];
@ -120,7 +120,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
// Was the package downloaded? // Was the package downloaded?
if (!$p_file) if (!$p_file)
{ {
$session = JFactory::getSession(); $session = Factory::getSession();
$session->clear('package'); $session->clear('package');
$session->clear('dataType'); $session->clear('dataType');
$session->clear('hasPackage'); $session->clear('hasPackage');
@ -142,16 +142,16 @@ class ###Component###Model###View### extends BaseDatabaseModel
*/ */
protected function _getPackageFromFolder() protected function _getPackageFromFolder()
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Get the path to the package to import // Get the path to the package to import
$p_dir = $input->getString('import_directory'); $p_dir = $input->getString('import_directory');
$p_dir = JPath::clean($p_dir); $p_dir = Path::clean($p_dir);
// Did you give us a valid path? // Did you give us a valid path?
if (!file_exists($p_dir)) if (!file_exists($p_dir))
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_ENTER_A_PACKAGE_DIRECTORY'), 'warning');
return false; return false;
} }
@ -161,17 +161,17 @@ class ###Component###Model###View### extends BaseDatabaseModel
// Did you give us a valid package? // Did you give us a valid package?
if (!$type) if (!$type)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_PATH_DOES_NOT_HAVE_A_VALID_PACKAGE'), 'warning');
} }
// check the extention // check the extention
if(!$this->checkExtension($p_dir)) if(!$this->checkExtension($p_dir))
{ {
// set error message // set error message
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false; return false;
} }
$package['packagename'] = null; $package['packagename'] = null;
$package['dir'] = $p_dir; $package['dir'] = $p_dir;
$package['type'] = $type; $package['type'] = $type;
@ -187,7 +187,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
*/ */
protected function _getPackageFromUrl() protected function _getPackageFromUrl()
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$input = $app->input; $input = $app->input;
// Get the URL of the package to import // Get the URL of the package to import
@ -196,17 +196,17 @@ class ###Component###Model###View### extends BaseDatabaseModel
// Did you give us a URL? // Did you give us a URL?
if (!$url) if (!$url)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL'), 'warning');
return false; return false;
} }
// Download the package at the URL given // Download the package at the URL given
$p_file = JInstallerHelper::downloadPackage($url); $p_file = InstallerHelper::downloadPackage($url);
// Was the package downloaded? // Was the package downloaded?
if (!$p_file) if (!$p_file)
{ {
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_INVALID_URL'), 'warning');
return false; return false;
} }
@ -215,7 +215,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
return $package; return $package;
} }
/** /**
* Check a file and verifies it as a spreadsheet file * Check a file and verifies it as a spreadsheet file
* Supports .csv .xlsx .xls and .ods * Supports .csv .xlsx .xls and .ods
@ -227,29 +227,29 @@ class ###Component###Model###View### extends BaseDatabaseModel
*/ */
protected function check($archivename) protected function check($archivename)
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
// Clean the name // Clean the name
$archivename = JPath::clean($archivename); $archivename = Path::clean($archivename);
// check the extention // check the extention
if(!$this->checkExtension($archivename)) if(!$this->checkExtension($archivename))
{ {
// Cleanup the import files // Cleanup the import files
$this->remove($archivename); $this->remove($archivename);
$app->enqueueMessage(JText::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning'); $app->enqueueMessage(Text::_('COM_###COMPONENT###_IMPORT_MSG_DOES_NOT_HAVE_A_VALID_FILE_TYPE'), 'warning');
return false; return false;
} }
$config = JFactory::getConfig(); $config = Factory::getConfig();
// set Package Name // set Package Name
$check['packagename'] = $archivename; $check['packagename'] = $archivename;
// set directory // set directory
$check['dir'] = $config->get('tmp_path'). '/' .$archivename; $check['dir'] = $config->get('tmp_path'). '/' .$archivename;
// set type // set type
$check['type'] = $this->getType; $check['type'] = $this->getType;
return $check; return $check;
} }
###IMPORT_EXT_METHOD### ###IMPORT_EXT_METHOD###
@ -264,9 +264,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
*/ */
protected function remove($package) protected function remove($package)
{ {
jimport('joomla.filesystem.file'); $config = Factory::getConfig();
$config = JFactory::getConfig();
$package = $config->get('tmp_path'). '/' .$package; $package = $config->get('tmp_path'). '/' .$package;
// Is the package file a valid file? // Is the package file a valid file?
@ -274,10 +272,10 @@ class ###Component###Model###View### extends BaseDatabaseModel
{ {
File::delete($package); File::delete($package);
} }
elseif (is_file(JPath::clean($package))) elseif (is_file(Path::clean($package)))
{ {
// It might also be just a base filename // It might also be just a base filename
File::delete(JPath::clean($package)); File::delete(Path::clean($package));
} }
} }
###IMPORT_SETDATA_METHOD### ###IMPORT_SETDATA_METHOD###
@ -286,13 +284,13 @@ class ###Component###Model###View### extends BaseDatabaseModel
protected function getAlias($name,$type = false) protected function getAlias($name,$type = false)
{ {
// sanitize the name to an alias // sanitize the name to an alias
if (JFactory::getConfig()->get('unicodeslugs') == 1) if (Factory::getConfig()->get('unicodeslugs') == 1)
{ {
$alias = JFilterOutput::stringURLUnicodeSlug($name); $alias = OutputFilter::stringURLUnicodeSlug($name);
} }
else else
{ {
$alias = JFilterOutput::stringURLSafe($name); $alias = OutputFilter::stringURLSafe($name);
} }
// must be a uniqe alias // must be a uniqe alias
if ($type) if ($type)
@ -301,7 +299,7 @@ class ###Component###Model###View### extends BaseDatabaseModel
} }
return $alias; return $alias;
} }
/** /**
* Method to generate a uniqe value. * Method to generate a uniqe value.
* *
@ -316,16 +314,16 @@ class ###Component###Model###View### extends BaseDatabaseModel
// insure the filed is always uniqe // insure the filed is always uniqe
while (isset($this->uniqeValueArray[$type][$field][$value])) while (isset($this->uniqeValueArray[$type][$field][$value]))
{ {
$value = JString::increment($value, 'dash'); $value = StringHelper::increment($value, 'dash');
} }
$this->uniqeValueArray[$type][$field][$value] = $value; $this->uniqeValueArray[$type][$field][$value] = $value;
return $value; return $value;
} }
protected function getAliasesUsed($table) protected function getAliasesUsed($table)
{ {
// Get a db connection. // Get a db connection.
$db = JFactory::getDbo(); $db = Factory::getDbo();
// first we check if there is a alias column // first we check if there is a alias column
$columns = $db->getTableColumns('#__###component###_'.$table); $columns = $db->getTableColumns('#__###component###_'.$table);
if(isset($columns['alias'])){ if(isset($columns['alias'])){

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -22,7 +22,7 @@ defined('_JEXEC') or die('Restricted access');
/** /**
* ###Component### View class * ###Component### View class
*/ */
class ###Component###View###Component### extends JViewLegacy class ###Component###View###Component### extends HtmlView
{ {
/** /**
* View display method * View display method
@ -31,15 +31,15 @@ class ###Component###View###Component### extends JViewLegacy
function display($tpl = null) function display($tpl = null)
{ {
// Assign data to the view // Assign data to the view
$this->icons = $this->get('Icons'); $this->icons = $this->get('Icons');
$this->contributors = ###Component###Helper::getContributors();###DASH_GET_CUSTOM_DATA### $this->contributors = ###Component###Helper::getContributors();###DASH_GET_CUSTOM_DATA###
// get the manifest details of the component // get the manifest details of the component
$this->manifest = ###Component###Helper::manifest(); $this->manifest = ###Component###Helper::manifest();
// Set the toolbar // Set the toolbar
$this->addToolBar(); $this->addToolBar();
// Check for errors. // Check for errors.
if (count($errors = $this->get('Errors'))) if (count($errors = $this->get('Errors')))
{ {
@ -59,18 +59,18 @@ class ###Component###View###Component### extends JViewLegacy
protected function addToolBar() protected function addToolBar()
{ {
$canDo = ###Component###Helper::getActions('###component###'); $canDo = ###Component###Helper::getActions('###component###');
JToolBarHelper::title(JText::_('COM_###COMPONENT###_DASHBOARD'), 'grid-2'); ToolbarHelper::title(Text::_('COM_###COMPONENT###_DASHBOARD'), 'grid-2');
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###component###'); $this->help_url = ###Component###Helper::getHelpUrl('###component###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
if ($canDo->get('core.admin') || $canDo->get('core.options')) if ($canDo->get('core.admin') || $canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
} }
} }
@ -81,15 +81,17 @@ class ###Component###View###Component### extends JViewLegacy
*/ */
protected function setDocument() protected function setDocument()
{ {
$document = JFactory::getDocument(); if (!isset($this->document))
{
// add dashboard style sheets $this->document = Factory::getDocument();
$document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/dashboard.css"); }
// set page title // set page title
$document->setTitle(JText::_('COM_###COMPONENT###_DASHBOARD')); $this->document->setTitle(Text::_('COM_###COMPONENT###_DASHBOARD'));
// add manifest to page JavaScript // add manifest to page JavaScript
$document->addScriptDeclaration("var manifest = jQuery.parseJSON('" . json_encode($this->manifest) . "');", "text/javascript"); $this->document->addScriptDeclaration("var manifest = jQuery.parseJSON('" . json_encode($this->manifest) . "');", "text/javascript");
// add dashboard style sheets
Html::_('stylesheet', "administrator/components/com_###component###/assets/css/dashboard.css", ['version' => 'auto']);
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -40,13 +40,13 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
public function __construct($config = array()) public function __construct($config = [])
{ {
$this->view_list = '###Views###'; // safeguard for setting the return view listing to the main view. $this->view_list = '###Views###'; // safeguard for setting the return view listing to the main view.
parent::__construct($config); parent::__construct($config);
}###ADMIN_CUSTOM_BUTTONS_CONTROLLER### }###ADMIN_CUSTOM_BUTTONS_CONTROLLER###
/** /**
* Method override to check if you can add a new record. * Method override to check if you can add a new record.
* *
* @param array $data An array of input data. * @param array $data An array of input data.
@ -55,7 +55,7 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
protected function allowAdd($data = array()) protected function allowAdd($data = [])
{###JCONTROLLERFORM_ALLOWADD### {###JCONTROLLERFORM_ALLOWADD###
} }
@ -69,7 +69,7 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
protected function allowEdit($data = array(), $key = 'id') protected function allowEdit($data = [], $key = 'id')
{###JCONTROLLERFORM_ALLOWEDIT### {###JCONTROLLERFORM_ALLOWEDIT###
} }
@ -94,12 +94,12 @@ class ###Component###Controller###View### extends FormController
// set the referral options // set the referral options
if ($refid && $ref) if ($refid && $ref)
{ {
$append = '&ref=' . (string)$ref . '&refid='. (int)$refid . $append; $append = '&ref=' . (string) $ref . '&refid='. (int) $refid . $append;
} }
elseif ($ref) elseif ($ref)
{ {
$append = '&ref='. (string)$ref . $append; $append = '&ref='. (string) $ref . $append;
} }
return $append; return $append;
@ -116,13 +116,13 @@ class ###Component###Controller###View### extends FormController
*/ */
public function batch($model = null) public function batch($model = null)
{ {
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN')); Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
// Set the model // Set the model
$model = $this->getModel('###View###', '', array()); $model = $this->getModel('###View###', '', []);
// Preset the redirect // Preset the redirect
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view=###views###' . $this->getRedirectToListAppend(), false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view=###views###' . $this->getRedirectToListAppend(), false));
return parent::batch($model); return parent::batch($model);
} }
@ -147,13 +147,13 @@ class ###Component###Controller###View### extends FormController
$cancel = parent::cancel($key); $cancel = parent::cancel($key);
if (!is_null($return) && JUri::isInternal(base64_decode($return))) if (!is_null($return) && Uri::isInternal(base64_decode($return)))
{ {
$redirect = base64_decode($return); $redirect = base64_decode($return);
// Redirect to the return value. // Redirect to the return value.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
$redirect, false $redirect, false
) )
); );
@ -164,7 +164,7 @@ class ###Component###Controller###View### extends FormController
// Redirect to the item screen. // Redirect to the item screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
@ -175,7 +175,7 @@ class ###Component###Controller###View### extends FormController
// Redirect to the list screen. // Redirect to the list screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
@ -201,7 +201,7 @@ class ###Component###Controller###View### extends FormController
// Check if there is a return value // Check if there is a return value
$return = $this->input->get('return', null, 'base64'); $return = $this->input->get('return', null, 'base64');
$canReturn = (!is_null($return) && JUri::isInternal(base64_decode($return))); $canReturn = (!is_null($return) && Uri::isInternal(base64_decode($return)));
if ($this->ref || $this->refid || $canReturn) if ($this->ref || $this->refid || $canReturn)
{ {
@ -219,29 +219,29 @@ class ###Component###Controller###View### extends FormController
// Redirect to the return value. // Redirect to the return value.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
$redirect, false $redirect, false
) )
); );
} }
elseif ($this->refid && $this->ref) elseif ($this->refid && $this->ref)
{ {
$redirect = '&view=' . (string)$this->ref . '&layout=edit&id=' . (int)$this->refid; $redirect = '&view=' . (string) $this->ref . '&layout=edit&id=' . (int) $this->refid;
// Redirect to the item screen. // Redirect to the item screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
} }
elseif ($this->ref) elseif ($this->ref)
{ {
$redirect = '&view=' . (string)$this->ref; $redirect = '&view=' . (string) $this->ref;
// Redirect to the list screen. // Redirect to the list screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
@ -253,15 +253,14 @@ class ###Component###Controller###View### extends FormController
* Function that allows child controller access to model data * Function that allows child controller access to model data
* after the data has been saved. * after the data has been saved.
* *
* @param JModel &$model The data model object. * @param BaseDatabaseModel &$model The data model object.
* @param array $validData The validated data. * @param array $validData The validated data.
* *
* @return void * @return void
* *
* @since 11.1 * @since 11.1
*/ */
protected function postSaveHook(JModelLegacy $model, $validData = array()) protected function postSaveHook(BaseDatabaseModel $model, $validData = [])
{###POSTSAVEHOOK### {###POSTSAVEHOOK###
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -33,7 +33,7 @@ class ###Component###Controller###SView### extends FormController
*/ */
protected $task; protected $task;
public function __construct($config = array()) public function __construct($config = [])
{ {
$this->view_list = '###SITE_DEFAULT_VIEW###'; // safeguard for setting the return view listing to the default site view. $this->view_list = '###SITE_DEFAULT_VIEW###'; // safeguard for setting the return view listing to the default site view.
parent::__construct($config); parent::__construct($config);
@ -51,13 +51,13 @@ class ###Component###Controller###SView### extends FormController
* *
* @since 12.2 * @since 12.2
*/ */
protected function allowEdit($data = array(), $key = 'id') protected function allowEdit($data = [], $key = 'id')
{ {
// to insure no other tampering // to insure no other tampering
return false; return false;
} }
/** /**
* Method override to check if you can add a new record. * Method override to check if you can add a new record.
* *
* @param array $data An array of input data. * @param array $data An array of input data.
@ -66,7 +66,7 @@ class ###Component###Controller###SView### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
protected function allowAdd($data = array()) protected function allowAdd($data = [])
{ {
// to insure no other tampering // to insure no other tampering
return false; return false;
@ -94,14 +94,14 @@ class ###Component###Controller###SView### extends FormController
* Function that allows child controller access to model data * Function that allows child controller access to model data
* after the data has been saved. * after the data has been saved.
* *
* @param JModelLegacy $model The data model object. * @param BaseDatabaseModel &$model The data model object.
* @param array $validData The validated data. * @param array $validData The validated data.
* *
* @return void * @return void
* *
* @since 12.2 * @since 11.1
*/ */
protected function postSaveHook(JModelLegacy $model, $validData = array()) protected function postSaveHook(BaseDatabaseModel $model, $validData = [])
{ {
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -40,13 +40,13 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
public function __construct($config = array()) public function __construct($config = [])
{ {
$this->view_list = '###SITE_DEFAULT_VIEW###'; // safeguard for setting the return view listing to the default site view. $this->view_list = '###SITE_DEFAULT_VIEW###'; // safeguard for setting the return view listing to the default site view.
parent::__construct($config); parent::__construct($config);
}###ADMIN_CUSTOM_BUTTONS_CONTROLLER### }###ADMIN_CUSTOM_BUTTONS_CONTROLLER###
/** /**
* Method override to check if you can add a new record. * Method override to check if you can add a new record.
* *
* @param array $data An array of input data. * @param array $data An array of input data.
@ -55,7 +55,7 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
protected function allowAdd($data = array()) protected function allowAdd($data = [])
{###JCONTROLLERFORM_ALLOWADD### {###JCONTROLLERFORM_ALLOWADD###
} }
@ -69,7 +69,7 @@ class ###Component###Controller###View### extends FormController
* *
* @since 1.6 * @since 1.6
*/ */
protected function allowEdit($data = array(), $key = 'id') protected function allowEdit($data = [], $key = 'id')
{###JCONTROLLERFORM_ALLOWEDIT### {###JCONTROLLERFORM_ALLOWEDIT###
} }
@ -94,12 +94,12 @@ class ###Component###Controller###View### extends FormController
// set the referral options // set the referral options
if ($refid && $ref) if ($refid && $ref)
{ {
$append = '&ref=' . (string)$ref . '&refid='. (int)$refid . $append; $append = '&ref=' . (string) $ref . '&refid='. (int) $refid . $append;
} }
elseif ($ref) elseif ($ref)
{ {
$append = '&ref='. (string)$ref . $append; $append = '&ref='. (string) $ref . $append;
} }
return $append; return $append;
@ -116,13 +116,13 @@ class ###Component###Controller###View### extends FormController
*/ */
public function batch($model = null) public function batch($model = null)
{ {
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN')); Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
// Set the model // Set the model
$model = $this->getModel('###View###', '', array()); $model = $this->getModel('###View###', '', []);
// Preset the redirect // Preset the redirect
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view=###views###' . $this->getRedirectToListAppend(), false)); $this->setRedirect(Route::_('index.php?option=com_###component###&view=###views###' . $this->getRedirectToListAppend(), false));
return parent::batch($model); return parent::batch($model);
} }
@ -147,35 +147,35 @@ class ###Component###Controller###View### extends FormController
$cancel = parent::cancel($key); $cancel = parent::cancel($key);
if (!is_null($return) && JUri::isInternal(base64_decode($return))) if (!is_null($return) && Uri::isInternal(base64_decode($return)))
{ {
$redirect = base64_decode($return); $redirect = base64_decode($return);
// Redirect to the return value. // Redirect to the return value.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
$redirect, false $redirect, false
) )
); );
} }
elseif ($this->refid && $this->ref) elseif ($this->refid && $this->ref)
{ {
$redirect = '&view=' . (string)$this->ref . '&layout=edit&id=' . (int)$this->refid; $redirect = '&view=' . (string) $this->ref . '&layout=edit&id=' . (int) $this->refid;
// Redirect to the item screen. // Redirect to the item screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
} }
elseif ($this->ref) elseif ($this->ref)
{ {
$redirect = '&view=' . (string)$this->ref; $redirect = '&view=' . (string) $this->ref;
// Redirect to the list screen. // Redirect to the list screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
@ -201,7 +201,7 @@ class ###Component###Controller###View### extends FormController
// Check if there is a return value // Check if there is a return value
$return = $this->input->get('return', null, 'base64'); $return = $this->input->get('return', null, 'base64');
$canReturn = (!is_null($return) && JUri::isInternal(base64_decode($return))); $canReturn = (!is_null($return) && Uri::isInternal(base64_decode($return)));
if ($this->ref || $this->refid || $canReturn) if ($this->ref || $this->refid || $canReturn)
{ {
@ -219,29 +219,29 @@ class ###Component###Controller###View### extends FormController
// Redirect to the return value. // Redirect to the return value.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
$redirect, false $redirect, false
) )
); );
} }
elseif ($this->refid && $this->ref) elseif ($this->refid && $this->ref)
{ {
$redirect = '&view=' . (string)$this->ref . '&layout=edit&id=' . (int)$this->refid; $redirect = '&view=' . (string) $this->ref . '&layout=edit&id=' . (int) $this->refid;
// Redirect to the item screen. // Redirect to the item screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
} }
elseif ($this->ref) elseif ($this->ref)
{ {
$redirect = '&view=' . (string)$this->ref; $redirect = '&view=' . (string) $this->ref;
// Redirect to the list screen. // Redirect to the list screen.
$this->setRedirect( $this->setRedirect(
JRoute::_( Route::_(
'index.php?option=' . $this->option . $redirect, false 'index.php?option=' . $this->option . $redirect, false
) )
); );
@ -253,14 +253,14 @@ class ###Component###Controller###View### extends FormController
* Function that allows child controller access to model data * Function that allows child controller access to model data
* after the data has been saved. * after the data has been saved.
* *
* @param JModel &$model The data model object. * @param BaseDatabaseModel &$model The data model object.
* @param array $validData The validated data. * @param array $validData The validated data.
* *
* @return void * @return void
* *
* @since 11.1 * @since 11.1
*/ */
protected function postSaveHook(JModelLegacy $model, $validData = array()) protected function postSaveHook(BaseDatabaseModel $model, $validData = [])
{###POSTSAVEHOOK### {###POSTSAVEHOOK###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,7 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###ADMIN_POWER_HELPER### defined('_JEXEC') or die('Restricted access');
###POWER_AUTOLOADER###
###ADMIN_HELPER_CLASS_HEADER### ###ADMIN_HELPER_CLASS_HEADER###
@ -29,7 +31,7 @@ abstract class ###Component###Helper
* *
* @var array * @var array
*/ */
protected static $composer = array(); protected static $composer = [];
/** /**
* The Main Active Language * The Main Active Language
@ -80,7 +82,7 @@ abstract class ###Component###Helper
// check if set // check if set
if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion)) if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion))
{ {
self::$JVersion = new JVersion(); self::$JVersion = new Version();
} }
return self::$JVersion; return self::$JVersion;
} }
@ -91,18 +93,18 @@ abstract class ###Component###Helper
public static function getContributors() public static function getContributors()
{ {
// get params // get params
$params = JComponentHelper::getParams('com_###component###'); $params = ComponentHelper::getParams('com_###component###');
// start contributors array // start contributors array
$contributors = array(); $contributors = [];
// get all Contributors (max 20) // get all Contributors (max 20)
$searchArray = range('0','20'); $searchArray = range('0','20');
foreach($searchArray as $nr) foreach($searchArray as $nr)
{ {
if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 1 || $params->get("showContributor".$nr) == 3)) if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 1 || $params->get("showContributor".$nr) == 3))
{ {
// set link based of selected option // set link based of selected option
if($params->get("useContributor".$nr) == 1) if($params->get("useContributor".$nr) == 1)
{ {
$link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">'; $link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">';
$link_back = '</a>'; $link_back = '</a>';
} }
@ -116,8 +118,8 @@ abstract class ###Component###Helper
$link_front = ''; $link_front = '';
$link_back = ''; $link_back = '';
} }
$contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr)); $contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr));
$contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back; $contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back;
} }
} }
return $contributors; return $contributors;
@ -129,7 +131,7 @@ abstract class ###Component###Helper
public static function addSubmenu($submenu) public static function addSubmenu($submenu)
{ {
// load user for access menus // load user for access menus
$user = JFactory::getUser(); $user = Factory::getUser();
// load the submenus to sidebar // load the submenus to sidebar
###SUBMENU### ###SUBMENU###
}###HELPER_CREATEUSER######HELPER_UIKIT######HELPER_EXEL### }###HELPER_CREATEUSER######HELPER_UIKIT######HELPER_EXEL###
@ -211,7 +213,7 @@ abstract class ###Component###Helper
{ {
$type = 'item'; $type = 'item';
} }
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.published')); $query->select(array('a.published'));
$query->from('#__###component###_'.$type.' AS a'); $query->from('#__###component###_'.$type.' AS a');
@ -229,7 +231,7 @@ abstract class ###Component###Helper
public static function getGroupName($id) public static function getGroupName($id)
{ {
$db = JFactory::getDBO(); $db = Factory::getDBO();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.title')); $query->select(array('a.title'));
$query->from('#__usergroups AS a'); $query->from('#__usergroups AS a');
@ -238,7 +240,7 @@ abstract class ###Component###Helper
$db->execute(); $db->execute();
$found = $db->getNumRows(); $found = $db->getNumRows();
if($found) if($found)
{ {
return $db->loadResult(); return $db->loadResult();
} }
return $id; return $id;
@ -254,7 +256,7 @@ abstract class ###Component###Helper
* @param string $component The target component * @param string $component The target component
* @param object $user The user whose permissions we are loading * @param object $user The user whose permissions we are loading
* *
* @return object The JObject of permission/authorised actions * @return object The CMSObject of permission/authorised actions
* *
*/ */
public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null') public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null')
@ -263,22 +265,22 @@ abstract class ###Component###Helper
if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user)) if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user))
{ {
// get the user object // get the user object
$user = JFactory::getUser(); $user = Factory::getUser();
} }
// load the JObject // load the CMSObject
$result = new JObject; $result = new CMSObject;
// make view name safe (just incase) // make view name safe (just incase)
$view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view); $view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view);
if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views))
{ {
$views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views); $views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views);
} }
// get all actions from component // get all actions from component
$actions = JAccess::getActionsFromFile( $actions = Access::getActionsFromFile(
JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml', JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml',
"/access/section[@name='component']/" "/access/section[@name='component']/"
); );
// if non found then return empty JObject // if non found then return empty CMSObject
if (empty($actions)) if (empty($actions))
{ {
return $result; return $result;
@ -445,14 +447,14 @@ abstract class ###Component###Helper
/** /**
* Get any component's model * Get any component's model
*/ */
public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $Component = '###Component###', $config = array()) public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $Component = '###Component###', $config = [])
{ {
// fix the name // fix the name
$name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name); $name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name);
// full path to models // full path to models
$fullPathModels = $path . '/models'; $fullPathModels = $path . '/models';
// load the model file // load the model file
JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model'); BaseDatabaseModel::addIncludePath($fullPathModels, $Component . 'Model');
// make sure the table path is loaded // make sure the table path is loaded
if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path'])) if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path']))
{ {
@ -460,7 +462,7 @@ abstract class ###Component###Helper
$config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables'; $config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables';
} }
// get instance // get instance
$model = JModelLegacy::getInstance($name, $Component . 'Model', $config); $model = BaseDatabaseModel::getInstance($name, $Component . 'Model', $config);
// if model not found (strange) // if model not found (strange)
if ($model == false) if ($model == false)
{ {
@ -495,14 +497,14 @@ abstract class ###Component###Helper
*/ */
public static function setAsset($id, $table, $inherit = true) public static function setAsset($id, $table, $inherit = true)
{ {
$parent = JTable::getInstance('Asset'); $parent = Table::getInstance('Asset');
$parent->loadByName('com_###component###'); $parent->loadByName('com_###component###');
$parentId = $parent->id; $parentId = $parent->id;
$name = 'com_###component###.'.$table.'.'.$id; $name = 'com_###component###.'.$table.'.'.$id;
$title = ''; $title = '';
$asset = JTable::getInstance('Asset'); $asset = Table::getInstance('Asset');
$asset->loadByName($name); $asset->loadByName($name);
// Check for an error. // Check for an error.
@ -526,14 +528,14 @@ abstract class ###Component###Helper
$asset->title = $title; $asset->title = $title;
// get the default asset rules // get the default asset rules
$rules = self::getDefaultAssetRules('com_###component###', $table, $inherit); $rules = self::getDefaultAssetRules('com_###component###', $table, $inherit);
if ($rules instanceof JAccessRules) if ($rules instanceof AccessRules)
{ {
$asset->rules = (string) $rules; $asset->rules = (string) $rules;
} }
if (!$asset->check() || !$asset->store()) if (!$asset->check() || !$asset->store())
{ {
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning'); Factory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false; return false;
} }
else else
@ -546,7 +548,7 @@ abstract class ###Component###Helper
$object->asset_id = (int) $asset->id; $object->asset_id = (int) $asset->id;
// Update their asset_id to link to the asset table. // Update their asset_id to link to the asset table.
return JFactory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id'); return Factory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id');
} }
} }
return false; return false;
@ -563,7 +565,7 @@ abstract class ###Component###Helper
if (!$inherit) if (!$inherit)
{ {
// Need to find the asset id by the name of the component. // Need to find the asset id by the name of the component.
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true) $query = $db->getQuery(true)
->select($db->quoteName('id')) ->select($db->quoteName('id'))
->from($db->quoteName('#__assets')) ->from($db->quoteName('#__assets'))
@ -578,8 +580,8 @@ abstract class ###Component###Helper
} }
} }
// get asset rules // get asset rules
$result = JAccess::getAssetRules($assetId); $result = Access::getAssetRules($assetId);
if ($result instanceof JAccessRules) if ($result instanceof AccessRules)
{ {
$_result = (string) $result; $_result = (string) $result;
$_result = json_decode($_result); $_result = json_decode($_result);
@ -594,7 +596,7 @@ abstract class ###Component###Helper
elseif ($inherit) elseif ($inherit)
{ {
// clear the value since we inherit // clear the value since we inherit
$rule = array(); $rule = [];
} }
} }
// check if there are any view values remaining // check if there are any view values remaining
@ -602,8 +604,8 @@ abstract class ###Component###Helper
{ {
$_result = json_encode($_result); $_result = json_encode($_result);
$_result = array($_result); $_result = array($_result);
// Instantiate and return the JAccessRules object for the asset rules. // Instantiate and return the AccessRules object for the asset rules.
$rules = new JAccessRules($_result); $rules = new AccessRules($_result);
// return filtered rules // return filtered rules
return $rules; return $rules;
} }
@ -648,7 +650,7 @@ abstract class ###Component###Helper
* @return null * @return null
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
*/ */
public static function xmlAddAttributes(&$xml, $attributes = array()) public static function xmlAddAttributes(&$xml, $attributes = [])
{ {
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
} }
@ -662,7 +664,7 @@ abstract class ###Component###Helper
* @return void * @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
*/ */
public static function xmlAddOptions(&$xml, $options = array()) public static function xmlAddOptions(&$xml, $options = [])
{ {
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
} }
@ -733,7 +735,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an json string * Check if have an json string
* *
* @input string The json string to check * @input string The json string to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string);
@ -746,7 +748,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an object with a length * Check if have an object with a length
* *
* @input object The object to check * @input object The object to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); * @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object);
@ -759,7 +761,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an array with a length * Check if have an array with a length
* *
* @input array The array to check * @input array The array to check
* *
* @returns bool/int number of items in array on success * @returns bool/int number of items in array on success
* @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString);
@ -772,7 +774,7 @@ abstract class ###Component###Helper
/** /**
* Check if have a string with a length * Check if have a string with a length
* *
* @input string The string to check * @input string The string to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string);
@ -792,7 +794,7 @@ abstract class ###Component###Helper
{ {
// If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right? // If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right?
$connected = @fsockopen("www.example.com", 80); $connected = @fsockopen("www.example.com", 80);
// website, port (try 80 or 443) // website, port (try 80 or 443)
if ($connected) if ($connected)
{ {
//action when connected //action when connected
@ -810,7 +812,7 @@ abstract class ###Component###Helper
/** /**
* Merge an array of array's * Merge an array of array's
* *
* @input array The arrays you would like to merge * @input array The arrays you would like to merge
* *
* @returns array on success * @returns array on success
* @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays);
@ -829,7 +831,7 @@ abstract class ###Component###Helper
/** /**
* Shorten a string * Shorten a string
* *
* @input string The you would like to shorten * @input string The you would like to shorten
* *
* @returns string on success * @returns string on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...);
@ -842,7 +844,7 @@ abstract class ###Component###Helper
/** /**
* Making strings safe (various ways) * Making strings safe (various ways)
* *
* @input string The you would like to make safe * @input string The you would like to make safe
* *
* @returns string on success * @returns string on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...);
@ -861,7 +863,7 @@ abstract class ###Component###Helper
/** /**
* Convert none English strings to code usable string * Convert none English strings to code usable string
* *
* @input an string * @input an string
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string);
@ -874,7 +876,7 @@ abstract class ###Component###Helper
/** /**
* make sure a string is HTML save * make sure a string is HTML save
* *
* @input an html string * @input an html string
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...);
@ -892,7 +894,7 @@ abstract class ###Component###Helper
/** /**
* Convert all int in a string to an English word string * Convert all int in a string to an English word string
* *
* @input an string with numbers * @input an string with numbers
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string);
@ -906,7 +908,7 @@ abstract class ###Component###Helper
* Convert an integer into an English word string * Convert an integer into an English word string
* Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988> * Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>
* *
* @input an int * @input an int
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x);
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -28,7 +28,7 @@ class ###Component######View###Categories extends JCategories
* @param array $options Array of options * @param array $options Array of options
* *
*/ */
public function __construct($options = array()) public function __construct($options = [])
{ {
$options['table'] = '#__###component###_###view###'; $options['table'] = '#__###component###_###view###';
$options['extension'] = 'com_###component###.###view###'; $options['extension'] = 'com_###component###.###view###';

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,11 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Mail\Mail;
use Joomla\Registry\Registry;
/** /**
* ###Component### component email helper * ###Component### component email helper
*/ */
@ -27,28 +32,28 @@ abstract class ###Component###Email
* *
* @var activeRecipient (array) * @var activeRecipient (array)
*/ */
public static $active = array(); public static $active = [];
/** /**
* Configuraiton object * Configuraiton object
* *
* @var JConfig * @var Registry
*/ */
public static $config = null; public static ?Registry $config = null;
/** /**
* Mailer object * Mailer object
* *
* @var JMail * @var Mail
*/ */
public static $mailer = null; public static ?Mail $mailer = null;
/** /**
* Custom Headers * Custom Headers
* *
* @var array * @var array
*/ */
protected static $header = array(); protected static array $header = [];
/** /**
* Get a configuration object * Get a configuration object
@ -58,7 +63,7 @@ abstract class ###Component###Email
{ {
if (!self::$config) if (!self::$config)
{ {
self::$config = JComponentHelper::getParams('com_###component###'); self::$config = ComponentHelper::getParams('com_###component###');
} }
return self::$config; return self::$config;
@ -97,7 +102,7 @@ abstract class ###Component###Email
* @static * @static
* @access public * @access public
*/ */
public static function validateAddress($address, $patternselect = null) public static function validateAddress($address, $patternselect = null): bool
{ {
return self::getMailerInstance()->validateAddress($address, $patternselect); return self::getMailerInstance()->validateAddress($address, $patternselect);
} }
@ -105,13 +110,13 @@ abstract class ###Component###Email
/** /**
* Get a mailer object. * Get a mailer object.
* *
* Returns the global {@link JMail} object, only creating it if it doesn't already exist. * Returns the global {@link Mail} object, only creating it if it doesn't already exist.
* *
* @return JMail object * @return Mail object
* *
* @see JMail * @see Mail
*/ */
public static function getMailer() public static function getMailer(): Mail
{ {
if (!self::$mailer) if (!self::$mailer)
{ {
@ -126,58 +131,58 @@ abstract class ###Component###Email
/** /**
* Create a mailer object * Create a mailer object
* *
* @return JMail object * @return Mail object
* *
* @see JMail * @see Mail
*/ */
protected static function createMailer() protected static function createMailer(): Mail
{ {
// set component params // set component params
$conf = self::getConfig(); $conf = self::getConfig();
// now load the mailer // now load the mailer
$mailer = $conf->get('mailer', 'global'); $mailer = $conf->get('mailer', 'global');
// Create a JMail object // Create a Mail object
$mail = JMail::getInstance(); $mail = Mail::getInstance();
// check if set to global // check if set to global
if ('global' == $mailer) if ('global' == $mailer)
{ {
// get the global details // get the global details
$globalConf = JFactory::getConfig(); $globalConf = Factory::getConfig();
$mailer = $globalConf->get('mailer'); $mailer = $globalConf->get('mailer');
$smtpauth = ($globalConf->get('smtpauth') == 0) ? null : 1; $smtpauth = ($globalConf->get('smtpauth') == 0) ? null : 1;
$smtpuser = $globalConf->get('smtpuser'); $smtpuser = $globalConf->get('smtpuser');
$smtppass = $globalConf->get('smtppass'); $smtppass = $globalConf->get('smtppass');
$smtphost = $globalConf->get('smtphost'); $smtphost = $globalConf->get('smtphost');
$smtpsecure = $globalConf->get('smtpsecure'); $smtpsecure = $globalConf->get('smtpsecure');
$smtpport = $globalConf->get('smtpport'); $smtpport = $globalConf->get('smtpport');
$sendmail = $globalConf->get('sendmail'); $sendmail = $globalConf->get('sendmail');
$mailfrom = $globalConf->get('mailfrom'); $mailfrom = $globalConf->get('mailfrom');
$fromname = $globalConf->get('fromname'); $fromname = $globalConf->get('fromname');
$replyto = $globalConf->get('replyto'); $replyto = $globalConf->get('replyto');
$replytoname = $globalConf->get('replytoname'); $replytoname = $globalConf->get('replytoname');
} }
else else
{ {
$smtpauth = ($conf->get('smtpauth') == 0) ? null : 1; $smtpauth = ($conf->get('smtpauth') == 0) ? null : 1;
$smtpuser = $conf->get('smtpuser'); $smtpuser = $conf->get('smtpuser');
$smtppass = $conf->get('smtppass'); $smtppass = $conf->get('smtppass');
$smtphost = $conf->get('smtphost'); $smtphost = $conf->get('smtphost');
$smtpsecure = $conf->get('smtpsecure'); $smtpsecure = $conf->get('smtpsecure');
$smtpport = $conf->get('smtpport'); $smtpport = $conf->get('smtpport');
$sendmail = $conf->get('sendmail'); $sendmail = $conf->get('sendmail');
$mailfrom = $conf->get('emailfrom'); $mailfrom = $conf->get('emailfrom');
$fromname = $conf->get('fromname'); $fromname = $conf->get('fromname');
$replyto = $conf->get('replyto'); $replyto = $conf->get('replyto');
$replytoname = $conf->get('replytoname'); $replytoname = $conf->get('replytoname');
} }
// Set global sender // Set global sender
$mail->setSender(array($mailfrom, $fromname)); $mail->setSender(array($mailfrom, $fromname));
// set the global reply-to if found // set the global reply-to if found
if ($replyto && $replytoname) if ($replyto && $replytoname)
{ {
@ -226,25 +231,25 @@ abstract class ###Component###Email
*/ */
public static function send($recipient, $subject, $body, $textonly, $mode = 0, $bounce_email = null, $idsession = null, $mailreply = null, $replyname = null , $mailfrom = null, $fromname = null, $cc = null, $bcc = null, $attachment = null, $embeded = null , $embeds = null) public static function send($recipient, $subject, $body, $textonly, $mode = 0, $bounce_email = null, $idsession = null, $mailreply = null, $replyname = null , $mailfrom = null, $fromname = null, $cc = null, $bcc = null, $attachment = null, $embeded = null , $embeds = null)
{ {
// Get a JMail instance // Get a Mail instance
$mail = self::getMailer(); $mail = self::getMailer();
// set component params // set component params
$conf = self::getConfig(); $conf = self::getConfig();
// set if we have override // set if we have override
if ($mailfrom && $fromname) if ($mailfrom && $fromname)
{ {
$mail->setSender(array($mailfrom, $fromname)); $mail->setSender(array($mailfrom, $fromname));
} }
// load the bounce email as sender if set // load the bounce email as sender if set
if (!is_null($bounce_email)) if (!is_null($bounce_email))
{ {
$mail->Sender = $bounce_email; $mail->Sender = $bounce_email;
} }
// Add tag to email to identify it // Add tag to email to identify it
if (!is_null($idsession)) if (!is_null($idsession))
{ {
$mail->addCustomHeader('X-VDMmethodID:'.$idsession); $mail->addCustomHeader('X-VDMmethodID:'.$idsession);
@ -262,7 +267,7 @@ abstract class ###Component###Email
// set the subject & Body // set the subject & Body
$mail->setSubject($subject); $mail->setSubject($subject);
$mail->setBody($body); $mail->setBody($body);
// Are we sending the email as HTML? // Are we sending the email as HTML?
if ($mode) if ($mode)
{ {
@ -273,7 +278,7 @@ abstract class ###Component###Email
//embed images //embed images
if ($embeded) if ($embeded)
{ {
if(###Component###Helper::checkArray($embeds)) if(Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($embeds))
{ {
foreach($embeds as $embed) foreach($embeds as $embed)
{ {
@ -308,21 +313,21 @@ abstract class ###Component###Email
{ {
if (!empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public'))) if (!empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public')))
{ {
$mail->DKIM_domain = $conf->get('dkim_domain'); $mail->DKIM_domain = $conf->get('dkim_domain');
$mail->DKIM_selector = $conf->get('dkim_selector'); $mail->DKIM_selector = $conf->get('dkim_selector');
$mail->DKIM_identity = $conf->get('dkim_identity'); $mail->DKIM_identity = $conf->get('dkim_identity');
$mail->DKIM_passphrase = $conf->get('dkim_passphrase'); $mail->DKIM_passphrase = $conf->get('dkim_passphrase');
$tmp = tempnam(sys_get_temp_dir(), 'VDM'); $tmp = tempnam(sys_get_temp_dir(), 'VDM');
$h = fopen($tmp, 'w'); $h = fopen($tmp, 'w');
fwrite($h, $conf->get('dkim_private')); fwrite($h, $conf->get('dkim_private'));
fclose($h); fclose($h);
$mail->DKIM_private = $tmp; $mail->DKIM_private = $tmp;
} }
} }
$sendmail = $mail->Send(); $sendmail = $mail->Send();
if ($conf->get('enable_dkim') && !empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public'))) if ($conf->get('enable_dkim') && !empty($conf->get('dkim_domain')) && !empty($conf->get('dkim_selector')) && !empty($conf->get('dkim_private')) && !empty($conf->get('dkim_public')))
{ {
@unlink($tmp); @unlink($tmp);
@ -351,7 +356,7 @@ abstract class ###Component###Email
/** /**
* Set html text (in a row) and subject (as title) to a email table. * Set html text (in a row) and subject (as title) to a email table.
* do not use <p> instead use <br /> * do not use <p> instead use <br />
* in your html that you pass to this method * in your html that you pass to this method
* since it is a table row it does not * since it is a table row it does not
* work well with paragraphs * work well with paragraphs
* *
@ -360,7 +365,7 @@ abstract class ###Component###Email
*/ */
public static function setBasicBody($html, $subject) public static function setBasicBody($html, $subject)
{ {
$body = array(); $body = [];
$body[] = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"; $body[] = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
$body[] = "<html xmlns=\"http://www.w3.org/1999/xhtml\">"; $body[] = "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
$body[] = "<head>"; $body[] = "<head>";
@ -397,7 +402,7 @@ abstract class ###Component###Email
/** /**
* Set html text (in a row) and subject (as title) to a email table. * Set html text (in a row) and subject (as title) to a email table.
* do not use <p> instead use <br /> * do not use <p> instead use <br />
* in your html that you pass to this method * in your html that you pass to this method
* since it is a table row it does not * since it is a table row it does not
* work well with paragraphs * work well with paragraphs
* *
@ -406,7 +411,7 @@ abstract class ###Component###Email
*/ */
public static function setTableBody($html, $subject) public static function setTableBody($html, $subject)
{ {
$body = array(); $body = [];
$body[] = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">"; $body[] = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
$body[] = "<html xmlns=\"http://www.w3.org/1999/xhtml\">"; $body[] = "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
$body[] = "<head>"; $body[] = "<head>";

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,7 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###SITE_POWER_HELPER### defined('_JEXEC') or die('Restricted access');
###SITE_POWER_AUTOLOADER###
###SITE_HELPER_CLASS_HEADER### ###SITE_HELPER_CLASS_HEADER###
@ -29,7 +31,7 @@ abstract class ###Component###Helper
* *
* @var array * @var array
*/ */
protected static $composer = array(); protected static $composer = [];
/** /**
* The Main Active Language * The Main Active Language
@ -99,7 +101,7 @@ abstract class ###Component###Helper
// check if set // check if set
if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion)) if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion))
{ {
self::$JVersion = new JVersion(); self::$JVersion = new Version();
} }
return self::$JVersion; return self::$JVersion;
} }
@ -110,9 +112,9 @@ abstract class ###Component###Helper
public static function getContributors() public static function getContributors()
{ {
// get params // get params
$params = JComponentHelper::getParams('com_###component###'); $params = ComponentHelper::getParams('com_###component###');
// start contributors array // start contributors array
$contributors = array(); $contributors = [];
// get all Contributors (max 20) // get all Contributors (max 20)
$searchArray = range('0','20'); $searchArray = range('0','20');
foreach($searchArray as $nr) foreach($searchArray as $nr)
@ -121,22 +123,22 @@ abstract class ###Component###Helper
{ {
// set link based of selected option // set link based of selected option
if($params->get("useContributor".$nr) == 1) if($params->get("useContributor".$nr) == 1)
{ {
$link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">'; $link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">';
$link_back = '</a>'; $link_back = '</a>';
} }
elseif($params->get("useContributor".$nr) == 2) elseif($params->get("useContributor".$nr) == 2)
{ {
$link_front = '<a href="'.$params->get("linkContributor".$nr).'" target="_blank">'; $link_front = '<a href="'.$params->get("linkContributor".$nr).'" target="_blank">';
$link_back = '</a>'; $link_back = '</a>';
} }
else else
{ {
$link_front = ''; $link_front = '';
$link_back = ''; $link_back = '';
} }
$contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr)); $contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr));
$contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back; $contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back;
} }
} }
return $contributors; return $contributors;
@ -145,14 +147,14 @@ abstract class ###Component###Helper
/** /**
* Get any component's model * Get any component's model
*/ */
public static function getModel($name, $path = JPATH_COMPONENT_SITE, $Component = '###Component###', $config = array()) public static function getModel($name, $path = JPATH_COMPONENT_SITE, $Component = '###Component###', $config = [])
{ {
// fix the name // fix the name
$name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name); $name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name);
// full path to models // full path to models
$fullPathModels = $path . '/models'; $fullPathModels = $path . '/models';
// load the model file // load the model file
JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model'); BaseDatabaseModel::addIncludePath($fullPathModels, $Component . 'Model');
// make sure the table path is loaded // make sure the table path is loaded
if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path'])) if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path']))
{ {
@ -160,7 +162,7 @@ abstract class ###Component###Helper
$config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables'; $config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables';
} }
// get instance // get instance
$model = JModelLegacy::getInstance($name, $Component . 'Model', $config); $model = BaseDatabaseModel::getInstance($name, $Component . 'Model', $config);
// if model not found (strange) // if model not found (strange)
if ($model == false) if ($model == false)
{ {
@ -195,14 +197,14 @@ abstract class ###Component###Helper
*/ */
public static function setAsset($id, $table, $inherit = true) public static function setAsset($id, $table, $inherit = true)
{ {
$parent = JTable::getInstance('Asset'); $parent = Table::getInstance('Asset');
$parent->loadByName('com_###component###'); $parent->loadByName('com_###component###');
$parentId = $parent->id; $parentId = $parent->id;
$name = 'com_###component###.'.$table.'.'.$id; $name = 'com_###component###.'.$table.'.'.$id;
$title = ''; $title = '';
$asset = JTable::getInstance('Asset'); $asset = Table::getInstance('Asset');
$asset->loadByName($name); $asset->loadByName($name);
// Check for an error. // Check for an error.
@ -226,14 +228,14 @@ abstract class ###Component###Helper
$asset->title = $title; $asset->title = $title;
// get the default asset rules // get the default asset rules
$rules = self::getDefaultAssetRules('com_###component###', $table, $inherit); $rules = self::getDefaultAssetRules('com_###component###', $table, $inherit);
if ($rules instanceof JAccessRules) if ($rules instanceof AccessRules)
{ {
$asset->rules = (string) $rules; $asset->rules = (string) $rules;
} }
if (!$asset->check() || !$asset->store()) if (!$asset->check() || !$asset->store())
{ {
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning'); Factory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false; return false;
} }
else else
@ -246,7 +248,7 @@ abstract class ###Component###Helper
$object->asset_id = (int) $asset->id; $object->asset_id = (int) $asset->id;
// Update their asset_id to link to the asset table. // Update their asset_id to link to the asset table.
return JFactory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id'); return Factory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id');
} }
} }
return false; return false;
@ -263,7 +265,7 @@ abstract class ###Component###Helper
if (!$inherit) if (!$inherit)
{ {
// Need to find the asset id by the name of the component. // Need to find the asset id by the name of the component.
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true) $query = $db->getQuery(true)
->select($db->quoteName('id')) ->select($db->quoteName('id'))
->from($db->quoteName('#__assets')) ->from($db->quoteName('#__assets'))
@ -278,8 +280,8 @@ abstract class ###Component###Helper
} }
} }
// get asset rules // get asset rules
$result = JAccess::getAssetRules($assetId); $result = Access::getAssetRules($assetId);
if ($result instanceof JAccessRules) if ($result instanceof AccessRules)
{ {
$_result = (string) $result; $_result = (string) $result;
$_result = json_decode($_result); $_result = json_decode($_result);
@ -294,7 +296,7 @@ abstract class ###Component###Helper
elseif ($inherit) elseif ($inherit)
{ {
// clear the value since we inherit // clear the value since we inherit
$rule = array(); $rule = [];
} }
} }
// check if there are any view values remaining // check if there are any view values remaining
@ -302,8 +304,8 @@ abstract class ###Component###Helper
{ {
$_result = json_encode($_result); $_result = json_encode($_result);
$_result = array($_result); $_result = array($_result);
// Instantiate and return the JAccessRules object for the asset rules. // Instantiate and return the AccessRules object for the asset rules.
$rules = new JAccessRules($_result); $rules = new AccessRules($_result);
// return filtered rules // return filtered rules
return $rules; return $rules;
} }
@ -348,7 +350,7 @@ abstract class ###Component###Helper
* @return null * @return null
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
*/ */
public static function xmlAddAttributes(&$xml, $attributes = array()) public static function xmlAddAttributes(&$xml, $attributes = [])
{ {
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
} }
@ -362,7 +364,7 @@ abstract class ###Component###Helper
* @return void * @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
*/ */
public static function xmlAddOptions(&$xml, $options = array()) public static function xmlAddOptions(&$xml, $options = [])
{ {
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
} }
@ -488,7 +490,7 @@ abstract class ###Component###Helper
{ {
$type = 'item'; $type = 'item';
} }
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.published')); $query->select(array('a.published'));
$query->from('#__###component###_'.$type.' AS a'); $query->from('#__###component###_'.$type.' AS a');
@ -506,7 +508,7 @@ abstract class ###Component###Helper
public static function getGroupName($id) public static function getGroupName($id)
{ {
$db = JFactory::getDBO(); $db = Factory::getDBO();
$query = $db->getQuery(true); $query = $db->getQuery(true);
$query->select(array('a.title')); $query->select(array('a.title'));
$query->from('#__usergroups AS a'); $query->from('#__usergroups AS a');
@ -531,7 +533,7 @@ abstract class ###Component###Helper
* @param string $component The target component * @param string $component The target component
* @param object $user The user whose permissions we are loading * @param object $user The user whose permissions we are loading
* *
* @return object The JObject of permission/authorised actions * @return object The CMSObject of permission/authorised actions
* *
*/ */
public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null') public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null')
@ -540,22 +542,22 @@ abstract class ###Component###Helper
if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user)) if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user))
{ {
// get the user object // get the user object
$user = JFactory::getUser(); $user = Factory::getUser();
} }
// load the JObject // load the CMSObject
$result = new JObject; $result = new CMSObject;
// make view name safe (just incase) // make view name safe (just incase)
$view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view); $view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view);
if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views))
{ {
$views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views); $views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views);
} }
// get all actions from component // get all actions from component
$actions = JAccess::getActionsFromFile( $actions = Access::getActionsFromFile(
JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml', JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml',
"/access/section[@name='component']/" "/access/section[@name='component']/"
); );
// if non found then return empty JObject // if non found then return empty CMSObject
if (empty($actions)) if (empty($actions))
{ {
return $result; return $result;
@ -722,7 +724,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an json string * Check if have an json string
* *
* @input string The json string to check * @input string The json string to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string);
@ -735,7 +737,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an object with a length * Check if have an object with a length
* *
* @input object The object to check * @input object The object to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); * @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object);
@ -748,7 +750,7 @@ abstract class ###Component###Helper
/** /**
* Check if have an array with a length * Check if have an array with a length
* *
* @input array The array to check * @input array The array to check
* *
* @returns bool/int number of items in array on success * @returns bool/int number of items in array on success
* @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString);
@ -761,7 +763,7 @@ abstract class ###Component###Helper
/** /**
* Check if have a string with a length * Check if have a string with a length
* *
* @input string The string to check * @input string The string to check
* *
* @returns bool true on success * @returns bool true on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string);
@ -781,7 +783,7 @@ abstract class ###Component###Helper
{ {
// If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right? // If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right?
$connected = @fsockopen("www.example.com", 80); $connected = @fsockopen("www.example.com", 80);
// website, port (try 80 or 443) // website, port (try 80 or 443)
if ($connected) if ($connected)
{ {
//action when connected //action when connected
@ -799,7 +801,7 @@ abstract class ###Component###Helper
/** /**
* Merge an array of array's * Merge an array of array's
* *
* @input array The arrays you would like to merge * @input array The arrays you would like to merge
* *
* @returns array on success * @returns array on success
* @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays);
@ -818,7 +820,7 @@ abstract class ###Component###Helper
/** /**
* Shorten a string * Shorten a string
* *
* @input string The you would like to shorten * @input string The you would like to shorten
* *
* @returns string on success * @returns string on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...);
@ -831,7 +833,7 @@ abstract class ###Component###Helper
/** /**
* Making strings safe (various ways) * Making strings safe (various ways)
* *
* @input string The you would like to make safe * @input string The you would like to make safe
* *
* @returns string on success * @returns string on success
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...);
@ -850,7 +852,7 @@ abstract class ###Component###Helper
/** /**
* Convert none English strings to code usable string * Convert none English strings to code usable string
* *
* @input an string * @input an string
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string);
@ -863,7 +865,7 @@ abstract class ###Component###Helper
/** /**
* make sure a string is HTML save * make sure a string is HTML save
* *
* @input an html string * @input an html string
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...);
@ -881,7 +883,7 @@ abstract class ###Component###Helper
/** /**
* Convert all int in a string to an English word string * Convert all int in a string to an English word string
* *
* @input an string with numbers * @input an string with numbers
* *
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string);
@ -895,7 +897,7 @@ abstract class ###Component###Helper
* Convert an integer into an English word string * Convert an integer into an English word string
* Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988> * Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>
* *
* @input an int * @input an int
* @returns a string * @returns a string
* @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x);
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,9 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); ###LICENSE_LOCKED_DEFINED######CUSTOM_ADMIN_GET_MODULE_JIMPORT### defined('_JEXEC') or die('Restricted access'); ###LICENSE_LOCKED_DEFINED###
###CUSTOM_ADMIN_VIEW_HTML_HEADER### ###CUSTOM_ADMIN_VIEW_HTML_HEADER######CUSTOM_ADMIN_GET_MODULE_JIMPORT###
/** /**
* ###Component### Html View class for the ###SView### * ###Component### Html View class for the ###SView###
@ -28,11 +28,11 @@ class ###Component###View###SView### extends HtmlView
function display($tpl = null) function display($tpl = null)
{ {
// get component params // get component params
$this->params = JComponentHelper::getParams('com_###component###'); $this->params = ComponentHelper::getParams('com_###component###');
// get the application // get the application
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
// get the user object // get the user object
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
// get global action permissions // get global action permissions
$this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD### $this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD###
}###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS###
@ -43,7 +43,7 @@ class ###Component###View###SView### extends HtmlView
protected function setDocument() protected function setDocument()
{###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_DOCUMENT_METADATA######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP### {###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_DOCUMENT_METADATA######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP###
// add the document default css file // add the document default css file
JHtml::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### Html::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS###
} }
/** /**
@ -59,22 +59,22 @@ class ###Component###View###SView### extends HtmlView
// Check for empty title and add view name if param is set // Check for empty title and add view name if param is set
if (empty($title)) if (empty($title))
{ {
$title = JText::_('COM_###COMPONENT###_###SVIEW###'); $title = Text::_('COM_###COMPONENT###_###SVIEW###');
} }
// add title to the page // add title to the page
JToolbarHelper::title($title,'###ICOMOON###');###CUSTOM_ADMIN_CUSTOM_BUTTONS### ToolbarHelper::title($title,'###ICOMOON###');###CUSTOM_ADMIN_CUSTOM_BUTTONS###
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###sviews###'); $this->help_url = ###Component###Helper::getHelpUrl('###sviews###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
// add the options comp button // add the options comp button
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
} }
}###CUSTOM_ADMIN_GET_MODULE### }###CUSTOM_ADMIN_GET_MODULE###
@ -88,7 +88,17 @@ class ###Component###View###SView### extends HtmlView
public function escape($var) public function escape($var)
{ {
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset);
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }
?> ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -31,7 +31,7 @@ class ###Component###View###View### extends HtmlView
public function display($tpl = null) public function display($tpl = null)
{ {
// set params // set params
$this->params = JComponentHelper::getParams('com_###component###'); $this->params = ComponentHelper::getParams('com_###component###');
// Assign the variables // Assign the variables
$this->form = $this->get('Form'); $this->form = $this->get('Form');
$this->item = $this->get('Item'); $this->item = $this->get('Item');
@ -40,7 +40,7 @@ class ###Component###View###View### extends HtmlView
// get action permissions // get action permissions
$this->canDo = ###Component###Helper::getActions('###view###', $this->item); $this->canDo = ###Component###Helper::getActions('###view###', $this->item);
// get input // get input
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
$this->ref = $jinput->get('ref', 0, 'word'); $this->ref = $jinput->get('ref', 0, 'word');
$this->refid = $jinput->get('refid', 0, 'int'); $this->refid = $jinput->get('refid', 0, 'int');
$return = $jinput->get('return', null, 'base64'); $return = $jinput->get('return', null, 'base64');
@ -65,7 +65,7 @@ class ###Component###View###View### extends HtmlView
// Set the toolbar // Set the toolbar
$this->addToolBar(); $this->addToolBar();
// Check for errors. // Check for errors.
if (count($errors = $this->get('Errors'))) if (count($errors = $this->get('Errors')))
{ {
@ -99,11 +99,11 @@ class ###Component###View###View### extends HtmlView
{ {
if(strlen($var) > 30) if(strlen($var) > 30)
{ {
// use the helper htmlEscape method instead and shorten the string // use the helper htmlEscape method instead and shorten the string
return ###Component###Helper::htmlEscape($var, $this->_charset, true, 30); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset, true, 30);
} }
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset);
} }
/** /**
@ -114,14 +114,20 @@ class ###Component###View###View### extends HtmlView
protected function setDocument() protected function setDocument()
{ {
$isNew = ($this->item->id < 1); $isNew = ($this->item->id < 1);
if (!isset($this->document)) $this->getDocument()->setTitle(Text::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT'));
{ Html::_('stylesheet', "administrator/components/com_###component###/assets/css/###view###.css", ['version' => 'auto']);###AJAXTOKE######LINKEDVIEWTABLESCRIPTS###
$this->document = JFactory::getDocument(); Html::_('script', $this->script, ['version' => 'auto']);
} Html::_('script', "administrator/components/com_###component###/views/###view###/submitbutton.js", ['version' => 'auto']);###DOCUMENT_CUSTOM_PHP###
$this->document->setTitle(JText::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT')); Text::script('view not acceptable. Error');
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/###view###.css", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###AJAXTOKE######LINKEDVIEWTABLESCRIPTS### }
$this->document->addScript(JURI::root() . $this->script, (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript');
$this->document->addScript(JURI::root() . "administrator/components/com_###component###/views/###view###/submitbutton.js", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); ###DOCUMENT_CUSTOM_PHP### /**
JText::script('view not acceptable. Error'); * Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -31,7 +31,7 @@ class ###Component###View###View### extends HtmlView
public function display($tpl = null) public function display($tpl = null)
{ {
// set params // set params
$this->params = JComponentHelper::getParams('com_###component###'); $this->params = ComponentHelper::getParams('com_###component###');
// Assign the variables // Assign the variables
$this->form = $this->get('Form'); $this->form = $this->get('Form');
$this->item = $this->get('Item'); $this->item = $this->get('Item');
@ -40,7 +40,7 @@ class ###Component###View###View### extends HtmlView
// get action permissions // get action permissions
$this->canDo = ###Component###Helper::getActions('###view###', $this->item); $this->canDo = ###Component###Helper::getActions('###view###', $this->item);
// get input // get input
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
$this->ref = $jinput->get('ref', 0, 'word'); $this->ref = $jinput->get('ref', 0, 'word');
$this->refid = $jinput->get('refid', 0, 'int'); $this->refid = $jinput->get('refid', 0, 'int');
$return = $jinput->get('return', null, 'base64'); $return = $jinput->get('return', null, 'base64');
@ -65,7 +65,7 @@ class ###Component###View###View### extends HtmlView
// Set the toolbar // Set the toolbar
$this->addToolBar(); $this->addToolBar();
// Check for errors. // Check for errors.
if (count($errors = $this->get('Errors'))) if (count($errors = $this->get('Errors')))
{ {
@ -86,7 +86,7 @@ class ###Component###View###View### extends HtmlView
protected function addToolBar() protected function addToolBar()
{###ADDTOOLBAR### {###ADDTOOLBAR###
// now initiate the toolbar // now initiate the toolbar
$this->toolbar = JToolbar::getInstance(); $this->toolbar = Toolbar::getInstance();
} }
/** /**
@ -100,11 +100,11 @@ class ###Component###View###View### extends HtmlView
{ {
if(strlen($var) > 30) if(strlen($var) > 30)
{ {
// use the helper htmlEscape method instead and shorten the string // use the helper htmlEscape method instead and shorten the string
return ###Component###Helper::htmlEscape($var, $this->_charset, true, 30); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset, true, 30);
} }
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset);
} }
/** /**
@ -115,11 +115,7 @@ class ###Component###View###View### extends HtmlView
protected function setDocument() protected function setDocument()
{ {
$isNew = ($this->item->id < 1); $isNew = ($this->item->id < 1);
if (!isset($this->document)) $this->getDocument()->setTitle(Text::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT'));
{
$this->document = JFactory::getDocument();
}
$this->document->setTitle(JText::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT'));
// only add the ISIS template css & js if needed (default is 1 = true) // only add the ISIS template css & js if needed (default is 1 = true)
// you can override this in the global component options // you can override this in the global component options
// just add a (radio yes/no field) with a name called add_isis_template // just add a (radio yes/no field) with a name called add_isis_template
@ -127,14 +123,24 @@ class ###Component###View###View### extends HtmlView
if ($this->params->get('add_isis_template', 1)) if ($this->params->get('add_isis_template', 1))
{ {
// we need this to fix the form display (TODO) // we need this to fix the form display (TODO)
$this->document->addStyleSheet(JURI::root() . "administrator/templates/isis/css/template.css", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css'); Html::_('stylesheet', "administrator/templates/isis/css/template.css", ['version' => 'auto']);
$this->document->addScript(JURI::root() . "administrator/templates/isis/js/template.js", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); Html::_('script', "administrator/templates/isis/js/template.js", ['version' => 'auto']);
} }
// the default style of this view // the default style of this view
$this->document->addStyleSheet(JURI::root()."components/com_###component###/assets/css/###view###.css", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###AJAXTOKE######LINKEDVIEWTABLESCRIPTS### Html::_('stylesheet', "components/com_###component###/assets/css/###view###.css", ['version' => 'auto']);###AJAXTOKE######LINKEDVIEWTABLESCRIPTS###
// default javascript of this view // default javascript of this view
$this->document->addScript(JURI::root(). $this->script, (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); Html::_('script', $this->script, ['version' => 'auto']);
$this->document->addScript(JURI::root(). "components/com_###component###/views/###view###/submitbutton.js", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript'); ###DOCUMENT_CUSTOM_PHP### Html::_('script', "components/com_###component###/views/###view###/submitbutton.js", ['version' => 'auto']);###DOCUMENT_CUSTOM_PHP###
JText::script('view not acceptable. Error'); Text::script('view not acceptable. Error');
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\View\HtmlView; use Joomla\CMS\MVC\View\HtmlView;
use Joomla\CMS\Toolbar\ToolbarHelper;
/** /**
* ###Component### Import Html View * ###Component### Import Html View
@ -31,7 +34,7 @@ class ###Component###ViewImport extends HtmlView
protected $dataType; protected $dataType;
public function display($tpl = null) public function display($tpl = null)
{ {
if ($this->getLayout() !== 'modal') if ($this->getLayout() !== 'modal')
{ {
// Include helper submenu // Include helper submenu
@ -44,7 +47,7 @@ class ###Component###ViewImport extends HtmlView
$this->paths = &$paths; $this->paths = &$paths;
$this->state = &$state; $this->state = &$state;
// get global action permissions // get global action permissions
$this->canDo = ###Component###Helper::getActions('import'); $this->canDo = ###Component###Helper::getActions('import');
// We don't need toolbar in the modal window. // We don't need toolbar in the modal window.
@ -55,18 +58,18 @@ class ###Component###ViewImport extends HtmlView
} }
// get the session object // get the session object
$session = JFactory::getSession(); $session = Factory::getSession();
// check if it has package // check if it has package
$this->hasPackage = $session->get('hasPackage', false); $this->hasPackage = $session->get('hasPackage', false);
$this->dataType = $session->get('dataType', false); $this->dataType = $session->get('dataType', false);
if($this->hasPackage && $this->dataType) if($this->hasPackage && $this->dataType)
{ {
$this->headerList = json_decode($session->get($this->dataType.'_VDM_IMPORTHEADERS', false),true); $this->headerList = json_decode($session->get($this->dataType.'_VDM_IMPORTHEADERS', false),true);
$this->headers = ###Component###Helper::getFileHeaders($this->dataType); $this->headers = ###Component###Helper::getFileHeaders($this->dataType);
// clear the data type // clear the data type
$session->clear('dataType'); $session->clear('dataType');
} }
// Check for errors. // Check for errors.
if (count($errors = $this->get('Errors'))) if (count($errors = $this->get('Errors')))
{ {
@ -82,19 +85,19 @@ class ###Component###ViewImport extends HtmlView
*/ */
protected function addToolBar() protected function addToolBar()
{ {
JToolBarHelper::title(JText::_('COM_###COMPONENT###_IMPORT_TITLE'), 'upload'); ToolbarHelper::title(Text::_('COM_###COMPONENT###_IMPORT_TITLE'), 'upload');
JHtmlSidebar::setAction('index.php?option=com_###component###&view=import'); JHtmlSidebar::setAction('index.php?option=com_###component###&view=import');
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
} }
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('import'); $this->help_url = ###Component###Helper::getHelpUrl('import');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,13 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Form\FormHelper;
use Joomla\CMS\MVC\View\HtmlView; use Joomla\CMS\MVC\View\HtmlView;
use Joomla\CMS\Toolbar\ToolbarHelper;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\HTML\HTMLHelper as Html;
/** /**
* ###Component### ###View### Html View * ###Component### ###View### Html View
@ -30,19 +36,19 @@ class ###Component###View###View### extends HtmlView
*/ */
protected function addToolBar() protected function addToolBar()
{ {
JToolBarHelper::title(JText::_('COM_###COMPONENT###_IMPORT_TITLE'), 'upload'); ToolbarHelper::title(Text::_('COM_###COMPONENT###_IMPORT_TITLE'), 'upload');
JHtmlSidebar::setAction('index.php?option=com_###component###&view=###view###'); JHtmlSidebar::setAction('index.php?option=com_###component###&view=###view###');
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
} }
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###view###'); $this->help_url = ###Component###Helper::getHelpUrl('###view###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -40,10 +40,10 @@ class ###Component###View###Views### extends HtmlView
$this->items = $this->get('Items'); $this->items = $this->get('Items');
$this->pagination = $this->get('Pagination'); $this->pagination = $this->get('Pagination');
$this->state = $this->get('State'); $this->state = $this->get('State');
$this->user = JFactory::getUser();###ADMIN_DIPLAY_METHOD### $this->user = Factory::getUser();###ADMIN_DIPLAY_METHOD###
$this->saveOrder = $this->listOrder == 'a.ordering'; $this->saveOrder = $this->listOrder == 'a.ordering';
// set the return here value // set the return here value
$this->return_here = urlencode(base64_encode((string) JUri::getInstance())); $this->return_here = urlencode(base64_encode((string) Uri::getInstance()));
// get global action permissions // get global action permissions
$this->canDo = ###Component###Helper::getActions('###view###');###JVIEWLISTCANDO### $this->canDo = ###Component###Helper::getActions('###view###');###JVIEWLISTCANDO###
@ -58,7 +58,7 @@ class ###Component###View###Views### extends HtmlView
$this->batchDisplay = JHtmlBatch_::render(); $this->batchDisplay = JHtmlBatch_::render();
} }
} }
// Check for errors. // Check for errors.
if (count($errors = $this->get('Errors'))) if (count($errors = $this->get('Errors')))
{ {
@ -77,32 +77,32 @@ class ###Component###View###Views### extends HtmlView
*/ */
protected function addToolBar() protected function addToolBar()
{ {
JToolBarHelper::title(JText::_('COM_###COMPONENT###_###VIEWS###'), '###ICOMOON###');
JHtmlSidebar::setAction('index.php?option=com_###component###&view=###views###'); JHtmlSidebar::setAction('index.php?option=com_###component###&view=###views###');
JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields'); ToolbarHelper::title(Text::_('COM_###COMPONENT###_###VIEWS###'), '###ICOMOON###');
FormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
if ($this->canCreate) if ($this->canCreate)
{ {
JToolBarHelper::addNew('###view###.add'); ToolbarHelper::addNew('###view###.add');
} }
// Only load if there are items // Only load if there are items
if (###Component###Helper::checkArray($this->items)) if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($this->items))
{ {
if ($this->canEdit) if ($this->canEdit)
{ {
JToolBarHelper::editList('###view###.edit'); ToolbarHelper::editList('###view###.edit');
} }
if ($this->canState) if ($this->canState)
{ {
JToolBarHelper::publishList('###views###.publish'); ToolbarHelper::publishList('###views###.publish');
JToolBarHelper::unpublishList('###views###.unpublish'); ToolbarHelper::unpublishList('###views###.unpublish');
JToolBarHelper::archiveList('###views###.archive'); ToolbarHelper::archiveList('###views###.archive');
if ($this->canDo->get('core.admin')) if ($this->canDo->get('core.admin'))
{ {
JToolBarHelper::checkin('###views###.checkin'); ToolbarHelper::checkin('###views###.checkin');
} }
} }
@ -110,11 +110,11 @@ class ###Component###View###Views### extends HtmlView
if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState) if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState)
{ {
// Get the toolbar object instance // Get the toolbar object instance
$bar = JToolBar::getInstance('toolbar'); $bar = Toolbar::getInstance('toolbar');
// set the batch button name // set the batch button name
$title = JText::_('JTOOLBAR_BATCH'); $title = Text::_('JTOOLBAR_BATCH');
// Instantiate a new JLayoutFile instance and render the batch button // Instantiate a new JLayoutFile instance and render the batch button
$layout = new JLayoutFile('joomla.toolbar.batch'); $layout = new FileLayout('joomla.toolbar.batch');
// add the button to the page // add the button to the page
$dhtml = $layout->render(array('title' => $title)); $dhtml = $layout->render(array('title' => $title));
$bar->appendButton('Custom', $dhtml, 'batch'); $bar->appendButton('Custom', $dhtml, 'batch');
@ -122,25 +122,25 @@ class ###Component###View###Views### extends HtmlView
if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete)) if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete))
{ {
JToolbarHelper::deleteList('', '###views###.delete', 'JTOOLBAR_EMPTY_TRASH'); ToolbarHelper::deleteList('', '###views###.delete', 'JTOOLBAR_EMPTY_TRASH');
} }
elseif ($this->canState && $this->canDelete) elseif ($this->canState && $this->canDelete)
{ {
JToolbarHelper::trash('###views###.trash'); ToolbarHelper::trash('###views###.trash');
}###EXPORTBUTTON### }###EXPORTBUTTON###
}###ADMIN_CUSTOM_FUNCTION_ONLY_BUTTONS_LIST######IMPORTBUTTON### }###ADMIN_CUSTOM_FUNCTION_ONLY_BUTTONS_LIST######IMPORTBUTTON###
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###views###'); $this->help_url = ###Component###Helper::getHelpUrl('###views###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
// add the options comp button // add the options comp button
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
}###FILTERFIELDDISPLAYHELPER######BATCHDISPLAYHELPER### }###FILTERFIELDDISPLAYHELPER######BATCHDISPLAYHELPER###
} }
@ -153,10 +153,10 @@ class ###Component###View###Views### extends HtmlView
{ {
if (!isset($this->document)) if (!isset($this->document))
{ {
$this->document = JFactory::getDocument(); $this->document = Factory::getDocument();
} }
$this->document->setTitle(JText::_('COM_###COMPONENT###_###VIEWS###')); $this->document->setTitle(Text::_('COM_###COMPONENT###_###VIEWS###'));
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_###component###/assets/css/###views###.css", (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###ADMIN_ADD_JAVASCRIPT_FILE### Html::_('stylesheet', "administrator/components/com_###component###/assets/css/###views###.css", ['version' => 'auto']);###ADMIN_ADD_JAVASCRIPT_FILE###
} }
/** /**
@ -171,19 +171,29 @@ class ###Component###View###Views### extends HtmlView
if(strlen($var) > 50) if(strlen($var) > 50)
{ {
// use the helper htmlEscape method instead and shorten the string // use the helper htmlEscape method instead and shorten the string
return ###Component###Helper::htmlEscape($var, $this->_charset, true); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset, true);
} }
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset);
} }
/** /**
* Returns an array of fields the table can be sorted by * Returns an array of fields the table can be sorted by
* *
* @return array Array containing the field name to sort by as the key and display text as value * @return array Array containing the field name to sort by as the key and display text as value
*/ */
protected function getSortFields() protected function getSortFields()
{ {
###SORTFIELDS### ###SORTFIELDS###
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
}###FILTERFUNCTIONS### }###FILTERFUNCTIONS###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,9 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED######CUSTOM_ADMIN_GET_MODULE_JIMPORT### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
###CUSTOM_ADMIN_VIEWS_HTML_HEADER### ###CUSTOM_ADMIN_VIEWS_HTML_HEADER######CUSTOM_ADMIN_GET_MODULE_JIMPORT###
/** /**
* ###Component### Html View class for the ###SViews### * ###Component### Html View class for the ###SViews###
@ -28,11 +28,11 @@ class ###Component###View###SViews### extends HtmlView
function display($tpl = null) function display($tpl = null)
{ {
// get component params // get component params
$this->params = JComponentHelper::getParams('com_###component###'); $this->params = ComponentHelper::getParams('com_###component###');
// get the application // get the application
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
// get the user object // get the user object
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
// get global action permissions // get global action permissions
$this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD### $this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD###
}###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS###
@ -43,7 +43,7 @@ class ###Component###View###SViews### extends HtmlView
protected function setDocument() protected function setDocument()
{###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP### {###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP###
// add the document default css file // add the document default css file
JHtml::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sviews###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### Html::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sviews###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS###
} }
/** /**
@ -52,19 +52,19 @@ class ###Component###View###SViews### extends HtmlView
protected function addToolBar() protected function addToolBar()
{###HIDEMAINMENU### {###HIDEMAINMENU###
// add title to the page // add title to the page
JToolbarHelper::title(JText::_('COM_###COMPONENT###_###SVIEWS###'),'###ICOMOON###');###CUSTOM_ADMIN_CUSTOM_BUTTONS### ToolbarHelper::title(Text::_('COM_###COMPONENT###_###SVIEWS###'),'###ICOMOON###');###CUSTOM_ADMIN_CUSTOM_BUTTONS###
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###sviews###'); $this->help_url = ###Component###Helper::getHelpUrl('###sviews###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
// add the options comp button // add the options comp button
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options')) if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{ {
JToolBarHelper::preferences('com_###component###'); ToolbarHelper::preferences('com_###component###');
} }
}###CUSTOM_ADMIN_GET_MODULE### }###CUSTOM_ADMIN_GET_MODULE###
@ -78,6 +78,16 @@ class ###Component###View###SViews### extends HtmlView
public function escape($var) public function escape($var)
{ {
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset);
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,9 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED######SITE_GET_MODULE_JIMPORT### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
###SITE_VIEWS_HTML_HEADER### ###SITE_VIEWS_HTML_HEADER######SITE_GET_MODULE_JIMPORT###
/** /**
* ###Component### Html View class for the ###SViews### * ###Component### Html View class for the ###SViews###
@ -26,13 +26,13 @@ class ###Component###View###SViews### extends HtmlView
{ {
// Overwriting JView display method // Overwriting JView display method
function display($tpl = null) function display($tpl = null)
{ {
// get combined params of both component and menu // get combined params of both component and menu
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->params = $this->app->getParams(); $this->params = $this->app->getParams();
$this->menu = $this->app->getMenu()->getActive(); $this->menu = $this->app->getMenu()->getActive();
// get the user object // get the user object
$this->user = JFactory::getUser();###SITE_DIPLAY_METHOD### $this->user = Factory::getUser();###SITE_DIPLAY_METHOD###
}###SITE_EXTRA_DIPLAY_METHODS### }###SITE_EXTRA_DIPLAY_METHODS###
/** /**
@ -41,7 +41,7 @@ class ###Component###View###SViews### extends HtmlView
protected function _prepareDocument() protected function _prepareDocument()
{###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP### {###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP###
// add the document default css file // add the document default css file
JHtml::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### Html::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS###
} }
/** /**
@ -49,15 +49,15 @@ class ###Component###View###SViews### extends HtmlView
*/ */
protected function addToolBar() protected function addToolBar()
{###SITE_CUSTOM_BUTTONS### {###SITE_CUSTOM_BUTTONS###
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###sviews###'); $this->help_url = ###Component###Helper::getHelpUrl('###sviews###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
// now initiate the toolbar // now initiate the toolbar
$this->toolbar = JToolbar::getInstance(); $this->toolbar = Toolbar::getInstance();
}###SITE_GET_MODULE### }###SITE_GET_MODULE###
/** /**
@ -70,6 +70,16 @@ class ###Component###View###SViews### extends HtmlView
public function escape($var, $sorten = false, $length = 40) public function escape($var, $sorten = false, $length = 40)
{ {
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset, $sorten, $length); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset, $sorten, $length);
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,9 +15,9 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED######SITE_GET_MODULE_JIMPORT### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
###SITE_VIEW_HTML_HEADER### ###SITE_VIEW_HTML_HEADER######SITE_GET_MODULE_JIMPORT###
/** /**
* ###Component### Html View class for the ###SView### * ###Component### Html View class for the ###SView###
@ -26,22 +26,22 @@ class ###Component###View###SView### extends HtmlView
{ {
// Overwriting JView display method // Overwriting JView display method
function display($tpl = null) function display($tpl = null)
{ {
// get combined params of both component and menu // get combined params of both component and menu
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->params = $this->app->getParams(); $this->params = $this->app->getParams();
$this->menu = $this->app->getMenu()->getActive(); $this->menu = $this->app->getMenu()->getActive();
// get the user object // get the user object
$this->user = JFactory::getUser();###SITE_DIPLAY_METHOD### $this->user = Factory::getUser();###SITE_DIPLAY_METHOD###
}###SITE_EXTRA_DIPLAY_METHODS### }###SITE_EXTRA_DIPLAY_METHODS###
/** /**
* Prepares the document * Prepares the document
*/ */
protected function _prepareDocument() protected function _prepareDocument()
{###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP### {###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP###
// add the document default css file // add the document default css file
JHtml::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### Html::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS###
} }
/** /**
@ -52,12 +52,12 @@ class ###Component###View###SView### extends HtmlView
// set help url for this view if found // set help url for this view if found
$this->help_url = ###Component###Helper::getHelpUrl('###sview###'); $this->help_url = ###Component###Helper::getHelpUrl('###sview###');
if (###Component###Helper::checkString($this->help_url)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($this->help_url))
{ {
JToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url); ToolbarHelper::help('COM_###COMPONENT###_HELP_MANAGER', false, $this->help_url);
} }
// now initiate the toolbar // now initiate the toolbar
$this->toolbar = JToolbar::getInstance(); $this->toolbar = Toolbar::getInstance();
}###SITE_GET_MODULE### }###SITE_GET_MODULE###
/** /**
@ -70,6 +70,16 @@ class ###Component###View###SView### extends HtmlView
public function escape($var, $sorten = false, $length = 40) public function escape($var, $sorten = false, $length = 40)
{ {
// use the helper htmlEscape method instead. // use the helper htmlEscape method instead.
return ###Component###Helper::htmlEscape($var, $this->_charset, $sorten, $length); return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset, $sorten, $length);
}
/**
* Get the Document (helper method toward Joomla 4 and 5)
*/
public function getDocument()
{
$this->document ??= JFactory::getDocument();
return $this->document;
} }
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -31,7 +31,7 @@ class ###Component###Model###SView### extends ItemModel
*/ */
protected $_context = 'com_###component###.###sview###'; protected $_context = 'com_###component###.###sview###';
/** /**
* Model user data. * Model user data.
* *
* @var strings * @var strings
@ -61,7 +61,7 @@ class ###Component###Model###SView### extends ItemModel
*/ */
protected function populateState() protected function populateState()
{ {
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->input = $this->app->input; $this->input = $this->app->input;
// Get the item main id // Get the item main id
$id = $this->input->getInt('id', null); $id = $this->input->getInt('id', null);
@ -80,12 +80,12 @@ class ###Component###Model###SView### extends ItemModel
*/ */
public function getItem($pk = null) public function getItem($pk = null)
{ {
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
// check if this user has permission to access item // check if this user has permission to access item
if (!$this->user->authorise('###sview###.access', 'com_###component###')) if (!$this->user->authorise('###sview###.access', 'com_###component###'))
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error'); $app->enqueueMessage(Text::_('Not authorised!'), 'error');
// redirect away if not a correct to cPanel/default view // redirect away if not a correct to cPanel/default view
$app->redirect('index.php?option=com_###component###'); $app->redirect('index.php?option=com_###component###');
return false; return false;
@ -98,10 +98,10 @@ class ###Component###Model###SView### extends ItemModel
$this->initSet = true; $this->initSet = true;
$pk = (!empty($pk)) ? $pk : (int) $this->getState('###sview###.id');###CUSTOM_ADMIN_BEFORE_GET_ITEM### $pk = (!empty($pk)) ? $pk : (int) $this->getState('###sview###.id');###CUSTOM_ADMIN_BEFORE_GET_ITEM###
if ($this->_item === null) if ($this->_item === null)
{ {
$this->_item = array(); $this->_item = [];
}###LICENSE_LOCKED_CHECK### }###LICENSE_LOCKED_CHECK###
if (!isset($this->_item[$pk])) if (!isset($this->_item[$pk]))
@ -114,7 +114,7 @@ class ###Component###Model###SView### extends ItemModel
if ($e->getCode() == 404) if ($e->getCode() == 404)
{ {
// Need to go thru the error handler to allow Redirect to work. // Need to go thru the error handler to allow Redirect to work.
JError::raiseWarning(404, $e->getMessage()); JError::raiseError(404, $e->getMessage());
} }
else else
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -61,7 +61,7 @@ class ###Component###Model###SView### extends ItemModel
*/ */
protected function populateState() protected function populateState()
{ {
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->input = $this->app->input; $this->input = $this->app->input;
// Get the itme main id // Get the itme main id
$id = $this->input->getInt('id', null); $id = $this->input->getInt('id', null);
@ -82,7 +82,7 @@ class ###Component###Model###SView### extends ItemModel
*/ */
public function getItem($pk = null) public function getItem($pk = null)
{ {
$this->user = JFactory::getUser();###USER_PERMISSION_CHECK_ACCESS### $this->user = Factory::getUser();###USER_PERMISSION_CHECK_ACCESS###
$this->userId = $this->user->get('id'); $this->userId = $this->user->get('id');
$this->guest = $this->user->get('guest'); $this->guest = $this->user->get('guest');
$this->groups = $this->user->get('groups'); $this->groups = $this->user->get('groups');
@ -91,10 +91,10 @@ class ###Component###Model###SView### extends ItemModel
$this->initSet = true; $this->initSet = true;
$pk = (!empty($pk)) ? $pk : (int) $this->getState('###sview###.id');###SITE_BEFORE_GET_ITEM### $pk = (!empty($pk)) ? $pk : (int) $this->getState('###sview###.id');###SITE_BEFORE_GET_ITEM###
if ($this->_item === null) if ($this->_item === null)
{ {
$this->_item = array(); $this->_item = [];
}###LICENSE_LOCKED_CHECK### }###LICENSE_LOCKED_CHECK###
if (!isset($this->_item[$pk])) if (!isset($this->_item[$pk]))
@ -107,7 +107,7 @@ class ###Component###Model###SView### extends ItemModel
if ($e->getCode() == 404) if ($e->getCode() == 404)
{ {
// Need to go thru the error handler to allow Redirect to work. // Need to go thru the error handler to allow Redirect to work.
JError::raiseWarning(404, $e->getMessage()); JError::raiseError(404, $e->getMessage());
} }
else else
{ {

View File

@ -1,697 +0,0 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// 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');###ADMIN_POWER_HELPER###
###ADMIN_HELPER_CLASS_HEADER###
/**
* ###Component### component helper.
*/
abstract class ###Component###Helper
{
/**
* Adding the utilities trait to this class
*
* @deprecated 4.0 - Check the trait methods for details, a legacy implementation
*/
use Utilities;
/**
* get the Component Code Name
*/
public static $ComponentCodeName = '###component###';
/**
* Composer Switch
*
* @var array
*/
protected static $composer = array();###ADMIN_GLOBAL_EVENT_HELPER######CUSTOM_HELPER_SCRIPT######BOTH_CUSTOM_HELPER_SCRIPT###
/**
* Load the Composer Vendors
*/
public static function composerAutoload($target)
{
// insure we load the composer vendor only once
if (!isset(self::$composer[$target]))
{
// get the function name
$functionName = self::safeString('compose' . $target);
// check if method exist
if (method_exists(__CLASS__, $functionName))
{
return self::{$functionName}();
}
return false;
}
return self::$composer[$target];
}
/**
* Load the Component xml manifest.
*/
public static function manifest()
{
$manifestUrl = JPATH_ADMINISTRATOR."/components/com_###component###/###component###.xml";
return simplexml_load_file($manifestUrl);
}
/**
* Joomla version object
*/
protected static $JVersion;
/**
* set/get Joomla version
*/
public static function jVersion()
{
// check if set
if (!self::checkObject(self::$JVersion))
{
self::$JVersion = new JVersion();
}
return self::$JVersion;
}
/**
* Load the Contributors details.
*/
public static function getContributors()
{
// get params
$params = JComponentHelper::getParams('com_###component###');
// start contributors array
$contributors = array();
// get all Contributors (max 20)
$searchArray = range('0','20');
foreach($searchArray as $nr)
{
if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 1 || $params->get("showContributor".$nr) == 3))
{
// set link based of selected option
if($params->get("useContributor".$nr) == 1)
{
$link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
elseif($params->get("useContributor".$nr) == 2)
{
$link_front = '<a href="'.$params->get("linkContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
else
{
$link_front = '';
$link_back = '';
}
$contributors[$nr]['title'] = self::htmlEscape($params->get("titleContributor".$nr));
$contributors[$nr]['name'] = $link_front.self::htmlEscape($params->get("nameContributor".$nr)).$link_back;
}
}
return $contributors;
}###HELP###
/**
* Configure the Linkbar.
*/
public static function addSubmenu($submenu)
{
// load user for access menus
$user = JFactory::getUser();
// load the submenus to sidebar
###SUBMENU###
}###HELPER_CREATEUSER######HELPER_UIKIT######HELPER_EXEL###
public static function isPublished($id,$type)
{
if ($type == 'raw')
{
$type = 'item';
}
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array('a.published'));
$query->from('#__###component###_'.$type.' AS a');
$query->where('a.id = '. (int) $id);
$query->where('a.published = 1');
$db->setQuery($query);
$db->execute();
$found = $db->getNumRows();
if($found)
{
return true;
}
return false;
}
public static function getGroupName($id)
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select(array('a.title'));
$query->from('#__usergroups AS a');
$query->where('a.id = '. (int) $id);
$db->setQuery($query);
$db->execute();
$found = $db->getNumRows();
if($found)
{
return $db->loadResult();
}
return $id;
}
/**
* Get the action permissions
*
* @param string $view The related view name
* @param int $record The item to act upon
* @param string $views The related list view name
* @param mixed $target Only get this permission (like edit, create, delete)
* @param string $component The target component
* @param object $user The user whose permissions we are loading
*
* @return object The JObject of permission/authorised actions
*
*/
public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null')
{
// load the user if not given
if (!self::checkObject($user))
{
// get the user object
$user = JFactory::getUser();
}
// load the JObject
$result = new JObject;
// make view name safe (just incase)
$view = self::safeString($view);
if (self::checkString($views))
{
$views = self::safeString($views);
}
// get all actions from component
$actions = JAccess::getActionsFromFile(
JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml',
"/access/section[@name='component']/"
);
// if non found then return empty JObject
if (empty($actions))
{
return $result;
}
// get created by if not found
if (self::checkObject($record) && !isset($record->created_by) && isset($record->id))
{
$record->created_by = self::getVar($view, $record->id, 'id', 'created_by', '=', $component);
}
// set actions only set in component settings
$componentActions = array('core.admin', 'core.manage', 'core.options', 'core.export');
// check if we have a target
$checkTarget = false;
if ($target)
{
// convert to an array
if (self::checkString($target))
{
$target = array($target);
}
// check if we are good to go
if (self::checkArray($target))
{
$checkTarget = true;
}
}
// loop the actions and set the permissions
foreach ($actions as $action)
{
// check target action filter
if ($checkTarget && self::filterActions($view, $action->name, $target))
{
continue;
}
// set to use component default
$fallback = true;
// reset permission per/action
$permission = false;
$catpermission = false;
// set area
$area = 'comp';
// check if the record has an ID and the action is item related (not a component action)
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) &&
(strpos($action->name, 'core.') !== false || strpos($action->name, $view . '.') !== false))
{
// we are in item
$area = 'item';
// The record has been set. Check the record permissions.
$permission = $user->authorise($action->name, 'com_' . $component . '.' . $view . '.' . (int) $record->id);
// if no permission found, check edit own
if (!$permission)
{
// With edit, if the created_by matches current user then dig deeper.
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
{
// the correct target
$coreCheck = (array) explode('.', $action->name);
// check that we have both local and global access
if ($user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component . '.' . $view . '.' . (int) $record->id) &&
$user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component))
{
// allow edit
$result->set($action->name, true);
// set not to use global default
// because we already validated it
$fallback = false;
}
else
{
// do not allow edit
$result->set($action->name, false);
$fallback = false;
}
}
}
elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0)
{
// we are in item
$area = 'category';
// set the core check
$coreCheck = explode('.', $action->name);
$core = $coreCheck[0];
// make sure we use the core. action check for the categories
if (strpos($action->name, $view) !== false && strpos($action->name, 'core.') === false )
{
$coreCheck[0] = 'core';
$categoryCheck = implode('.', $coreCheck);
}
else
{
$categoryCheck = $action->name;
}
// The record has a category. Check the category permissions.
$catpermission = $user->authorise($categoryCheck, 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid);
if (!$catpermission && !is_null($catpermission))
{
// With edit, if the created_by matches current user then dig deeper.
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
{
// check that we have both local and global access
if ($user->authorise('core.edit.own', 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid) &&
$user->authorise($core . '.edit.own', 'com_' . $component))
{
// allow edit
$result->set($action->name, true);
// set not to use global default
// because we already validated it
$fallback = false;
}
else
{
// do not allow edit
$result->set($action->name, false);
$fallback = false;
}
}
}
}
}
// if allowed then fallback on component global settings
if ($fallback)
{
// if item/category blocks access then don't fall back on global
if ((($area === 'item') && !$permission) || (($area === 'category') && !$catpermission))
{
// do not allow
$result->set($action->name, false);
}
// Finally remember the global settings have the final say. (even if item allow)
// The local item permissions can block, but it can't open and override of global permissions.
// Since items are created by users and global permissions is set by system admin.
else
{
$result->set($action->name, $user->authorise($action->name, 'com_' . $component));
}
}
}
return $result;
}
/**
* Filter the action permissions
*
* @param string $action The action to check
* @param array $targets The array of target actions
*
* @return boolean true if action should be filtered out
*
*/
protected static function filterActions(&$view, &$action, &$targets)
{
foreach ($targets as $target)
{
if (strpos($action, $view . '.' . $target) !== false ||
strpos($action, 'core.' . $target) !== false)
{
return false;
break;
}
}
return true;
}
/**
* Get any component's model
*/
public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $Component = '###Component###', $config = array())
{
// fix the name
$name = self::safeString($name);
// full path to models
$fullPathModels = $path . '/models';
// load the model file
JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model');
// make sure the table path is loaded
if (!isset($config['table_path']) || !self::checkString($config['table_path']))
{
// This is the JCB default path to tables in Joomla 3.x
$config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables';
}
// get instance
$model = JModelLegacy::getInstance($name, $Component . 'Model', $config);
// if model not found (strange)
if ($model == false)
{
jimport('joomla.filesystem.file');
// get file path
$filePath = $path . '/' . $name . '.php';
$fullPathModel = $fullPathModels . '/' . $name . '.php';
// check if it exists
if (File::exists($filePath))
{
// get the file
require_once $filePath;
}
elseif (File::exists($fullPathModel))
{
// get the file
require_once $fullPathModel;
}
// build class names
$modelClass = $Component . 'Model' . $name;
if (class_exists($modelClass))
{
// initialize the model
return new $modelClass($config);
}
}
return $model;
}
/**
* Add to asset Table
*/
public static function setAsset($id, $table, $inherit = true)
{
$parent = JTable::getInstance('Asset');
$parent->loadByName('com_###component###');
$parentId = $parent->id;
$name = 'com_###component###.'.$table.'.'.$id;
$title = '';
$asset = JTable::getInstance('Asset');
$asset->loadByName($name);
// Check for an error.
$error = $asset->getError();
if ($error)
{
return false;
}
else
{
// Specify how a new or moved node asset is inserted into the tree.
if ($asset->parent_id != $parentId)
{
$asset->setLocation($parentId, 'last-child');
}
// Prepare the asset to be stored.
$asset->parent_id = $parentId;
$asset->name = $name;
$asset->title = $title;
// get the default asset rules
$rules = self::getDefaultAssetRules('com_###component###', $table, $inherit);
if ($rules instanceof JAccessRules)
{
$asset->rules = (string) $rules;
}
if (!$asset->check() || !$asset->store())
{
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false;
}
else
{
// Create an asset_id or heal one that is corrupted.
$object = new stdClass();
// Must be a valid primary key value.
$object->id = $id;
$object->asset_id = (int) $asset->id;
// Update their asset_id to link to the asset table.
return JFactory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id');
}
}
return false;
}
/**
* Gets the default asset Rules for a component/view.
*/
protected static function getDefaultAssetRules($component, $view, $inherit = true)
{
// if new or inherited
$assetId = 0;
// Only get the actual item rules if not inheriting
if (!$inherit)
{
// Need to find the asset id by the name of the component.
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->select($db->quoteName('id'))
->from($db->quoteName('#__assets'))
->where($db->quoteName('name') . ' = ' . $db->quote($component));
$db->setQuery($query);
$db->execute();
// check that there is a value
if ($db->getNumRows())
{
// asset already set so use saved rules
$assetId = (int) $db->loadResult();
}
}
// get asset rules
$result = JAccess::getAssetRules($assetId);
if ($result instanceof JAccessRules)
{
$_result = (string) $result;
$_result = json_decode($_result);
foreach ($_result as $name => &$rule)
{
$v = explode('.', $name);
if ($view !== $v[0])
{
// remove since it is not part of this view
unset($_result->$name);
}
elseif ($inherit)
{
// clear the value since we inherit
$rule = array();
}
}
// check if there are any view values remaining
if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
// Instantiate and return the JAccessRules object for the asset rules.
$rules = new JAccessRules($_result);
// return filtered rules
return $rules;
}
}
return $result;
}
/**
* xmlAppend
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node);
*/
public static function xmlAppend(&$xml, $node)
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node);
}
/**
* xmlComment
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param string $comment The comment to inject
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment);
*/
public static function xmlComment(&$xml, $comment)
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment);
}
/**
* xmlAddAttributes
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $attributes The attributes to apply to the XML element
*
* @return null
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
*/
public static function xmlAddAttributes(&$xml, $attributes = array())
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
}
/**
* xmlAddOptions
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $options The options to apply to the XML element
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
*/
public static function xmlAddOptions(&$xml, $options = array())
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
}
/**
* get the field object
*
* @param array $attributes The array of attributes
* @param string $default The default of the field
* @param array $options The options to apply to the XML element
*
* @return object
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options);
*/
public static function getFieldObject(&$attributes, $default = '', $options = null)
{
return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options);
}
/**
* get the field xml
*
* @param array $attributes The array of attributes
* @param array $options The options to apply to the XML element
*
* @return object
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options);
*/
public static function getFieldXML(&$attributes, $options = null)
{
return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options);
}
/**
* Render Bool Button
*
* @param array $args All the args for the button
* 0) name
* 1) additional (options class) // not used at this time
* 2) default
* 3) yes (name)
* 4) no (name)
*
* @return string The input html of the button
*
*/
public static function renderBoolButton()
{
$args = func_get_args();
// check if there is additional button class
$additional = isset($args[1]) ? (string) $args[1] : ''; // not used at this time
// button attributes
$buttonAttributes = array(
'type' => 'radio',
'name' => isset($args[0]) ? self::htmlEscape($args[0]) : 'bool_button',
'label' => isset($args[0]) ? self::safeString(self::htmlEscape($args[0]), 'Ww') : 'Bool Button', // not seen anyway
'class' => 'btn-group',
'filter' => 'INT',
'default' => isset($args[2]) ? (int) $args[2] : 0);
// set the button options
$buttonOptions = array(
'1' => isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES',
'0' => isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO');
// return the input
return self::getFieldObject($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input;
}
/**
* Check if we are connected
* Thanks https://stackoverflow.com/a/4860432/1429677
*
* @returns bool true on success
*/
public static function isConnected()
{
// If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right?
$connected = @fsockopen("www.example.com", 80);
// website, port (try 80 or 443)
if ($connected)
{
//action when connected
$is_conn = true;
fclose($connected);
}
else
{
//action in connection failure
$is_conn = false;
}
return $is_conn;
}
// typo sorry!
public static function sorten($string, $length = 40, $addTip = true)
{
return self::shorten($string, $length, $addTip);
}###HELPER_LICENSE_LOCK######GET_CRYPT_KEY###
}

View File

@ -1,686 +0,0 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// 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');###SITE_POWER_HELPER###
###SITE_HELPER_CLASS_HEADER###
/**
* ###Component### component helper
*/
abstract class ###Component###Helper
{
/**
* Adding the utilities trait to this class
*
* @deprecated 4.0 - Check the trait methods for details, a legacy implementation
*/
use Utilities;
/**
* get the Component Code Name
*/
public static $ComponentCodeName = '###component###';
/**
* Composer Switch
*
* @var array
*/
protected static $composer = array();###SITE_GLOBAL_EVENT_HELPER######SITE_CUSTOM_HELPER_SCRIPT######BOTH_CUSTOM_HELPER_SCRIPT###
/**
* Load the Composer Vendors
*/
public static function composerAutoload($target)
{
// insure we load the composer vendor only once
if (!isset(self::$composer[$target]))
{
// get the function name
$functionName = self::safeString('compose' . $target);
// check if method exist
if (method_exists(__CLASS__, $functionName))
{
return self::{$functionName}();
}
return false;
}
return self::$composer[$target];
}
/**
* Load the Component xml manifest.
*/
public static function manifest()
{
$manifestUrl = JPATH_ADMINISTRATOR."/components/com_###component###/###component###.xml";
return simplexml_load_file($manifestUrl);
}
/**
* Joomla version object
*/
protected static $JVersion;
/**
* set/get Joomla version
*/
public static function jVersion()
{
// check if set
if (!self::checkObject(self::$JVersion))
{
self::$JVersion = new JVersion();
}
return self::$JVersion;
}
/**
* Load the Contributors details.
*/
public static function getContributors()
{
// get params
$params = JComponentHelper::getParams('com_###component###');
// start contributors array
$contributors = array();
// get all Contributors (max 20)
$searchArray = range('0','20');
foreach($searchArray as $nr)
{
if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 2 || $params->get("showContributor".$nr) == 3))
{
// set link based of selected option
if($params->get("useContributor".$nr) == 1)
{
$link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
elseif($params->get("useContributor".$nr) == 2)
{
$link_front = '<a href="'.$params->get("linkContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
else
{
$link_front = '';
$link_back = '';
}
$contributors[$nr]['title'] = self::htmlEscape($params->get("titleContributor".$nr));
$contributors[$nr]['name'] = $link_front.self::htmlEscape($params->get("nameContributor".$nr)).$link_back;
}
}
return $contributors;
}###HELP_SITE###
/**
* Get any component's model
*/
public static function getModel($name, $path = JPATH_COMPONENT_SITE, $Component = '###Component###', $config = array())
{
// fix the name
$name = self::safeString($name);
// full path to models
$fullPathModels = $path . '/models';
// load the model file
JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model');
// make sure the table path is loaded
if (!isset($config['table_path']) || !self::checkString($config['table_path']))
{
// This is the JCB default path to tables in Joomla 3.x
$config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables';
}
// get instance
$model = JModelLegacy::getInstance($name, $Component . 'Model', $config);
// if model not found (strange)
if ($model == false)
{
jimport('joomla.filesystem.file');
// get file path
$filePath = $path . '/' . $name . '.php';
$fullPathModel = $fullPathModels . '/' . $name . '.php';
// check if it exists
if (File::exists($filePath))
{
// get the file
require_once $filePath;
}
elseif (File::exists($fullPathModel))
{
// get the file
require_once $fullPathModel;
}
// build class names
$modelClass = $Component . 'Model' . $name;
if (class_exists($modelClass))
{
// initialize the model
return new $modelClass($config);
}
}
return $model;
}
/**
* Add to asset Table
*/
public static function setAsset($id, $table, $inherit = true)
{
$parent = JTable::getInstance('Asset');
$parent->loadByName('com_###component###');
$parentId = $parent->id;
$name = 'com_###component###.'.$table.'.'.$id;
$title = '';
$asset = JTable::getInstance('Asset');
$asset->loadByName($name);
// Check for an error.
$error = $asset->getError();
if ($error)
{
return false;
}
else
{
// Specify how a new or moved node asset is inserted into the tree.
if ($asset->parent_id != $parentId)
{
$asset->setLocation($parentId, 'last-child');
}
// Prepare the asset to be stored.
$asset->parent_id = $parentId;
$asset->name = $name;
$asset->title = $title;
// get the default asset rules
$rules = self::getDefaultAssetRules('com_###component###', $table, $inherit);
if ($rules instanceof JAccessRules)
{
$asset->rules = (string) $rules;
}
if (!$asset->check() || !$asset->store())
{
JFactory::getApplication()->enqueueMessage($asset->getError(), 'warning');
return false;
}
else
{
// Create an asset_id or heal one that is corrupted.
$object = new stdClass();
// Must be a valid primary key value.
$object->id = $id;
$object->asset_id = (int) $asset->id;
// Update their asset_id to link to the asset table.
return JFactory::getDbo()->updateObject('#__###component###_'.$table, $object, 'id');
}
}
return false;
}
/**
* Gets the default asset Rules for a component/view.
*/
protected static function getDefaultAssetRules($component, $view, $inherit = true)
{
// if new or inherited
$assetId = 0;
// Only get the actual item rules if not inheriting
if (!$inherit)
{
// Need to find the asset id by the name of the component.
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->select($db->quoteName('id'))
->from($db->quoteName('#__assets'))
->where($db->quoteName('name') . ' = ' . $db->quote($component));
$db->setQuery($query);
$db->execute();
// check that there is a value
if ($db->getNumRows())
{
// asset already set so use saved rules
$assetId = (int) $db->loadResult();
}
}
// get asset rules
$result = JAccess::getAssetRules($assetId);
if ($result instanceof JAccessRules)
{
$_result = (string) $result;
$_result = json_decode($_result);
foreach ($_result as $name => &$rule)
{
$v = explode('.', $name);
if ($view !== $v[0])
{
// remove since it is not part of this view
unset($_result->$name);
}
elseif ($inherit)
{
// clear the value since we inherit
$rule = array();
}
}
// check if there are any view values remaining
if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
// Instantiate and return the JAccessRules object for the asset rules.
$rules = new JAccessRules($_result);
// return filtered rules
return $rules;
}
}
return $result;
}
/**
* xmlAppend
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node);
*/
public static function xmlAppend(&$xml, $node)
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node);
}
/**
* xmlComment
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param string $comment The comment to inject
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment);
*/
public static function xmlComment(&$xml, $comment)
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment);
}
/**
* xmlAddAttributes
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $attributes The attributes to apply to the XML element
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
*/
public static function xmlAddAttributes(&$xml, $attributes = array())
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes);
}
/**
* xmlAddOptions
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $options The options to apply to the XML element
*
* @return void
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
*/
public static function xmlAddOptions(&$xml, $options = array())
{
Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options);
}
/**
* get the field object
*
* @param array $attributes The array of attributes
* @param string $default The default of the field
* @param array $options The options to apply to the XML element
*
* @return object
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options);
*/
public static function getFieldObject(&$attributes, $default = '', $options = null)
{
return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options);
}
/**
* get the field xml
*
* @param array $attributes The array of attributes
* @param array $options The options to apply to the XML element
*
* @return object
* @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options);
*/
public static function getFieldXML(&$attributes, $options = null)
{
return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options);
}
/**
* Render Bool Button
*
* @param array $args All the args for the button
* 0) name
* 1) additional (options class) // not used at this time
* 2) default
* 3) yes (name)
* 4) no (name)
*
* @return string The input html of the button
*
*/
public static function renderBoolButton()
{
$args = func_get_args();
// check if there is additional button class
$additional = isset($args[1]) ? (string) $args[1] : ''; // not used at this time
// button attributes
$buttonAttributes = array(
'type' => 'radio',
'name' => isset($args[0]) ? self::htmlEscape($args[0]) : 'bool_button',
'label' => isset($args[0]) ? self::safeString(self::htmlEscape($args[0]), 'Ww') : 'Bool Button', // not seen anyway
'class' => 'btn-group',
'filter' => 'INT',
'default' => isset($args[2]) ? (int) $args[2] : 0);
// set the button options
$buttonOptions = array(
'1' => isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES',
'0' => isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO');
// return the input
return self::getFieldObject($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input;
}###HELPER_UIKIT######HELPER_CREATEUSER###
public static function isPublished($id,$type)
{
if ($type == 'raw')
{
$type = 'item';
}
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array('a.published'));
$query->from('#__###component###_'.$type.' AS a');
$query->where('a.id = '. (int) $id);
$query->where('a.published = 1');
$db->setQuery($query);
$db->execute();
$found = $db->getNumRows();
if($found)
{
return true;
}
return false;
}
public static function getGroupName($id)
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select(array('a.title'));
$query->from('#__usergroups AS a');
$query->where('a.id = '. (int) $id);
$db->setQuery($query);
$db->execute();
$found = $db->getNumRows();
if($found)
{
return $db->loadResult();
}
return $id;
}
/**
* Get the action permissions
*
* @param string $view The related view name
* @param int $record The item to act upon
* @param string $views The related list view name
* @param mixed $target Only get this permission (like edit, create, delete)
* @param string $component The target component
* @param object $user The user whose permissions we are loading
*
* @return object The JObject of permission/authorised actions
*
*/
public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null')
{
// load the user if not given
if (!self::checkObject($user))
{
// get the user object
$user = JFactory::getUser();
}
// load the JObject
$result = new JObject;
// make view name safe (just incase)
$view = self::safeString($view);
if (self::checkString($views))
{
$views = self::safeString($views);
}
// get all actions from component
$actions = JAccess::getActionsFromFile(
JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml',
"/access/section[@name='component']/"
);
// if non found then return empty JObject
if (empty($actions))
{
return $result;
}
// get created by if not found
if (self::checkObject($record) && !isset($record->created_by) && isset($record->id))
{
$record->created_by = self::getVar($view, $record->id, 'id', 'created_by', '=', $component);
}
// set actions only set in component settings
$componentActions = array('core.admin', 'core.manage', 'core.options', 'core.export');
// check if we have a target
$checkTarget = false;
if ($target)
{
// convert to an array
if (self::checkString($target))
{
$target = array($target);
}
// check if we are good to go
if (self::checkArray($target))
{
$checkTarget = true;
}
}
// loop the actions and set the permissions
foreach ($actions as $action)
{
// check target action filter
if ($checkTarget && self::filterActions($view, $action->name, $target))
{
continue;
}
// set to use component default
$fallback = true;
// reset permission per/action
$permission = false;
$catpermission = false;
// set area
$area = 'comp';
// check if the record has an ID and the action is item related (not a component action)
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) &&
(strpos($action->name, 'core.') !== false || strpos($action->name, $view . '.') !== false))
{
// we are in item
$area = 'item';
// The record has been set. Check the record permissions.
$permission = $user->authorise($action->name, 'com_' . $component . '.' . $view . '.' . (int) $record->id);
// if no permission found, check edit own
if (!$permission)
{
// With edit, if the created_by matches current user then dig deeper.
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
{
// the correct target
$coreCheck = (array) explode('.', $action->name);
// check that we have both local and global access
if ($user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component . '.' . $view . '.' . (int) $record->id) &&
$user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component))
{
// allow edit
$result->set($action->name, true);
// set not to use global default
// because we already validated it
$fallback = false;
}
else
{
// do not allow edit
$result->set($action->name, false);
$fallback = false;
}
}
}
elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0)
{
// we are in item
$area = 'category';
// set the core check
$coreCheck = explode('.', $action->name);
$core = $coreCheck[0];
// make sure we use the core. action check for the categories
if (strpos($action->name, $view) !== false && strpos($action->name, 'core.') === false )
{
$coreCheck[0] = 'core';
$categoryCheck = implode('.', $coreCheck);
}
else
{
$categoryCheck = $action->name;
}
// The record has a category. Check the category permissions.
$catpermission = $user->authorise($categoryCheck, 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid);
if (!$catpermission && !is_null($catpermission))
{
// With edit, if the created_by matches current user then dig deeper.
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
{
// check that we have both local and global access
if ($user->authorise('core.edit.own', 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid) &&
$user->authorise($core . '.edit.own', 'com_' . $component))
{
// allow edit
$result->set($action->name, true);
// set not to use global default
// because we already validated it
$fallback = false;
}
else
{
// do not allow edit
$result->set($action->name, false);
$fallback = false;
}
}
}
}
}
// if allowed then fallback on component global settings
if ($fallback)
{
// if item/category blocks access then don't fall back on global
if ((($area === 'item') && !$permission) || (($area === 'category') && !$catpermission))
{
// do not allow
$result->set($action->name, false);
}
// Finally remember the global settings have the final say. (even if item allow)
// The local item permissions can block, but it can't open and override of global permissions.
// Since items are created by users and global permissions is set by system admin.
else
{
$result->set($action->name, $user->authorise($action->name, 'com_' . $component));
}
}
}
return $result;
}
/**
* Filter the action permissions
*
* @param string $action The action to check
* @param array $targets The array of target actions
*
* @return boolean true if action should be filtered out
*
*/
protected static function filterActions(&$view, &$action, &$targets)
{
foreach ($targets as $target)
{
if (strpos($action, $view . '.' . $target) !== false ||
strpos($action, 'core.' . $target) !== false)
{
return false;
break;
}
}
return true;
}
/**
* Check if we are connected
* Thanks https://stackoverflow.com/a/4860432/1429677
*
* @returns bool true on success
*/
public static function isConnected()
{
// If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right?
$connected = @fsockopen("www.example.com", 80);
// website, port (try 80 or 443)
if ($connected)
{
//action when connected
$is_conn = true;
fclose($connected);
}
else
{
//action in connection failure
$is_conn = false;
}
return $is_conn;
}
// typo sorry!
public static function sorten($string, $length = 40, $addTip = true)
{
return self::shorten($string, $length, $addTip);
}###HELPER_SITE_LICENSE_LOCK######GET_CRYPT_KEY###
}

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
// import the list field type // import the list field type
jimport('joomla.form.helper'); jimport('joomla.form.helper');
JFormHelper::loadFieldClass('checkboxes'); JFormHelper::loadFieldClass('checkboxes');
@ -29,14 +33,14 @@ class ###JPREFIX###FormField###Type### extends JFormFieldCheckboxes
/** /**
* The ###type### field type. * The ###type### field type.
* *
* @var string * @var string
*/ */
public $type = '###type###'; public $type = '###type###';
/** /**
* Method to get a list of options for a list input. * Method to get a list of options for a list input.
* *
* @return array An array of JHtml options. * @return array An array of Html options.
*/ */
protected function getOptions() protected function getOptions()
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
###JFORM_TYPE_HEADER### ###FORM_CUSTOM_FIELD_HEADER###
/** /**
* ###Type### Form Field class for the ###Component### component * ###Type### Form Field class for the ###Component### component
@ -27,7 +27,7 @@ class ###JPREFIX###FormField###Type### extends JFormField###JFORM_EXTENDS###
/** /**
* The ###type### field type. * The ###type### field type.
* *
* @var string * @var string
*/ */
public $type = '###type###';###JFORM_TYPE_PHP### public $type = '###type###';###FORM_CUSTOM_FIELD_PHP###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
// import the list field type // import the list field type
jimport('joomla.form.helper'); jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list'); JFormHelper::loadFieldClass('list');
@ -29,14 +33,14 @@ class ###JPREFIX###FormField###Type### extends JFormFieldList
/** /**
* The ###type### field type. * The ###type### field type.
* *
* @var string * @var string
*/ */
public $type = '###type###';###ADD_BUTTON### public $type = '###type###';###ADD_BUTTON###
/** /**
* Method to get a list of options for a list input. * Method to get a list of options for a list input.
* *
* @return array An array of JHtml options. * @return array An array of Html options.
*/ */
protected function getOptions() protected function getOptions()
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
// import the list field type // import the list field type
jimport('joomla.form.helper'); jimport('joomla.form.helper');
JFormHelper::loadFieldClass('radio'); JFormHelper::loadFieldClass('radio');
@ -29,14 +33,14 @@ class ###JPREFIX###FormField###Type### extends JFormFieldRadio
/** /**
* The ###type### field type. * The ###type### field type.
* *
* @var string * @var string
*/ */
public $type = '###type###'; public $type = '###type###';
/** /**
* Method to get a list of options for a list input. * Method to get a list of options for a list input.
* *
* @return array An array of JHtml options. * @return array An array of Html options.
*/ */
protected function getOptions() protected function getOptions()
{ {

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
// import the list field type // import the list field type
jimport('joomla.form.helper'); jimport('joomla.form.helper');
JFormHelper::loadFieldClass('user'); JFormHelper::loadFieldClass('user');
@ -29,7 +33,7 @@ class ###JPREFIX###FormField###Type### extends JFormFieldUser
/** /**
* The ###type### field type. * The ###type### field type.
* *
* @var string * @var string
*/ */
public $type = '###type###'; public $type = '###type###';

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,9 +17,12 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('JPATH_PLATFORM') or die; defined('JPATH_PLATFORM') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Form\Form; use Joomla\CMS\Form\Form;
use Joomla\CMS\Form\FormRule; use Joomla\CMS\Form\FormRule;
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\CMS\HTML\HTMLHelper as Html;
/** /**
* Form Rule (###Name###) class for the Joomla Platform. * Form Rule (###Name###) class for the Joomla Platform.

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -24,10 +24,10 @@ defined('_JEXEC') or die('Restricted access');
*/ */
class ###Component###Model###Views### extends ListModel class ###Component###Model###Views### extends ListModel
{ {
public function __construct($config = array()) public function __construct($config = [])
{ {
if (empty($config['filter_fields'])) if (empty($config['filter_fields']))
{ {
$config['filter_fields'] = array( $config['filter_fields'] = array(
###FILTER_FIELDS### ###FILTER_FIELDS###
); );
@ -49,7 +49,7 @@ class ###Component###Model###Views### extends ListModel
*/ */
protected function populateState($ordering = null, $direction = null) protected function populateState($ordering = null, $direction = null)
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
// Adjust the context to support modal layouts. // Adjust the context to support modal layouts.
if ($layout = $app->input->get('layout')) if ($layout = $app->input->get('layout'))
@ -60,7 +60,7 @@ class ###Component###Model###Views### extends ListModel
// List state information. // List state information.
parent::populateState($ordering, $direction); parent::populateState($ordering, $direction);
} }
/** /**
* Method to get an array of data items. * Method to get an array of data items.
* *
@ -70,21 +70,21 @@ class ###Component###Model###Views### extends ListModel
{###LICENSE_LOCKED_CHECK######CHECKINCALL### {###LICENSE_LOCKED_CHECK######CHECKINCALL###
// load parent items // load parent items
$items = parent::getItems();###GET_ITEMS_METHOD_STRING_FIX######SELECTIONTRANSLATIONFIX######GET_ITEMS_METHOD_AFTER_ALL### $items = parent::getItems();###GET_ITEMS_METHOD_STRING_FIX######SELECTIONTRANSLATIONFIX######GET_ITEMS_METHOD_AFTER_ALL###
// return items // return items
return $items; return $items;
}###SELECTIONTRANSLATIONFIXFUNC### }###SELECTIONTRANSLATIONFIXFUNC###
/** /**
* Method to build an SQL query to load the list data. * Method to build an SQL query to load the list data.
* *
* @return string An SQL query * @return string An SQL query
*/ */
protected function getListQuery() protected function getListQuery()
{###LICENSE_LOCKED_CHECK### {###LICENSE_LOCKED_CHECK###
###LISTQUERY### ###LISTQUERY###
}###MODELEXPORTMETHOD######LICENSE_LOCKED_SET_BOOL### }###MODELEXPORTMETHOD######LICENSE_LOCKED_SET_BOOL###
/** /**
* Method to get a store id based on model configuration state. * Method to get a store id based on model configuration state.
* *

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -25,12 +25,12 @@ defined('_JEXEC') or die('Restricted access');
class ###Component###ModelAjax extends ListModel class ###Component###ModelAjax extends ListModel
{ {
protected $app_params; protected $app_params;
public function __construct() public function __construct()
{ {
parent::__construct(); parent::__construct();
// get params // get params
$this->app_params = JComponentHelper::getParams('com_###component###'); $this->app_params = ComponentHelper::getParams('com_###component###');
}###AJAX_MODEL_METHODS### }###AJAX_MODEL_METHODS###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -30,7 +30,7 @@ class ###Component###ModelAjax extends ListModel
{ {
parent::__construct(); parent::__construct();
// get params // get params
$this->app_params = JComponentHelper::getParams('com_###component###'); $this->app_params = ComponentHelper::getParams('com_###component###');
}###AJAX_SITE_MODEL_METHODS### }###AJAX_SITE_MODEL_METHODS###
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -27,9 +27,9 @@ class ###Component###Model###Component### extends ListModel
public function getIcons() public function getIcons()
{ {
// load user for access menus // load user for access menus
$user = JFactory::getUser(); $user = Factory::getUser();
// reset icon array // reset icon array
$icons = array(); $icons = [];
// view groups array // view groups array
$viewGroups = array( $viewGroups = array(
'main' => array(###DASHBOARDICONS###) 'main' => array(###DASHBOARDICONS###)
@ -38,7 +38,7 @@ class ###Component###Model###Component### extends ListModel
foreach($viewGroups as $group => $views) foreach($viewGroups as $group => $views)
{ {
$i = 0; $i = 0;
if (###Component###Helper::checkArray($views)) if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($views))
{ {
foreach($views as $view) foreach($views as $view)
{ {
@ -50,11 +50,11 @@ class ###Component###Model###Component### extends ListModel
if (count($dwd) == 3) if (count($dwd) == 3)
{ {
list($type, $name, $url) = $dwd; list($type, $name, $url) = $dwd;
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = $url; $url = $url;
$image = $name . '.' . $type; $image = $name . '.' . $type;
$name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U'); $name = 'COM_###COMPONENT###_DASHBOARD_' . Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name,'U');
} }
} }
// internal views // internal views
@ -76,11 +76,11 @@ class ###Component###Model###Component### extends ListModel
switch($action) switch($action)
{ {
case 'add': case 'add':
$url = 'index.php?option=com_###component###&view=' . $name . '&layout=edit'; $url = 'index.php?option=com_###component###&view=' . $name . '&layout=edit';
$image = $name . '_' . $action. '.' . $type; $image = $name . '_' . $action. '.' . $type;
$alt = $name . '&nbsp;' . $action; $alt = $name . '&nbsp;' . $action;
$name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U').'_ADD'; $name = 'COM_###COMPONENT###_DASHBOARD_'.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name,'U').'_ADD';
$add = true; $add = true;
break; break;
default: default:
// check for new convention (more stable) // check for new convention (more stable)
@ -93,34 +93,34 @@ class ###Component###Model###Component### extends ListModel
{ {
$extension = 'com_###component###.' . $name; $extension = 'com_###component###.' . $name;
} }
$url = 'index.php?option=com_categories&view=categories&extension=' . $extension; $url = 'index.php?option=com_categories&view=categories&extension=' . $extension;
$image = $name . '_' . $action . '.' . $type; $image = $name . '_' . $action . '.' . $type;
$alt = $viewName . '&nbsp;' . $action; $alt = $viewName . '&nbsp;' . $action;
$name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U') . '_' . ###Component###Helper::safeString($action,'U'); $name = 'COM_###COMPONENT###_DASHBOARD_' . Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name,'U') . '_' . Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($action,'U');
break; break;
} }
} }
else else
{ {
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = 'index.php?option=com_###component###&view=' . $name; $url = 'index.php?option=com_###component###&view=' . $name;
$image = $name . '.' . $type; $image = $name . '.' . $type;
$name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U'); $name = 'COM_###COMPONENT###_DASHBOARD_' . Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name,'U');
$hover = false; $hover = false;
} }
} }
else else
{ {
$viewName = $view; $viewName = $view;
$alt = $view; $alt = $view;
$url = 'index.php?option=com_###component###&view=' . $view; $url = 'index.php?option=com_###component###&view=' . $view;
$image = $view . '.png'; $image = $view . '.png';
$name = ucwords($view).'<br /><br />'; $name = ucwords($view).'<br /><br />';
$hover = false; $hover = false;
} }
// first make sure the view access is set // first make sure the view access is set
if (###Component###Helper::checkArray($viewAccess)) if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($viewAccess))
{ {
// setup some defaults // setup some defaults
$dashboard_add = false; $dashboard_add = false;
@ -128,11 +128,11 @@ class ###Component###Model###Component### extends ListModel
$accessTo = ''; $accessTo = '';
$accessAdd = ''; $accessAdd = '';
// access checking start // access checking start
$accessCreate = (isset($viewAccess[$viewName.'.create'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.create']):false; $accessCreate = (isset($viewAccess[$viewName.'.create'])) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($viewAccess[$viewName.'.create']):false;
$accessAccess = (isset($viewAccess[$viewName.'.access'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.access']):false; $accessAccess = (isset($viewAccess[$viewName.'.access'])) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($viewAccess[$viewName.'.access']):false;
// set main controllers // set main controllers
$accessDashboard_add = (isset($viewAccess[$viewName.'.dashboard_add'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.dashboard_add']):false; $accessDashboard_add = (isset($viewAccess[$viewName.'.dashboard_add'])) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($viewAccess[$viewName.'.dashboard_add']):false;
$accessDashboard_list = (isset($viewAccess[$viewName.'.dashboard_list'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.dashboard_list']):false; $accessDashboard_list = (isset($viewAccess[$viewName.'.dashboard_list'])) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($viewAccess[$viewName.'.dashboard_list']):false;
// check for adding access // check for adding access
if ($add && $accessCreate) if ($add && $accessCreate)
{ {
@ -150,64 +150,64 @@ class ###Component###Model###Component### extends ListModel
// set main access controllers // set main access controllers
if ($accessDashboard_add) if ($accessDashboard_add)
{ {
$dashboard_add = $user->authorise($viewAccess[$viewName.'.dashboard_add'], 'com_###component###'); $dashboard_add = $user->authorise($viewAccess[$viewName.'.dashboard_add'], 'com_###component###');
} }
if ($accessDashboard_list) if ($accessDashboard_list)
{ {
$dashboard_list = $user->authorise($viewAccess[$viewName.'.dashboard_list'], 'com_###component###'); $dashboard_list = $user->authorise($viewAccess[$viewName.'.dashboard_list'], 'com_###component###');
} }
if (###Component###Helper::checkString($accessAdd) && ###Component###Helper::checkString($accessTo)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($accessAdd) && Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($accessTo))
{ {
// check access // check access
if($user->authorise($accessAdd, 'com_###component###') && $user->authorise($accessTo, 'com_###component###') && $dashboard_add) if($user->authorise($accessAdd, 'com_###component###') && $user->authorise($accessTo, 'com_###component###') && $dashboard_add)
{ {
$icons[$group][$i] = new StdClass; $icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url; $icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name; $icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image; $icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt; $icons[$group][$i]->alt = $alt;
} }
} }
elseif (###Component###Helper::checkString($accessTo)) elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($accessTo))
{ {
// check access // check access
if($user->authorise($accessTo, 'com_###component###') && $dashboard_list) if($user->authorise($accessTo, 'com_###component###') && $dashboard_list)
{ {
$icons[$group][$i] = new StdClass; $icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url; $icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name; $icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image; $icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt; $icons[$group][$i]->alt = $alt;
} }
} }
elseif (###Component###Helper::checkString($accessAdd)) elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($accessAdd))
{ {
// check access // check access
if($user->authorise($accessAdd, 'com_###component###') && $dashboard_add) if($user->authorise($accessAdd, 'com_###component###') && $dashboard_add)
{ {
$icons[$group][$i] = new StdClass; $icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url; $icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name; $icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image; $icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt; $icons[$group][$i]->alt = $alt;
} }
} }
else else
{ {
$icons[$group][$i] = new StdClass; $icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url; $icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name; $icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image; $icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt; $icons[$group][$i]->alt = $alt;
} }
} }
else else
{ {
$icons[$group][$i] = new StdClass; $icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url; $icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name; $icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image; $icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt; $icons[$group][$i]->alt = $alt;
} }
$i++; $i++;
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -46,15 +46,15 @@ class ###Component###Model###SViews### extends ListModel
protected function getListQuery() protected function getListQuery()
{ {
// Get the current user for authorisation checks // Get the current user for authorisation checks
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
$this->userId = $this->user->get('id'); $this->userId = $this->user->get('id');
$this->guest = $this->user->get('guest'); $this->guest = $this->user->get('guest');
$this->groups = $this->user->get('groups'); $this->groups = $this->user->get('groups');
$this->authorisedGroups = $this->user->getAuthorisedGroups(); $this->authorisedGroups = $this->user->getAuthorisedGroups();
$this->levels = $this->user->getAuthorisedViewLevels(); $this->levels = $this->user->getAuthorisedViewLevels();
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->input = $this->app->input; $this->input = $this->app->input;
$this->initSet = true; ###CUSTOM_ADMIN_GET_LIST_QUERY### $this->initSet = true;###CUSTOM_ADMIN_GET_LIST_QUERY###
} }
/** /**
@ -64,12 +64,12 @@ class ###Component###Model###SViews### extends ListModel
*/ */
public function getItems() public function getItems()
{ {
$user = JFactory::getUser(); $user = Factory::getUser();
// check if this user has permission to access items // check if this user has permission to access items
if (!$user->authorise('###sviews###.access', 'com_###component###')) if (!$user->authorise('###sviews###.access', 'com_###component###'))
{ {
$app = JFactory::getApplication(); $app = Factory::getApplication();
$app->enqueueMessage(JText::_('Not authorised!'), 'error'); $app->enqueueMessage(Text::_('Not authorised!'), 'error');
// redirect away if not a correct (TODO for now we go to default view) // redirect away if not a correct (TODO for now we go to default view)
$app->redirect('index.php?option=com_###component###'); $app->redirect('index.php?option=com_###component###');
return false; return false;
@ -78,7 +78,7 @@ class ###Component###Model###SViews### extends ListModel
$items = parent::getItems(); $items = parent::getItems();
// Get the global params // Get the global params
$globalParams = JComponentHelper::getParams('com_###component###', true);###CUSTOM_ADMIN_GET_ITEMS######CUSTOM_ADMIN_AFTER_GET_ITEMS### $globalParams = ComponentHelper::getParams('com_###component###', true);###CUSTOM_ADMIN_GET_ITEMS######CUSTOM_ADMIN_AFTER_GET_ITEMS###
// return items // return items
return $items; return $items;

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -46,13 +46,13 @@ class ###Component###Model###SViews### extends ListModel
protected function getListQuery() protected function getListQuery()
{ {
// Get the current user for authorisation checks // Get the current user for authorisation checks
$this->user = JFactory::getUser(); $this->user = Factory::getUser();
$this->userId = $this->user->get('id'); $this->userId = $this->user->get('id');
$this->guest = $this->user->get('guest'); $this->guest = $this->user->get('guest');
$this->groups = $this->user->get('groups'); $this->groups = $this->user->get('groups');
$this->authorisedGroups = $this->user->getAuthorisedGroups(); $this->authorisedGroups = $this->user->getAuthorisedGroups();
$this->levels = $this->user->getAuthorisedViewLevels(); $this->levels = $this->user->getAuthorisedViewLevels();
$this->app = JFactory::getApplication(); $this->app = Factory::getApplication();
$this->input = $this->app->input; $this->input = $this->app->input;
$this->initSet = true; ###SITE_GET_LIST_QUERY### $this->initSet = true; ###SITE_GET_LIST_QUERY###
} }
@ -64,12 +64,12 @@ class ###Component###Model###SViews### extends ListModel
*/ */
public function getItems() public function getItems()
{ {
$user = JFactory::getUser();###USER_PERMISSION_CHECK_ACCESS######LICENSE_LOCKED_CHECK######SITE_BEFORE_GET_ITEMS### $user = Factory::getUser();###USER_PERMISSION_CHECK_ACCESS######LICENSE_LOCKED_CHECK######SITE_BEFORE_GET_ITEMS###
// load parent items // load parent items
$items = parent::getItems(); $items = parent::getItems();
// Get the global params // Get the global params
$globalParams = JComponentHelper::getParams('com_###component###', true);###SITE_GET_ITEMS######SITE_AFTER_GET_ITEMS### $globalParams = ComponentHelper::getParams('com_###component###', true);###SITE_GET_ITEMS######SITE_AFTER_GET_ITEMS###
// return items // return items
return $items; return $items;

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,10 +17,17 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Table\Table; use Joomla\CMS\Table\Table;
use Joomla\CMS\Access\Access as AccessRules;
use Joomla\CMS\Access\Rules;
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\String\PunycodeHelper;
use Joomla\CMS\Table\Observer\Tags as TableObserverTags;
use Joomla\CMS\Table\Observer\ContentHistory as TableObserverContenthistory;
use Joomla\CMS\Application\ApplicationHelper;
/** /**
* ###Views### Table class * ###Views### Table class
@ -34,60 +41,60 @@ class ###Component###Table###View### extends Table
* @since 3.3 * @since 3.3
*/ */
protected $_jsonEncode = array('params', 'metadata'); protected $_jsonEncode = array('params', 'metadata');
/** /**
* Constructor * Constructor
* *
* @param object Database connector object * @param object Database connector object
*/ */
function __construct(&$db) function __construct(&$db)
{ {
parent::__construct('#__###component###_###view###', 'id', $db);###JTABLECONSTRUCTOR######LICENSE_LOCKED_CHECK### parent::__construct('#__###component###_###view###', 'id', $db);###JTABLECONSTRUCTOR######LICENSE_LOCKED_CHECK###
} }
public function bind($array, $ignore = '') public function bind($array, $ignore = '')
{ {
if (isset($array['params']) && is_array($array['params'])) if (isset($array['params']) && is_array($array['params']))
{ {
$registry = new JRegistry; $registry = new Registry;
$registry->loadArray($array['params']); $registry->loadArray($array['params']);
$array['params'] = (string) $registry; $array['params'] = (string) $registry;
} }
if (isset($array['metadata']) && is_array($array['metadata'])) if (isset($array['metadata']) && is_array($array['metadata']))
{ {
$registry = new JRegistry; $registry = new Registry;
$registry->loadArray($array['metadata']); $registry->loadArray($array['metadata']);
$array['metadata'] = (string) $registry; $array['metadata'] = (string) $registry;
} }
// Bind the rules. // Bind the rules.
if (isset($array['rules']) && is_array($array['rules'])) if (isset($array['rules']) && is_array($array['rules']))
{ {
$rules = new JAccessRules($array['rules']); $rules = new AccessRules($array['rules']);
$this->setRules($rules); $this->setRules($rules);
} }
return parent::bind($array, $ignore); return parent::bind($array, $ignore);
} }
/** /**
* Overload the store method for the ###View### table. * Overload the store method for the ###View### table.
* *
* @param boolean Toggle whether null values should be updated. * @param boolean Toggle whether null values should be updated.
* @return boolean True on success, false on failure. * @return boolean True on success, false on failure.
* @since 1.6 * @since 1.6
*/ */
public function store($updateNulls = false) public function store($updateNulls = false)
{ {
$date = JFactory::getDate(); $date = Factory::getDate();
$user = JFactory::getUser(); $user = Factory::getUser();
if ($this->id) if ($this->id)
{ {
// Existing item // Existing item
$this->modified = $date->toSql(); $this->modified = $date->toSql();
$this->modified_by = $user->get('id'); $this->modified_by = $user->get('id');
} }
else else
{ {
@ -102,33 +109,38 @@ class ###Component###Table###View### extends Table
$this->created_by = $user->get('id'); $this->created_by = $user->get('id');
} }
} }
if (isset($this->alias)) if (isset($this->alias))
{ {
// Verify that the alias is unique // Verify that the alias is unique
$table = JTable::getInstance('###view###', '###Component###Table'); $table = Table::getInstance('###view###', '###Component###Table');
if ($table->load(array('alias' => $this->alias###JTABLEALIASCATEGORY###)) && ($table->id != $this->id || $this->id == 0)) if ($table->load(array('alias' => $this->alias###JTABLEALIASCATEGORY###)) && ($table->id != $this->id || $this->id == 0))
{ {
$this->setError(JText::_('COM_###COMPONENT###_###VIEW###_ERROR_UNIQUE_ALIAS')); $this->setError(Text::_('COM_###COMPONENT###_###VIEW###_ERROR_UNIQUE_ALIAS'));
if ($table->published === -2)
{
$this->setError(Text::_('COM_###COMPONENT###_###VIEW###_ERROR_UNIQUE_ALIAS_TRASHED'));
}
return false; return false;
} }
} }
if (isset($this->url)) if (isset($this->url))
{ {
// Convert IDN urls to punycode // Convert IDN urls to punycode
$this->url = JStringPunycode::urlToPunycode($this->url); $this->url = PunycodeHelper::urlToPunycode($this->url);
} }
if (isset($this->website)) if (isset($this->website))
{ {
// Convert IDN urls to punycode // Convert IDN urls to punycode
$this->website = JStringPunycode::urlToPunycode($this->website); $this->website = PunycodeHelper::urlToPunycode($this->website);
} }
return parent::store($updateNulls); return parent::store($updateNulls);
} }
/** /**
* Overloaded check method to ensure data integrity. * Overloaded check method to ensure data integrity.
* *
@ -140,20 +152,20 @@ class ###Component###Table###View### extends Table
{ {
// Generate a valid alias // Generate a valid alias
$this->generateAlias(); $this->generateAlias();
$table = JTable::getInstance('###view###', '###component###Table'); $table = Table::getInstance('###view###', '###component###Table');
while ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0)) while ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0))
{ {
$this->alias = StringHelper::increment($this->alias, 'dash'); $this->alias = StringHelper::increment($this->alias, 'dash');
} }
} }
/* /*
* Clean up keywords -- eliminate extra spaces between phrases * Clean up keywords -- eliminate extra spaces between phrases
* and cr (\r) and lf (\n) characters from string. * and cr (\r) and lf (\n) characters from string.
* Only process if not empty. * Only process if not empty.
*/ */
if (!empty($this->metakey)) if (!empty($this->metakey))
{ {
// Array of characters to remove. // Array of characters to remove.
@ -164,7 +176,7 @@ class ###Component###Table###View### extends Table
// Create array using commas as delimiter. // Create array using commas as delimiter.
$keys = explode(',', $after_clean); $keys = explode(',', $after_clean);
$clean_keys = array(); $clean_keys = [];
foreach ($keys as $key) foreach ($keys as $key)
{ {
@ -187,13 +199,13 @@ class ###Component###Table###View### extends Table
$this->metadesc = StringHelper::str_ireplace($bad_characters, "", $this->metadesc); $this->metadesc = StringHelper::str_ireplace($bad_characters, "", $this->metadesc);
} }
// If we don't have any access rules set at this point just use an empty JAccessRules class // If we don't have any access rules set at this point just use an empty AccessRules class
if (!$this->getRules()) if (!$this->getRules())
{ {
$rules = $this->getDefaultAssetValues('com_###component###.###view###.'.$this->id); $rules = $this->getDefaultAssetValues('com_###component###.###view###.'.$this->id);
$this->setRules($rules); $this->setRules($rules);
} }
// Set ordering // Set ordering
if ($this->published < 0) if ($this->published < 0)
{ {
@ -209,12 +221,12 @@ class ###Component###Table###View### extends Table
* *
* @param $string $component The component asset name to search for * @param $string $component The component asset name to search for
* *
* @return JAccessRules The JAccessRules object for the asset * @return AccessRules The AccessRules object for the asset
*/ */
protected function getDefaultAssetValues($component, $try = true) protected function getDefaultAssetValues($component, $try = true)
{ {
// Need to find the asset id by the name of the component. // Need to find the asset id by the name of the component.
$db = JFactory::getDbo(); $db = Factory::getDbo();
$query = $db->getQuery(true) $query = $db->getQuery(true)
->select($db->quoteName('id')) ->select($db->quoteName('id'))
->from($db->quoteName('#__assets')) ->from($db->quoteName('#__assets'))
@ -225,14 +237,14 @@ class ###Component###Table###View### extends Table
{ {
// asset already set so use saved rules // asset already set so use saved rules
$assetId = (int) $db->loadResult(); $assetId = (int) $db->loadResult();
return JAccess::getAssetRules($assetId); // (TODO) instead of keeping inherited Allowed it becomes Allowed. return AccessRules::getAssetRules($assetId); // (TODO) instead of keeping inherited Allowed it becomes Allowed.
} }
// try again // try again
elseif ($try) elseif ($try)
{ {
$try = explode('.',$component); $try = explode('.',$component);
$result = $this->getDefaultAssetValues($try[0], false); $result = $this->getDefaultAssetValues($try[0], false);
if ($result instanceof JAccessRules) if ($result instanceof AccessRules)
{ {
if (isset($try[1])) if (isset($try[1]))
{ {
@ -249,7 +261,7 @@ class ###Component###Table###View### extends Table
else else
{ {
// clear the value since we inherit // clear the value since we inherit
$rule = array(); $rule = [];
} }
} }
// check if there are any view values remaining // check if there are any view values remaining
@ -257,8 +269,8 @@ class ###Component###Table###View### extends Table
{ {
$_result = json_encode($_result); $_result = json_encode($_result);
$_result = array($_result); $_result = array($_result);
// Instantiate and return the JAccessRules object for the asset rules. // Instantiate and return the AccessRules object for the asset rules.
$rules = new JAccessRules; $rules = new AccessRules;
$rules->mergeCollection($_result); $rules->mergeCollection($_result);
return $rules; return $rules;
@ -267,7 +279,7 @@ class ###Component###Table###View### extends Table
return $result; return $result;
} }
} }
return JAccess::getAssetRules(0); return AccessRules::getAssetRules(0);
} }
/** /**
@ -275,8 +287,8 @@ class ###Component###Table###View### extends Table
* The default name is in the form 'table_name.id' * The default name is in the form 'table_name.id'
* where id is the value of the primary key of the table. * where id is the value of the primary key of the table.
* *
* @return string * @return string
* @since 2.5 * @since 2.5
*/ */
protected function _getAssetName() protected function _getAssetName()
{ {
@ -287,8 +299,8 @@ class ###Component###Table###View### extends Table
/** /**
* Method to return the title to use for the asset table. * Method to return the title to use for the asset table.
* *
* @return string * @return string
* @since 2.5 * @since 2.5
*/ */
protected function _getAssetTitle() protected function _getAssetTitle()
{ {
@ -302,12 +314,12 @@ class ###Component###Table###View### extends Table
/** /**
* Get the parent asset id for the record * Get the parent asset id for the record
* *
* @return int * @return int
* @since 2.5 * @since 2.5
*/ */
protected function _getAssetParentId(JTable $table = NULL, $id = NULL) protected function _getAssetParentId(?Table $table = null, $id = null)
{ {
$asset = JTable::getInstance('Asset'); $asset = Table::getInstance('Asset');
$asset->loadByName('com_###component###'); $asset->loadByName('com_###component###');
return $asset->id; return $asset->id;

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,9 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Session\Session;
/** /**
* ###Component### Ajax Controller * ###Component### Ajax Controller
*/ */
@ -26,19 +29,19 @@ class ###Component###ControllerAjax extends JControllerLegacy
{ {
parent::__construct($config); parent::__construct($config);
// make sure all json stuff are set // make sure all json stuff are set
JFactory::getDocument()->setMimeEncoding( 'application/json' ); Factory::getDocument()->setMimeEncoding( 'application/json' );
JFactory::getApplication()->setHeader('Content-Disposition','attachment;filename="getajax.json"'); Factory::getApplication()->setHeader('Content-Disposition','attachment;filename="getajax.json"');
JFactory::getApplication()->setHeader("Access-Control-Allow-Origin", "*"); Factory::getApplication()->setHeader("Access-Control-Allow-Origin", "*");
// load the tasks // load the tasks
$this->registerTask('fieldRequired', 'ajax'); $this->registerTask('fieldRequired', 'ajax');
} }
public function ajax() public function ajax()
{ {
$user = JFactory::getUser(); $user = Factory::getUser();
$jinput = JFactory::getApplication()->input; $jinput = Factory::getApplication()->input;
// Check Token! // Check Token!
$token = JSession::getFormToken(); $token = Session::getFormToken();
$call_token = $jinput->get('token', 0, 'ALNUM'); $call_token = $jinput->get('token', 0, 'ALNUM');
if($user->id != 0 && $token == $call_token) if($user->id != 0 && $token == $call_token)
{ {
@ -50,8 +53,8 @@ class ###Component###ControllerAjax extends JControllerLegacy
$name = $jinput->get('name', NULL, 'WORD'); $name = $jinput->get('name', NULL, 'WORD');
$form = $jinput->get('form', NULL, 'WORD'); $form = $jinput->get('form', NULL, 'WORD');
$status = $jinput->get('status', NULL, 'INT'); $status = $jinput->get('status', NULL, 'INT');
if (###Component###Helper::checkString($name) && ###Component###Helper::checkString($form)) if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($name) && Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($form))
{ {
$result = $this->getModel('ajax')->setFieldRequired($name,$form,$status); $result = $this->getModel('ajax')->setFieldRequired($name,$form,$status);
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,27 +17,32 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Model\ListModel;
use Joomla\CMS\Component\ComponentHelper;
/** /**
* ###Component### Ajax Model * ###Component### Ajax Model
*/ */
class ###Component###ModelAjax extends JModelList class ###Component###ModelAjax extends ListModel
{ {
protected $app_params; protected $app_params;
public function __construct() public function __construct()
{ {
parent::__construct(); parent::__construct();
// get params // get params
$this->app_params = JComponentHelper::getParams('com_###component###'); $this->app_params = ComponentHelper::getParams('com_###component###');
} }
public function setFieldRequired($name,$form,$status) public function setFieldRequired($name,$form,$status)
{ {
// get the session // get the session
$session = JFactory::getSession(); $session = Factory::getSession();
// get this forms set fields // get this forms set fields
$fields = $session->get($form.'_requiredFieldFix'); $fields = $session->get($form.'_requiredFieldFix');
if(###Component###Helper::checkArray($fields)) if(Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($fields))
{ {
if ($status == 1) if ($status == 1)
{ {
@ -45,7 +50,7 @@ class ###Component###ModelAjax extends JModelList
$fields = array_unique($fields); $fields = array_unique($fields);
} }
else else
{ {
// remove from array // remove from array
if(($key = array_search($name, $fields)) !== false) if(($key = array_search($name, $fields)) !== false)
{ {
@ -61,7 +66,7 @@ class ###Component###ModelAjax extends JModelList
} }
} }
// load the remaining values to session // load the remaining values to session
if(###Component###Helper::checkArray($fields)) if(Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($fields))
{ {
$session->set($form.'_requiredFieldFix', $fields); $session->set($form.'_requiredFieldFix', $fields);
} }

View File

@ -0,0 +1,18 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die;###ADMIN_POWER_HELPER###

View File

@ -0,0 +1,18 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die;###SITE_POWER_HELPER###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -30,7 +30,7 @@ abstract class JHtmlBatch_
* @var array * @var array
* @since 3.0 * @since 3.0
*/ */
protected static $ListSelection = array(); protected static $ListSelection = [];
/** /**
* Render the batch selection options. * Render the batch selection options.

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('JPATH_BASE') or die; defined('JPATH_BASE') or die;
use Joomla\CMS\Language\Text;
JHtmlBehavior::core(); JHtmlBehavior::core();
$divWrapper = range(1,120,2); $divWrapper = range(1,120,2);
$counter = 0; $counter = 0;
@ -24,8 +25,8 @@ $counter = 0;
<?php if ($displayData->ListSelection) : ?> <?php if ($displayData->ListSelection) : ?>
<div class="row-fluid"> <div class="row-fluid">
<?php foreach ($displayData->ListSelection as $ListSelection) : ?> <?php foreach ($displayData->ListSelection as $ListSelection) : ?>
<div class="control-group span6"> <div class="control-group span6">
<div class="controls"> <div class="controls">
<label for="<?php echo $ListSelection['name']; ?>" class="element-invisible"><?php echo $ListSelection['label']; ?></label> <label for="<?php echo $ListSelection['name']; ?>" class="element-invisible"><?php echo $ListSelection['label']; ?></label>
<select name="<?php echo $ListSelection['name']; ?>" id="<?php echo $ListSelection['name']; ?>" class="span12 small"> <select name="<?php echo $ListSelection['name']; ?>" id="<?php echo $ListSelection['name']; ?>" class="span12 small">
<?php if (!$ListSelection['noDefault']) : ?> <?php if (!$ListSelection['noDefault']) : ?>
@ -33,21 +34,21 @@ $counter = 0;
<?php endif; ?> <?php endif; ?>
<?php echo $ListSelection['options']; ?> <?php echo $ListSelection['options']; ?>
</select> </select>
</div> </div>
</div> </div>
<?php if (in_array($counter,$divWrapper)) : ?> <?php if (in_array($counter,$divWrapper)) : ?>
</div> </div>
<div class="row-fluid"> <div class="row-fluid">
<?php endif; ?> <?php endif; ?>
<?php $counter++; ?> <?php $counter++; ?>
<?php endforeach; ?> <?php endforeach; ?>
</div> </div>
<div class="control-group radio" id="batch-move-copy"> <div class="control-group radio" id="batch-move-copy">
<div class="controls"> <div class="controls">
<label class="radio" id="batch[move_copy]c-lbl" for="batch[move_copy]c"> <label class="radio" id="batch[move_copy]c-lbl" for="batch[move_copy]c">
<input type="radio" value="c" id="batch[move_copy]c" name="batch[move_copy]"><?php echo JText::_('Copy'); ?></label> <input type="radio" value="c" id="batch[move_copy]c" name="batch[move_copy]"><?php echo Text::_('Copy'); ?></label>
<label class="radio" id="batch[move_copy]m-lbl" for="batch[move_copy]m"> <label class="radio" id="batch[move_copy]m-lbl" for="batch[move_copy]m">
<input type="radio" checked="checked" value="m" id="batch[move_copy]m" name="batch[move_copy]"><?php echo JText::_('Update'); ?></label> <input type="radio" checked="checked" value="m" id="batch[move_copy]m" name="batch[move_copy]"><?php echo Text::_('Update'); ?></label>
</div> </div>
</div> </div>
<?php endif; ?> <?php endif; ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,30 +15,31 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###ADMIN_POWER_HELPER### defined('_JEXEC') or die('Restricted access');
###POWER_AUTOLOADER###
###ADMIN_COMPONENT_HEADER### ###ADMIN_COMPONENT_HEADER###
// Access check. // Access check.
if (!JFactory::getUser()->authorise('core.manage', 'com_###component###')) if (!Factory::getUser()->authorise('core.manage', 'com_###component###'))
{ {
throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403); throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403);
}; }
// Add CSS file for all pages // Add CSS file for all pages
$document = JFactory::getDocument(); Html::_('stylesheet', 'components/com_###component###/assets/css/admin.css', ['version' => 'auto']);
$document->addStyleSheet('components/com_###component###/assets/css/admin.css'); Html::_('script', 'components/com_###component###/assets/js/admin.js', ['version' => 'auto']);
$document->addScript('components/com_###component###/assets/js/admin.js');
// require helper files // require helper files
JLoader::register('###Component###Helper', __DIR__ . '/helpers/###component###.php');###HELPER_EMAIL### JLoader::register('###Component###Helper', __DIR__ . '/helpers/###component###.php');###HELPER_EMAIL###
JLoader::register('JHtmlBatch_', __DIR__ . '/helpers/html/batch_.php');###LICENSE_LOCKED_INT######ADMIN_GLOBAL_EVENT### JLoader::register('JHtmlBatch_', __DIR__ . '/helpers/html/batch_.php');###LICENSE_LOCKED_INT######ADMIN_GLOBAL_EVENT###
// Get an instance of the controller prefixed by ###Component### // Get an instance of the controller prefixed by ###Component###
$controller = JControllerLegacy::getInstance('###Component###'); $controller = BaseController::getInstance('###Component###');
// Perform the Request task // Perform the Request task
$controller->execute(JFactory::getApplication()->input->get('task')); $controller->execute(Factory::getApplication()->input->get('task'));
// Redirect if set by the controller // Redirect if set by the controller
$controller->redirect(); $controller->redirect();

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,24 +15,25 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###ADMIN_POWER_HELPER### defined('_JEXEC') or die('Restricted access');
###SITE_POWER_AUTOLOADER###
###SITE_COMPONENT_HEADER### ###SITE_COMPONENT_HEADER###
// Set the component css/js // Set the component css/js
$document = JFactory::getDocument(); Html::_('stylesheet', 'components/com_###component###/assets/css/site.css', ['version' => 'auto']);
$document->addStyleSheet('components/com_###component###/assets/css/site.css'); Html::_('script', 'components/com_###component###/assets/js/site.js', ['version' => 'auto']);
$document->addScript('components/com_###component###/assets/js/site.js');
// Require helper files // Require helper files
JLoader::register('###Component###Helper', __DIR__ . '/helpers/###component###.php');###HELPER_EMAIL### JLoader::register('###Component###Helper', __DIR__ . '/helpers/###component###.php');###HELPER_EMAIL###
JLoader::register('###Component###HelperRoute', __DIR__ . '/helpers/route.php');###LICENSE_LOCKED_INT######SITE_GLOBAL_EVENT### JLoader::register('###Component###HelperRoute', __DIR__ . '/helpers/route.php');###LICENSE_LOCKED_INT######SITE_GLOBAL_EVENT###
// Get an instance of the controller prefixed by ###Component### // Get an instance of the controller prefixed by ###Component###
$controller = JControllerLegacy::getInstance('###Component###'); $controller = BaseController::getInstance('###Component###');
// Perform the request task // Perform the request task
$controller->execute(JFactory::getApplication()->input->get('task')); $controller->execute(Factory::getApplication()->input->get('task'));
// Redirect if set by the controller // Redirect if set by the controller
$controller->redirect(); $controller->redirect();

View File

@ -3,153 +3,153 @@
/* CSS Document */ /* CSS Document */
.dashboard-container { .dashboard-container {
margin-left: 10px; margin-left: 10px;
margin-top: 10px; margin-top: 10px;
width: 100%; width: 100%;
} }
.dashboard-container [class*="span"] { .dashboard-container [class*="span"] {
display: block; display: block;
float: none; float: none;
margin-left: 0; margin-left: 0;
width: auto; width: auto;
} }
.dashboard-container:before, .dashboard-container:after { .dashboard-container:before, .dashboard-container:after {
content: ""; content: "";
display: table; display: table;
} }
.dashboard-container:after { .dashboard-container:after {
clear: both; clear: both;
} }
.dashboard-container [class*="span"] { .dashboard-container [class*="span"] {
box-sizing: border-box; box-sizing: border-box;
display: block; display: block;
float: left; float: left;
min-height: 145px; min-height: 145px;
min-width: 96px; min-width: 96px;
width: 100%; width: 100%;
} }
.dashboard-container [class*="span"]:first-child { .dashboard-container [class*="span"]:first-child {
margin-left: 0; margin-left: 0;
} }
.dashboard-wraper { .dashboard-wraper {
background: none repeat scroll 0 0 hsl(0, 0%, 93%); background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 5px; border-radius: 5px;
float: left; float: left;
margin: 1%; margin: 1%;
padding: 3px; padding: 3px;
width: 17%; width: 17%;
min-height: 194px; min-height: 194px;
min-width: 96px; min-width: 96px;
} }
.dashboard-content a { .dashboard-content a {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%); border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px; border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset; box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%); color: hsl(0, 0%, 20%);
display: block; display: block;
min-height: 89px; min-height: 89px;
padding: 10px; padding: 10px;
text-align: center; text-align: center;
text-decoration: none; text-decoration: none;
} }
.dashboard-content a:hover { .dashboard-content a:hover {
background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
color: hsl(200, 100%, 30%); color: hsl(200, 100%, 30%);
text-decoration: none; text-decoration: none;
} }
.dashboard-title { .dashboard-title {
display: block; display: block;
padding-top: 5px; padding-top: 5px;
} }
.dashboard-info { .dashboard-info {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%); border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px; border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset; box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%); color: hsl(0, 0%, 20%);
display: block; display: block;
font-size: 12px; font-size: 12px;
padding: 10px; padding: 10px;
text-align: center; text-align: center;
} }
.dashboard-info span { .dashboard-info span {
display: block; display: block;
text-align: center; text-align: center;
} }
.dashboard-info img { .dashboard-info img {
margin: 0 auto; margin: 0 auto;
} }
.dashboard-table { .dashboard-table {
border-top: 1px solid hsl(0, 0%, 87%); border-top: 1px solid hsl(0, 0%, 87%);
margin-top: 5px; margin-top: 5px;
width: 100%; width: 100%;
} }
.dashboard-info h5 { .dashboard-info h5 {
font-size: 11px; font-size: 11px;
font-weight: bold; font-weight: bold;
} }
.dashboard-block { .dashboard-block {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 76%); border: 1px solid hsl(0, 0%, 76%);
border-radius: 3px; border-radius: 3px;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset; box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset;
margin-bottom: 20px; margin-bottom: 20px;
} }
.dashboard-block .dashboard-block-head { .dashboard-block .dashboard-block-head {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0); background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border-bottom: 1px solid hsl(0, 0%, 76%); border-bottom: 1px solid hsl(0, 0%, 76%);
border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%); box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%);
height: 40px; height: 40px;
position: relative; position: relative;
} }
.dashboard-block .dashboard-block-head h5 { .dashboard-block .dashboard-block-head h5 {
font-size: 12px; font-size: 12px;
margin: 0; margin: 0;
padding-left: 10px; padding-left: 10px;
padding-top: 11px; padding-top: 11px;
text-transform: uppercase; text-transform: uppercase;
} }
.dashboard-block .dashboard-block-content { .dashboard-block .dashboard-block-content {
background: none repeat scroll 0 0 hsl(0, 0%, 93%); background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 0 0 3px 3px; border-radius: 0 0 3px 3px;
} }
.dashboard-block .dashboard-block-box { .dashboard-block .dashboard-block-box {
background: none repeat scroll 0 0 hsl(0, 0%, 100%); background: none repeat scroll 0 0 hsl(0, 0%, 100%);
border-top: 1px solid hsl(0, 0%, 82%); border-top: 1px solid hsl(0, 0%, 82%);
box-shadow: 0 0 5px hsl(0, 0%, 87%) inset; box-shadow: 0 0 5px hsl(0, 0%, 87%) inset;
} }
.dashboard-block .dashboard-block-content .dashboard-block-box { .dashboard-block .dashboard-block-content .dashboard-block-box {
margin-top: 0 !important; margin-top: 0 !important;
} }
.dashboard-block .dashboard-block-content .dashboard-block-box .dashboard-block-table { .dashboard-block .dashboard-block-content .dashboard-block-box .dashboard-block-table {
margin-bottom: 0 !important; margin-bottom: 0 !important;
} }
.dashboard-block-table { .dashboard-block-table {
background-color: hsla(0, 0%, 0%, 0); background-color: hsla(0, 0%, 0%, 0);
border-collapse: collapse; border-collapse: collapse;
border-spacing: 0; border-spacing: 0;
margin-bottom: 20px; margin-bottom: 20px;
max-width: 100%; max-width: 100%;
width: 100%; width: 100%;
} }
.dashboard-block-table th, .dashboard-block-table td { .dashboard-block-table th, .dashboard-block-table td {
border-top: 1px solid hsl(0, 0%, 87%); border-top: 1px solid hsl(0, 0%, 87%);
line-height: 20px; line-height: 20px;
padding: 5px; padding: 5px;
text-align: left; text-align: left;
vertical-align: middle; vertical-align: middle;
} }
.dashboard-badge { .dashboard-badge {
background-color: hsl(0, 0%, 60%); background-color: hsl(0, 0%, 60%);
border-radius: 9px; border-radius: 9px;
color: hsl(0, 0%, 100%); color: hsl(0, 0%, 100%);
font-size: 11.844px; font-size: 11.844px;
font-weight: bold; font-weight: bold;
line-height: 14px; line-height: 14px;
padding: 1px 9px 2px; padding: 1px 9px 2px;
text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25); text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25);
vertical-align: baseline; vertical-align: baseline;
white-space: nowrap; white-space: nowrap;
} }

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -18,10 +18,11 @@ defined('_JEXEC') or die('Restricted access');
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
###ADMIN_VIEWS_HEADER### ###ADMIN_VIEWS_HEADER###
if ($this->saveOrder) if ($this->saveOrder)
{ {
$saveOrderingUrl = 'index.php?option=com_###component###&task=###views###.saveOrderAjax&tmpl=component'; $saveOrderingUrl = 'index.php?option=com_###component###&task=###views###.saveOrderAjax&tmpl=component';
JHtml::_('sortablelist.sortable', '###view###List', 'adminForm', strtolower($this->listDirn), $saveOrderingUrl); Html::_('sortablelist.sortable', '###view###List', 'adminForm', strtolower($this->listDirn), $saveOrderingUrl);
} }
?> ?>
###VIEWS_DEFAULT_BODY######VIEWS_FOOTER_SCRIPT### ###VIEWS_DEFAULT_BODY######VIEWS_FOOTER_SCRIPT###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,7 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
?> ?>
<p><?php echo JText::_('COM_###COMPONENT###_###VIEWS###_BATCH_TIP'); ?></p> <p><?php echo Text::_('COM_###COMPONENT###_###VIEWS###_BATCH_TIP'); ?></p>
<?php echo $this->batchDisplay; ?> <?php echo $this->batchDisplay; ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,12 +17,14 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Language\Text;
?> ?>
<!-- clear the batch values if cancel --> <!-- clear the batch values if cancel -->
<button class="btn" type="button" onclick="###BATCH_ONCLICK_CANCEL_SCRIPT###" data-dismiss="modal"> <button class="btn" type="button" onclick="###BATCH_ONCLICK_CANCEL_SCRIPT###" data-dismiss="modal">
<?php echo JText::_('JCANCEL'); ?> <?php echo Text::_('JCANCEL'); ?>
</button> </button>
<!-- post the batch values if process --> <!-- post the batch values if process -->
<button class="btn btn-success" type="submit" onclick="Joomla.submitbutton('###view###.batch');"> <button class="btn btn-success" type="submit" onclick="Joomla.submitbutton('###view###.batch');">
<?php echo JText::_('JGLOBAL_BATCH_PROCESS'); ?> <?php echo Text::_('JGLOBAL_BATCH_PROCESS'); ?>
</button> </button>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,6 +17,10 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
$edit = "index.php?option=com_###component###&view=###views###&task=###view###.edit"; $edit = "index.php?option=com_###component###&view=###views###&task=###view###.edit";
?> ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -18,11 +18,11 @@ defined('_JEXEC') or die('Restricted access');
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
###CUSTOM_ADMIN_VIEW_HEADER######CUSTOM_ADMIN_CODE_BODY### ###CUSTOM_ADMIN_VIEW_HEADER######CUSTOM_ADMIN_CODE_BODY###
?> ?>
<?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT### <?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT###
<?php $urlId = (isset($this->item->id)) ? '&id='. (int) $this->item->id : ''; ?> <?php $urlId = (isset($this->item->id)) ? '&id='. (int) $this->item->id : ''; ?>
###CUSTOM_ADMIN_TOP_FORM######CUSTOM_ADMIN_BODY######CUSTOM_ADMIN_BOTTOM_FORM### ###CUSTOM_ADMIN_TOP_FORM######CUSTOM_ADMIN_BODY######CUSTOM_ADMIN_BOTTOM_FORM###
<?php else: ?> <?php else: ?>
<h1><?php echo JText::_('COM_###COMPONENT###_NO_ACCESS_GRANTED'); ?></h1> <h1><?php echo Text::_('COM_###COMPONENT###_NO_ACCESS_GRANTED'); ?></h1>
<?php endif; ?> <?php endif; ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -15,6 +15,10 @@ defined('_JEXEC') or die('Restricted access');
###BOM### ###BOM###
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED######CUSTOM_ADMIN_TEMPLATE_CODE_BODY### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
use Joomla\CMS\HTML\HTMLHelper as Html;###CUSTOM_ADMIN_TEMPLATE_CODE_BODY###
?>###CUSTOM_ADMIN_TEMPLATE_BODY### ?>###CUSTOM_ADMIN_TEMPLATE_BODY###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,5 +17,8 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
?> ?>
###LISTHEAD### ###LISTHEAD###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,13 +17,17 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
JHtml::_('jquery.framework'); use Joomla\CMS\Language\Text;
JHtml::_('bootstrap.tooltip'); use Joomla\CMS\Router\Route;
JHtml::_('script', 'system/core.js', false, true); use Joomla\CMS\HTML\HTMLHelper as Html;
JHtml::_('behavior.keepalive'); Html::_('jquery.framework');
Html::_('bootstrap.tooltip');
Html::_('script', 'system/core.js', false, true);
Html::_('behavior.keepalive');
?> ?>
<script type="text/javascript"> <script type="text/javascript">
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList)) : ?> <?php if ($this->hasPackage && Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($this->headerList)) : ?>
Joomla.continueImport = function() Joomla.continueImport = function()
{ {
var form = document.getElementById('adminForm'); var form = document.getElementById('adminForm');
@ -40,7 +44,7 @@ JHtml::_('behavior.keepalive');
// do field validation // do field validation
if (error) if (error)
{ {
alert("<?php echo JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_ALL_COLUMNS', true); ?>"); alert("<?php echo Text::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_ALL_COLUMNS', true); ?>");
} }
else else
{ {
@ -58,7 +62,7 @@ JHtml::_('behavior.keepalive');
// do field validation // do field validation
if (form.import_package.value == "") if (form.import_package.value == "")
{ {
alert("<?php echo JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_FILE', true); ?>"); alert("<?php echo Text::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_FILE', true); ?>");
} }
else else
{ {
@ -75,7 +79,7 @@ JHtml::_('behavior.keepalive');
// do field validation // do field validation
if (form.import_directory.value == ""){ if (form.import_directory.value == ""){
alert("<?php echo JText::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_DIRECTORY', true); ?>"); alert("<?php echo Text::_('COM_###COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_DIRECTORY', true); ?>");
} }
else else
{ {
@ -93,7 +97,7 @@ JHtml::_('behavior.keepalive');
// do field validation // do field validation
if (form.import_url.value == "" || form.import_url.value == "http://") if (form.import_url.value == "" || form.import_url.value == "http://")
{ {
alert("<?php echo JText::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL', true); ?>"); alert("<?php echo Text::_('COM_###COMPONENT###_IMPORT_MSG_ENTER_A_URL', true); ?>");
} }
else else
{ {
@ -126,7 +130,7 @@ jQuery(document).ready(function($) {
</script> </script>
<div id="installer-import" class="clearfix"> <div id="installer-import" class="clearfix">
<form enctype="multipart/form-data" action="<?php echo JRoute::_('index.php?option=com_###component###&view=import');?>" method="post" name="adminForm" id="adminForm" class="form-horizontal form-validate"> <form enctype="multipart/form-data" action="<?php echo Route::_('index.php?option=com_###component###&view=import');?>" method="post" name="adminForm" id="adminForm" class="form-horizontal form-validate">
<?php if (!empty( $this->sidebar)) : ?> <?php if (!empty( $this->sidebar)) : ?>
<div id="j-sidebar-container" class="span2"> <div id="j-sidebar-container" class="span2">
@ -137,13 +141,13 @@ jQuery(document).ready(function($) {
<div id="j-main-container"> <div id="j-main-container">
<?php endif;?> <?php endif;?>
<?php if ($this->hasPackage && ###Component###Helper::checkArray($this->headerList) && ###Component###Helper::checkArray($this->headers)) : ?> <?php if ($this->hasPackage && Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($this->headerList) && Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($this->headers)) : ?>
<fieldset class="uploadform"> <fieldset class="uploadform">
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_LINK_FILE_TO_TABLE_COLUMNS'); ?></legend> <legend><?php echo Text::_('COM_###COMPONENT###_IMPORT_LINK_FILE_TO_TABLE_COLUMNS'); ?></legend>
<div class="control-group"> <div class="control-group">
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_TABLE_COLUMNS'); ?></h4></label> <label class="control-label" ><h4><?php echo Text::_('COM_###COMPONENT###_IMPORT_TABLE_COLUMNS'); ?></h4></label>
<div class="controls"> <div class="controls">
<label class="control-label" ><h4><?php echo JText::_('COM_###COMPONENT###_IMPORT_FILE_COLUMNS'); ?></h4></label> <label class="control-label" ><h4><?php echo Text::_('COM_###COMPONENT###_IMPORT_FILE_COLUMNS'); ?></h4></label>
</div> </div>
</div> </div>
<?php foreach($this->headerList as $name => $title): ?> <?php foreach($this->headerList as $name => $title): ?>
@ -151,72 +155,72 @@ jQuery(document).ready(function($) {
<label for="<?php echo $name; ?>" class="control-label" ><?php echo $title; ?></label> <label for="<?php echo $name; ?>" class="control-label" ><?php echo $title; ?></label>
<div class="controls"> <div class="controls">
<select name="<?php echo $name; ?>" id="vdm_<?php echo $name; ?>" required class="required input_box" > <select name="<?php echo $name; ?>" id="vdm_<?php echo $name; ?>" required class="required input_box" >
<option value=""><?php echo JText::_('COM_###COMPONENT###_IMPORT_PLEASE_SELECT_COLUMN'); ?></option> <option value=""><?php echo Text::_('COM_###COMPONENT###_IMPORT_PLEASE_SELECT_COLUMN'); ?></option>
<option value="IGNORE"><?php echo JText::_('COM_###COMPONENT###_IMPORT_IGNORE_COLUMN'); ?></option> <option value="IGNORE"><?php echo Text::_('COM_###COMPONENT###_IMPORT_IGNORE_COLUMN'); ?></option>
<?php foreach($this->headers as $value => $option): ?> <?php foreach($this->headers as $value => $option): ?>
<?php $selected = (strtolower($option) == strtolower ($title) || strtolower($option) == strtolower($name))? 'selected="selected"':''; ?> <?php $selected = (strtolower($option) == strtolower ($title) || strtolower($option) == strtolower($name))? 'selected="selected"':''; ?>
<option value="<?php echo ###Component###Helper::htmlEscape($value); ?>" class="required" <?php echo $selected ?>><?php echo ###Component###Helper::htmlEscape($option); ?></option> <option value="<?php echo Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($value); ?>" class="required" <?php echo $selected ?>><?php echo Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($option); ?></option>
<?php endforeach; ?> <?php endforeach; ?>
</select> </select>
</div> </div>
</div> </div>
<?php endforeach; ?> <?php endforeach; ?>
<div class="form-actions"> <div class="form-actions">
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_CONTINUE'); ?>" onclick="Joomla.continueImport()" /> <input class="btn btn-primary" type="button" value="<?php echo Text::_('COM_###COMPONENT###_IMPORT_CONTINUE'); ?>" onclick="Joomla.continueImport()" />
</div> </div>
</fieldset> </fieldset>
<input type="hidden" name="gettype" value="continue" /> <input type="hidden" name="gettype" value="continue" />
<?php else: ?> <?php else: ?>
<?php echo JHtml::_('bootstrap.startTabSet', 'myTab', array('active' => 'upload')); ?> <?php echo Html::_('bootstrap.startTabSet', 'myTab', array('active' => 'upload')); ?>
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'upload', JText::_('COM_###COMPONENT###_IMPORT_FROM_UPLOAD', true)); ?> <?php echo Html::_('bootstrap.addTab', 'myTab', 'upload', Text::_('COM_###COMPONENT###_IMPORT_FROM_UPLOAD', true)); ?>
<fieldset class="uploadform"> <fieldset class="uploadform">
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend> <legend><?php echo Text::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
<div class="control-group"> <div class="control-group">
<label for="import_package" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE'); ?></label> <label for="import_package" class="control-label"><?php echo Text::_('COM_###COMPONENT###_IMPORT_SELECT_FILE'); ?></label>
<div class="controls"> <div class="controls">
<input class="input_box" id="import_package" name="import_package" type="file" size="57" /> <input class="input_box" id="import_package" name="import_package" type="file" size="57" />
</div> </div>
</div> </div>
<div class="form-actions"> <div class="form-actions">
<input class="btn btn-primary" type="button" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_UPLOAD_BOTTON'); ?>" onclick="Joomla.submitbutton()" />&nbsp;&nbsp;&nbsp;<small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small> <input class="btn btn-primary" type="button" value="<?php echo Text::_('COM_###COMPONENT###_IMPORT_UPLOAD_BOTTON'); ?>" onclick="Joomla.submitbutton()" />&nbsp;&nbsp;&nbsp;<small><?php echo Text::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
</div> </div>
</fieldset> </fieldset>
<?php echo JHtml::_('bootstrap.endTab'); ?> <?php echo Html::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'directory', JText::_('COM_###COMPONENT###_IMPORT_FROM_DIRECTORY', true)); ?> <?php echo Html::_('bootstrap.addTab', 'myTab', 'directory', Text::_('COM_###COMPONENT###_IMPORT_FROM_DIRECTORY', true)); ?>
<fieldset class="uploadform"> <fieldset class="uploadform">
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend> <legend><?php echo Text::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
<div class="control-group"> <div class="control-group">
<label for="import_directory" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_DIRECTORY'); ?></label> <label for="import_directory" class="control-label"><?php echo Text::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_DIRECTORY'); ?></label>
<div class="controls"> <div class="controls">
<input type="text" id="import_directory" name="import_directory" class="span5 input_box" size="70" value="<?php echo $this->state->get('import.directory'); ?>" /> <input type="text" id="import_directory" name="import_directory" class="span5 input_box" size="70" value="<?php echo $this->state->get('import.directory'); ?>" />
</div> </div>
</div> </div>
<div class="form-actions"> <div class="form-actions">
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton3()" />&nbsp;&nbsp;&nbsp;<small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small> <input type="button" class="btn btn-primary" value="<?php echo Text::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton3()" />&nbsp;&nbsp;&nbsp;<small><?php echo Text::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
</div> </div>
</fieldset> </fieldset>
<?php echo JHtml::_('bootstrap.endTab'); ?> <?php echo Html::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'url', JText::_('COM_###COMPONENT###_IMPORT_FROM_URL', true)); ?> <?php echo Html::_('bootstrap.addTab', 'myTab', 'url', Text::_('COM_###COMPONENT###_IMPORT_FROM_URL', true)); ?>
<fieldset class="uploadform"> <fieldset class="uploadform">
<legend><?php echo JText::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend> <legend><?php echo Text::_('COM_###COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>
<div class="control-group"> <div class="control-group">
<label for="import_url" class="control-label"><?php echo JText::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_URL'); ?></label> <label for="import_url" class="control-label"><?php echo Text::_('COM_###COMPONENT###_IMPORT_SELECT_FILE_URL'); ?></label>
<div class="controls"> <div class="controls">
<input type="text" id="import_url" name="import_url" class="span5 input_box" size="70" value="http://" /> <input type="text" id="import_url" name="import_url" class="span5 input_box" size="70" value="http://" />
</div> </div>
</div> </div>
<div class="form-actions"> <div class="form-actions">
<input type="button" class="btn btn-primary" value="<?php echo JText::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton4()" />&nbsp;&nbsp;&nbsp;<small><?php echo JText::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small> <input type="button" class="btn btn-primary" value="<?php echo Text::_('COM_###COMPONENT###_IMPORT_GET_BOTTON'); ?>" onclick="Joomla.submitbutton4()" />&nbsp;&nbsp;&nbsp;<small><?php echo Text::_('COM_###COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>
</div> </div>
</fieldset> </fieldset>
<?php echo JHtml::_('bootstrap.endTab'); ?> <?php echo Html::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.endTabSet'); ?> <?php echo Html::_('bootstrap.endTabSet'); ?>
<input type="hidden" name="gettype" value="upload" /> <input type="hidden" name="gettype" value="upload" />
<?php endif; ?> <?php endif; ?>
<input type="hidden" name="task" value="import.import" /> <input type="hidden" name="task" value="import.import" />
<?php echo JHtml::_('form.token'); ?> <?php echo Html::_('form.token'); ?>
</form> </form>
</div> </div>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -17,8 +17,13 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED### defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
JHtml::_('jquery.framework'); use Joomla\CMS\Factory;
JHtml::_('bootstrap.tooltip'); use Joomla\CMS\Language\Text;
JHtml::_('script', 'system/core.js', false, true); use Joomla\CMS\Router\Route;
JHtml::_('behavior.keepalive'); use Joomla\CMS\HTML\HTMLHelper as Html;
Html::_('jquery.framework');
Html::_('bootstrap.tooltip');
Html::_('script', 'system/core.js', false, true);
Html::_('behavior.keepalive');
?>###IMPORT_DEFAULT_VIEW_CUSTOM### ?>###IMPORT_DEFAULT_VIEW_CUSTOM###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */
@ -22,5 +22,5 @@ defined('_JEXEC') or die('Restricted access');###LICENSE_LOCKED_DEFINED###
<?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT### <?php if ($this->canDo->get('###sview###.access')): ?>###CUSTOM_ADMIN_SUBMITBUTTON_SCRIPT###
###CUSTOM_ADMIN_TOP_FORM######CUSTOM_ADMIN_BODY######CUSTOM_ADMIN_BOTTOM_FORM### ###CUSTOM_ADMIN_TOP_FORM######CUSTOM_ADMIN_BODY######CUSTOM_ADMIN_BOTTOM_FORM###
<?php else: ?> <?php else: ?>
<h1><?php echo JText::_('COM_###COMPONENT###_NO_ACCESS_GRANTED'); ?></h1> <h1><?php echo Text::_('COM_###COMPONENT###_NO_ACCESS_GRANTED'); ?></h1>
<?php endif; ?> <?php endif; ?>

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder * @package Joomla.Component.Builder
* *
* @created 30th April, 2015 * @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com> * @author Llewellyn van der Merwe <https://dev.vdm.io>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder> * @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt * @license GNU General Public License version 2 or later; see LICENSE.txt
*/ */

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