Skip to content

018 Custom Admin Views

Llewellyn van der Merwe edited this page Jun 7, 2019 · 12 revisions

CUSTOM ADMIN VIEWS

We need to have a quick look at custom admin views. They do have some nice ways of doing things very similar to site views. Some aspects and adding it to component builder is different. In the next video we will look at adding site views as well as component custom admin views to the component. The reason I didn't speak much about the custom admin views is simply because sermon distributor is not 00:00:33 using custom admin views yet.

Example View From Other Component

I have another component I can use as a example called: Cost Benefit Projection. It's a tool that is used to show companies the cost benefits of intervening on certain diseases and causes in the company. 00:01:04 In it we have what we call company results, and combined results, respectively used to display custom data in the back end of the component to certain different people who has permission to view those data. In the component itself, if we click on companies, you would see there is an icon underneath each of these 00:01:36 names of the companies. There is a new button in the top called combine results. These buttons are dynamically added by component builder. In the next tutorial I'll show you exactly how that is done.

Component Builder Custom Admin View From Above

What I want to show you here is simply how a custom admin view will look. I'm going to click on one, this is all dumb information, 00:02:07 let's open ClientM. You have this big area where you could put a lot of html and php. You have some custom buttons that you can add. I will show you that. All of this in the white area is simply done in the custom view. If I was to click around I've got a menu here at the side. All of this is done inside of the custom area 00:02:44 of the component. Which is now the custom admin view. That is how it will look. It has different value sets, and you can from here add an edit button. Since we've linked it to a specific client or company or one item in that list, 00:03:10 we can click on edit. From here we go right into the companies data and edit it. What is nice if we were to click close here, it take us back to that exact result page. You can then go and look at the implementation what you've done. 00:03:35 That is just simply showing you how a custom admin view could look. Let's go back to the companies list or we could go back to dashboard. Look at component builder, we looked at company results and we open it. Here is all php and html on my page doing all the work. As you might expect I'm loading 00:04:05 templates directly from here.

Add Custom Button Sample

Then I have a custom button area where I can say yes. I want to add custom buttons. Then I click on custom buttons(add). You will see I have 'icons' that I can select, and 00:04:25 the 'name' of the button, and 'controller method' which I would like to use, to make the button work. In this one(target controller method) I'm saying 'gotocompanies'. This one is 'editcompany'. Here I should say what kind of target are we looking at? Is this a single, a list, or both? 00:04:52 You can set that respectively, and then you click save. It only saves it to the form, and not to the database. We should have made that done, but this is the Joomla's way of implementing it.

Adding Script For The Controller Methods

Now you have to add in the php controller method, add scripting to respectively implement the buttons click method. 00:05:16 You can also do that to the model. So in the controller you can add script, and then in the model add scripting which is called from the controller, if you want to separate your code a bit. If you're not going to be adding any script to the model, just add none with this two spaces// in front, otherwise it might scream at you that you did not add script there. As you can see the 'gotocompanies' is simply 00:05:47 take you back to the companies view. Where as the 'editcompany' implements the Joomla's convention of opening an item to edit it by the correct channels. This is just Joomla knowledge at work here. And we are checking a token and all that. Component Builders sets of all the tokens and everything. 00:06:13 This(see video) snippet you can reuse for your purposes if you want.

Area For Custom Scripting

We have an area for custom scripting and as you can expect. There's a lot of custom scripting going on in that view. It has its respective places, if you want to know where, what's happening at some snippet here, compile your components, search for that snippet, and you'll see where this comes up, if you're not certain by the naming conventions we have used. That is how you setup custom admin view. 00:06:51

Combining Multiple Data Example

To look at the other one, the combined results view. The combined results is this one up here, if you click it, It will tell you, we need to have some items selected. You select the items and click combined result again, and it will do a combined resolve taking both companies adding it's data together, 00:07:16 and giving you a nice layout structure of it's data sets. That is the combined concept. If we go back to the implementation of it, it looks very similar as the other. Again just a lot of html and php here. Also some custom button, again just going back to companies. 00:07:41 It's just same implementation, vcard companies, go back, single, and then some custom scripting. That's how I set up both of those custom views. Quite simply adding the data. Then making use of the templates as well as layout implementation in both of these. You can set up layouts and templates and use them in site views, you can also use them in admin views. 00:08:11 In our next tutorial we will look at how to add site views and admin views to your component since there are some differences and you need to be aware of them.

Clone this wiki locally