diff --git a/002-Intro-to-JCB.md b/002-Intro-to-JCB.md index 20892bd..5714aca 100644 --- a/002-Intro-to-JCB.md +++ b/002-Intro-to-JCB.md @@ -3,16 +3,21 @@ Hi, Welcome. My name is Llewellyn van der Merwe. I'm the developer of Component Builder for Joomla. I would be giving you instructions how to use it. +### Easy And Quickly To Do Code - Focus On Custom Code + Component-Builder was built for those who know PHP. If you are not familiar with PHP there are some places to get help like [Lynda.com](https://www.lynda.com/) and Udemy. You could go on to their websites and you can simply search for PHP and you would find courses to get you on your way. To get acquainted with CSS JavaScript HTML you need to go visit these websites. It was not developed for those who have no developing skills, I developed it actually for myself as developer of components, so that I can easily and quickly get most of the code done and I could just be focused on the actual custom code which goes beyond the norm. So that is what it is really made to do. If you don't have much knowledge of the Joomla API you just need to be able to read PHP and open a Joomla website, go to Libraries and to Classes, go to Joomla's own components. That means you would simply go to a Joomla install and you go to components and you would go to Content manager. Looking at the folder structures, then open and there you will see the Controllers, the Models and the Views. Open a View, start opening the script itself and read through it. +### Joomla's Components - Learn How Codes Interconnects +If you are using NetBeans you can hold onto a function like this "... if($this.>getLayout()..."and Select "...getlayout... "...and then press Ctrl Shift. It will show you where in your Joomla website that function is declared and [00:02:34](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h02m34s) you can open that file and you can click "... Open source in editor..." and you can start doing these kind of things and learn how codes interconnects to each other by just looking at Joomla's own [00:02:58](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h02m58s) components. Basically that's how I got to know how things work, I simply went to "... JHelperContent::getActions...", select "...getActions..." and press Control Shift and then opened that in the next window, look through the Class Methods and Class variables which ones that is extending. [00:03:21](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h03m21s) In this case, this one did not extend any. - - If you are using NetBeans you can hold onto a function like this "... if($this.>getLayout()..."and Select "...getlayout... "...and then press Ctrl Shift. It will show you where in your Joomla website that function is declared and [00:02:34](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h02m34s) you can open that file and you can click "... Open source in editor..." and you can start doing these kind of things and learn how codes interconnects to each other by just looking at Joomla's own [00:02:58](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h02m58s) components. Basically that's how I got to know how things work, I simply went to "... JHelperContent::getActions...", select "...getActions..." and press Control Shift and then opened that in the next window, look through the Class Methods and Class variables which ones that is extending. [00:03:21](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h03m21s) In this case, this one did not extend any. +### Application Implements API That is how I came to know how Joomla API works. You will come to see how this application implements API over and over. My aim is not to reinvent things but to stick to the conventions as far as possible. As I become aware of better ways of implementation I would like to add that again, so if you know a better way of doing it, please communicate with me. I would gladly update, include and change whatever is needed. -It is very important to debug something which you have build that did not work. Possibly you need to run a local sandbox environment. Ubuntu is my local sandbox where [00:04:38](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h04m38s) I have PHP on it and got MySQL installed and then Joomla. So if I had to open a browser and I would type in this "...Local.." This is my Local Install. I have typed in "... VDM..." [00:05:04](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m04s) and I have basically a few sites here. A test in this one we will be working and the one in which Component Builder is being developed. And those sites have admin in it ext. so this is just my own little script that I've dumped into my own little server and I can now [00:05:27](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m27s) change that, for example; if we go to Builder.VDM. some of the test[00:05:43](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m43s) displays are loaded which I'm working on and if I add Administrator to that, it will open the back end and I can login.<(Editted) +### Remember to Debug + +It is very important to debug something which you have build that did not work. Possibly you need to run a local sandbox environment. Ubuntu is my local sandbox where [00:04:38](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h04m38s) I have PHP on it and got MySQL installed and then Joomla. So if I had to open a browser and I would type in this "...Local.." This is my Local Install. I have typed in "... VDM..." [00:05:04](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m04s) and I have basically a few sites here. A test in this one we will be working and the one in which Component Builder is being developed. And those sites have admin in it ext. so this is just my own little script that I've dumped into my own little server and I can now [00:05:27](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m27s) change that, for example; if we go to Builder.VDM. some of the test [00:05:43](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h05m43s) displays are loaded which I'm working on and if I add Administrator to that, it will open the back end and I can login.<(Editted) (Uneditted)> So I'm running in a sandbox environment and what this the advantages as you don't have any internet involvement those of you that already do it know all these advantages but those of you don't [00:06:07](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h06m07s) you can basically work offline mostly, and as well you can add things like XD bug and other script which help you debug your application very easily. We are doing that in off-site environment. It is [00:06:26](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h06m26s) time consuming and difficult and expensive. It's much easier doing it offline and again if you don't know how to do that, please visit Lynda.com and look at a course called I think it was up and running with PHP Linux Developer, Linux server running my next wait let me quickly go find out hold on. Ok here we have it up and running with Linux for PHP developers by Jon Peck [00:06:59](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h06m59s) It is an excellent course to get your own local developing environment setup. I don't know this URL is gonna be helpful, but there it is Apache-tutorials up and running Linux PHP developers and I'm sure if you've watched this I've watched it [00:07:24](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h07m24s) many moons ago and it's been very helpful to get my initials Sandbox setup. Since then and I suppose with yourself as well you'll find it you you get better and you find better ways. It's a good place to start. [00:07:44](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h07m44s) That is about getting your hands dirty. Component Builder best place of function of being functional is offline. If you going to do it online please realize that there might be security risks especially when you have compiled an application. It places it into your temporary folder which can be accessed from anywhere. Anyone can access your temporary folder on your [00:08:14](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h08m14s) server of your website. So Yes you can delete the application from there immediately with a button which I will show you later. But it is still I feel unsafe and the purpose of the application was live in a developing environment where you have Joomla installed and where you can really test it intensely. I would still suggest it none the less you do it that way. Now finally we almost there [00:08:45](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h08m45s) finish with the introduction, since it's free please help me to ensure the future of this component by not sharing it's training videos online or with anyone else this is really the only way that I can sustain this development. If you don't share these videos so please if you be so kind if you have an organisation or you, you're a company and you have a others that's going to view it I suppose I can't stop you from doing that but I would encourage you there for then [00:09:28](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h09m28s) to consider making a contribution when you are starting to reap the benefits of the time that this application saves you, so that this application can be further developed for the rest of the the community and also for yourself. We would like to also involve you on Github so you can go to GitHub /VDM - IO / Joomla Component Builder. Basically this place here and if you have issues or any requests or anything really, please come here and go to issues and open a new issue. [00:10:12](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h10m12s) I want to be sure you can do that if you've got an account of course with GitHub, and then we at least our discussions you are logged and it's public and others can see it and we can also come back as do it in reference. If you want to make a feature request then you can start that feature request. Obviously here in the issues and possibly if it exist I'll point you out to it and if a training is needed we will add it to this training Video set. But if there is a feature request that has started here and you feel that you you can't wait because we possibly will create milestones and we will add feature requests to milestones in you want to ensure that a feature request ends up being done before anyone else is then you need to communicate with me at this email and I can send you [00:11:09](https://www.youtube.com/watch?v=9evJkBTnKxE&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&t=00h11m09s) a link to to make a donation, or I'll give you an invoice even if needed so that we can ensure that feature request be done before others. That's maybe all of it just looking at sort of an introduction. If you have any questions please let me know. Obviously not regarding the component itself, but just these points I've mentioned. I'll be grateful. It's so let's get on with it since I'm really looking forward to showing you how everything works.