154 Home
Llewellyn edited this page 3 months ago

Welcome to the Joomla-Component-Builder wiki!

JCB Wiki!

These tutorials will give you a basic understanding on how JCB works!

A revision of this page to include timelines for all videos and documentation to accompany the videos is underway. Anticipated completion date is early next year. Chapters one through seventy one have been transcribed from the corresponding videos. They are presented here in a very raw format and are being edited.

For an example of what the finished chapters will look like the fifth chapter, is complete. We are now editing the first chapter and also adding timelines for the videos that do not have it. The timelines add the visual reference needed at various points in each chapter in lieu of adding the frame for illustration. After completing chapters one through four, we'll complete chapters six through seventy one which will take some time. Updates on progress will be posted in the title of the chapter currently being edited here. After each chapter is finished, an announcement will be posted in the forum.

If you have more questions, discussions.

The list of videos that are already available are listed below. We will be editing this soon to correspond with each chapter in the documentation and to be in the same order.

Intro

  • Basic introduction

Installation

  • Basic installation instructions

General Planning

  • Planning your component

Field Types

  • 01:05 Field types Create Field Types Using basic joomla article to explain field types and their relationship within views
  • 01:57 List view Difference between list view and edit view. Plural and single
  • 05:45 Compile error Remember to select correct options that suit your build.
  • 06:35 Install compiled component Installing from within component builder, quick link
  • 08:04 Admin fields-views edit explanation of adding-editing fields
  • 09:26 Default field-types Default field-types that come shipped within Component
  • 12:29 Joomla standard form fields Joomla website for standards regarding form fields
  • 14:05 XML string format for joomla Reusable field types
  • 14:45 Text field type example Fields within Text field type
  • 15:15 Joomla XML example Text Field XML example
  • 17:43 XML string within compilier How XML string is build and compilied within component builder.

Basic Fields

  • 01:05 New Field Type Using text field as example
  • 01:08 Basic field type Using text field as example
  • 03:16 Data Types Basic introduction to data types
  • 03:35 Indexes Types
  • 04:29 Store Method Default, JSON and other options
  • 08:00 Compiled info in UI Explanation of compiled fields
  • 09:30 Store Methods support Encryption Encryption of fields supported
  • 10:50 Example E-mail Field E-mail field and XML fields example
  • 14:30 Target Fields with custom CSS/Javascript Adding custom CSS/javascript to fields, in both edit and list views using Jform and Jquery
  • 17:52 Repeatable field with date Adding PHP and Javascript in custom script
  • 20:29 List Field and adding options, Static Setting up a static list field
  • 24:43 Radio Button example
  • 26:57 Colour Field example
  • 28:00 Showon Attrib example
  • 29:24 Category Field example
  • 32:14 Editor Field example
  • 33:30 Media Field example
  • 34:37 Notes Field example
  • 37:20 Translation brief overview

Admin Views

  • 01:05 Admin Views/ Naming convention
  • 03:00 Example View Preacher
  • 04:35 View Icons
  • 06:19 Permission Implementation
  • 19:25 Tabs
  • 19:34 Tabs - Default - Publishing -Permissions
  • 20:30 Tabs - Preacher example
  • 20:55 Tabs - Fields Linking (Preacher)
  • 22:20 Tabs - Fields Linked Views (Sermons)
  • 32:28 Fields
  • 38:00 Fields Alignment in Admin View
  • 40:35 Fields Alignment order
  • 41:45 Fields Title - Alias
  • 43:46 Conditions
  • 44:37 Conditions using Sermons example
  • 59:58 Field Listing
  • 60:15 Custom CSS View - List
  • 60:42 Custom Javascript View - List Footer
  • 61:46 Custom PhP - Adding AJAX for Controller - Model
  • 70:50 Get Item - Items Joomla API Method
  • 72:09 Batch Copy - Move Method
  • 75:07 MySQL Dumps Test Data (insert into table)

Advanced Fields

  • 00:39 Local file list example
  • 05:29 Sermon Preacher Custom Field
  • 07:29 Field Information Guide
  • 08:00 Jform in Component Builder
  • 09:21 Extending List in Custom Field
  • 10:50 Naming Convention for Component and Table names
  • 16:02 Custom PHP layout in Field Definition
  • 18:08 Built code for Sermon Preacher
  • 22:36 Dropbox custom List example
  • 23:32 Component Helper Class
  • 31:02 Custom User
  • 40:40 Repeatable Custom Fields
  • 45:21 Joomla Icons Info & Link

Adding Admin Views to a Component

  • 00:54 Sermon Component settings as Example
  • 01:43 Adding Views settings icons
  • 02:45 Settings Switch Admin Menu
  • 03:00 Settings Switch Dashboard Items
  • 03:45 Settings Switch Submenu
  • 03:58 Settings Switch Auto Check-in
  • 05:04 Settings Switch Keep History
  • 14:15 Settings Switch MetaData
  • 15:32 Settings Switch Access
  • 16:34 Settings Switch Export/Import
  • 18:14 Settings Switch Edit - Create - Site Views
  • 24:38 Settings Switch Order

Component Settings

  • 00:50 Compiler Info
  • 04:20 Adding Custom Files - Folders
  • 04:54 Adding Custom Admin Views
  • 07:28 Adding Custom Config Fields
  • 08:21 Custom Switches using Sermon Component as example
  • 09:45 Adding Contributers
  • 10:25 Adding Uikit
  • 11:05 Adding Fields to Custom Config Fields
  • 13:27 Space HR field in Component Fields
  • 15:09 Tab - View names fields added to Site Menu
  • 20:00 Site View explanation of above tabs
  • 20:52 Quick explanation of creating site views

Component Scripts

  • 00:46 Create User Helper Methods
  • 01:45 Example Helper Method (Create User)
  • 07:15 Add UiKit
  • 07:35 Add Global CSS to Admin Backend
  • 07:45 Add Custom PhP Helper Admin Class
  • 08:00 Add Global Admin Event
  • 11:36 Add Custom PhP Helper Site Class
  • 13:50 Add MySQL Dump (Att 2nd place it can be done)
  • 14:15 Dashboard Methods (With Example)

Component FTP and more

  • 00:05 Adding Readme script
  • 01:30 Place Holders
  • 02:20 Component-Builder Link Back Info*
  • 02:47 Markdown Info
  • 03:10 Admin - Site Views Adding Editing
  • 03:52 FTP Info - Updating Component
  • 06:30 FTP Info - Sales Server
  • 08:03 Component Builder Global Options
  • 08:13 Component Builder Encryption Settings
  • 09:07 Component Builder Folder Paths
  • 12:20 Component Builder Compiler.PhP FTP Info
  • 14:15 Update Server extra Info (Versions)

dynamicGet

  • 00:15 Sermon - Preacher Get Example
  • 00:40 Dynamic Get Source Selection
  • 03:45 Dynamic Get Preacher View
  • 04:23 Get Types - Get Item/List Get Custom
  • 06:42 Get List Pagination
  • 08:50 Join Data Views - Tables
  • 10:22 Join View Tables Example
  • 15:00 Dynamic Get Sermon Preacher in Code
  • 21:49 Dynamic Get Custom Script
  • 23:18 Dynamic Get Join DB Tables
  • 24:05 Dynamic Get Filters - Where - Ordering - Globals
  • 27:34 Dynamic Get Get Access (Default added)
  • 29:49 Dynamic Get Where
  • 30:41 Dynamic Get Ordering

Adding dynamicGet to a Site View

  • 00:24 Checking the Target Datasets
  • 00:35 Populate Fields from Get's
  • 01:38 Dynamic Values
  • 03:29 Inserting Values into View
  • 06:35 Var Dump
  • 07:45 Gets in the Code eg: Preacher.php
  • 09:17 Looking at the Dynamic get
  • 10:59 Preacher View.html.php generated code
  • 11:50 Checking the target datasets
  • 13:40 Site Preacher tmpl folder

Adding Templates and Layouts to a Site View

  • 00:05 Relationship between templates/layouts in views
  • 00:47 Preacher View Example
  • 01:38 Preacher Site View Example
  • 02:20 Location of Templates
  • 03:40 Default View in Code
  • 06:47 Quick Layout Example Within View
  • 08:00 Explantation Templates / Layouts within Joomla

Template Setup

  • 00:10 Creating Templates
  • 00:37 New - Copying templates
  • 01:25 Language String
  • 02:20 Adding custom script/code to template
  • 03:10 Adding Javascript to template

Layout Setup

  • 00:05 Layouts
  • 00:40 How layouts work with dynamic gets
  • 01:53 How Templates call Layouts
  • 03:10 Sermon List-item Layout
  • 04:00 Using the View Key
  • 05:16 Layout to Template Custom Scripting
  • 06:00 Dynamic Custom Views using Template
  • 06:20 Above in the Code
  • 07:35 Config.xml
  • 09:30 Layout Concept
  • 11:05 Layout Custom Script Area

Custom Admin Views

  • 00:35 Example view from other Component
  • 03:55 Component Builder Custom Admin View from above
  • 04:15 Add custom button example
  • 05:13 Adding Script for the controller methods
  • 06:20 Area for Custom Scripting
  • 07:00 Combing multiple data results example

Adding Site Views to a Component

  • 00:30 Using Sermon Dist as Example
  • 00:42 Settings - Views
  • 01:25 Adding Site Views Important Glitch
  • 02:34 Site View Options (Menu-Metadata-Default View-Access)

Adding Custom Admin Views to a Component

  • 00:03 Example Component not Sermon Dist
  • 00:16 Settings - Settings - Custom Admin View
  • 00:34 Multiple Switches due to being dynamic
  • 00:56 Icon-main menu-dashboard-sub menu see time for more switches
  • 01:45 Targeting Item so some switches are No
  • 01:55 Select target view
  • 02:19 Showing within the component
  • 03:46 Order Before Selection
  • View rest for how buttons are implemented - Important

Tweaking MySQL Demo Data

  • 00:00 MySQL tweaking in the component area
  • 01:33 Tweaking Feature
  • 02:46 ID Based

Global Settings of Component Builder

  • 00:25 Options Button For Global Config
  • 01:20 Check in Timer
  • 01:49 Enable Versions
  • 02:28 Minify JS
  • 03:14 Contributor Info
  • 03:40 UiKit Settings
  • 04:48 Encryption Settings Key Important
  • 05:41 Folder Paths
  • 06:53 Permissions
  • 11:25 Example Preacher Permissions
  • 13:15 Field Permission Switch

Adding a custom time field

  • 00:06 Fields
  • 02:25 Joomla Form-rule Example
  • 04:30 Component builder new text field example
  • 05:19 Script JS
  • 07:00 Example time-date (custom component)
  • 08:51 JS repeatable field time-date Important

How to integrate the Create User Helper Method in your Components

How to use email helper in your components.

  • 00:25 Example of Email Helper Class
  • 01:10 Setting Up Email Helper Class
  • 01:20 Libs - Helpers in Component
  • 01:50 Settings - Config area
  • 03:05 In Code Field Names
  • 03:36 Component Global Options - Mail Configuration
  • 04:00 Switch Global Mailer Options
  • 04:12 Joomla Global Configuration - Server
  • 05:10 Component Builder Email Switch Options
  • 05:42 DKIM Settings (Encryption)
  • 07:15 Default Global in Code
  • 08:45 DKIM Values in Code
  • 09:30 Error Checking for emails in code
  • 11:45 Implementated example
  • 13:56 Above example in code Worth Watching

How to setup a store message method along side the email helper class

  • 00:03 Example in Code
  • 01:31 Code Snippet in Method
  • 02:17 Adding Code to Admin Helper Area
  • Important watch to end

How to ensure that a field is not escaped when added to list views.

  • 00:02 Example extra styling in fields
  • 00:37 Settings - Editing View - PhP Area
  • 01:05 Settings Values in the code - Add PhP Getitems Method
  • 02:00 Looping through data till target found - adding styling
  • 03:20 Preventing the escaped info
  • 04:16 Field adding escape=false to code

How to change exported values and setup custom import options

  • 00:25 Example Component
  • 01:00 Example IP Tables
  • 01:39 Export feature
  • 02:56 Exported example in xls format
  • 03:27 Export data in code
  • 05:06 Admin View - PhP - (GetListQuery)
  • 09:37 Import features explained
  • 10:15 Custom Import Tab (default import code)

How to overwrite the custom fields

  • 00:03 Using default fields with custom code
  • 01:33 Example of shown default fields in list view
  • 02:50 Example created_by field in View
  • 03:56 Compiled in code
  • 05:12 Adding the Fields
  • 05:45 Adding in tabs (default 15 tab)

How to filter a list field based on association with another field

  • 00:02 Explanation of filter fields
  • 00:45 Example component with filters
  • Volume to low to fully understand - Will be done over soon

Automatic import of custom code during compilation in JCB

Excellent Update to JCB

  • 00:02 Custom Code
  • 02:00 Example demo compiled
  • 02:35 Editing code in the editor
  • 03:13 Conventions used (Insert code - Replace code)
  • 05:45 Limitations for Inserting and updating
  • 08:11 Showing example with replace
  • 09:06 Recompiling the demo component with replace
  • 09:30 Checking the custom code tab before installing
  • 10:00 Looking at the replaced code in editor
  • 11:40 Inserting custom code via editor
  • 13:55 Checking the custom code tab for new entry before new installation

TIPS: Custom Code

JCB manual custom code implementation

  • 00:02 Brief explanation
  • 03:18 Updating code from JCB in the editor
  • 06:43 Github explanation for update and insert issue 37
  • 12:34 Custom Codes in JCB
  • 13:00 Placeholder
  • 13:57 Example Field
  • 18:55 Difference between editor changes and custom code changes
  • Imptortant - Watch till end

Export & Import of fully mapped components

  • 00:00 Various Linked Concepts to A component is Exported
  • 01:09 Two Ways to Export A Component - Encrypted And Non Encrypted
  • 01:40 Smart Export Builder
  • 02:21 Export Key
  • 03:54 Export Key - Encrypt All Components
  • 05:12 If Any Key - Implode The array
  • 07:13 Exporting A Component - Generating A Key
  • 09:41 Importing Componentw - JCB_smartPackage.zip
  • 11:13 Two Features - Force Local Update - Use Key
  • 12:55 Warnings - Remapped
  • 14:55 Mapped Components

How to add Custom Buttons in JCB to your component Admin Area

  • 00:38 Joomla Demo Dashboard - Look
  • 02:05 PHP Controller Method - List View Controller Method
  • 03:07 Custom Button
  • 05:05 PHP (Controller Method)
  • 07:05 More Options
  • 09:33 Checking Within Controller Before Trigger The Model
  • 10:39 Logic In The Model Methods
  • 11:30 Adding Code
  • 13:08 Demonstration of Adding A-List Button
  • 16:10 Demonstration Adding A Button Inside Of Edit View
  • 17:29 Demonstrate Button - Both List ans Inside
  • 19:43 Adds A Permissional Switch

Translation Manager in JCB explained

  • 00:49 JCB Builds English File
  • 01:25 Placeholder - JText - English Language String
  • 02:43 Adding Of Other Languages
  • 03:50 Code - Language String
  • 06:04 Adding Strings To The File
  • 07:09 Multi Language String Implementation
  • 09:13 Adding Language Back To Component
  • 10:05 How Purging Works
  • 11:22 Move strings From Published To Archived State
  • 12:14 New Translation Tab
  • Two Ways To Get The String
  • 13:21 Via The Component
  • 14:03 Go To Language Translation

Setting Site View Permission

  • 02:40 The Default View
  • 04:48 Adding Custom Scripting - Showing After Installation
  • 06:38 Site Root - In The Code
  • 09:35 Custom Code Implementation

Auto create SQL updates for Components in JCB

  • 00:38 JCB Builds tables For Views On Installation
  • 01:47 Manually Adding New SQL Statements
  • 02:35 Adding A New View/New Table To Component
  • 03:51 System Checking The History If There Is A New Table
  • 05:44 Adding New Field To Existing View
  • 07:23 If Building A Component It Have History

Setup Site Edit View in JCB

  • 01:50 How To Add Editing Area
  • 03:30 Two Switches
  • 04:21 Demo Component - Settings
  • 06:05 Code - Controller - Model - View
  • 07:51 Manually Add Links
  • 11:19 Add A Button To Create New Looks

Automated backup system in JCB

  • 00:00 Extension API _ Backup Feature
  • 01:07 Backup Button
  • 02:40 New Features - Mail Configuration, DKIM, Encryption Settings, CronJob Tabs Added
  • 03:09 API User
  • 06:17 CronJob Tab
  • 08:36 CronJob Backup Folder Path
  • 09:13 Email(Backup Key)
  • 09:33 Package Name Placeholders
  • 10:13 Mail Configuration Area
  • 10:54 DKIM
  • 11:10 Company Details
  • 12:10 Set An Export Key
  • 13:07 Backup Manually
  • 15:35 Testing Backup
  • 16:48 Package Owner Details

Adding Helper Structures to any JCB component

  • 00:00 Question About Help Menu Integration For JCB Components
  • 00:39 Purchased Sermon Distributor Key
  • 02:48 New Admin View - Help Document
  • 05:43 Demo - Help Document
  • 06:41 Type - Link To External URL
  • 07:20 Type - Text
  • 09:36 System Name
  • 11:57 Insert Tables - Linking Table To Component
  • 13:48 What Happens If Component Is No Longer Installed?
  • 17:51 JCB Detects If It Is A Help Document

Upgrade to JCB v2.5.8 and using the new Admin View and Admin Fields

  • 00:00 JCB Removing Repeatable Fields
  • 01:59 JCB 2.5.8, Whole Admin View Moved To Subform Layout
  • 03:13 Heads Up - Moving And Changing Fields
  • 04:19 Add Number Of Scripts That Will Convert Fields and Tales etc.
  • 04:47 Convert Repeatable Function
  • 06:30 Model - admin_view.php - Changes Would Take Place
  • 08:46 Checks - Converts - Updates
  • 09:38 Checking
  • 10:15 Converts
  • 10:35 Updates - never need to be updated again
  • 11:50 Installing The Upgrade v2.5.8
  • 12:55 New Field And Conditions View
  • 14:15 How The Field And Conditions View Works?
  • 15:00 How To Edit Custom Fields
  • 15:42 Creating Field - Available
  • 16:53 Shortcut Buttons - First Button, Admin Fields, - Second Button, Conditions
  • 17:35 Create New Admin View: Adding - Single Record Name, Short Description, System Name

How to setup taps after upgrade to v2.5.8 in JCB

  • 00:00 In Settings - Add Tabs
  • 00:52 Tabs Menu - Dropdown

Major Release of JCB v2.6.0

  • 00:00 Removing All Repeatable Fields In Joomla Component Area
  • 02:03 Changes Only Affects The Component Area
  • 02:20 Upgrade: Compiler Import/Export Of JCB Packages
  • 02:47 Suggestion - Clean your Browser Cache And Browser Memory
  • 03:29 Dynamic Get Area Some Conflicts
  • 05:13 Update in Managing Area
  • 06:09 Edit Component Update
  • 07:00 Contributor Moved Down - Do On Page
  • 07:11 Moved Component Files And Folders To Joint Table
  • 07:42 Moved Admin Views To Its Own Tab
  • 09:19 New Feature - Translation Checker
  • 10:08 Becomes Active If Language Is Setup
  • 10:48 Not An Error Only A Miss Configuration
  • 11:39 Percentage Of Translation Required Can Be Changed

Hello World Component with Joomla Component Builder/Creator - Extended

  • 00:00:00 Application Of Extenstion
  • 00:00:41 Changes in one place - Compiled in all Components
  • 00:01:57 Become A Communinty Project
  • 00:04:08 Need To Know - PHP - Joomla API
  • 00:05:50 Necesary to Start with the Basics
  • 00:06:23 Patience and Perseverance
  • 00:08:01 Basic Steps To Understand How To Build
  • 00:09:06 Local Environment Is Ideal
  • 00:09:56 Ways To Install JCB - Download Package - Url From GitHub - Install From the Web
  • 00:10:35 JCB One Of The Listed Developing Tools
  • 00:11:57 Need To Understand and Setup Components: Field Types, Fields, Views
  • 00:12:40 Views Mapped Back to Database - Admin Views
  • 00:13:34 First Build the Back End then Add in the Front End
  • 00:13:58 Front End Has Not Its Own Dtabase
  • 00:14:15 JCB Can Be Extended
  • 00:14:40 Joomla Discontinuing Repeatable Fields - Migrate Repeatable Fields to Subform Fields
  • 00:15:23 Add New Fieldtypes
  • 00:16:14 Fieldtypes Helps Setup Properties
  • 00:17:42 Creating Fieldtypes
  • 00:18:24 Quick Demonstration On Adding A Fieldtype
  • 00:21:18 Creating A Field
  • 00:22:19 Databases
  • 00:24:46 Creating an Admin View - Preparations - Object Orientated Development
  • 00:26:02 Creating Admin Views
  • 00:26:48 Name(single record), Name(list of records)
  • 00:27:42 Type: Read And Write
  • 00:28:38 Short Description
  • 00:29:28 Fields And Conditions
  • 00:29:45 Linked Fields
  • 00:30:30 Example Name(Text) Field
  • 00:34:01 Adding A Admin View
  • 00:35:25 Clicking On Plus Button To Open First Line
  • 00:36:23 Auto Check-in Feature
  • 00:38:10 Keeping Of History
  • 00:38:43 Has Metadata Fields To The View
  • 00:38:55 Add Access
  • 00:41:03 Adding Permissions
  • 00:44:17 Installing The Component
  • 00:44:42 Select An Image
  • 00:47:34 Hello World Configuration
  • 00:48:16 From the Front End to The Component - How To View, Edit, Add Greetings
  • 00:48:42 Two Dynamic Gets Created - Return A List Of Greetings
  • 00:50:05 Adding Edit/create Buttons Controlled By Permissions Structure Of JCB
  • 00:50:23 First - Use Back-end View
  • 00:51:47 Tweaking The Data Without Saving
  • 00:52:22 Filter To Add
  • 00:52:59 Joint Area
  • 00:53:36 Creating Dynamic Get
  • 00:55:52 Two Dynamic Gets Created - Second Return One Greeting
  • 00:58:12 Create A Site View
  • 00:58:30 System Name
  • 00:58:55 Name In Code
  • 00:59:41 Description, Snippet
  • 01:00:28 Main Get/Act Upon Compilation - Dynamic Get/Look
  • 01:01:42 Listgreetings / give Snippets
  • 01:03:58 Looping Through Items
  • 01:05:18 Back To Component Add Site View
  • 01:06:23 Creating A Site View
  • 01:07:09 Compiling The Component
  • 01:08:41 Compiling The Component(continue) NB - Default only gets set the fisrt time a component is installed
  • 01:09:53 Adding The Greetings To A Site View
  • 01:11:13 Set Front Side To Have Access Control
  • 01:12:13 Manual Way To Change Access Control
  • 01:13:00 Adding A Link
  • 01:14:11 Adding An Alias
  • 01:19:01 Install The New Changes
  • 01:20:07 Changes To Be Made In Dynamic Get - Including Alias
  • 01:20:46 Check Whether Alias Brought To Page By Adding a php.var_dump
  • 01:22:36 Use PHP For Creating A Link
  • 01:23:56 Create Site View For The Single Record
  • 01:27:39 Back To Site View To Add Link
  • 01:29:58 See How Back end Generates In The Code
  • 01:32:05 **Demonstration To Setup A Front-End
  • 01:33:07 Next Step: To Make Items Editable
  • 01:33:57 Checkout Value Needs To Be Set On Page
  • 01:34:32 Add The Option To Edit In Both List And Single View
  • 01:34:52 List View - Add PHP Script
  • 01:37:06 Updat Dynamic Gets
  • 01:38:57 Editing Echoing Edit Link
  • 01:43:17 Add Option To Create
  • 01:45:55 Demonstrated - List Items, Open Individual Items, Create New Items

Adding your own rule validation to a field in JCB

  • 01:55 Select Fieldtype To Add Validation - Textarea
  • 03:03 Custom Validation Rule
  • 04:14 JCB - Already Has Field Path And Rule Path
  • 04:41 First Create A Rule
  • 07:34 Adding A License Tag
  • 10:02 Testing The Validation
  • 12:33 Add A Custom Messages To Validation
  • 13:45 Add Messages In XML Path

General overview of how community snippets work

  • 00:00 Added A Community Concept To Snippets In JCB
  • 00:50 New Snippet Area
  • 01:29 Local And Community Snippets
  • 01:56 Contribute Snippets To The Community - Import Snippets That Is Been Added To The Community By Others
  • 03:58 Important - Snippets Mapped The Same Way As Snippets in The Community
  • 04:48 Area Called: Get Snippet
  • 05:33 Helper Tutorials - Few Links And Shortcuts To Get Involved Sharing Snippets
  • 06:07 What Happens When You Share Snippets?
  • 06:55 Snippets - In Sync
  • 07:22 Snippets - Out Of Date
  • 07:57 Snippets - New
  • 08:49 Snippets - Diverged
  • 09:18 Snippets Ahead
  • 10:05 Bulk Tool
  • 10:57 Description, Usage, Snippet, Who Contribute, View Blame
  • 12:52 Snippets Used In Four Key Areas
  • 13:38 When Details Not In Place - Say Dynamic Field

Tutorial on forking JCB snippets so you can share your snippets with the rest of the Cummunity

  • 00:18 Fork JCB Community Snippets On GitHub, Export Snippets You Like To Contribute, Make Pull Request
  • 01:10
    1. Improving Existing Snippet
    2. Move Existing Snippet To New Type
    3. To Add A Whole New Snippet Completely
  • 02:19 Need To Do Homework And Study Git On Udemy - Use Links
  • 03:49 Need An Account On GitHub
  • 05:06 Forked Repository
  • 05:43 vdm.io/Joomla-Component-Builder-Snippets - The Upstream Or Master Branch - Main Branch
  • 06:50 Clone-Repository Down To Your Developing Environment
  • 09:40 Convention Builds By JCB
  • 10:59 Export Snippets - New Snippets, Changed Or Improved Snippet, Move A Snippet To A Different Type
  • 12:24 Snippets Builds The File Name - Name - Library - Type
  • 13:23 Important: When Adding A Snippet - Add It To The Correct Library and Type, Give The Correct Name
  • 14:06 Adding A New Snippet
  • 16:20 Improving A Snippet
  • 18:12 Share Snippets
  • 20:39 Back To Command Line - git status To See What Happened
  • 21:34 Commit Message
  • 23:03 Adding A New File - Do git status - commit - git add
  • 25:19 Git Commit Message Update
  • 25:41 Add New Snippet - Accordion - git add
  • 28:03 Configuring A Remote For A Fork
  • 31:01 Syncing A Fork(See Video)
  • 32:56 Git fetch upstream - Git checkout master - Git merge upstream master
  • 34:00 git push - Everything You've Done Gets Pushed To Your Cloned Version on GitHub

Tutorial on making a pull request at Joomla Component Builder Snippets

  • 00:00 Process of Taking Committed Changes To The Forked Version
  • 01:43 Your Message Was Committed
  • 02:08 Identifies If Forked
  • 04:08 Commit Smaller Amount Of Snippets Instead Of Bulk
  • 04:41 Click On Create Pull Request - Summarize Pull Request
  • 05:43 Title - Demonstration Of Snippet Contribution
  • 06:27 Description - Use Commit Messages
  • 08:19 Different Ways To Merge Into The Master Branch
  • 08:54 Command Line Instructions
  • 09:52 Focus - Managing Snippets

The New Library Manager Area

  • 00:00 Libraries Dynamic In JCB
  • 00:53 How It Used To Work
  • 01:34 New Feature Added - Dynamic
  • 02:34 Second Way - Scale It
  • 05:17 New Changes Made - Can Remove Files
  • 05:43 Starting At Libraries
  • 06:22 These Six Libraries Should Not Be Changed - Behavior Can Be Changed
  • 06:44 Bootstrap Set To Always Add
  • 07:32 Library Level - Add Files And Folders From The Same Custom Files
  • 08:19 Behaviors: Conditions, Custom Script, and Do Not Add
  • 08:31 Conditions Under Development
  • 09:17 Conditions - Demonstrate Briefly
  • 12:10 Custom Scripting
  • 14:07 How Always Add Works?
  • 14:50 Linking Libraries To A view
  • 15:19 Installing Library Snippets
  • 16:54 Site View - Libraries - Bootstrap
  • 17:24 Demonstration - Adding The Library
  • 18:04 Uikit v2 Set To Fall Back To Build-in Option, Uikit v3 Set To Fall Back To Always Add
  • 21:19 Using Custom Script in Behavior
  • 22:38 HeaderCheck
  • 23:13 Uikit Bundle
  • 27:02 Implementing The Get Option For Libraries
  • 28:15 Linking To Views
  • 29:01 Old Implementation Still Works
  • 29:38 Need To Link Custom Admin View, Site View, Template, Layout to Spesific Library which is Available

Easy Translation via excel

  • 00:00 New Implementation Add To JCB To Do Translation Via Excel Spreadsheet
  • 00:51 Need To Know - JCB Doesn't Work With Placeholders - Works Directly With English String
  • 02:06 1. Need To Translate Create New Once
  • 02:36 2. Translate Strings: Back, Cancel or Close Once - It is Used In Many Components
  • 03:26 JCB Populate Dynamically The Language Translation, English Strings - Where Does It Get Them?
  • 03:59 The Way To Populate The Language Translation
  • 05:34 The Way To Change A String - Where is was Created - Fields, Site View, Admin View
  • 07:23 Allow Language To Be Set Dynamically - Create Or Use As You Like
  • 07:57 Joomla Translation Packs
  • 09:31 Focus On Translation String Area
  • 10:51 New Area - Export And Import Strings From Spreadsheet - Dynamically Been Added
  • 12:13 Important - Top Header Is Language Tag/Language Is Created And Published
  • 12:51 Demostration
  • 15:38 Changing The Percentage

Dynamic Router Implementation Explained

  • 00:00 New Implementation - Help For Router Complexity
  • 00:49 Search Engine URL Is Done With Router - JCB Builds Router
  • 01:26 Code - 'com_sermondistributor' - router.php
  • 01:44 parse - switch(segments[]) - First Value
  • 02:33 Preachers - Getting All Items From Database With No Input From URL
  • 05:31 getVar Class - See What Is Going To Do - How It Is Getting The Values
  • 06:38 Another Change To Be Made - Series
  • 08:19 The Interface Where You can Make Changes In Dynamic Gets
  • 10:06 Sermon (series id) - Heads Up For Placeholders
  • 11:56 JCB Change view to sermon
  • 12:20 Sermon (Preacher id)
  • 12:39 Resolving Category

Automated database updates in Joomla during development of a component

  • 00:00 Demonstration - Creating, Updating And Adding Database Tables
  • 01:17 Runs Only On Fresh Install - thereafter It Will Not Run Again
  • 02:44 Making Changes - JCB Updates
  • 03:3 Add A New View - JCB Combines These Values In One Update
  • 06:09 Component Automatically Incremented Its Version Number
  • 07:24 Some Places That The Behavior May Not Function As Expected
  • 08:02 Example - Only Way To Start History - Open It - Save And Close It

Quick Subform Demonstration

  • 00:00 Request On The Forum
  • 01:13 Subforms - Create Fields You Want To Use
  • 02:06 First Create A New Field
  • 02:51 Look At The Tutorials - YouTube - Joomla Component Builder
  • 03:51 Formsource
  • 04:57 Adding IDs
  • 05:33 Adding A Description, Maximum, Filter, Showon
  • 08:19 Adding Options(test) Subforms To Any Admin View

VDM Package Import Option

  • 00:00 VDM Packages
  • 01:24 If Sermon Distributor is Reset - Everything Gets Reset
  • 02:22 Istall By Clicking Get Packages - Read All Information That Is Given
  • 03:28 Quiet Switch Added
  • 04:33 Force Local Update - Overwrite Existing Data
  • 07:39 Suggestion - Community Tab

Dynamic File and Folder Inclusion concept

  • 00:00 Introducing To A Feature - Adding Files, Folders As Code Of File To Your System
  • 02:24 New Area - Advance
  • 02:53 Note - Adding Files
  • 04:29 Need To Set The Target Path And Relation To Zip Package
  • 05:53 JCB Detects You Are Not Targeting Normal Folders - Add A Little Script To Script Install
  • 09:13 Heads Up - Consider With Whom You Are Shatring Packages Part Of Security
  • 09:49 Use EXTERNALCODE Snippet
  • 12:38 Specific Piece Of Text Dynamically Added To The Back End Of Component Builder
  • 13:19 When Compiled - It Should Tell You Have Added The EXTERNALCODE To Your Component
  • 14:34 When Compile Two Messages Are Revelant To The Issue (First Message)
  • 15:51 (Second Message)
  • 16:16 Do As Note Says: Check If It Is The Correct Code
  • 18:12 Warning Area

How to use the file field type to upload a file in JCB

  • 00:00 Add/Upload A File To A Component
  • 01:06 Fieldtypes - File - Shows Attributes, values, some description, info
  • 02:30 Adding New Attributes
  • 03:19 Beginning Of Setting Up The File Field Type
  • 04:54 Add File Field Type - Image(file)
  • 09:56 Needs To Be A Server Side - Needs To Validate, Move Back, Check The File - Make Sure: It's Correct File, Secure The File, and Then Place The Files Path Back Into Fields
  • 11:27 Code Editor - Joomla Mount, Administrator, Components, Demo, Models, Look.php
  • 13:07 Var_dump Some Values - One Is The Available Data, Second One Is Getting The Input
  • 13:59 Add Some Formatting
  • 15:58 Get Function - Jform Where Data Is
  • 16:42 Next Step - IF Array Exist
  • 16:58 Copy Function 'getPackagesFromUpload' - Adapt It To Our Needs - Change Function Name To 'myUploadFunction'
  • 19:58 Checking If Userfile Is In Array
  • 21:02 Checking The Upload Size
  • 22:08 Build An Appropriate Path, Create The Path, Create Temporal Source, - Move File With Jfile Upload
  • 22:57 'Unpack the download package file'Replaced By A Little Function 'çheckUpload'
  • 23:41 Do A Little Check-up - Set To False Or True
  • 24:32 Use Custom Script To Validate Our Format
  • 26:40 Passes The Destination Where We Moved The File
  • 28:07 Pass A Package Back
  • 30:16 Create Remove File
  • 33:33 Dump Code on GitHub as Gist
  • 37:14 Moving The File To Its Final Location
  • 38:00 More Values - Instead Passing Userfile Pass The Whole Array
  • 40:48 Using Constants
  • 44:31 Successfully Saved - Show No File Detected - Might Show The File Currently In Database
  • 46:09 Grab Custom Scripting And Add It To The Component In JCB
  • 48:43 Adding The Script To The Save Method
  • 50:13 Add Script To View File Or Add Javascript To View Footer
  • 53:30 To Know Where The Values Are?
  • 58:59 Changing Of Image - Won't Remove Old One

Drag and Drop Upload functionality in JCB

  • 00:00:00 Drag And Drop Automated Crop Functionality
  • 00:01:13 UIKit - Very Nice File Uploading Front-end
  • 00:03:20 Using Javascript - HTML - Markup For Select - Drag And Drop
  • 00:05:40 Saved Or Not Saved - File Is Added To The Item
  • 00:06:21 New - Import JCB Packages
  • 00:07:44 Get Packages From GitHub - Received Message - The Package PASSED Checksum Validation!
  • 00:09:03 Imported Packages - Quiet - Force Local Update
  • 00:10:29 Document Manager - Paid Package - Demostration
  • 00:12:03 Media Tab - Allow Document Format, Media Images
  • 00:14:43 Looking In The Code
  • 00:15:49 VastDevMod - VDM - Generates Variables
  • 00:17:32 setfile Method - Image - Documents - Media
  • 00:18:24 Individual Concepts - Notes - Main Media Uploader Note - Main Document Uploader Note - Document Image Uploader Note
  • 00:19:45 Uploading Concepts
  • 00:22:01 Snippet - uitkitFileUploader custom code - progressbar-main-document-formats
  • 00:24:06 Settings - JRouter(see video)
  • 00:25:21 Adding Formats
  • 00:26:44 If No Formats - Update div - Upload Drop Area
  • 00:27:16 Reusable Snippet -uikitFileUploader
  • 00:29:25 Div - Have It In Place
  • 00:29:52 Hidden Fields - Main-Documents - Target Naming Conventions
  • 00:30:21 Security - Different Encryption Options
  • 00:31:38 Admin View Document - setFileJS
  • 00:34:33 Javascript Does Some Checking and Validating
  • 00:37:05 SetFile
  • 00:39:16 GetFile
  • 00:43:18 Demonstration - Uploading An Image(see video)
  • 00:44:51 Demonstration - Uploading A Document(see video)
  • 00:46:57 How The Download Works - Using Controller
  • 00:48:17 Demonstration - Uploading A Media File
  • 00:51:28 Server Side Of Implementation
  • 00:53:01 phpAjaxUploader - Custom Code Area
  • 00:54:48 Quick Demonstration How Add To Add A List Field To The Components Configuration Area
  • 00:57:45 uploadFile Function
  • 00:59:41 GetPackage From Upload
  • 01:02:48 Checking Whether The UploadPackage Is There
  • 01:04:46 FullPath - FilePath - FileName - FileFormat
  • 01:06:35 Encryption
  • 01:08:39 Convention In The Hidden Field Name
  • 01:10:47 SetFileNameArray - Another Function
  • 01:12:03 Heads Up - Once Saved The Item - Ready To Allow Multiple
  • 01:12:53 'removeFile' - Some Point Do Validation
  • 01:15:06 'getFileJS'

The Quick Hello Word with JCB

  • 00:00 Installation Of A Hello World Component For Free

Adding none database fields to an admin view

  • 00:00 New Function - To Add A Field To A View Without Adding The Field To The Database
  • 01:34 Multiple Implementations Helps To Get A SubForm On The Page
  • 02:24 New Feature - None DB

The custom dashboard option in JCB

  • 00:00 Adding Your Own custom Dashboard To Your Component
  • 00:43 Adding Tabs
  • 02:41 Open Hello World Component - Dashboard
  • 04:34 Use A Custom Dashboard - JCB Compiler Dashboard

Add or Remove Prefix to Component Name in Joomla Menu

  • 00:00 Little Arrow - Prefix In Front Of Component Builder
  • 00:26 Global Tab - Add Menu Prefix
  • 00:56 Link To A List Of HTML Character Entities
  • 01:36 Illustration - Change The Prefix

Add your own JCB packages to the JCB Community Directory

  • 00:00 Import JCB Packages - New Tab Called Community Packages
  • 01:17 The Clone Feature
  • 02:00 The Import Feature - Merge Yes Or No
  • 04:01 Community Option - Sharing
  • 05:06 Demonstration - When Adding A Package Must Start Forking The Repository
  • 06:36 Open A Terminal - Cloning The Repository
  • 09:09 Helps Get The Project Going Quite Quickly
  • 10:03 First Visit Video - Watch Video - Give A Free Key
  • 12:35 Once Component Exported - The Package Is Available - In Temporal Director
  • 13:16 Next Step - Move Package Into Repository Which We Cloned Down
  • 14:02 In Terminal - git status - Run Hash.sh Program Which Is A Bash Script
  • 15:01 What Does The Bash Script Do?
  • 16:33 Again - git status - checksum.json - git diff
  • 17:30 git Add The Files - Commit - git commit am"Added Question And Answers Packages
  • 18:46 When All Is Done - git push To Your Repository On GitHub
  • 19:54 Create A Pull Request

Proposed Collaborative Workflow in JCB

How to install JCB Packages

  • 00:00 Two Ways To Get To The Installing View - Import JCb Packages Icon OR Joomla Component - Import Packages
  • 01:20 Make Sure Of Integrity Of The Package
  • 02:28 Tutorial Explaining Why We Will Do Things The Way We Do
  • 05:19 Choose Merge - Change In Package / Force Local Update Works Only If Merge Is Selected
  • 06:05 See All Import Information
  • 07:04 Component Being Imported
  • 08:04 Takes Awhile To Update - Updating IDs, Views, Fields

JAB18 Using Joomla Component Builder

The New Fields Area To Make Things Easier

  • 00:08 Explaining Changes In The Field Area
  • 00:46 A Quick Recap How It Used To Look
  • 01:55 Removed The XML Definition Area Replaced It With Sub-form
  • 05:00 New Implementation For Custom Fields And Custom User
  • 06:05 Advantage - Extra Properties Option - Listclass Option
  • 07:19 Escape Option
  • 08:06 Display Option
  • 08:53 Validate Option

Adding Language String To Your Component And Get The Language Placeholder For Dynamic Use

  • 00:00 Quick Tip How To Add String To Your Component
  • 01:32 Want The Placeholder To Be Generated
  • 03:11 Looking In The Code

Library Manager Anticipated Functionality

  • 00:00 Talk About The Expected or Anticipated New Labrary Feature That Is Being Added To JCB
  • 02:30 Two Functions - prepareDocument And setDocument
  • 03:39 Conditional Option
  • 05:40 Option Field Drop Down
  • 07:03 Creating A File By Clicking Edit, Add New Files
  • 10:50 Condition Options - Global Value And Page Value

Join Fields In The Admin List View With Field Relations

  • 00:00 Feature Effects How JCB Builds
  • 01:27 What The Feature Is All About?
  • 02:35 Demonstration - New Feature - Field Relations
  • 03:43 Area Column - Three Places - Model(before modelling), Model(after modelling), View
  • 04:27 Looking In The Code
  • 06:52 Some Changes Targeting Model Area - Joint Type - Concatenation With Glue Option
  • 08:53 More Changes - Instead Of Using Default Glue Option Do Code Option
  • 13:28 Only Target The Name List Field Once
  • 14:44 Create Preacher Email Address
  • 15:53 Targeting The View
  • 18:32 Demonstration
  • 19:07 Going To The Code(see video)
  • 21:17 Preacher Field - Two Fields - Name And Description
  • 22:15 Demonstration - Combining Preacher With Name Row

How To Change The License Template In JCB

  • 00:00 Talk About Changing The License Template
  • 00:57 Demonstration - How It Works
  • 01:50 Changing The Templates
  • 05:00 Placeholders - Helper, Compiler, Infusion
  • 07:03 Suggestion - Save As... - Give Your Name - Save - New File

Reuse Custom Code

  • 00:00 How To Use Code Across JCB By Taking Advantages Of A New Feature
  • 01:12 Pull Up A Docker Image Of Joomla
  • 03:00 Looking At Examples - GetVieweID
  • 05:55 Another Way To Reuse - getFilePath

Setup Local Development Environment With Bitnami

  • 00:00 Bitnami - Distributor Of Images
  • 00:43 Installing Bitnami Joomla Stack
  • 02:54 Download - Using Windows/Mac/Linux
  • 06:20 Run The Installer - PHP, MySQL, Joomla With Its Database
  • 08:10 Access Joomla - Joomla Website - Administrator - Login
  • 09:13 JCB Installed - Grab Packages - Importing Packages
  • 10:40 Doing Everything That Is Expected
  • 12:40 New Feature - phpMyAdmin
Table of Contents